This repository was archived by the owner on Oct 19, 2026. It is now read-only.
Repository navigation
v12.0.0
Contract 12.0.0 (#51), the breaking cleanup decided as Contract 12.0.0 in the 2026-10-11 qyl-dev audit. The revision is sha256:b29439eba28e752b (11.6.0: sha256:d926c3c6ab829cbf); the digest payload tag moves to qyl-contract-revision-v4 because info.version is no longer hashed.
- Problems (SCH-14, SCH-20):
ProblemDetailsis RFC 9457 (type,title,status,detail,instance) plus the extensioncode.ProblemTypeenumerates the type URIshttps://qyl.at/problems/<name>(served by qyl.at) andProblemCodethe stable codes. Headers are declared on the operations that send them (X-Trace-Idon collector 500s,WWW-Authenticateon workbench 401s); the body memberstrace_id,request_id,timestampandInternalServerError.error_codeare gone. - Paging (SCH-10):
next_cursoris an opaqueCursormarked@continuationToken;prev_cursoris deleted; the last page omitsnext_cursor. Every list operation is@listand spreadsCursorPageQuery(limit,cursor). - One
PageLimit(SCH-16): 1 to 1000, default 100, on all 14 list routes andSavedQueryRunRequest.limit. - Removed unused templates (SCH-11):
CursorPaginationParams,SortOrder,OffsetPaginationParams,OffsetPage<T>,TimeRangeParams,TimeRangePage<T>,StreamParams,StreamEvent<T>, theApiErrorunion,RateLimitError,AggregationParams,TimeBucket,OTel.Traces.SpanQueryFilters. - Release-stamped
info.version(SCH-6):prepackstamps the release version into the packed OpenAPI document andpostpackrestores0.0.0; the digest excludesinfo.version.
Consumer migration is listed in #51. Because the revision changes, the ripple order applies: the qyl Collector adopts 12.0.0 and deploys first, api.qyl.at must serve sha256:b29439eba28e752b, then qyl.mcp re-pins.