os-hourly-full-run-ci — machine-findable marker for this generated card. ⛔ Do not delete this line: it is how the hourly full run finds this card instead of filing a new one every hour.
hourly full run: red on main (CI)
Swept 2026-09-23T07:22:35.007Z · run log · commit de4ed33fd5745d3061986c69d2c2898af14ba202 · conclusion failure.
CI runs the FULL battery on main every hour (#16467 ). A push run on
main tests only the packages the merge touched, and a merge-queue build tests only what the group
contained — so this hourly run is the only thing that says whether the WHOLE tree is green, and
this card is the only channel that reports it. Nothing is blocked by it.
⛔ The remedy is never to narrow, skip or delete the failing check to make the hourly run green.
Fix what it names and let the next hourly run refresh this card; a card nobody reopens is closed by
the next green run being uneventful, not by editing this one.
What landed since the last green hourly run
Range: 16d090ede0 (run 35764440297, the last green CI schedule run) .. de4ed33fd5 — compare
c120dbdfb8 docs(spec): bring the odata module's Programmatic Use example under check:skill-examples (docs(spec): bring the odata module's Programmatic Use example under check:skill-examples #19745 )
2bdb81f8ad fix(spec): re-measure the ComponentPropsMap objectui read-point records at the live pin and make them assertable (fix(spec): re-measure the ComponentPropsMap objectui read-point records at the live pin and make them assertable #19743 )
544767da3b test(spec): pin proof 4's message-includes leg with a fifth check-mode box (test(spec): pin proof 4's message-includes leg with a fifth check-mode box #19754 )
a754563353 fix(plugin-auth): a public plain-HTTP boot says its AS discovery is unencrypted, in English (fix(plugin-auth): a public plain-HTTP boot says its AS discovery is unencrypted, in English #19689 )
dc1b98680b fix(spec): narrow the object designer's formula returnType options to the four declared members (fix(spec): narrow the object designer's formula returnType options to the four declared members #19759 )
ed4b655e5b fix(pm): fleet-write derives the seat session from the container; the workflow’s Actions state is the kill switch; size-routed direct for post-stamped (fix(pm): fleet-write derives the seat session from the container; the workflow’s Actions state is the kill switch; size-routed direct for post-stamped #19760 )
e99a14ceae fix(census): scope the tenant-audit census on class-property and callable names (fix(census): scope the tenant-audit census on class-property and callable names #19749 )
2005a558de docs(pm): the dev's writes go through the fleet tools; platform-readings records the relay's first readings (docs(pm): the dev's writes go through the fleet tools; platform-readings records the relay's first readings #19771 )
041c8cf62b fix(spec): describe format by the readers that exist, not by email/phone (fix(spec): describe format by the readers that exist, not by email/phone #19763 )
d0f1845657 feat(spec)!: split the translation bundle type — settings is a platform group, not a per-app one ([finding] TranslationDataSchema.settings is declared, read by the settings service, and extractable by nothing — registry-driven emitter, or removal from the per-app schema (ADR-0049) #15178 ) (feat(spec)!: split the translation bundle type — settings is a platform group, not a per-app one (#15178) #19600 )
0f057b65bc fix(spec): correct both $between-endpoint entries' carrier claims and detectors (fix(spec): correct both $between-endpoint entries' carrier claims and detectors #19752 )
90d65e4db5 ci(fleet-write): grant permission-contents: write to the mint step so the relay can arm auto-merge (ci(fleet-write): grant permission-contents: write to the mint step so the relay can arm auto-merge #19767 )
70a2e752b8 docs(pm): rest-channel names the fleet-write relay as the channel to the App identity (docs(pm): rest-channel names the fleet-write relay as the channel to the App identity #19770 )
595621d35c docs(skills): split the four over-500-line SKILL.md into routing + references, TOC the seven long reference files, trim data's description (docs(skills): split the four over-500-line SKILL.md into routing + references, TOC the seven long reference files, trim data's description #19738 )
67add1301a docs(adr): spell the ADR-0005/0010 payload code tokens as the ledger members the runtime emits (docs(adr): spell the ADR-0005/0010 payload code tokens as the ledger members the runtime emits #19765 )
4b23e4fab5 docs(gates): record the [finding] 183 packages/spec/src/** citations name no tracked file and are DECLINED by the new corpus — the spec analogue of #15809, and #16960's three sites are inside it #17242 re-census — the declined residual is a SPELLING population, not rot (docs(gates): record the #17242 re-census — the declined residual is a SPELLING population, not rot #19733 )
43e17b8905 fix(service-datasource): emit the authorised ObjectSchema.create shape for object drafts (fix(service-datasource): emit the authorised ObjectSchema.create shape for object drafts #19776 )
531689c230 test(lint): pin the dispatch-contract disarm by an undeclared same-named action, and state it in the docblock (test(lint): pin the dispatch-contract disarm by an undeclared same-named action, and state it in the docblock #19781 )
cc2e9511c8 fix(pm): fleet-write fails closed on an indeterminate liveness read, reads it only behind the proxy re-exec, and stops reading a proxy 403 as a rate limit (fix(pm): fleet-write fails closed on an indeterminate liveness read, reads it only behind the proxy re-exec, and stops reading a proxy 403 as a rate limit #19780 )
a690c494c0 test(plugin-dev): make the tenancy-posture clocked window load-independent (test(plugin-dev): make the tenancy-posture clocked window load-independent #19779 )
01df025f7f fix(lint): check the autonumber format the runtime resolves, not a local copy (fix(lint): check the autonumber format the runtime resolves, not a local copy #19787 )
55095cc460 fix(spec): composeStacks refuses a non-array objects with an ADR-0112 envelope (fix(spec): composeStacks refuses a non-array objects with an ADR-0112 envelope #19783 )
3f9e2eaa1c fix(spec): list plugin-security's class-field error codes under its own ledger key (fix(spec): list plugin-security's class-field error codes under its own ledger key #19782 )
628e55dfa6 pm: retire the needs:contract-review label from the tree (ruling B step ③) (pm: retire the needs:contract-review label from the tree (ruling B step ③) #19737 )
2cf9db7c43 fix(spec): the gantt, timeline and map binding warnings describe the refusals objectui left, not the floors it deleted (fix(spec): the gantt, timeline and map binding warnings describe the refusals objectui left, not the floors it deleted #19788 )
fae870352e docs(gates): delete the spec-docblock gate's stale "symbol is ZERO" reason (docs(gates): delete the spec-docblock gate's stale "symbol is ZERO" reason #19786 )
98d83361d9 pm-dispatch: the pre-dispatch in-flight read covers every lane's pm:dispatched claims (pm-dispatch: the pre-dispatch in-flight read covers every lane's pm:dispatched claims #19792 )
0b83e01627 fix(spec): composeStacks refuses a non-array concatenated collection instead of dropping its content (fix(spec): composeStacks refuses a non-array concatenated collection instead of dropping its content #19794 )
de4ed33fd5 docs(pm): a suspended seat account is a dead session — takeover, re-rendered records, retriage, durable state (docs(pm): a suspended seat account is a dead session — takeover, re-rendered records, retriage, durable state #19795 )
Filed by .github/workflows/scheduled-full-run-card.yml. Generated by Claude Code
os-hourly-full-run-ci — machine-findable marker for this generated card. ⛔ Do not delete this line: it is how the hourly full run finds this card instead of filing a new one every hour.
hourly full run: red on main (CI)
Swept 2026-09-23T07:22:35.007Z · run log · commit
de4ed33fd5745d3061986c69d2c2898af14ba202· conclusionfailure.CIruns the FULL battery onmainevery hour (#16467). Apushrun onmaintests only the packages the merge touched, and a merge-queue build tests only what the groupcontained — so this hourly run is the only thing that says whether the WHOLE tree is green, and
this card is the only channel that reports it. Nothing is blocked by it.
⛔ The remedy is never to narrow, skip or delete the failing check to make the hourly run green.
Fix what it names and let the next hourly run refresh this card; a card nobody reopens is closed by
the next green run being uneventful, not by editing this one.
What landed since the last green hourly run
Range:
16d090ede0(run 35764440297, the last greenCIschedule run) ..de4ed33fd5— comparec120dbdfb8docs(spec): bring the odata module's Programmatic Use example under check:skill-examples (docs(spec): bring the odata module's Programmatic Use example under check:skill-examples #19745)2bdb81f8adfix(spec): re-measure the ComponentPropsMap objectui read-point records at the live pin and make them assertable (fix(spec): re-measure the ComponentPropsMap objectui read-point records at the live pin and make them assertable #19743)544767da3btest(spec): pin proof 4's message-includes leg with a fifth check-mode box (test(spec): pin proof 4's message-includes leg with a fifth check-mode box #19754)a754563353fix(plugin-auth): a public plain-HTTP boot says its AS discovery is unencrypted, in English (fix(plugin-auth): a public plain-HTTP boot says its AS discovery is unencrypted, in English #19689)dc1b98680bfix(spec): narrow the object designer's formula returnType options to the four declared members (fix(spec): narrow the object designer's formula returnType options to the four declared members #19759)ed4b655e5bfix(pm): fleet-write derives the seat session from the container; the workflow’s Actions state is the kill switch; size-routed direct for post-stamped (fix(pm): fleet-write derives the seat session from the container; the workflow’s Actions state is the kill switch; size-routed direct for post-stamped #19760)e99a14ceaefix(census): scope the tenant-audit census on class-property and callable names (fix(census): scope the tenant-audit census on class-property and callable names #19749)2005a558dedocs(pm): the dev's writes go through the fleet tools; platform-readings records the relay's first readings (docs(pm): the dev's writes go through the fleet tools; platform-readings records the relay's first readings #19771)041c8cf62bfix(spec): describeformatby the readers that exist, not by email/phone (fix(spec): describeformatby the readers that exist, not by email/phone #19763)d0f1845657feat(spec)!: split the translation bundle type —settingsis a platform group, not a per-app one ([finding]TranslationDataSchema.settingsis declared, read by the settings service, and extractable by nothing — registry-driven emitter, or removal from the per-app schema (ADR-0049) #15178) (feat(spec)!: split the translation bundle type —settingsis a platform group, not a per-app one (#15178) #19600)0f057b65bcfix(spec): correct both $between-endpoint entries' carrier claims and detectors (fix(spec): correct both $between-endpoint entries' carrier claims and detectors #19752)90d65e4db5ci(fleet-write): grant permission-contents: write to the mint step so the relay can arm auto-merge (ci(fleet-write): grant permission-contents: write to the mint step so the relay can arm auto-merge #19767)70a2e752b8docs(pm): rest-channel names the fleet-write relay as the channel to the App identity (docs(pm): rest-channel names the fleet-write relay as the channel to the App identity #19770)595621d35cdocs(skills): split the four over-500-line SKILL.md into routing + references, TOC the seven long reference files, trim data's description (docs(skills): split the four over-500-line SKILL.md into routing + references, TOC the seven long reference files, trim data's description #19738)67add1301adocs(adr): spell the ADR-0005/0010 payloadcodetokens as the ledger members the runtime emits (docs(adr): spell the ADR-0005/0010 payloadcodetokens as the ledger members the runtime emits #19765)4b23e4fab5docs(gates): record the [finding] 183packages/spec/src/**citations name no tracked file and are DECLINED by the new corpus — the spec analogue of #15809, and #16960's three sites are inside it #17242 re-census — the declined residual is a SPELLING population, not rot (docs(gates): record the #17242 re-census — the declined residual is a SPELLING population, not rot #19733)43e17b8905fix(service-datasource): emit the authorisedObjectSchema.createshape for object drafts (fix(service-datasource): emit the authorisedObjectSchema.createshape for object drafts #19776)531689c230test(lint): pin the dispatch-contract disarm by an undeclared same-named action, and state it in the docblock (test(lint): pin the dispatch-contract disarm by an undeclared same-named action, and state it in the docblock #19781)cc2e9511c8fix(pm): fleet-write fails closed on an indeterminate liveness read, reads it only behind the proxy re-exec, and stops reading a proxy 403 as a rate limit (fix(pm): fleet-write fails closed on an indeterminate liveness read, reads it only behind the proxy re-exec, and stops reading a proxy 403 as a rate limit #19780)a690c494c0test(plugin-dev): make the tenancy-posture clocked window load-independent (test(plugin-dev): make the tenancy-posture clocked window load-independent #19779)01df025f7ffix(lint): check the autonumber format the runtime resolves, not a local copy (fix(lint): check the autonumber format the runtime resolves, not a local copy #19787)55095cc460fix(spec): composeStacks refuses a non-arrayobjectswith an ADR-0112 envelope (fix(spec): composeStacks refuses a non-arrayobjectswith an ADR-0112 envelope #19783)3f9e2eaa1cfix(spec): list plugin-security's class-field error codes under its own ledger key (fix(spec): list plugin-security's class-field error codes under its own ledger key #19782)628e55dfa6pm: retire the needs:contract-review label from the tree (ruling B step ③) (pm: retire the needs:contract-review label from the tree (ruling B step ③) #19737)2cf9db7c43fix(spec): the gantt, timeline and map binding warnings describe the refusals objectui left, not the floors it deleted (fix(spec): the gantt, timeline and map binding warnings describe the refusals objectui left, not the floors it deleted #19788)fae870352edocs(gates): delete the spec-docblock gate's stale "symbol is ZERO" reason (docs(gates): delete the spec-docblock gate's stale "symbol is ZERO" reason #19786)98d83361d9pm-dispatch: the pre-dispatch in-flight read covers every lane's pm:dispatched claims (pm-dispatch: the pre-dispatch in-flight read covers every lane's pm:dispatched claims #19792)0b83e01627fix(spec): composeStacks refuses a non-array concatenated collection instead of dropping its content (fix(spec): composeStacks refuses a non-array concatenated collection instead of dropping its content #19794)de4ed33fd5docs(pm): a suspended seat account is a dead session — takeover, re-rendered records, retriage, durable state (docs(pm): a suspended seat account is a dead session — takeover, re-rendered records, retriage, durable state #19795)Filed by
.github/workflows/scheduled-full-run-card.yml. Generated by Claude Code