Repository navigation
hourly full run: red on main (CI) #25438
Description
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-10-25T04:33:03.215Z · run log · commit e2b40a264bc3dec751bfda500571d3edbcb161c1 · 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: 4bcc4df649 (run 40132362906, the last green CI schedule run) .. e2b40a264b — compare
fa44dd2559feat(spec): an api flow's start node may name its hook secret (config.secretRef), resolved per post (feat(spec): an api flow's start node may name its hook secret (config.secretRef), resolved per post #25703)0c81694006feat(lint)!: refuse an action's copy-template findings (blank, unbound root, single-brace, logic, raw-shown ${…}) at validate, compile and the publish gate (feat(lint)!: refuse an action's copy-template findings (blank, unbound root, single-brace, logic, raw-shown ${…}) at validate, compile and the publish gate #25702)47af3dde42feat(spec,cli): positions and permission sets are translatable —positionsandpermissionsin the translation bundle (feat(spec,cli): positions and permission sets are translatable —positionsandpermissionsin the translation bundle #25701)992a7e1458docs(skills): objectstack-platform declares engines.protocol '^18', the major the 18.x boot handshake accepts (docs(skills): objectstack-platform declares engines.protocol '^18', the major the 18.x boot handshake accepts #25688)f3d0eabf4fdocs(skills): automation capability table says a declared webhook or auto-launched flow is refused without itsrequirespair (docs(skills): automation capability table says a declared webhook or auto-launched flow is refused without itsrequirespair #25689)04273b9b2cci(release): move stale pre-release dist-tags up to latest after a stable publish (ci(release): move stale pre-release dist-tags up to latest after a stable publish #25691)f6ba1343bafeat(spec,lint)!: refuse allowDelete: false beside modifyAllRecords: true (feat(spec,lint)!: refuse allowDelete: false beside modifyAllRecords: true #25707)769ac809c4tooling(ui-wiring): inert workspace, turbo and CI wiring for the ui/ tree (objectstack#25697 PR A) (tooling(ui-wiring): inert workspace, turbo and CI wiring for the ui/ tree (objectstack#25697 PR A) #25710)1252db9a70fix(cli): os i18n check reads inlineHelpText as the default-locale source of a field help key (fix(cli): os i18n check reads inlineHelpText as the default-locale source of a field help key #25720)e5cf9f049crefactor(metadata-protocol): move the runtime authoring gate and the restored-body doors out of protocol.ts into protocol-authoring-gate.ts ([maintainer] refactor(metadata-protocol): splitsrc/protocol.ts(33,065 lines, +10,169 in 30 days) along itsObjectStackProtocolImplementationseams, one move-only slice per PR #25467 cut 8) (refactor(metadata-protocol): move the runtime authoring gate and the restored-body doors out of protocol.ts into protocol-authoring-gate.ts (#25467 cut 8) #25719)888d686570feat(plugin-approvals): excludeSubmitter keeps the submitter from approving their own request (feat(plugin-approvals): excludeSubmitter keeps the submitter from approving their own request #25722)43edf90b56fix(plugin-security,organizations): seed-ownership claims re-own by row when a stored expression reads owner_id (fix(plugin-security,organizations): seed-ownership claims re-own by row when a stored expression reads owner_id #25724)f3fea0a03drefactor(service-automation): move 14 delete-bearing AutomationEngine bodies into their seam modules (refactor(service-automation): move 14 delete-bearing AutomationEngine bodies into their seam modules #25725)ec4ef94eadrefactor(metadata-protocol): move the credential carry-forward group out of protocol.ts into protocol-credential-carry-forward.ts ([maintainer] refactor(metadata-protocol): splitsrc/protocol.ts(33,065 lines, +10,169 in 30 days) along itsObjectStackProtocolImplementationseams, one move-only slice per PR #25467 cut 9) (refactor(metadata-protocol): move the credential carry-forward group out of protocol.ts into protocol-credential-carry-forward.ts (#25467 cut 9) #25731)c882092b33test(formula): pin the refused direction of the hole placement scan's tag-open and script escape corrections (Email template hole placement: pin the refused direction of the two scan corrections from PR #25212 #25351) (test(formula): pin the refused direction of the hole placement scan's tag-open and script escape corrections (#25351) #25730)40b40bdb18tooling(pm): dispatch-gates git maxBuffer for the merged tree; register matchers proven on the nested ui/ rows (4b PR 1, inert) (tooling(pm): dispatch-gates git maxBuffer for the merged tree; register matchers proven on the nested ui/ rows (4b PR 1, inert) #25732)4cc17db3c0docs(adr): ADR-0126 stops deferring the package-upgrade.zod.ts retirement; ADR-0138 D5 says who opens a future site binding (docs(adr): ADR-0126 stops deferring the package-upgrade.zod.ts retirement; ADR-0138 D5 says who opens a future site binding #25716)0189524a41refactor(service-automation): move AutomationEngine.resumeInternal's body into run-resume.ts ([maintainer] refactor(service-automation): splitsrc/engine.ts(13,735 lines, +2,199 in 30 days) along itsAutomationEngineseams, one move-only slice per PR #25222 slice 8b) (refactor(service-automation): move AutomationEngine.resumeInternal's body into run-resume.ts (#25222 slice 8b) #25734)0dc4b5d52dfix(rest)!: answer 404 RESOURCE_NOT_FOUND for an unknown resource at the package draft, flow runs and datasource by-name doors (fix(rest)!: answer 404 RESOURCE_NOT_FOUND for an unknown resource at the package draft, flow runs and datasource by-name doors #25628)3b8ea15c21fix(storage)!: an unclaimed file is served only within its organization (fix(storage)!: an unclaimed file is served only within its organization #25704)e44a1ffc4dfix(objectql)!: store a code package's action as its ActionSchema parse, so a bound action's requiresFeature is lowered (fix(objectql)!: store a code package's action as its ActionSchema parse, so a bound action's requiresFeature is lowered #25699)e2b40a264bfix(rest)!: an anonymous public-form submission carries no file (fix(rest)!: an anonymous public-form submission carries no file #25682)
Filed by.github/workflows/scheduled-full-run-card.yml. Generated by Claude Code
Activity
marchtian commentedon Oct 23, 2026
Reading of this red, and the fix in flight (project thread, session
session_01CBtjEGZifSHGenaRcRBKYb).Console Pin Gatein run 39957864963 at925fd0772c.@object-ui/plugin-view#buildfails its declaration emit atObjectView.tsx:2615, ending "Types of property 'source' are incompatible. Type 'string | undefined' is not assignable to type 'string'".confirmTextatemplateslot. The spec's envelope is itsExpressionshape, sosourceis optional. objectui'sBulkActionDef.confirmText(objectui#13183) typed the envelope'ssourceas required.4603b8c4ec99, the current objectuimain.sourceas optional, in the TS type and its zod twin. With it applied in this repo's console build tree,plugin-viewbuilds, and the touched packages type-check and test green..objectui-shapast objectui#13370. This gate goes green on the next full run after that lands. fix(spec): a dataset dimension's nullLabel is live; move the objectui pin past its reader #25437 moves the same file, and whichever lands second takes the other's pin.Generated by Claude Code
chore(console): move the objectui pin on to 6fb31dcc9954, past object…
objectstack-fleet commentedon Oct 23, 2026
Red again: cause and fix route · triage seat ·
session_01AavokzJ5DndAwitDXvKy4U· 2026-10-23T20:55ZCI40015953606 on1ff43b67ea(20:01Z) failsConsole Pin GatewithTS2741in objectuipackages/auth/src/org-roles.ts:67:ORG_ROLE_LABELSlacksexternal.Spec Shape Gate40014906665 (19:53Z) reports the same.9019af9fe6(feat(security): an external organization role — portal users read their own identity rows and reach data only through explicit grants #25515, objectstack#25233 stage 1). It addsexternalto the spec's built-in membership roles. The last green hourly run was 19:01Z onaa2dbab7b6.externalentry, so after objectstack#25233 stage 1 adds the role to BUILTIN_MEMBERSHIP_ROLES the console no longer type-checks — objectstack Console Pin Gate and Spec Shape Gate are red objectui#13427 (p1, the role table and labels), then chore(console): move the objectui pin past theexternalorg-role fix (objectui#13427), so Console Pin Gate and Spec Shape Gate go green again after #25515 — before the 18.1.0 merge #25537 (p1, the pin move,Blocked-by:the objectui card).Generated by Claude Code