Skip to content

console: move the objectui pin 616df6598b42 → at or after 8803ca54ac (objectui PR #13233, the stored_expression toast row), so PR #24778 (#24690) can land #24928

Closed

Description

@objectstack-fleet

Filed by domain:spec seat 3 (seat post #18883) · baozhoutao · session session_01D6F9axfoPzR7t8G1J7Ytzz, from the #24690 dev report (6294854875). ⛔ Not a claim. Grade and routing are triage's. The lane is domain:devx, by the precedent of #24749 / PR #24829, the last pin move.

Why

Wanted (docs/releases-maintenance.md, the procedure PR #24829 followed)

  1. scripts/bump-objectui.sh <sha>, run with 8803ca54ac or the newest objectui main commit after it that is green. It writes .objectui-sha and the @objectstack/console changeset.
  2. In the same PR: pnpm objectui:build, then node scripts/gen-sdui-manifest-node.mjs. Commit sdui.manifest.json, scripts/sdui-manifest.record.json and packages/sdui-parser/objectui-lockstep.json if they move. scripts/check-sdui-manifest.mjs must be green.
  3. The PR is not governed: .objectui-sha is not in GOVERNED_SURFACES. It is not a release act.
  4. Once it lands, the domain:spec seat lands feat(spec,objectql): report a caller value a stored expression replaced, as DroppedFieldsEvent reason stored_expression #24778.

Dedupe


Generated by Claude Code

Activity

  1. added
    area:devpathThe road — create, dev, verify, publish/install, connect an agent, iterate
    dependenciesPull requests that update a dependency file
    and removed on Oct 20, 2026
  2. objectstack-fleet commented on Oct 20, 2026

    @objectstack-fleet
    ContributorAuthor

    Claim: PM loop round 29 · a p2 domain:devx pin move that unblocks the domain:spec lane's PR #24778; serial dispatch under the maintainer's 「串行派发」
    Session: session_01FM29ZqLTrnPNXxijioZwMp
    Account: os-warren (the seat's linked user as GET /user answers it; the card's assignee)
    Branch: claude/issue-24928-objectui-pin
    Worktree: objectstack-issue-24928
    Domain: domain:devx
    Seat: domain:devx#1
    File surface: the files docs/releases-maintenance.md's pin-move procedure writes:

    • .objectui-sha and the @objectstack/console changeset that scripts/bump-objectui.sh writes;
    • sdui.manifest.json, scripts/sdui-manifest.record.json and packages/sdui-parser/objectui-lockstep.json, if the regeneration moves them.

    The target is objectui 8803ca54ac, or the newest objectui main commit after it whose push run is green. ⛔ No hand edit of a generated file. ⛔ No product code. Stop on breach and explain.
    Container & model: S (one pin move by the documented procedure, with its regenerated manifests), mode:subagent, model: TIER_DEFAULT
    Clause-②: no
    Responsibility: PR #24778 (#24690) cannot land while .objectui-sha (616df6598b42) lacks objectui's stored_expression toast row, or the Console Pin Gate goes red (#24928) | none | the domain:spec lane's PR #24778, and every Console build
    Thread-read: none
    Serial constraints cleared: no open PR touches .objectui-sha or the SDUI manifest files. No live Claim: names them; the one hit is this seat's discharged round-14 claim 6288926919 on #24579 (read at 2026-10-20T19:59Z). No dev of this session is in flight: #24926's dev has reported, and its PR #24973 is queued.


    Generated by Claude Code

  3. objectstack-fleet commented on Oct 20, 2026

    @objectstack-fleet
    ContributorAuthor

    os-dev-report

    {
     "issue": 24928,
     "status": "done",
     "branch": "claude/issue-24928-objectui-pin",
     "pr": "https://github.com/objectstack-ai/objectstack/pull/24982",
     "session": "session_01FM29ZqLTrnPNXxijioZwMp — this run's harness-stamped id (subagent of the PM seat, same session)",
     "premise_still_valid": true,
     "summary": "Moved .objectui-sha 616df6598b42 -> cf153eb2e535 (objectui main), which contains 8803ca54ac (objectui#13233, the stored_expression row in writeWarningToast.ts STRIPPED_LINE, lines 145/173). cf153eb2e535 was the newest objectui main commit at or after 8803ca54ac whose push CI run had concluded success at the move: run 39483449911, 31/31 jobs success incl. Test (coverage) and all 8 coverage shards; the two newer commits 9e1bff63ad2d / 53dea27afab5 were in_progress then and concluded success at 20:16Z / 20:21Z, after the bump (not re-chosen; see open_questions). Diff is 4 files, all generator-written: .objectui-sha, .changeset/console-cf153eb2e535.md (@objectstack/console minor, 0 breaking, so no hand-written ADR-0087 line), scripts/sdui-manifest.record.json and packages/sdui-parser/objectui-lockstep.json; sdui.manifest.json regenerated byte-identical (107 components, sha256 d1fde278ffd6) so it is not in the diff. Proof against PR #24778 (head 56cac787cb): objectui's per-reason test passes over all five reasons, and a full build-console.sh from the #24778 tree at the new pin exits 0 with 0 TS errors. Draft PR #24982 is open, assigned os-warren, no labels; its CI was in_progress at the report, and the Console Pin Gate is skipped on PRs by design (main's first full battery after merge is its CI proof). Deviations: objectui reads came from a full scratch clone (OBJECTUI_ROOT), not a worktree of the shared /home/user/objectui, because that checkout is shallow and bump-objectui.sh's default deepen would have unshallowed the shared .git; bump-objectui.sh ran with --no-commit only so the commit carries this repo's model-free trailer pair. Nothing was written to objectui; the shared /home/user/objectui worktree list and status are unchanged.",
     "tests": "stored_expression proof, command from the objectui worktree root at cf153eb2e535: pnpm exec vitest run --maxWorkers=2 --reporter=verbose packages/app-shell/src/providers/writeWarningToast.test.ts. Leg A, PR #24778's spec packed in via OBJECTSTACK_ROOT=PR24778_WORKTREE node scripts/objectstack-pin.mjs build (stamp sha 56cac787cb; DroppedFieldsEventSchema reason options read [readonly, readonly_when, primary_key, computed, stored_expression]): 'Tests 1 failed | 20 passed (21)', exit 1. 'gives every reason the pinned spec declares its own wording (#3935)' PASSED over all five reasons; 'words reason stored_expression as a computed value saved in place of the one sent, in en and zh (objectui#13178)' PASSED; the one failure is objectui's designed tripwire 'reminds the pin bump that carries stored_expression to retire the widening (objectui#13178)', which asserts the installed spec does NOT declare the arm and fires by design once a spec declares it (objectui's own .objectstack-sha bump retires it; objectstack's Console Pin Gate does not run objectui tests). Leg B control, this branch's spec (four reasons): 'Tests 21 passed (21)', exit 0. Console build against PR #24778's tree at the new pin: bash scripts/build-console.sh from the #24778 worktree with .objectui-sha set to cf153eb2e535 (scratch edit, restored and removed after): PR24778_BUILD_CONSOLE_EXIT=0, lock VERDICT command-exit 0, objectui deps 34/34, '8966 modules transformed', grep -c 'error TS' = 0, injection witness from #24778's own text ') written with the computed value in place of the caller', '5 of 5 injected-only descriptions are in the bundle'. Console build at this branch: client closure 36/36 then OBJECTUI_ROOT=SCRATCH_CLONE bash scripts/build-console.sh, BUILD_CONSOLE_EXIT=0, lock VERDICT command-exit 0 held 931s, objectui deps 34/34 (0 cached), '8966 modules transformed', 0 'error TS', 'Single-zod canary: exactly one zod version literal {major:4,minor:6,patch:7}' (2261 assets), 'Console bundle carries THIS tree's @objectstack/spec, and only it (vendored: ... objectstack 06cab4849a8a)', '2 of 2 injected-only descriptions', 'dist ready (65684 KB) from objectui@cf153eb2e535'. No package source changed, so no package test/typecheck is owed; test:repo is CI's (Test Core). No ablation: the diff changes no tested behaviour (pin + generated records only).",
     "gates": "Local, at head a1c663ae62 after a workspace build there (turbo run build --filter='!@objectstack/docs' --concurrency=2: 76/76, lock VERDICT command-exit 0); packages/runtime/.objectstack removed first; every exit captured before any pipe. node scripts/pm/dispatch-gates.mjs --repo objectstack-ai/objectstack --commands (no paths): 73 commands from 4 paths vs merge base 6440cf163 (three-dot); all 73 exit 0. --ran: 'Run reconciliation — 73 derived, 73 run, 0 NOT-MEASURED, 0 UNRUN' and '73 derived famil(ies) accounted for — 73 run, 0 NOT-MEASURED (a DERIVED zero ...)', exit 0. Among them: check-adr-0087-registration --base origin/main 'this PR adds no declared-breaking changeset (1 non-breaking changeset(s) seen)'; check-empty-changeset; check-sdui-manifest.mjs '... recorded at the live objectui pin cf153eb2e535'; pnpm check:sdui-lockstep 'byte-identical to objectui@cf153eb2e535 ... 214 grammar line(s) [blob 0131f27cf86d] ... 25 diagnostic code(s) ... [blob 76c18fb95d1f]'; pnpm check:console-sha 'Console dist matches the objectui pin (objectui@cf153eb2e535).'; pnpm check:console-injection; pnpm check:objectui-changeset; pnpm check:published-files; pnpm check:nul-bytes. Procedure-step readings: check:sdui-lockstep exit 1 [pin-moved] before the re-record, exit 0 after; pnpm check:objectui-bump exit 0 ('20 assertions across 5 cases'); pnpm check:console-injection --require-stamp exit 0; node scripts/pm/check-governed-merges.mjs --branch claude/issue-24928-objectui-pin exit 0 'NOT governed', +87/-6. git merge-tree --write-tree origin/main HEAD vs origin/main 3a7a60af8f: exit 0 clean (no path routed to os-regen, so local = GitHub). PR #24982 check-runs at a1c663ae62, read 2026-10-20T20:56:31Z: 38 total, 12 success, 7 skipped, 19 in_progress, 0 failure. Completed: Check Changeset success, Governed Surface Queue Guard success, Check PR Size success, Check Documentation Links success, Flag docs affected by code changes success, Dogfood Regression Gate success, Auto Label success, filter success, the three claim/closure guards success; Console Pin Gate skipped (its if: excludes pull_request and merge_group — explained in the PR body, local run is the pre-merge reading), Build Docs / Temporal Conformance / Dogfood Verify CLI / Packed-tarball smoke / 18.x upgrade harness / Dogfood shards skipped. In progress: Lint lanes, Type Check lanes and the rest — in_progress is the honest value; not waited on.",
     "mcp_calls": "0 — no MCP GitHub tool was called",
     "api_writes": "2 — two repository_dispatch strokes through the fleet relay (POST /repos/objectstack-ai/objectstack/dispatches), executed as objectstack-fleet[bot]: (1) pr_create = POST /repos/objectstack-ai/objectstack/pulls (draft) + POST /repos/objectstack-ai/objectstack/issues/24982/assignees [os-warren], read back identical (16778 bytes sent, 16778 stored); (2) this os-dev-report = POST /repos/objectstack-ai/objectstack/issues/24928/comments via scripts/pm/post-stamped.mjs. Plus 3 git pushes (not REST): the empty branch, af060f0855, a1c663ae62. Zero writes to objectui.",
     "open_questions": [
      {
       "question": "Ruling 1 names the newest green push run; at the move (20:05Z) that was cf153eb2e535, and the two newer main commits 9e1bff63ad2d (run 39486510889) and 53dea27afab5 (run 39487454858, the tip the PM read) concluded success at 20:16Z and 20:21Z, before the PR opened. Keep cf153eb2e535, or re-bump to 53dea27afab5?",
       "options": [
        "A — keep cf153eb2e535: it was the newest concluded-green at the move, as PR #24829 did ('This PR does not re-choose'); both skipped commits are app-shell patch fixes (objectui#13283, objectui#13284) PR #24778 does not need",
        "B — re-bump this PR to 53dea27afab5: a mechanical bump plus rebuild, regeneration, gate union and the two test legs again, about 25 min of lock, and the PR body rewritten by the seat"
       ],
       "recommendation": "A, because the ruling's purpose (a green pin carrying the stored_expression row so #24778 can land) is met and measured at cf153eb2e535, the precedent read the target at the move, and B spends a full rebuild lap for two patch fixes that the next pin move carries anyway."
      }
     ],
     "out_of_scope_findings": [
      "carrier: #24579 (the checklist anchor) · noted, not filed — approvals.record-page-decisions cites objectui packages/app-shell/src/views/RecordDetailView.approvalDecisionActions.test.tsx in its source; the file is absent at both pins (deleted by objectui 99782f961, an ancestor of 616df6598b42, exit 0)",
      "checklist-cited objectui specs whose blob changes over 616df6598b42..cf153eb2e535 (ruling 5, read not edited; 89 cited objectui paths resolved, 21 of them e2e/live specs): packages/app-shell/src/views/setup/PackagedAutomationPage.test.tsx b321640a6100 -> aeb3e5f94e38 (automated.ref of automation.setup-packaged-automation-board; objectui 673a71c39 objectui#13185, 5235d6d57 objectui#13279). That is the only one; every e2e/live spec is byte-identical (e2e/live changes only ci/backend.env over the range)"
     ]
    }

    Generated by Claude Code

  4. objectstack-fleet commented on Oct 20, 2026

    @objectstack-fleet
    ContributorAuthor

    Landed · domain:devx seat 1 · session_01FM29ZqLTrnPNXxijioZwMp · 2026-10-20T22:18Z

    reading result
    merge queue none left: the entry has drained
    PR object PR #24982 merged at 2026-10-20T22:01Z as 7adfaec2a1 (ACCEPT 6301861627; not governed; Fixes #24928)
    origin/main, by content .objectui-sha (cf153eb2e535), .changeset/console-cf153eb2e535.md, scripts/sdui-manifest.record.json and packages/sdui-parser/objectui-lockstep.json are byte-identical to the head a1c663ae62
    Console Pin Gate on main push CI run 39504987916 at 7adfaec2a1, job 118912910626: success. This is the reading the PR could not give, because the gate skips pull_request and merge_group

    State change: PR #24982 closed this card through Fixes #24928 (completed). pm:dispatched comes off in this act.

    Next, the domain:spec lane's: PR #24778 (#24690) can land. The pin carries objectui's stored_expression row, and a build-console.sh from #24778's tree at this pin exited 0 (the ACCEPT records the proof). objectui's own designed tripwire "reminds the pin bump that carries stored_expression to retire the widening" fires once objectui's .objectstack-sha reaches a spec that declares the arm. That is objectui's own pin bump to retire, and no objectstack check runs it.


    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area:devpathThe road — create, dev, verify, publish/install, connect an agent, iteratedependenciesPull requests that update a dependency filedomain:devxpriority:p2Medium: important, M3

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions