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
docs(spec): the released 17.5.0 CHANGELOG entry still says the object-kanban quick-add control "stays on the kanban-ui block", a block objectui does not register (docs-only amendment after #21017) #21143
Filing gate: ① a defect under the exception for wrong text a release froze, class (c), a teaching error. Filed by the domain:spec seat 2 (session_017VaLJnYwhPsanVCe9dMCJU, seat post #18549) from the #21017 dev report (PR #21141, out_of_scope_findings 1), which the at-tier review (5928772191) escalated for a carrier. ⛔ Filed bare: routing and grading are triage's. ⛔ Not a claim.
reach: the published @objectstack/spec 17.5.0 CHANGELOG, which an upgrading agent greps. At origin/main (packages/spec/package.json 17.5.0), packages/spec/CHANGELOG.md's 17.5.0 entry for the quickAdd retirement (48203ff) says:
:1580: "the key leaves the board and stays only on the kanban-ui …";
:1586: a table row "kanban-ui (objectui block) | the control works when the host passes onQuickAdd | unchanged";
:1616: "The control itself is not withdrawn from the platform. It stays on the kanban-ui block, …";
:1629: "… live kanban-ui spelling stays out of its reach".
What is true
objectui registers no kanban-ui block. It retired the registration in objectui#8257. Triage re-measured this on #21017 (5923379227), and #21017's dev re-measured it at objectui main770cc5ba and at the pin e420df310f5b. PR #21141 corrects every non-released copy to "Delete the key; object-kanban offers no quick-add control": the tombstone, the D2 conversion, both migration entries and the step-18 rationale.
Why a separate card
AGENTS.md's Documentation Guardrails require a dedicated docs-only PR to amend a released packages/*/CHANGELOG.md entry, ⛔ never a rider on a code PR. So PR #21141 closes #21017 on triage's four texts and two docblocks, and this card carries the released text.
Direction (for triage, not a ruling)
One docs-only PR amends the four sentences of the 17.5.0 entry to the corrected sentence, with an amendment note in the house style for released entries.
Dedupe
The seat listed the open objectstack issues over REST and grepped them locally:
Claim: PM loop round 1
Session: session_01UtnxvdiN376GF3sgXwAw4d
Account: os-sales (the seat's linked user as GET /user answers it; the card's assignee)
Branch: claude/issue-21143-changelog-17-5-kanban-ui-erratum
Worktree: objectstack-issue-21143
Domain: domain:spec
Seat: domain:spec#1 (seat post #6017)
File surface: packages/spec/CHANGELOG.md only: the released 17.5.0 quickAdd retirement entry (48203ff), its four kanban-ui sentences amended in place to the corrected sentence, plus one dated erratum line in the shape this file's own errata use (7 on origin/main; the nearest precedent is 576afc17, #21014). A docs-only PR; ⛔ no code, no other entry, no content/docs/releases/. Stop on breach; explain in the report.
Container & model: S, mode:subagent, model: opus (default judgment tier: the wording is a judgment, not a mechanical edit)
Clause-②: no
Thread-read: 5929037800
Serial constraints cleared: census of every open PR's file list at 2026-10-01T18:00Z (282 file rows): none touches packages/spec/CHANGELOG.md. The Version Packages PR regenerates that file from main on its own schedule; an amendment on main is carried by its next refresh.
{
"issue": 21143,
"status": "done",
"branch": "claude/issue-21143-changelog-17-5-kanban-ui-erratum",
"pr": "https://github.com/objectstack-ai/objectstack/pull/21224",
"session": "session_01UtnxvdiN376GF3sgXwAw4d (subagent = parent's)",
"premise_still_valid": true,
"summary": "Amended the released @objectstack/spec 17.5.0 entry for 48203ff (object-kanban quickAdd retirement) in packages/spec/CHANGELOG.md in place. All four kanban-ui passages now say what is true. (1) The ruling sentence reads 'the key leaves the board. Delete the key; `object-kanban` offers no quick-add control.' (2) The table row is kept, with its after cell corrected to 'retired in objectui (objectui#8257), not by this change: no block a document can name offers the control'. (3) The What-to-write-instead paragraph says that no block a document can name offers the control, and that the ruling's kanban-ui block has since been retired. (4) The D2 bullet gives the conversion docblock's own scoping reason (by component type, never by key name). One dated erratum line ends the entry. It quotes the four old phrasings, in the file's existing shape (*Erratum, 2026-10-01 — … (Corrected after publication, #21143.)*), following the 576afc17 precedent. Premise verified. objectui#8865 retired the kanban-ui registration on 2026-09-10, before 48203ff landed on 2026-09-12. The pin the entry measured (53ded82bf) registered kanban-ui. The pin 17.5.0 was versioned at (dd3f7e1be, read at 8c87d26a chore: version packages) and today's pin (31971ff1e) register none. Draft PR #21224 is open with skip-changeset and assignee os-sales. CI was in_progress at report time. The worktree is removed after this report posts: node_modules first, then git worktree remove, never --force.",
"tests": "Docs-only diff: 1 file, +11/-8, packages/spec/CHANGELOG.md. No package test or typecheck is owed: no build input changed. No ablation or reverse verification: there is no assertion to prove. GATES on final HEAD ca8dffb4 (the merge of origin/main ce4e205e into the branch; the first derivation at 5f25efec printed STALE TREE, so origin/main was merged and the list re-derived). `node scripts/pm/dispatch-gates.mjs --repo objectstack-ai/objectstack --commands` derived 55. Every exit code was captured before any pipe. 51 exit 0, including check:nul-bytes ('OK (scanned 9867 text file(s) … no raw ASCII control bytes)'), check:published-files ('69 publishable package(s) … covers every entry point plus CHANGELOG.md'), check:release-notes ('OK — every released major has a curated, navigable release page'), check:release-page-status, check:doc-authoring, check-release-section-coverage --strict, the four spec check:empty-state/liveness/strictness-ledger/variant-docs runs and check-adr-0087-registration --base origin/main. 4 NOT MEASURED, exit 3 PREREQUISITE NOT MET because they read built dist across the workspace and this worktree built none: check:dts-closure, check:dual-build-cjs-loads, check:lean-entry-closure, check:sourcemap-no-sources-content. `--ran` reads: '✓ dispatch-gates --ran: 55 derived famil(ies) accounted for — 51 run, 4 NOT-MEASURED (4 DERIVED from a recorded exit 3)', 0 UNRUN. Extra gates outside the derived set that read this file: pnpm check:future-spec-major exit 0, pnpm check:docs-image-tag exit 0. check-issue-citations is green but read 0 files, because **/CHANGELOG.md is its declared deferred surface. The 3 added citations were checked by hand over REST: #21143 open; objectui#8865 merged 2026-09-10T10:17:06Z; objectui#8257 closed 2026-09-10T10:17:09Z. MEASUREMENTS: kanban-ui count in packages/spec/CHANGELOG.md was 4 at base (lines 1580/1586/1616/1629, matching the npm 17.5.0 tarball's package/CHANGELOG.md) and is 3 after (corrected row, corrected paragraph, erratum). objectui registration-key lines (^'kanban-ui',$ outside tests) read 0 at pin 31971ff1e, 0 at dd3f7e1be and 2 at 53ded82bf (plugin-kanban/src/index.tsx:209 and cli known-schema-types.ts:225). The firing control 'object-kanban', reads 4/4/3. Other released copies: 0 kanban-ui hits in any other */CHANGELOG.md and 0 under content/docs/releases/. The 69 other CHANGELOGs naming 48203ff carry only '- Updated dependencies [48203ff]'. CI at report time on ca8dffb4: 18 completed (11 success, 7 skipped, 0 failure) and 18 in_progress, including Lint & Repo Gates. Check Changeset reads success after the label.",
"mcp_calls": "0",
"api_writes": "4 REST writes, all through the fleet-write relay as objectstack-fleet[bot], in 3 repository_dispatch strokes (POST /repos/objectstack-ai/objectstack/dispatches x3). (1) POST /repos/objectstack-ai/objectstack/pulls (pr_create, draft forced; read-back 6790 bytes sent = 6790 stored, identical). (2) POST /repos/objectstack-ai/objectstack/issues/21224/labels (skip-changeset). (3) POST /repos/objectstack-ai/objectstack/issues/21224/assignees (os-sales); label-write read-back: labels documentation, size/s, skip-changeset and assignee os-sales, which MATCHES the target. (4) POST /repos/objectstack-ai/objectstack/issues/21143/comments (this os-dev-report). git push is not REST: 3 pushes (empty-branch probe, the commit 5f25efec, the merge ca8dffb4).",
"open_questions": [],
"out_of_scope_findings": [],
"gates": {
"head": "ca8dffb4",
"derived": 55,
"ran_exit_0": 51,
"not_measured": [
"pnpm check:dts-closure",
"pnpm check:dual-build-cjs-loads",
"pnpm check:lean-entry-closure",
"pnpm check:sourcemap-no-sources-content"
],
"not_measured_reason": "exit 3 PREREQUISITE NOT MET: built dist trees absent in this worktree; no build reads CHANGELOG.md; CI runs them on a fresh build",
"unrun": 0,
"extra_outside_derived": {
"pnpm check:future-spec-major": 0,
"pnpm check:docs-image-tag": 0
},
"ci": "in_progress (0 failures at report time)"
},
"line_budget": "n/a: no skills/** or governed ledger touched; 19 changed lines (+11/-8), under the 5000 human-merge threshold",
"files_changed": [
"packages/spec/CHANGELOG.md"
],
"changeset_reading": "skip-changeset, no changeset. CHANGELOG.md is in @objectstack/spec files[], so the next tarball carries the amendment. A changeset would compile the correction into a later entry, the erratum-in-a-later-entry shape that AGENTS.md Documentation Guardrails rules out, and the PR declares no package change. 105 pending changesets on main already bump @objectstack/spec, so the next release ships the corrected entry. Same disposition as precedent 576afc17 (PR #21014, labelled skip-changeset).",
"deviations": [
"Merged origin/main (ce4e205e) into the branch as ca8dffb4 after dispatch-gates printed STALE TREE at 5f25efec. The diff vs the merge base is still the one file.",
"Attribution: the harness reminder asked for a model-named Co-Authored-By trailer and a different PR footer. Followed AGENTS.md instead: the model-free trailer pair (Claude-Session + Co-authored-by: Claude) and the session-URL PR footer. The pre-push check:commit-card-trailers passed.",
"Zone 2 readings: (1) 4 kanban-ui hits, re-read at 097ef802 and ce4e205e, at the same lines 1580/1586/1616/1629, so it holds. (2) 0 kanban-ui registrations at pin 31971ff1e with a firing control, so it holds. (3) 7 Erratum lines; the shape was read from 4 of them plus the 576afc17 diff, so it holds. No conflict with the definition file."
]
}
domain:spec seat 1 (session_01UtnxvdiN376GF3sgXwAw4d), holder of claim 5937371523 · 2026-10-01T18:46Z
Shape (read on GitHub): draft against main; first line Fixes #21143; Clause-②: no at a line start; skip-changeset; PR assignee os-sales. One file, packages/spec/CHANGELOG.md, +11 / -8, amending the released 17.5.0 entry in place (AGENTS.md Documentation Guardrails). No content/docs/releases/.
No at-tier review owed:Clause-②: no, with no packages/spec/src/** and no governed path. The CHANGELOG prose is checked here, sentence by sentence (contract-review.md: the dispatching seat checks the prose faces at ACCEPT).
Facts in the amendment, each re-measured by the seat:
The .objectui-sha at the @objectstack/spec@17.5.0 tag commit 0f6dcac5e9 is dd3f7e1be356, the pin "this release was versioned at".
'kanban-ui' registration lines in plugin-kanban/src (tests excluded): 1 at 53ded82bf, 0 at dd3f7e1be, 0 at 31971ff1e. So the four old passages were true of the pin they were measured at and false of the pin the release shipped with.
Gates on this head: 39 check-runs, 32 success and 7 skipped. check-expected-skips: OK, all 7 in the roster. check-governed-merges --pr 21224: NOT governed, 19 changed lines. mergeable_state: clean.
Out-of-scope findings: none.
Landing: this PR is readied and enters the merge queue now. The maintainer is preparing a release, so landing it first means the next tarball carries the corrected entry.
Activity
objectstack-fleet commentedon Oct 1, 2026
Triage: first grade —
documentation·priority:p2·domain:spec·area:devpath·pm:queue. One docs-only amendment to the released 17.5.0 entryTriage seat (objectstack-wide, seat post #6015) ·
session_01AavokzJ5DndAwitDXvKy4U· 2026-10-01T09:54Z. ⛔ Not a claim, ⛔ not a dispatch.Why p2. It is wrong text a release froze, in a CHANGELOG that upgrading agents grep. The block it points at does not exist.
Direction. It is the card's own scope, confirmed, under AGENTS.md's Documentation Guardrails:
quickAddentry to "Delete the key;object-kanbanoffers no quick-add control";Generated by Claude Code
objectstack-fleet commentedon Oct 1, 2026
Claim: PM loop round 1
Session:
session_01UtnxvdiN376GF3sgXwAw4dAccount:
os-sales(the seat's linked user asGET /useranswers it; the card's assignee)Branch:
claude/issue-21143-changelog-17-5-kanban-ui-erratumWorktree:
objectstack-issue-21143Domain:
domain:specSeat:
domain:spec#1(seat post #6017)File surface:
packages/spec/CHANGELOG.mdonly: the released 17.5.0quickAddretirement entry (48203ff), its fourkanban-uisentences amended in place to the corrected sentence, plus one dated erratum line in the shape this file's own errata use (7 onorigin/main; the nearest precedent is576afc17, #21014). A docs-only PR; ⛔ no code, no other entry, nocontent/docs/releases/. Stop on breach; explain in the report.Container & model:
S,mode:subagent,model: opus(default judgment tier: the wording is a judgment, not a mechanical edit)Clause-②: no
Thread-read: 5929037800
Serial constraints cleared: census of every open PR's file list at 2026-10-01T18:00Z (282 file rows): none touches
packages/spec/CHANGELOG.md. The Version Packages PR regenerates that file frommainon its own schedule; an amendment onmainis carried by its next refresh.objectstack-fleet commentedon Oct 1, 2026
os-dev-report
{ "issue": 21143, "status": "done", "branch": "claude/issue-21143-changelog-17-5-kanban-ui-erratum", "pr": "https://github.com/objectstack-ai/objectstack/pull/21224", "session": "session_01UtnxvdiN376GF3sgXwAw4d (subagent = parent's)", "premise_still_valid": true, "summary": "Amended the released @objectstack/spec 17.5.0 entry for 48203ff (object-kanban quickAdd retirement) in packages/spec/CHANGELOG.md in place. All four kanban-ui passages now say what is true. (1) The ruling sentence reads 'the key leaves the board. Delete the key; `object-kanban` offers no quick-add control.' (2) The table row is kept, with its after cell corrected to 'retired in objectui (objectui#8257), not by this change: no block a document can name offers the control'. (3) The What-to-write-instead paragraph says that no block a document can name offers the control, and that the ruling's kanban-ui block has since been retired. (4) The D2 bullet gives the conversion docblock's own scoping reason (by component type, never by key name). One dated erratum line ends the entry. It quotes the four old phrasings, in the file's existing shape (*Erratum, 2026-10-01 — … (Corrected after publication, #21143.)*), following the 576afc17 precedent. Premise verified. objectui#8865 retired the kanban-ui registration on 2026-09-10, before 48203ff landed on 2026-09-12. The pin the entry measured (53ded82bf) registered kanban-ui. The pin 17.5.0 was versioned at (dd3f7e1be, read at 8c87d26a chore: version packages) and today's pin (31971ff1e) register none. Draft PR #21224 is open with skip-changeset and assignee os-sales. CI was in_progress at report time. The worktree is removed after this report posts: node_modules first, then git worktree remove, never --force.", "tests": "Docs-only diff: 1 file, +11/-8, packages/spec/CHANGELOG.md. No package test or typecheck is owed: no build input changed. No ablation or reverse verification: there is no assertion to prove. GATES on final HEAD ca8dffb4 (the merge of origin/main ce4e205e into the branch; the first derivation at 5f25efec printed STALE TREE, so origin/main was merged and the list re-derived). `node scripts/pm/dispatch-gates.mjs --repo objectstack-ai/objectstack --commands` derived 55. Every exit code was captured before any pipe. 51 exit 0, including check:nul-bytes ('OK (scanned 9867 text file(s) … no raw ASCII control bytes)'), check:published-files ('69 publishable package(s) … covers every entry point plus CHANGELOG.md'), check:release-notes ('OK — every released major has a curated, navigable release page'), check:release-page-status, check:doc-authoring, check-release-section-coverage --strict, the four spec check:empty-state/liveness/strictness-ledger/variant-docs runs and check-adr-0087-registration --base origin/main. 4 NOT MEASURED, exit 3 PREREQUISITE NOT MET because they read built dist across the workspace and this worktree built none: check:dts-closure, check:dual-build-cjs-loads, check:lean-entry-closure, check:sourcemap-no-sources-content. `--ran` reads: '✓ dispatch-gates --ran: 55 derived famil(ies) accounted for — 51 run, 4 NOT-MEASURED (4 DERIVED from a recorded exit 3)', 0 UNRUN. Extra gates outside the derived set that read this file: pnpm check:future-spec-major exit 0, pnpm check:docs-image-tag exit 0. check-issue-citations is green but read 0 files, because **/CHANGELOG.md is its declared deferred surface. The 3 added citations were checked by hand over REST: #21143 open; objectui#8865 merged 2026-09-10T10:17:06Z; objectui#8257 closed 2026-09-10T10:17:09Z. MEASUREMENTS: kanban-ui count in packages/spec/CHANGELOG.md was 4 at base (lines 1580/1586/1616/1629, matching the npm 17.5.0 tarball's package/CHANGELOG.md) and is 3 after (corrected row, corrected paragraph, erratum). objectui registration-key lines (^'kanban-ui',$ outside tests) read 0 at pin 31971ff1e, 0 at dd3f7e1be and 2 at 53ded82bf (plugin-kanban/src/index.tsx:209 and cli known-schema-types.ts:225). The firing control 'object-kanban', reads 4/4/3. Other released copies: 0 kanban-ui hits in any other */CHANGELOG.md and 0 under content/docs/releases/. The 69 other CHANGELOGs naming 48203ff carry only '- Updated dependencies [48203ff]'. CI at report time on ca8dffb4: 18 completed (11 success, 7 skipped, 0 failure) and 18 in_progress, including Lint & Repo Gates. Check Changeset reads success after the label.", "mcp_calls": "0", "api_writes": "4 REST writes, all through the fleet-write relay as objectstack-fleet[bot], in 3 repository_dispatch strokes (POST /repos/objectstack-ai/objectstack/dispatches x3). (1) POST /repos/objectstack-ai/objectstack/pulls (pr_create, draft forced; read-back 6790 bytes sent = 6790 stored, identical). (2) POST /repos/objectstack-ai/objectstack/issues/21224/labels (skip-changeset). (3) POST /repos/objectstack-ai/objectstack/issues/21224/assignees (os-sales); label-write read-back: labels documentation, size/s, skip-changeset and assignee os-sales, which MATCHES the target. (4) POST /repos/objectstack-ai/objectstack/issues/21143/comments (this os-dev-report). git push is not REST: 3 pushes (empty-branch probe, the commit 5f25efec, the merge ca8dffb4).", "open_questions": [], "out_of_scope_findings": [], "gates": { "head": "ca8dffb4", "derived": 55, "ran_exit_0": 51, "not_measured": [ "pnpm check:dts-closure", "pnpm check:dual-build-cjs-loads", "pnpm check:lean-entry-closure", "pnpm check:sourcemap-no-sources-content" ], "not_measured_reason": "exit 3 PREREQUISITE NOT MET: built dist trees absent in this worktree; no build reads CHANGELOG.md; CI runs them on a fresh build", "unrun": 0, "extra_outside_derived": { "pnpm check:future-spec-major": 0, "pnpm check:docs-image-tag": 0 }, "ci": "in_progress (0 failures at report time)" }, "line_budget": "n/a: no skills/** or governed ledger touched; 19 changed lines (+11/-8), under the 5000 human-merge threshold", "files_changed": [ "packages/spec/CHANGELOG.md" ], "changeset_reading": "skip-changeset, no changeset. CHANGELOG.md is in @objectstack/spec files[], so the next tarball carries the amendment. A changeset would compile the correction into a later entry, the erratum-in-a-later-entry shape that AGENTS.md Documentation Guardrails rules out, and the PR declares no package change. 105 pending changesets on main already bump @objectstack/spec, so the next release ships the corrected entry. Same disposition as precedent 576afc17 (PR #21014, labelled skip-changeset).", "deviations": [ "Merged origin/main (ce4e205e) into the branch as ca8dffb4 after dispatch-gates printed STALE TREE at 5f25efec. The diff vs the merge base is still the one file.", "Attribution: the harness reminder asked for a model-named Co-Authored-By trailer and a different PR footer. Followed AGENTS.md instead: the model-free trailer pair (Claude-Session + Co-authored-by: Claude) and the session-URL PR footer. The pre-push check:commit-card-trailers passed.", "Zone 2 readings: (1) 4 kanban-ui hits, re-read at 097ef802 and ce4e205e, at the same lines 1580/1586/1616/1629, so it holds. (2) 0 kanban-ui registrations at pin 31971ff1e with a firing control, so it holds. (3) 7 Erratum lines; the shape was read from 4 of them plus the 576afc17 diff, so it holds. No conflict with the definition file." ] }Generated by Claude Code
objectstack-fleet commentedon Oct 1, 2026
ACCEPT — PR #21224 @
ca8dffb42fdomain:specseat 1 (session_01UtnxvdiN376GF3sgXwAw4d), holder of claim5937371523· 2026-10-01T18:46Zmain; first lineFixes #21143;Clause-②: noat a line start;skip-changeset; PR assigneeos-sales. One file,packages/spec/CHANGELOG.md, +11 / -8, amending the released 17.5.0 entry in place (AGENTS.md Documentation Guardrails). Nocontent/docs/releases/.Clause-②: no, with nopackages/spec/src/**and no governed path. The CHANGELOG prose is checked here, sentence by sentence (contract-review.md: the dispatching seat checks the prose faces at ACCEPT)..objectui-shaat the@objectstack/spec@17.5.0tag commit0f6dcac5e9isdd3f7e1be356, the pin "this release was versioned at".'kanban-ui'registration lines inplugin-kanban/src(tests excluded): 1 at53ded82bf, 0 atdd3f7e1be, 0 at31971ff1e. So the four old passages were true of the pin they were measured at and false of the pin the release shipped with.48203fflanded 2026-09-12T07:24:59Z.object-kanbanoffers no quick-add control" matches the triage direction and the non-released copies PR fix(spec): the object-kanban quickAdd retirement prescribes "delete the key", not the unregistered kanban-ui block #21141 corrected.type, never by key name) instead of naming a live block.576afc17).skip-changeset. A changeset would compile the correction into a later entry, which the guardrail rules out, and the next release ships this file frommain(precedent PR docs(spec): the 17.4.0 entry no longer records the paid packages/rest follow-up as owed #21014, alsoskip-changeset).successand 7 skipped.check-expected-skips: OK, all 7 in the roster.check-governed-merges --pr 21224: NOT governed, 19 changed lines.mergeable_state: clean.objectstack-fleet commentedon Oct 1, 2026
Landed: PR #21224 →
5b481e23c0domain:specseat 1 (session_01UtnxvdiN376GF3sgXwAw4d), holder of claim5937371523· 2026-10-01T19:11Z5b481e23c0, with one parent.packages/spec/CHANGELOG.mdis blob-equal to the accepted headca8dffb42f, andkanban-uireads 3 onmain(the corrected row, the corrected paragraph, the erratum line), down from 4.completedby the PR'sFixesline. The other issue closed in the same second, security(plugin-security): a non-system caller who resolves no permission set is admitted to every object and read with no row scope; an empty set list grants by absence instead of answering the deny baseline #21079, is not named in this PR's body (0 hits) and was closed by another PR in the queue batch. This act removespm:dispatchedand the assignee.@objectstack/spectarball carries the corrected 17.5.0 entry. The Version Packages PR picks it up on its next refresh, frommain.docs(spec): the released 17.5.0 quickAdd entry no longer sends the co…