You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Bump .objectui-sha past objectui a5841be351 (objectui#11028), which also carries objectui#11008 and objectui#10964 — the one pin move #20287, #20578 and #20293 wait on #20638
Filing gate: ④ a coordination node. Three held cards wait on the same .objectui-sha move. One bump card means their claimants don't each move the pin. Filed by the triage seat (#6015, session session_01AavokzJ5DndAwitDXvKy4U) at its R34 unlock scan. It follows the shape of #20029, the last bump card (tooling · p2 · domain:devx).
The objectui changesets in the range, with the breaking ones listed in the PR body. They are declared breaking on objectui's own surfaces.
Optional timing: objectui's own 17.5.0 bump (objectui#11073, PR objectui#11086) may land first. A pin taken after it is fine and preferred, but ⛔ not required.
Acceptance
compare shows the new pin contains all three commits above.
The console boots at the new pin.
Each held card's own restart probe runs at its claim. ⛔ This card doesn't do their work.
Dedupe: no open card on objectstack carries a .objectui-sha bump. #20029 (closed) was the last one.
Triage: regraded p2 → p1. This bump now carries the fix for a p1 17.5.0 regression into objectstack's next release, so it waits for PR objectui#11119, then lands before that release
Triage seat (objectstack-wide, seat post #6015) · session_01AavokzJ5DndAwitDXvKy4U · 2026-09-29T16:00Z. ⛔ Not a claim, ⛔ not a dispatch.
objectui#11105 (p1) is a 17.5.0 regression: a server-grouped grid with object columns errors in every group, measured on hotcrm's default Products, Knowledge Articles and Forecasts lists. Its fix is PR objectui#11119, in flight.
@objectstack/console bundles objectui at .objectui-sha, so the fix reaches objectstack's next release only through this bump. That is why this card takes the regression's ceiling.
The target rule gains one row: the pin must also contain PR objectui#11119's merge. So take the pin after it merges, and land this before the maintainer merges the next Version Packages PR.
Unlock scan: this bump's last precondition is met — take it now
Triage seat (objectstack-wide, seat post #6015) · session_01AavokzJ5DndAwitDXvKy4U · 2026-09-29T18:08Z. ⛔ Not a claim, ⛔ not a dispatch.
PR objectui#11119 merged at 2026-09-29T16:12Z as 3100bef65c. It is the fix for objectui#11105's p1 grouped-grid regression that this bump must carry (5893881742).
The target rule is unchanged: any objectui main commit that contains all six of a5841be351, 99878d8e3a, 49f76725aa, ae582b70a, 5b2ea17570 and 3100bef65c. objectui main at claim time does.
the two tracked files node scripts/gen-sdui-manifest-node.mjs rewrites: sdui.manifest.json and scripts/sdui-manifest.record.json;
the @objectstack/console changeset the bump script writes;
nothing else, unless a gate on the new pin demands it. Stop and report in that case.
Stop on a breach and explain it in the report.
Container & model: M (a pin bump with a manifest regeneration and gates), mode:subagent, model: sonnet
Clause-②: no.
Thread-read: 5895893448
Serial constraints cleared: board read at 2026-09-29T18:52Z. All 10 open PRs' diffs were read: 0 touch .objectui-sha, sdui.manifest.json or scripts/sdui-manifest.record.json. The pin on origin/main31ed067639 is dd3f7e1be3.
Target rule, from triage 5895893448: an objectui main commit that contains all six of a5841be351, 99878d8e3a, 49f76725aa, ae582b70a, 5b2ea17570 and 3100bef65c. The dev verifies each containment and the on-main property, and does not copy them from the thread.
Ordering: this lands before the next Version Packages merge (#20639 is open). If .objectui-sha is a governed surface, the PR stops at open and awaits its tier's record. This seat does not enable automerge on a governed PR.
Priority: p1, regraded in 5893881742: it carries the objectui#11105 regression fix into the next release. So rule 3 does not apply.
{
"issue": 20638,
"status": "rework",
"branch": "claude/issue-20638-bump-objectui-pin",
"pr": "https://github.com/objectstack-ai/objectstack/pull/20706",
"summary": "Pin moved dd3f7e1be356 -> db11afd4967c (objectui main HEAD, contains all six commits; ships @object-ui 17.6.0, on npm). Console builds at the new pin, manifest+record regenerated. Left as rework: three gates red, each needs something outside the card's file surface or a human answer (ADR-0087 disposition in the changeset; sdui-parser lockstep re-record; 49 spec pin citations). Governed: no.",
"containment": "a5841be351 0, 99878d8e3a 0, 49f76725aa 0, ae582b70a 0, 5b2ea17570 0, 3100bef65c 0, control dd3f7e1be3 0; objectui full clone (not shallow); target listed under origin/main",
"tests": "32 of 35 derived gates exit 0 at 20f16e8990. Red: check-adr-0087-registration (placeholder), check:objectui-pin-citations (49 sources), check:sdui-lockstep (pin-moved). NOT MEASURED: Console Pin Gate CI job, typecheck lanes, Test Core shards (CI-owned).",
"mcp_calls": "1 (list_pull_requests, read only)",
"api_writes": "1 (fleet-write relay pr_create, run 36617789769) + this comment",
"open_questions": [
{"question": "ADR-0087 disposition in .changeset/console-db11afd4967c.md", "options": ["A not-required (no-migration-prescription), as in #20436 plus Clause-② no", "B other"], "recommendation": "A. My edit of the placeholder was refused by the auto-mode classifier and the script says a human must answer, so I left it."},
{"question": "Follow-up dispatch for packages/sdui-parser/objectui-lockstep.json (pnpm gen:sdui-lockstep) and the 49 packages/spec pin citations", "options": ["A one follow-up dispatch on this branch widening the file surface", "B split"], "recommendation": "A, as #20436 and #20036 did."}
],
"out_of_scope_findings": []
}
Claim: takeover by the maintainer's order (the tail of PR #20706: the ADR-0087 disposition, a base merge, the boot check, review and landing)
Session: session_014EJ1ED8X4MMrT18BhVx4tx
Account: os-tesla (the card's assignee from this act)
Branch: claude/issue-20638-bump-objectui-pin (continued, not a new branch; merge commits only, ⛔ no rebase or force-push)
Worktree: objectstack-issue-20638
Domain: domain:devx
Seat: none. This session signed off domain:spec seat 2 (brief 5903276505 on #18549) and takes this one card on the maintainer's direct order, outside any lane seat.
File surface: PR #20706's existing 20 paths and nothing wider.
origin/main merged in through bash scripts/pm/os-regen-merge.sh, with regeneration only for the generated files: migrations/registry.ts, content/docs/references/**, sdui.manifest.json and its record.
Any lockstep or pin-citation re-measure that a moved main makes owed is limited to the files already in the PR.
(stop on breach; explain in the report)
Container & model: M, mode:subagent, model: opus. The spec half re-measures pin citations in packages/spec/src describes and migration-entry text, and qualifies one falsified record in view.zod.ts, so an at-tier contract review is owed before enqueue.
Clause-②: no
Thread-read: 5896951506
Serial constraints cleared: read at 2026-09-30T03:34Z against origin/main0d9349fea0, over the 11 open PRs.
No open PR touches .objectui-sha, the sdui manifest or record, the lockstep file, or the spec sources this PR re-measures.
Maintainer's ruling on the open question (the ADR-0087 disposition the bump script leaves to a human, objectstack#6494), given in this session's chat at 2026-09-30T03:34Z: of the two options put to them, the maintainer chose 「not-required (推荐)」, which is not-required (no-migration-prescription), worded as in #20436. The reason put to them: the diff moves the pin and what travels with it, and adds, removes or renames no ObjectStack-authorable key.
Release: session_01VDtqoecgES7ScQYGbFVDRv (claim 5896593369, domain:devx#1, assignee baozhoutao) · cause: the maintainer's takeover order · destination: this claim. The assignee moves baozhoutao → os-tesla on the card, and PR #20706 gains os-tesla, in this act.
Provenance (whose instruction / verbatim / where): the maintainer, in this session's chat (session_014EJ1ED8X4MMrT18BhVx4tx): 「20638 你接手处理」.
Still owed by the card's Acceptance: a boot of the console built by scripts/build-console.sh at the new pin, driven past first-run registration (the #20436 precedent). The PR does not record one yet.
{
"issue": 20638,
"status": "done",
"branch": "claude/issue-20638-bump-objectui-pin",
"pr": "https://github.com/objectstack-ai/objectstack/pull/20706",
"session": "session_014EJ1ED8X4MMrT18BhVx4tx (subagent run: the dispatching session's id)",
"premise_still_valid": true,
"summary": "Took over PR #20706 at d8bac3877d. (1) The adr-0087 placeholder in .changeset/console-db11afd4967c.md now carries the maintainer's disposition, not-required (no-migration-prescription), per takeover claim 5903537467. Its reason block is worded after 3cf6449389 and is true of this diff: it names the pin-citation re-measure as text-only (comments, the FormField.span describe, six migration-entry descriptions), and the 6 upstream breaking entries as objectui's own surfaces (@object-ui/types, @object-ui/core, @object-ui/plugin-dashboard). Commit b4cd814ec2. (2) origin/main 7053333e1e merged through os-regen-merge.sh, merge commit ef6276c0e9. Only registry.ts overlapped; it text-merged and check:migration-registry reads it current, so no regeneration commit was owed. (3) The console built by build-console.sh at db11afd4967c boots from a zero-user database, and headless Chromium drove it through /setup registration to the first app pages with 0 pageerrors and 0 TypeError. All 125 derived gates exit 0 at ef6276c0e9, including dual-build-cjs-loads and type-check-debt, which the previous run could not measure. The PR stays draft, with an unchanged file list of 20 paths and no governed path.",
"containment": "REST compare COMMIT...db11afd4967c: a5841be351, 99878d8e3a, 49f76725aa, ae582b70a, 5b2ea17570 and 3100bef65c each read status=ahead, behind_by=0 (contained). Control: old pin dd3f7e1be356 reads ahead_by=113, behind_by=0. On main: compare db11afd4967c...main reads ahead, ahead_by=21, behind_by=0, so the pin is an ancestor of objectui main.",
"tests": "All at ef6276c0e9. (a) pnpm --filter @objectstack/spec exec vitest run --project local --maxWorkers=2, through os-verify-lock: Test Files 576 passed (576), Tests 16991 passed, 1 todo; VERDICT command-exit 0. (b) pnpm --filter @objectstack/spec run typecheck: exit 0 (tsc; check:test-typecheck OK, 53 files and 251 errors held in the debt ledger). (c) @objectstack/sdui-parser: vitest 12 files, 199 passed; tsc --noEmit exit 0; VERDICT command-exit 0. (d) Whole-workspace build turbo run build --filter=!@objectstack/docs --concurrency=2: 72/72 tasks, VERDICT command-exit 0, and the tree stayed clean afterwards. No ablation or reverse verification: this run adds no gate, assertion or type.",
"gates": {
"derivation": "node scripts/pm/dispatch-gates.mjs --repo objectstack-ai/objectstack --commands over merge base 7053333e1e..HEAD ef6276c0e9: 20 paths, 125 commands.",
"reconcile": "--ran with an exit code per line: 125 derived, 125 run, 0 NOT-MEASURED, 0 UNRUN; the zero is derived from the recorded codes.",
"result": "125 of 125 exit 0 at ef6276c0e9. Each code was captured by redirecting first and reading it before any pipe.",
"named": "check-adr-0087-registration --base origin/main: exit 0, 1 declared-breaking changeset carries not-required (no-migration-prescription); the gate accepted it with the objectui-derived entry list unchanged. check:sdui-lockstep: exit 0, byte-identical to objectui@db11afd4967c over 214 grammar lines, all 26 codes agree. check:objectui-pin-citations: exit 0, 49 asserting citations match. Its 7 anchor-content assertions read NOT VERIFIED against the shared shallow /home/user/objectui, which lacks the pin; re-run with OBJECTUI_ROOT at a checkout carrying the pin: 7 verified, exit 0. check:generated: exit 0. check:migration-registry: exit 0 (323 semantic, 237 retired-key, 207 retired-def). check:console-sha: exit 0. check:console-injection: exit 0. check:dual-build-cjs-loads: exit 0. check:type-check-debt: exit 0 (4 entries re-measured, none above record).",
"extra": "node scripts/check-sdui-manifest.mjs --require-objectui, beyond the derivation: exit 1 against the shared /home/user/objectui (a prerequisite miss: the pin commit is absent there, not a verdict), then exit 0 against a checkout carrying the pin (107 components, @object-ui 17.6.0).",
"spec_injection": "Hypothesis 5 holds. build-console.sh at db11afd4967c, with this tree's spec injected, ran main's scripts/assert-console-spec-injection.mjs (PR #20743 fix): Console bundle carries THIS tree's @objectstack/spec, and only it. 105 of 145 injected-only descriptions are present and all 160 published-only ones are absent. Bundle canary import/jobs present. Dist 62200 KB. chunk-membership.json reads client in vendor-objectstack.",
"not_measured": "CI-owned, not run locally: the Console Pin Gate job, Test Core shards, Dogfood Regression Gate, Build Core and Build Docs jobs, and the four type-check lanes, as dispatch-gates lists them. Their state is in_progress/pending on ef6276c0e9."
},
"boot": {
"build": "bash scripts/build-console.sh at .objectui-sha db11afd4967c, through os-verify-lock: VERDICT command-exit 0 (6m42s). OBJECTUI_ROOT pointed at a private depth-1 objectui source carrying the pin; the shared /home/user/objectui was not touched.",
"server": "examples/app-showcase: objectstack dev --ui --fresh --no-seed-admin -p 41873 (OS_PORT=41873). Console mounted at /_console/. GET /api/v1/auth/bootstrap-status answered 200 {hasOwner:false} before the drive, so the database was zero-user.",
"drove": "Headless Chromium 1194 via /opt/pw-browsers/chromium. Opened /_console/setup. Filled name, orgName, email and password, then submitted. The wizard exited with a full-document navigation to /_console/, which resolved to /_console/home. A second context signed in through /_console/login as the new owner and opened Showcase and Setup from the launcher.",
"saw": "Registration completed: bootstrap-status flipped to {hasOwner:true}, and in-page get-session returned the new owner with positions platform_admin, org_owner and everyone, isPlatformAdmin true. The home launcher rendered Your apps 2 (Showcase, Setup), and the owner's app list is showcase_app, setup and account. First app page: Showcase opened /_console/apps/com.example.showcase/page/showcase_capability_map, and the Capability Map html page rendered with its sidebar, with no compile error. Setup opened /_console/apps/com.objectstack.setup/dashboard/system_overview. pageerrors 0, TypeError 0, 5xx 0 across both passes. The only non-2xx responses: 401 GET /api/v1/auth/get-session before sign-in, and 404 GET /api/v1/usage/storage, which #20436 recorded at the old pin too.",
"note": "The first drive attempt opened /_console/ and expected a redirect to /setup. On an ownerless deployment the root lands on /_console/login, and that is the same at both pins: LoginPage.tsx carries 0 setup or bootstrap references at dd3f7e1be356 and at db11afd4967c, and App.tsx is unchanged. So /setup is the wizard's entry, as #20436 drove it. That attempt made no writes, and the second attempt ran against the same still-ownerless server.",
"teardown": "Killed only the two recorded PIDs, 542 (dev) and 559 (serve on 41873). The port is free, and the --fresh tempdir went with the process."
},
"line_budget": "The PR diff vs origin/main 7053333e1e is 20 files, +565/-166 = 731 changed lines, under the 5000-line human-merge threshold (dispatch-gates reading). This run's own authored change is +20/-1 in one file. No skills/** path is touched, so no SKILL.md line budget applies.",
"deviations": [
"The console build used OBJECTUI_ROOT pointed at a private depth-1 objectui source in the scratchpad. Otherwise build-console.sh would fetch into, and add a worktree under, the shared /home/user/objectui clone. The build output is the same pinned tree (HEAD verified equal to the pin by the script).",
"origin/main moved after the merge, from 7053333e1e to c9c182ed14 (2 commits: f284ab26dd docs(adr), and c9c182ed14 fix(spec)!, which adds a migration entry). c9c182ed14 touches packages/spec/src/migrations/registry.ts, the one generated file this PR shares. It was not merged. A probe, with main fetched into a private ref that was then deleted, gave git merge-tree --write-tree exit 0 (clean). The merged registry.ts would differ from c9c182ed14's by the same 22+/21- description lines as now, so main's new rows survive a text merge. The pre-landing merge picks it up; check:migration-registry arbitrates on that head.",
"os-regen-merge.sh step 3 reported that the merge left no additional changes to commit. view.mdx kept the branch's bytes: the branch changed it and main did not. No os-regen-pending record was left, and the pre-push hook accepted the merge push. So there is no separate regeneration commit: nothing was stale."
],
"files_changed": [
".changeset/console-db11afd4967c.md: the adr-0087 placeholder line becomes the not-required (no-migration-prescription) disposition and its reason block (+20/-1), commit b4cd814ec2",
"merge commit ef6276c0e9: origin/main 7053333e1e into the branch, main's content only; the PR file list is unchanged at the same 20 paths"
],
"pr_body_lines": [
"EDIT 1. Replace the whole section headed 'Still open' with a section headed 'Resolved since the first report', with these bullets: (a) ADR-0087 disposition, the maintainer's ruling (takeover claim 5903537467): .changeset/console-db11afd4967c.md now carries adr-0087: not-required (no-migration-prescription), worded as in #20436. The diff moves the pin and what travels with it, and adds, removes or renames no ObjectStack-authorable key. The pin-citation re-measure changes describe and migration-entry text only. The 6 declared-breaking entries are objectui's own surfaces (@object-ui/types, @object-ui/core, @object-ui/plugin-dashboard). check-adr-0087-registration --base origin/main exits 0. (b) Base: origin/main 7053333e1e merged at ef6276c0e9 through scripts/pm/os-regen-merge.sh. Only packages/spec/src/migrations/registry.ts overlapped; it text-merged and check:migration-registry reads it current. (c) The two local NOT MEASURED gates now run green: check:dual-build-cjs-loads and check:type-check-debt both exit 0 after a whole-workspace build.",
"EDIT 2. Add a section headed 'Boot at the new pin' with these bullets: (a) scripts/build-console.sh at db11afd4967c: this tree's client and spec injected, canary present. assert-console-spec-injection passes: 105 of 145 injected-only descriptions present, all 160 published-only absent. chunk-membership reads client in vendor-objectstack. (b) examples/app-showcase booted with objectstack dev --ui --fresh --no-seed-admin; bootstrap-status read hasOwner false. (c) Headless Chromium opened /_console/setup and submitted the owner form. bootstrap-status flipped to hasOwner true, and the session is the new owner (platform_admin, org_owner). The exit landed on /_console/home with Showcase and Setup listed. (d) Signed in again through /_console/login. Showcase opens its Capability Map html page and Setup opens System Overview. 0 page errors, 0 TypeError, 0 5xx. The only 404 is GET /api/v1/usage/storage, as at the old pin.",
"EDIT 3. In the section headed 'Follow-up', replace the last bullet (the one ending 'Not added here; the PM decides.') with: 'These edits ship inside published text, so .changeset/objectui-pin-citations-db11afd4967c.md carries an @objectstack/spec patch (commit d8bac3877d).'",
"EDIT 4. In the section headed 'Governed surface', change 'None of the 19 changed paths' to 'None of the 20 changed paths'.",
"EDIT 5. Replace the final line beginning 'Gates at head db448bfbe0' with: 'Gates at head ef6276c0e9: 125 derived, 125 run, 0 NOT-MEASURED, 0 unrun; all 125 exit 0. packages/spec tests 16991 passed (576 files); sdui-parser 199 passed; spec and sdui-parser typecheck clean.'"
],
"mcp_calls": "0",
"api_writes": "1 REST write: this os-dev-report comment on #20638 (POST issues/20638/comments through scripts/pm/post-stamped.mjs). git push is not a REST write: 3 pushes, a no-op probe, b4cd814ec2 and ef6276c0e9. No PR body edit, no label write, no assignee write.",
"open_questions": [],
"out_of_scope_findings": [
"observation, not filed: on a zero-owner deployment, /_console/ lands on /_console/login, not the /setup wizard, and the server banner does not name /setup. It is identical at the old pin dd3f7e1be356 (LoginPage.tsx has 0 setup or bootstrap references at both pins), so this range does not cause it. It lives in objectui's console, and whether the login page's Sign up link bootstraps an owner was not measured. carrier: 承接者:无 · noted, not filed",
"observation, not filed: at the owner's sign-up, the showcase flow showcase_task_done_notify_owner logs 10 [expand] warnings. These are the runtime's deliberate runAs refusals ('effective runAs is user but no trigger user could be resolved') on system-context writes. They are server-side and independent of the console pin. carrier: 承接者:无 · noted, not filed"
]
}
ACCEPT — PR #20706 at head ef6276c0e9 (the takeover round) · session session_014EJ1ED8X4MMrT18BhVx4tx (os-tesla), on the maintainer's order · 2026-09-30T04:43Z
The seat reviewed the takeover round's report 5904014004 against GitHub and the diff.
PR shape
Draft, base main, first line Fixes #20638, Clause-②: no, assignee os-tesla.
20 files (+565 / −166): .objectui-sha, the sdui manifest and its record, the lockstep file, the pin-citation re-measure in packages/spec/src (with the regenerated registry.ts and view.mdx), and two changesets (@objectstack/consoleminor, @objectstack/specpatch).
NOT governed; 731 changed lines, under the human-merge threshold.
What it does
The console pin moves dd3f7e1be356 → db11afd4967c, which is on objectui main and ships @object-ui/console 17.6.0.
The new pin contains all six target commits, including 3100bef65c, the objectui#11105 p1 fix this bump carries into the next release.
The pin read-points (the lockstep and 49 spec citations) are re-measured at the new pin, not re-labelled.
The disposition line replaced the placeholder: +20 / −1 in one file.
origin/main merged at ef6276c0e9 through os-regen-merge.sh, with no regeneration owed.
The boot the card's Acceptance requires is now recorded:build-console.sh at the new pin, a zero-user database, /setup registration through to the Showcase and Setup pages, with 0 page errors, 0 TypeError and 0 5xx.
125 of 125 derived gates exit 0. The seat's own reading of the spec half: every non-comment change is recorded data (the lockstep), rationale-string text in the six 18.*-unit-in-key.ts entries, or the FormField.span describe sentence.
At-tier contract review:5904174450 on the PR, at CONTRACT_REVIEW_TIER, on this head — PASS.
The six target commits are contained, and the pin is on objectui main.
The spec and sdui-parser half is text only.
The re-measured numbers were re-taken at the pin, including the falsified-then-qualified ListMapConfigSchema record, whose new wording is true.
The console changeset's derivation reproduces (99 changesets, no major → minor). Every sentence of the ADR-0087 reason block holds, including "objectui's own package surfaces" (@object-ui/types, core, plugin-dashboard).
The seat checked the review's transcript: served at tier, read-only, 0 MCP calls, and one write (its comment).
Deviations, adopted
The console build pointed OBJECTUI_ROOT at a private objectui source carrying the pin, so the shared clone was not touched.
main moved after the merge (c9c182ed14 adds a migration entry to registry.ts). The review confirms it is text-disjoint, and the queue build judges the combination.
The PR body was stale. The seat applied the dev's five pr_body_lines edits and read them back identical, because the body becomes the landing commit's message.
Findings
On an ownerless deployment, /_console/ lands on the login page rather than the /setup wizard. It is the same at the old pin, so this range does not cause it → dropped for this card (objectui's console, not measured further).
A showcase flow logs 10 deliberate runAs refusals at the owner's sign-up. That is server-side and independent of the pin → dropped.
Landing: when every check on this head is concluded, green or a roster skip, the seat runs its gated pre-landing checks, flips it ready and arms auto-merge. Fixes #20638 closes the card. The card is on the release path, so it must land before the next Version Packages merge (#20639). Its landing unblocks #20287, #20578, #20293, #20313, #20299 and #20694, each through its own restart probe.
Landed — PR #20706 → a3d7588b56; card closed · session session_014EJ1ED8X4MMrT18BhVx4tx (os-tesla), on the maintainer's takeover order · 2026-09-30T05:21Z
Merged through the merge queue at 05:20:09Z as a3d7588b56. Before it went in, this seat checked:
the ACCEPT 5904201930 and the at-tier PASS 5904174450;
its gated pre-landing checks on ef6276c0e9: 42 check-runs, all green or roster skips; check-expected-skips exit 0; the merge probe against f7c6d65f53, exit 0.
Verified by content on origin/main:
19 of the 20 files are blob-identical to the reviewed head.
The 20th, the generated packages/spec/src/migrations/registry.ts, also moved on main in between. The PR's own change to it landed unaltered: its git patch-id --stable equals the landed diff's (dae41de5f24a).
.objectui-sha on main now reads db11afd4967cd9d39381c5e21dc2deec9d706204.
The console pin moves dd3f7e1be356 → db11afd4967c (objectui main, @object-ui/console 17.6.0). It contains all six target commits, including 3100bef65c, the objectui#11105 p1 fix.
The lockstep and the 49 spec pin citations are re-measured at the new pin.
The console boots at the new pin through first-run registration.
The ADR-0087 disposition is the maintainer's: not-required (no-migration-prescription).
Activity
objectstack-fleet commentedon Sep 29, 2026
Addendum from the unlock scan: two more holds join this bump. The target rule is unchanged
Triage seat (objectstack-wide, seat post #6015) ·
session_01AavokzJ5DndAwitDXvKy4U· 2026-09-29T14:02Z. ⛔ Not a claim, ⛔ not a dispatch.Two more holds. Two more cards now wait on this pin move, each re-derived to
Blocked-by: #20638in this round:compare <commit>...dd3f7e1be356ae582b70a, PR objectui#11089 (objectui#11026)behind,behind_by=925b2ea17570, PR objectui#11098 (objectui#11027)behind,behind_by=96Unblocks: #20287, #20578, #20293, #20313, #20299
The target rule is unchanged: any objectui
maincommit that contains every listed commit. objectuimainat claim time contains all five.objectstack-fleet commentedon Sep 29, 2026
Triage: regraded p2 → p1. This bump now carries the fix for a p1 17.5.0 regression into objectstack's next release, so it waits for PR objectui#11119, then lands before that release
Triage seat (objectstack-wide, seat post #6015) ·
session_01AavokzJ5DndAwitDXvKy4U· 2026-09-29T16:00Z. ⛔ Not a claim, ⛔ not a dispatch.columnserrors in every group, measured on hotcrm's default Products, Knowledge Articles and Forecasts lists. Its fix is PR objectui#11119, in flight.@objectstack/consolebundles objectui at.objectui-sha, so the fix reaches objectstack's next release only through this bump. That is why this card takes the regression's ceiling.hono@4.13.3on the@objectstack/cli→@objectstack/mcp→@modelcontextprotocol/sdkpath — the raisedhonofloor does not reach it #20622). This card is on the triage seat's pre-release checklist.objectstack-fleet commentedon Sep 29, 2026
Unlock scan: this bump's last precondition is met — take it now
Triage seat (objectstack-wide, seat post #6015) ·
session_01AavokzJ5DndAwitDXvKy4U· 2026-09-29T18:08Z. ⛔ Not a claim, ⛔ not a dispatch.3100bef65c. It is the fix for objectui#11105's p1 grouped-grid regression that this bump must carry (5893881742).maincommit that contains all six ofa5841be351,99878d8e3a,49f76725aa,ae582b70a,5b2ea17570and3100bef65c. objectuimainat claim time does.hono@4.13.3on the@objectstack/cli→@objectstack/mcp→@modelcontextprotocol/sdkpath — the raisedhonofloor does not reach it #20622, [finding] spec(migrations): the ui-html-page-div-refused entry's why text says dev and start run compile first; they do only when the artifact is missing or --compile is passed #20649). This p1 is stillpm:queueand unclaimed, and it must land before the next Version Packages merge.objectstack-fleet commentedon Sep 29, 2026
Claim: PM loop round 20
Session:
session_01VDtqoecgES7ScQYGbFVDRvBranch:
claude/issue-20638-bump-objectui-pinWorktree:
objectstack-issue-20638Domain:
domain:devxSeat:
domain:devx#1File surface:
.objectui-sha, viascripts/bump-objectui.sh;node scripts/gen-sdui-manifest-node.mjsrewrites:sdui.manifest.jsonandscripts/sdui-manifest.record.json;@objectstack/consolechangeset the bump script writes;Stop on a breach and explain it in the report.
Container & model:
M(a pin bump with a manifest regeneration and gates),mode:subagent,model: sonnetClause-②: no.
Thread-read: 5895893448
Serial constraints cleared: board read at 2026-09-29T18:52Z. All 10 open PRs' diffs were read: 0 touch
.objectui-sha,sdui.manifest.jsonorscripts/sdui-manifest.record.json. The pin onorigin/main31ed067639isdd3f7e1be3.Target rule, from triage
5895893448: an objectuimaincommit that contains all six ofa5841be351,99878d8e3a,49f76725aa,ae582b70a,5b2ea17570and3100bef65c. The dev verifies each containment and the on-main property, and does not copy them from the thread.Ordering: this lands before the next Version Packages merge (#20639 is open). If
.objectui-shais a governed surface, the PR stops at open and awaits its tier's record. This seat does not enable automerge on a governed PR.Priority: p1, regraded in
5893881742: it carries the objectui#11105 regression fix into the next release. So rule 3 does not apply.Generated by Claude Code
objectstack-fleet commentedon Sep 29, 2026
os-dev-report
{ "issue": 20638, "status": "rework", "branch": "claude/issue-20638-bump-objectui-pin", "pr": "https://github.com/objectstack-ai/objectstack/pull/20706", "summary": "Pin moved dd3f7e1be356 -> db11afd4967c (objectui main HEAD, contains all six commits; ships @object-ui 17.6.0, on npm). Console builds at the new pin, manifest+record regenerated. Left as rework: three gates red, each needs something outside the card's file surface or a human answer (ADR-0087 disposition in the changeset; sdui-parser lockstep re-record; 49 spec pin citations). Governed: no.", "containment": "a5841be351 0, 99878d8e3a 0, 49f76725aa 0, ae582b70a 0, 5b2ea17570 0, 3100bef65c 0, control dd3f7e1be3 0; objectui full clone (not shallow); target listed under origin/main", "tests": "32 of 35 derived gates exit 0 at 20f16e8990. Red: check-adr-0087-registration (placeholder), check:objectui-pin-citations (49 sources), check:sdui-lockstep (pin-moved). NOT MEASURED: Console Pin Gate CI job, typecheck lanes, Test Core shards (CI-owned).", "mcp_calls": "1 (list_pull_requests, read only)", "api_writes": "1 (fleet-write relay pr_create, run 36617789769) + this comment", "open_questions": [ {"question": "ADR-0087 disposition in .changeset/console-db11afd4967c.md", "options": ["A not-required (no-migration-prescription), as in #20436 plus Clause-② no", "B other"], "recommendation": "A. My edit of the placeholder was refused by the auto-mode classifier and the script says a human must answer, so I left it."}, {"question": "Follow-up dispatch for packages/sdui-parser/objectui-lockstep.json (pnpm gen:sdui-lockstep) and the 49 packages/spec pin citations", "options": ["A one follow-up dispatch on this branch widening the file surface", "B split"], "recommendation": "A, as #20436 and #20036 did."} ], "out_of_scope_findings": [] }objectstack-fleet commentedon Sep 30, 2026
Claim: takeover by the maintainer's order (the tail of PR #20706: the ADR-0087 disposition, a base merge, the boot check, review and landing)
Session:
session_014EJ1ED8X4MMrT18BhVx4txAccount:
os-tesla(the card's assignee from this act)Branch:
claude/issue-20638-bump-objectui-pin(continued, not a new branch; merge commits only, ⛔ no rebase or force-push)Worktree:
objectstack-issue-20638Domain:
domain:devxSeat: none. This session signed off
domain:specseat 2 (brief5903276505on #18549) and takes this one card on the maintainer's direct order, outside any lane seat.File surface: PR #20706's existing 20 paths and nothing wider.
origin/mainmerged in throughbash scripts/pm/os-regen-merge.sh, with regeneration only for the generated files:migrations/registry.ts,content/docs/references/**,sdui.manifest.jsonand its record..changeset/console-db11afd4967c.md, only theadr-0087:line changes: the placeholder becomes the maintainer's disposition (below), worded as in chore(objectui): bump the console pin to dd3f7e1be356 (carries the injected-client boot fix) with the showcase div→box and trash-icon follow-through #20436.mainmakes owed is limited to the files already in the PR.(stop on breach; explain in the report)
Container & model:
M,mode:subagent,model: opus. The spec half re-measures pin citations inpackages/spec/srcdescribes and migration-entry text, and qualifies one falsified record inview.zod.ts, so an at-tier contract review is owed before enqueue.Clause-②: no
Thread-read: 5896951506
Serial constraints cleared: read at 2026-09-30T03:34Z against
origin/main0d9349fea0, over the 11 open PRs.ClockTimeValueSchemastill admits a zone-suffixed time of day, so aField.timedefault of10:00Zpublishes and then fails every insert that falls back to it #20740) shares a path: the generatedpackages/spec/src/migrations/registry.ts. That is ordinary concurrency, and the later lander regenerates..objectui-sha, the sdui manifest or record, the lockstep file, or the spec sources this PR re-measures.Maintainer's ruling on the open question (the ADR-0087 disposition the bump script leaves to a human, objectstack#6494), given in this session's chat at 2026-09-30T03:34Z: of the two options put to them, the maintainer chose 「not-required (推荐)」, which is
not-required (no-migration-prescription), worded as in #20436. The reason put to them: the diff moves the pin and what travels with it, and adds, removes or renames no ObjectStack-authorable key.Release:
session_01VDtqoecgES7ScQYGbFVDRv(claim5896593369,domain:devx#1, assigneebaozhoutao) · cause: the maintainer's takeover order · destination: this claim. The assignee movesbaozhoutao→os-teslaon the card, and PR #20706 gainsos-tesla, in this act.session_014EJ1ED8X4MMrT18BhVx4tx): 「20638 你接手处理」.d8bac3877d(4 commits). The lastos-dev-reportis5896951506(rework). The PR body's "Still open" names the placeholder as its one red gate.Still owed by the card's Acceptance: a boot of the console built by
scripts/build-console.shat the new pin, driven past first-run registration (the #20436 precedent). The PR does not record one yet.Generated by Claude Code
objectstack-fleet commentedon Sep 30, 2026
os-dev-report
{ "issue": 20638, "status": "done", "branch": "claude/issue-20638-bump-objectui-pin", "pr": "https://github.com/objectstack-ai/objectstack/pull/20706", "session": "session_014EJ1ED8X4MMrT18BhVx4tx (subagent run: the dispatching session's id)", "premise_still_valid": true, "summary": "Took over PR #20706 at d8bac3877d. (1) The adr-0087 placeholder in .changeset/console-db11afd4967c.md now carries the maintainer's disposition, not-required (no-migration-prescription), per takeover claim 5903537467. Its reason block is worded after 3cf6449389 and is true of this diff: it names the pin-citation re-measure as text-only (comments, the FormField.span describe, six migration-entry descriptions), and the 6 upstream breaking entries as objectui's own surfaces (@object-ui/types, @object-ui/core, @object-ui/plugin-dashboard). Commit b4cd814ec2. (2) origin/main 7053333e1e merged through os-regen-merge.sh, merge commit ef6276c0e9. Only registry.ts overlapped; it text-merged and check:migration-registry reads it current, so no regeneration commit was owed. (3) The console built by build-console.sh at db11afd4967c boots from a zero-user database, and headless Chromium drove it through /setup registration to the first app pages with 0 pageerrors and 0 TypeError. All 125 derived gates exit 0 at ef6276c0e9, including dual-build-cjs-loads and type-check-debt, which the previous run could not measure. The PR stays draft, with an unchanged file list of 20 paths and no governed path.", "containment": "REST compare COMMIT...db11afd4967c: a5841be351, 99878d8e3a, 49f76725aa, ae582b70a, 5b2ea17570 and 3100bef65c each read status=ahead, behind_by=0 (contained). Control: old pin dd3f7e1be356 reads ahead_by=113, behind_by=0. On main: compare db11afd4967c...main reads ahead, ahead_by=21, behind_by=0, so the pin is an ancestor of objectui main.", "tests": "All at ef6276c0e9. (a) pnpm --filter @objectstack/spec exec vitest run --project local --maxWorkers=2, through os-verify-lock: Test Files 576 passed (576), Tests 16991 passed, 1 todo; VERDICT command-exit 0. (b) pnpm --filter @objectstack/spec run typecheck: exit 0 (tsc; check:test-typecheck OK, 53 files and 251 errors held in the debt ledger). (c) @objectstack/sdui-parser: vitest 12 files, 199 passed; tsc --noEmit exit 0; VERDICT command-exit 0. (d) Whole-workspace build turbo run build --filter=!@objectstack/docs --concurrency=2: 72/72 tasks, VERDICT command-exit 0, and the tree stayed clean afterwards. No ablation or reverse verification: this run adds no gate, assertion or type.", "gates": { "derivation": "node scripts/pm/dispatch-gates.mjs --repo objectstack-ai/objectstack --commands over merge base 7053333e1e..HEAD ef6276c0e9: 20 paths, 125 commands.", "reconcile": "--ran with an exit code per line: 125 derived, 125 run, 0 NOT-MEASURED, 0 UNRUN; the zero is derived from the recorded codes.", "result": "125 of 125 exit 0 at ef6276c0e9. Each code was captured by redirecting first and reading it before any pipe.", "named": "check-adr-0087-registration --base origin/main: exit 0, 1 declared-breaking changeset carries not-required (no-migration-prescription); the gate accepted it with the objectui-derived entry list unchanged. check:sdui-lockstep: exit 0, byte-identical to objectui@db11afd4967c over 214 grammar lines, all 26 codes agree. check:objectui-pin-citations: exit 0, 49 asserting citations match. Its 7 anchor-content assertions read NOT VERIFIED against the shared shallow /home/user/objectui, which lacks the pin; re-run with OBJECTUI_ROOT at a checkout carrying the pin: 7 verified, exit 0. check:generated: exit 0. check:migration-registry: exit 0 (323 semantic, 237 retired-key, 207 retired-def). check:console-sha: exit 0. check:console-injection: exit 0. check:dual-build-cjs-loads: exit 0. check:type-check-debt: exit 0 (4 entries re-measured, none above record).", "extra": "node scripts/check-sdui-manifest.mjs --require-objectui, beyond the derivation: exit 1 against the shared /home/user/objectui (a prerequisite miss: the pin commit is absent there, not a verdict), then exit 0 against a checkout carrying the pin (107 components, @object-ui 17.6.0).", "spec_injection": "Hypothesis 5 holds. build-console.sh at db11afd4967c, with this tree's spec injected, ran main's scripts/assert-console-spec-injection.mjs (PR #20743 fix): Console bundle carries THIS tree's @objectstack/spec, and only it. 105 of 145 injected-only descriptions are present and all 160 published-only ones are absent. Bundle canary import/jobs present. Dist 62200 KB. chunk-membership.json reads client in vendor-objectstack.", "not_measured": "CI-owned, not run locally: the Console Pin Gate job, Test Core shards, Dogfood Regression Gate, Build Core and Build Docs jobs, and the four type-check lanes, as dispatch-gates lists them. Their state is in_progress/pending on ef6276c0e9." }, "boot": { "build": "bash scripts/build-console.sh at .objectui-sha db11afd4967c, through os-verify-lock: VERDICT command-exit 0 (6m42s). OBJECTUI_ROOT pointed at a private depth-1 objectui source carrying the pin; the shared /home/user/objectui was not touched.", "server": "examples/app-showcase: objectstack dev --ui --fresh --no-seed-admin -p 41873 (OS_PORT=41873). Console mounted at /_console/. GET /api/v1/auth/bootstrap-status answered 200 {hasOwner:false} before the drive, so the database was zero-user.", "drove": "Headless Chromium 1194 via /opt/pw-browsers/chromium. Opened /_console/setup. Filled name, orgName, email and password, then submitted. The wizard exited with a full-document navigation to /_console/, which resolved to /_console/home. A second context signed in through /_console/login as the new owner and opened Showcase and Setup from the launcher.", "saw": "Registration completed: bootstrap-status flipped to {hasOwner:true}, and in-page get-session returned the new owner with positions platform_admin, org_owner and everyone, isPlatformAdmin true. The home launcher rendered Your apps 2 (Showcase, Setup), and the owner's app list is showcase_app, setup and account. First app page: Showcase opened /_console/apps/com.example.showcase/page/showcase_capability_map, and the Capability Map html page rendered with its sidebar, with no compile error. Setup opened /_console/apps/com.objectstack.setup/dashboard/system_overview. pageerrors 0, TypeError 0, 5xx 0 across both passes. The only non-2xx responses: 401 GET /api/v1/auth/get-session before sign-in, and 404 GET /api/v1/usage/storage, which #20436 recorded at the old pin too.", "note": "The first drive attempt opened /_console/ and expected a redirect to /setup. On an ownerless deployment the root lands on /_console/login, and that is the same at both pins: LoginPage.tsx carries 0 setup or bootstrap references at dd3f7e1be356 and at db11afd4967c, and App.tsx is unchanged. So /setup is the wizard's entry, as #20436 drove it. That attempt made no writes, and the second attempt ran against the same still-ownerless server.", "teardown": "Killed only the two recorded PIDs, 542 (dev) and 559 (serve on 41873). The port is free, and the --fresh tempdir went with the process." }, "line_budget": "The PR diff vs origin/main 7053333e1e is 20 files, +565/-166 = 731 changed lines, under the 5000-line human-merge threshold (dispatch-gates reading). This run's own authored change is +20/-1 in one file. No skills/** path is touched, so no SKILL.md line budget applies.", "deviations": [ "The console build used OBJECTUI_ROOT pointed at a private depth-1 objectui source in the scratchpad. Otherwise build-console.sh would fetch into, and add a worktree under, the shared /home/user/objectui clone. The build output is the same pinned tree (HEAD verified equal to the pin by the script).", "origin/main moved after the merge, from 7053333e1e to c9c182ed14 (2 commits: f284ab26dd docs(adr), and c9c182ed14 fix(spec)!, which adds a migration entry). c9c182ed14 touches packages/spec/src/migrations/registry.ts, the one generated file this PR shares. It was not merged. A probe, with main fetched into a private ref that was then deleted, gave git merge-tree --write-tree exit 0 (clean). The merged registry.ts would differ from c9c182ed14's by the same 22+/21- description lines as now, so main's new rows survive a text merge. The pre-landing merge picks it up; check:migration-registry arbitrates on that head.", "os-regen-merge.sh step 3 reported that the merge left no additional changes to commit. view.mdx kept the branch's bytes: the branch changed it and main did not. No os-regen-pending record was left, and the pre-push hook accepted the merge push. So there is no separate regeneration commit: nothing was stale." ], "files_changed": [ ".changeset/console-db11afd4967c.md: the adr-0087 placeholder line becomes the not-required (no-migration-prescription) disposition and its reason block (+20/-1), commit b4cd814ec2", "merge commit ef6276c0e9: origin/main 7053333e1e into the branch, main's content only; the PR file list is unchanged at the same 20 paths" ], "pr_body_lines": [ "EDIT 1. Replace the whole section headed 'Still open' with a section headed 'Resolved since the first report', with these bullets: (a) ADR-0087 disposition, the maintainer's ruling (takeover claim 5903537467): .changeset/console-db11afd4967c.md now carries adr-0087: not-required (no-migration-prescription), worded as in #20436. The diff moves the pin and what travels with it, and adds, removes or renames no ObjectStack-authorable key. The pin-citation re-measure changes describe and migration-entry text only. The 6 declared-breaking entries are objectui's own surfaces (@object-ui/types, @object-ui/core, @object-ui/plugin-dashboard). check-adr-0087-registration --base origin/main exits 0. (b) Base: origin/main 7053333e1e merged at ef6276c0e9 through scripts/pm/os-regen-merge.sh. Only packages/spec/src/migrations/registry.ts overlapped; it text-merged and check:migration-registry reads it current. (c) The two local NOT MEASURED gates now run green: check:dual-build-cjs-loads and check:type-check-debt both exit 0 after a whole-workspace build.", "EDIT 2. Add a section headed 'Boot at the new pin' with these bullets: (a) scripts/build-console.sh at db11afd4967c: this tree's client and spec injected, canary present. assert-console-spec-injection passes: 105 of 145 injected-only descriptions present, all 160 published-only absent. chunk-membership reads client in vendor-objectstack. (b) examples/app-showcase booted with objectstack dev --ui --fresh --no-seed-admin; bootstrap-status read hasOwner false. (c) Headless Chromium opened /_console/setup and submitted the owner form. bootstrap-status flipped to hasOwner true, and the session is the new owner (platform_admin, org_owner). The exit landed on /_console/home with Showcase and Setup listed. (d) Signed in again through /_console/login. Showcase opens its Capability Map html page and Setup opens System Overview. 0 page errors, 0 TypeError, 0 5xx. The only 404 is GET /api/v1/usage/storage, as at the old pin.", "EDIT 3. In the section headed 'Follow-up', replace the last bullet (the one ending 'Not added here; the PM decides.') with: 'These edits ship inside published text, so .changeset/objectui-pin-citations-db11afd4967c.md carries an @objectstack/spec patch (commit d8bac3877d).'", "EDIT 4. In the section headed 'Governed surface', change 'None of the 19 changed paths' to 'None of the 20 changed paths'.", "EDIT 5. Replace the final line beginning 'Gates at head db448bfbe0' with: 'Gates at head ef6276c0e9: 125 derived, 125 run, 0 NOT-MEASURED, 0 unrun; all 125 exit 0. packages/spec tests 16991 passed (576 files); sdui-parser 199 passed; spec and sdui-parser typecheck clean.'" ], "mcp_calls": "0", "api_writes": "1 REST write: this os-dev-report comment on #20638 (POST issues/20638/comments through scripts/pm/post-stamped.mjs). git push is not a REST write: 3 pushes, a no-op probe, b4cd814ec2 and ef6276c0e9. No PR body edit, no label write, no assignee write.", "open_questions": [], "out_of_scope_findings": [ "observation, not filed: on a zero-owner deployment, /_console/ lands on /_console/login, not the /setup wizard, and the server banner does not name /setup. It is identical at the old pin dd3f7e1be356 (LoginPage.tsx has 0 setup or bootstrap references at both pins), so this range does not cause it. It lives in objectui's console, and whether the login page's Sign up link bootstraps an owner was not measured. carrier: 承接者:无 · noted, not filed", "observation, not filed: at the owner's sign-up, the showcase flow showcase_task_done_notify_owner logs 10 [expand] warnings. These are the runtime's deliberate runAs refusals ('effective runAs is user but no trigger user could be resolved') on system-context writes. They are server-side and independent of the console pin. carrier: 承接者:无 · noted, not filed" ] }Generated by Claude Code
objectstack-fleet commentedon Sep 30, 2026
ACCEPT — PR #20706 at head
ef6276c0e9(the takeover round) · sessionsession_014EJ1ED8X4MMrT18BhVx4tx(os-tesla), on the maintainer's order · 2026-09-30T04:43ZThe seat reviewed the takeover round's report
5904014004against GitHub and the diff.PR shape
main, first lineFixes #20638,Clause-②: no, assigneeos-tesla..objectui-sha, the sdui manifest and its record, the lockstep file, the pin-citation re-measure inpackages/spec/src(with the regeneratedregistry.tsandview.mdx), and two changesets (@objectstack/consoleminor,@objectstack/specpatch).What it does
dd3f7e1be356→db11afd4967c, which is on objectuimainand ships@object-ui/console17.6.0.3100bef65c, the objectui#11105 p1 fix this bump carries into the next release.not-required (no-migration-prescription), worded as in chore(objectui): bump the console pin to dd3f7e1be356 (carries the injected-client boot fix) with the showcase div→box and trash-icon follow-through #20436 (claim5903537467).This round
origin/mainmerged atef6276c0e9throughos-regen-merge.sh, with no regeneration owed.build-console.shat the new pin, a zero-user database,/setupregistration through to the Showcase and Setup pages, with 0 page errors, 0TypeErrorand 0 5xx.18.*-unit-in-key.tsentries, or theFormField.spandescribe sentence.At-tier contract review:
5904174450on the PR, atCONTRACT_REVIEW_TIER, on this head — PASS.main.ListMapConfigSchemarecord, whose new wording is true.major→minor). Every sentence of the ADR-0087 reason block holds, including "objectui's own package surfaces" (@object-ui/types,core,plugin-dashboard).patchandClause-②: noare right. The merge lost nothing, and the boot meets the Acceptance as chore(objectui): bump the console pin to dd3f7e1be356 (carries the injected-client boot fix) with the showcase div→box and trash-icon follow-through #20436 set it.Deviations, adopted
OBJECTUI_ROOTat a private objectui source carrying the pin, so the shared clone was not touched.mainmoved after the merge (c9c182ed14adds a migration entry toregistry.ts). The review confirms it is text-disjoint, and the queue build judges the combination.pr_body_linesedits and read them back identical, because the body becomes the landing commit's message.Findings
/_console/lands on the login page rather than the/setupwizard. It is the same at the old pin, so this range does not cause it → dropped for this card (objectui's console, not measured further).runAsrefusals at the owner's sign-up. That is server-side and independent of the pin → dropped.Landing: when every check on this head is concluded, green or a roster skip, the seat runs its gated pre-landing checks, flips it ready and arms auto-merge.
Fixes #20638closes the card. The card is on the release path, so it must land before the next Version Packages merge (#20639). Its landing unblocks #20287, #20578, #20293, #20313, #20299 and #20694, each through its own restart probe.Generated by Claude Code
objectstack-fleet commentedon Sep 30, 2026
Landed — PR #20706 →
a3d7588b56; card closed · sessionsession_014EJ1ED8X4MMrT18BhVx4tx(os-tesla), on the maintainer's takeover order · 2026-09-30T05:21Za3d7588b56. Before it went in, this seat checked:5904201930and the at-tier PASS5904174450;ef6276c0e9: 42 check-runs, all green or roster skips;check-expected-skipsexit 0; the merge probe againstf7c6d65f53, exit 0.origin/main:packages/spec/src/migrations/registry.ts, also moved onmainin between. The PR's own change to it landed unaltered: itsgit patch-id --stableequals the landed diff's (dae41de5f24a)..objectui-shaonmainnow readsdb11afd4967cd9d39381c5e21dc2deec9d706204.Console Pin Gateona3d7588b56concluded success.Fixes #20638, and GitHub lists PR chore(objectui): bump the console pin to db11afd4967c (carries objectui#11119, the objectui#11105 fix) #20706 as this card's closing PR. But the card had not closed at 05:23Z, and its timeline carries no closing event. This seat closes itcompletedin this act, andpm:dispatchedcomes off with it.dd3f7e1be356→db11afd4967c(objectuimain,@object-ui/console17.6.0). It contains all six target commits, including3100bef65c, the objectui#11105 p1 fix.not-required (no-migration-prescription).description/outputSchemareach the flow designer (7 keys) #20287, sdui-parser (save gate):bindandhiddenjoinBASE_PROPS, the port of objectui#11008, so the save gate stops calling two declared BaseSchema keys unknown #20578, [finding] Atype: 'matrix'report withcolumnsand achartparses, and the pinned renderer never draws the chart #20293, fields: number rendering honours the authoreduseGrouping(1 key) #20313, studio: show the authoredlabel/descriptionon flows, hooks, app areas, RLS policies and the view container (7 keys) #20299 and finding(spec):ComponentPropsMap['object-grid'](ObjectGridPropsSchema) declares neitherdescriptionnoremptyState, which objectui'sObjectGridreads once objectui#11130 lands #20694.Generated by Claude Code
chore(changeset): ADR-0087 dispositions for the console pin bump and …
chore(objectui): bump the console pin to db11afd4967c (carries object…
chore(objectui): bump the console pin to e420df310f5b (carries object…