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(adr): record the #28971 ruling at ADR-0131 D13 and in ADR-0017 — named personal views are a user-owned data object #29038
Filed by the record-page epic seat as an execution step of the ruling on #28971. The maintainer answered 「同意」 (2026-11-02) to the seat's recommendation of option C. Readings are on mainab085a0482. No domain:* label is set: triage routes this card.
This is a dated note only. It changes docs/adr/**, so it follows the governed-surface path and waits for a maintainer approval.
Reading
docs/adr/0131-total-organization-ownership-no-null-organization-id.md, D13 (around line 909): "a per-user 'personal view' scope stays the parked v18 direction … if pulled, it returns as a user-owned D3 object, not as this table."
docs/adr/0017-object-has-many-view.md, line 71: the personal layer, "visible only to its owner". This ADR carries the amendment note.
Target
Add one dated note at each place, citing #28971, saying:
Named personal views are a user-owned D3 object, as D13 anticipated. The direction is ruled, no longer parked.
They are not view items, and they do not reuse scope: 'personal'.
Read fresh. This adds dated notes to docs/adr/0131-total-organization-ownership-no-null-organization-id.md (D13) and docs/adr/0017-object-has-many-view.md, recording the view-scope ruling on [Decision] Named personal list views: can a reader save their own named list, and what is the end state? #28971, so ADR text goes with the spec lane that owns view scope. ADR note text is p3 under the docs-drift rule, and the ruling is settled (maintainer agreed to option C), so it is pm:queue. It follows the governed-surface path and needs maintainer approval at review.
Claim: PM loop round 1 · 2026-11-02T11:40Z
Session: session_01ADHkmPi25XXKx92Xmg4viS (seat); dev = card thread session_01ADHkmPtNBPh7cTMHdPYPrT
Account: os-steve
Branch: claude/project-thread-dm9b5s
Worktree: the card thread's own checkout of objectstack-ai/objectstack
Domain: domain:spec
Seat: domain:spec#1
File surface: docs/adr/0131-total-organization-ownership-no-null-organization-id.md (one dated note at D13) and docs/adr/0017-object-has-many-view.md (one dated note at the personal layer); the generated ADR index only if a gate names it; no packages/** (stop on breach; explain in the report)
Container & model: XS, mode:thread, model: default — the tier is the PM's per-card call (floor sonnet · default opus · ceiling fable); governed ADR text (Tier H), one CONTRACT_REVIEW_TIER review by the seat, maintainer approval before landing, effort: medium
Clause-②: no
Metadata-protocol: none
Responsibility: docs/adr 0131 D13 + 0017 personal layer | the #28971 ruling (maintainer 「同意」, option C) moved named personal views from parked to ruled as a user-owned D3 object | readers of the ADRs who would still read the direction as parked
Thread-read: 6571427299
Premise: holds (on origin/main 31826d3318 ADR-0131 D13 still calls a per-user personal view scope the parked v18 direction; ADR-0017 still describes the personal layer as visible only to its owner)
Serial constraints cleared: none (#29037, the spec retirement, is a separate card on different files)
Ruling-ref: #28971 — maintainer 「同意」 to option C (2026-11-02), recorded on #29038; triage 6571427299.
{
"issue": 29038,
"status": "done",
"branch": "claude/project-thread-dm9b5s",
"pr": "https://github.com/objectstack-ai/objectstack/pull/29321",
"session": "session_01ADHkmPtNBPh7cTMHdPYPrT",
"premise_still_valid": true,
"summary": "Appended one dated note under ADR-0131 D13 (after the paragraph, before D14) and one indented note under ADR-0017 section 2's personal-scope bullet. Each cites ruling of record 6570568131 on #28971 (letter C) and says: named personal views are a user-owned D3 object, ruled not parked; not view items and no reuse of scope personal; first version follows #28949, #28948, #28950, #28912. Diff +22/-0, no existing ADR text changed, no Status line edited. Draft PR, Tier H, skip-changeset.",
"tests": "No code or test touched, so no package tests and no ablation (docs/adr only). Premise read on origin/main 31826d33: ADR-0131 L909-910 'parked v18 direction ... user-owned D3 object'; ADR-0017 L71-72 personal layer; view.zod.ts L5787 still says PARKED.",
"gates": "head 29c1fd16: dispatch-gates --commands derived 21; all 21 run, all exit 0 (check-adr-links +self-test, closing-keyword-parity +self-test, comment-mask-corpus, plan-test-core-shards self-test, lint check:doc-formula-expressions after lint closure build under os-verify-lock VERDICT command-exit 0, check:adr-anchors, adr-index, adr-symbol-anchors, ci-filter-parity, closed-ceremony-text, cross-package-test-inputs, doc-authoring, driver-memory-census, gitlink-declared, nul-bytes, pm-governed-merges, pm-prior-rulings, refd-timer-probe, watch-hint-literal). --ran: 21 derived, 21 run, 0 NOT-MEASURED, 0 UNRUN (DERIVED zero). adr-index --report: README current, no regen. check-governed-merges --test: governed true, tier H (docs/adr). check-changeset-no-major on the PR body offline: exit 0. CI check-runs: in_progress at report time.",
"dogfood_battery": "n/a — no ! in the PR title and no (narrowing) arm",
"files_changed": ["docs/adr/0017-object-has-many-view.md", "docs/adr/0131-total-organization-ownership-no-null-organization-id.md"],
"line_budget": "+22 / -0, 2 files, governed (Tier H), under the 3000 human-merge threshold",
"deviations": "none",
"mcp_calls": "6 — mcp__github__issue_read x5 (get #29038, get_comments #29038 x2, get #28971, get_comments #28971), mcp__github__pull_request_read x1 (get #29321); no write tools",
"api_writes": "2 — fleet-write relay pr_create (PR #29321, labels skip-changeset) and this os-dev-report comment via post-stamped.mjs; git push of the branch is not a REST write",
"open_questions": [
{
"question": "Should either ADR's Status line also gain an Amended entry pointing at the note?",
"options": ["A: no, the dated notes alone carry it, as the card's acceptance says no other text changes", "B: add a one-line Amended entry to each Status line in a follow-up commit on this PR"],
"recommendation": "A, because the card's acceptance forbids other text changes and both notes already say how the surrounding text reads"
}
],
"security_findings": "none",
"out_of_scope_findings": []
}
Activity
objectstack-fleet commentedon Nov 2, 2026
triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U
Path: none
Triage:
domain:spec· p3 ·pm:queue· 2026-11-02T07:18Z⛔ Not a claim.
Generated by Claude Code
objectstack-fleet commentedon Nov 2, 2026
domain:spec#1 · os-steve · session_01ADHkmPi25XXKx92Xmg4viS
Claim: PM loop round 1 · 2026-11-02T11:40Z
Session:
session_01ADHkmPi25XXKx92Xmg4viS(seat); dev = card threadsession_01ADHkmPtNBPh7cTMHdPYPrTAccount:
os-steveBranch:
claude/project-thread-dm9b5sWorktree: the card thread's own checkout of
objectstack-ai/objectstackDomain:
domain:specSeat:
domain:spec#1File surface:
docs/adr/0131-total-organization-ownership-no-null-organization-id.md(one dated note at D13) anddocs/adr/0017-object-has-many-view.md(one dated note at thepersonallayer); the generated ADR index only if a gate names it; nopackages/**(stop on breach; explain in the report)Container & model:
XS,mode:thread,model: default — the tier is the PM's per-card call (floor sonnet · default opus · ceiling fable); governed ADR text (Tier H), one CONTRACT_REVIEW_TIER review by the seat, maintainer approval before landing,effort: mediumClause-②: no
Metadata-protocol: none
Responsibility:
docs/adr 0131 D13 + 0017 personal layer | the #28971 ruling (maintainer 「同意」, option C) moved named personal views from parked to ruled as a user-owned D3 object | readers of the ADRs who would still read the direction as parkedThread-read: 6571427299
Premise: holds (on origin/main
31826d3318ADR-0131 D13 still calls a per-user personal view scope the parked v18 direction; ADR-0017 still describes thepersonallayer as visible only to its owner)Serial constraints cleared: none (#29037, the spec retirement, is a separate card on different files)
Ruling-ref: #28971 — maintainer 「同意」 to option C (2026-11-02), recorded on #29038; triage 6571427299.
objectstack-fleet commentedon Nov 2, 2026
domain:spec#1 · os-steve · session_01ADHkmPtNBPh7cTMHdPYPrT
os-dev-report
{ "issue": 29038, "status": "done", "branch": "claude/project-thread-dm9b5s", "pr": "https://github.com/objectstack-ai/objectstack/pull/29321", "session": "session_01ADHkmPtNBPh7cTMHdPYPrT", "premise_still_valid": true, "summary": "Appended one dated note under ADR-0131 D13 (after the paragraph, before D14) and one indented note under ADR-0017 section 2's personal-scope bullet. Each cites ruling of record 6570568131 on #28971 (letter C) and says: named personal views are a user-owned D3 object, ruled not parked; not view items and no reuse of scope personal; first version follows #28949, #28948, #28950, #28912. Diff +22/-0, no existing ADR text changed, no Status line edited. Draft PR, Tier H, skip-changeset.", "tests": "No code or test touched, so no package tests and no ablation (docs/adr only). Premise read on origin/main 31826d33: ADR-0131 L909-910 'parked v18 direction ... user-owned D3 object'; ADR-0017 L71-72 personal layer; view.zod.ts L5787 still says PARKED.", "gates": "head 29c1fd16: dispatch-gates --commands derived 21; all 21 run, all exit 0 (check-adr-links +self-test, closing-keyword-parity +self-test, comment-mask-corpus, plan-test-core-shards self-test, lint check:doc-formula-expressions after lint closure build under os-verify-lock VERDICT command-exit 0, check:adr-anchors, adr-index, adr-symbol-anchors, ci-filter-parity, closed-ceremony-text, cross-package-test-inputs, doc-authoring, driver-memory-census, gitlink-declared, nul-bytes, pm-governed-merges, pm-prior-rulings, refd-timer-probe, watch-hint-literal). --ran: 21 derived, 21 run, 0 NOT-MEASURED, 0 UNRUN (DERIVED zero). adr-index --report: README current, no regen. check-governed-merges --test: governed true, tier H (docs/adr). check-changeset-no-major on the PR body offline: exit 0. CI check-runs: in_progress at report time.", "dogfood_battery": "n/a — no ! in the PR title and no (narrowing) arm", "files_changed": ["docs/adr/0017-object-has-many-view.md", "docs/adr/0131-total-organization-ownership-no-null-organization-id.md"], "line_budget": "+22 / -0, 2 files, governed (Tier H), under the 3000 human-merge threshold", "deviations": "none", "mcp_calls": "6 — mcp__github__issue_read x5 (get #29038, get_comments #29038 x2, get #28971, get_comments #28971), mcp__github__pull_request_read x1 (get #29321); no write tools", "api_writes": "2 — fleet-write relay pr_create (PR #29321, labels skip-changeset) and this os-dev-report comment via post-stamped.mjs; git push of the branch is not a REST write", "open_questions": [ { "question": "Should either ADR's Status line also gain an Amended entry pointing at the note?", "options": ["A: no, the dated notes alone carry it, as the card's acceptance says no other text changes", "B: add a one-line Amended entry to each Status line in a follow-up commit on this PR"], "recommendation": "A, because the card's acceptance forbids other text changes and both notes already say how the surrounding text reads" } ], "security_findings": "none", "out_of_scope_findings": [] }Stamped 2026-11-02T11:53Z.
Generated by Claude Code
objectstack-fleet commentedon Nov 2, 2026
domain:spec#1 · os-steve · session_01ADHkmPi25XXKx92Xmg4viS
Landed · 2026-11-02T15:48Z
7b1ae3383e, through the merge queue after the governed approvalcompletedbyFixes #29038pm:dispatchedis removed. Two CONTRACT_REVIEW_TIER PASS records on968a13a5. The #28971 ruling is recorded at ADR-0131 D13 and in ADR-0017.