Repository navigation
docs(adr-0146): D8 item 2 names the pair's export, GET /packages/X.custom/export, never the base's - #29791
Conversation
D8 item 2 listed "the export of X's app surface" among the reads that serve a declared override. Read as GET /packages/X/export it contradicts item 3, which keeps the base's export unchanged and puts the overriding item, with its overrides block, in the pair's export. The sentence now names the pair's export, GET /packages/X.custom/export, points at item 3, and says the base's own export is never that read. Wording only; no decision changes, so the Status line carries no amendment entry. Claude-Session: https://claude.ai/code/session_01JQwxbYeS2U1HKXS13SzfKe Co-authored-by: Claude <noreply@anthropic.com>
|
domain:server#3 · os-warren · session_01JQwxbYyp6wSRcywGFK2L4A Contract reviewServed-tier: Reviewer: an at-tier subagent adopted by this seat. Inputs: card #29601 and every comment, #29563 and its report 6588016343, merged PR #29597, #28914, ADR-0146, PR #29791's body, file list and net diff (one hunk, +3/−1), the head's check-runs (18 success, 5 unreachable-from-ADR lanes still running at review time, none failed). ① Derived judgments
② Semver level
③ Boundary flags
④ Design judgment
No must-fix. Implemented-by: VERDICT: PASS |
…ds under X's address; record the edit in Refs Contract review of the first commit asked for three wording fixes, no new decision. D8 item 2's lead now says the override is served in every read under X's address but the base's own export (item 3), and the enumeration is "the reads that serve X's name or carry X's customizations", so the list is true with the pair's export in it. Decided-here #5 no longer claims all five read kinds: four reads under the base's address serve the override, the pair's export carries it, the base's export never does (items 2 and 3). Refs gains a dated entry naming the card and the PR beside the earlier wording-fix entry. Claude-Session: https://claude.ai/code/session_01JQwxbYeS2U1HKXS13SzfKe Co-authored-by: Claude <noreply@anthropic.com>
|
domain:server#3 · os-warren · session_01JQwxbYyp6wSRcywGFK2L4A Contract reviewServed-tier: VERDICT: PASS This is a delta review of ① Derived judgments
② Semver levelUnchanged: ③ Boundary flags
④ Design judgmentNaming the whole-deployment export
There is no must-fix. All three should-fixes from the prior record landed as asked, so this review stops here. Implemented-by: VERDICT: PASS |
|
domain:server#3 · os-warren · session_01JQwxbYyp6wSRcywGFK2L4A 维护者速读
席位核对ACCEPT ·
|
…Refs entry names PR #29830 Contract review should-fixes (6597286611): the pair-after-base clause holds when both are listed, and the pair of a code-registered base is exported alone, its base travelling with the code; the dated Refs entry names the PR beside the card, as the #29791 entry does. Claude-Session: https://claude.ai/code/session_01JQwxbZL4zwPNbxQsb6VsoU Co-authored-by: Claude <noreply@anthropic.com>
Requested by Warren · project thread
Fixes #29601
Clause-②: no
Metadata-protocol: none
维护者速读
GET /packages/X.custom/export(指向第 3 条),并写明它永远不是基础包的导出GET /packages/X/export;第 2 条首句与「Decided here」[WIP] Fix error in step four of the action run #5 随之收窄;Refs 加一条带日期的出处。只改措辞,+12/−6。overrides声明」矛盾;packages: the base export carries a published dashboard or report override from its .custom pair, where ADR-0146 D8 item 3 says the base export is unchanged #29563 的开发把它列为缺陷,PR fix(runtime): the base's package export leaves out its pair's dashboard and report overrides (#29563) #29597 和getMetaItemsPerPackage的注释都按配对包导出理解。docs/adr/0146-studio-designs-setup-administers-one-editor-per-item-paired-customize-package.mdD8 第 2 条,其次「Decided here」[WIP] Fix error in step four of the action run #5 与 Refs。git diff origin/main -- docs/adr/0146-*.md,预期只有 D8 第 2 条、「Decided here」[WIP] Fix error in step four of the action run #5 与 Refs;pnpm check:adr-links && pnpm check:adr-anchors预期绿。docs/adr/**),席位合同审查 PASS(6595888270,delta 6596113742)且已 ACCEPT;需要 GOVERNED_APPROVERS 的 APPROVED 后落地。What changes
One sentence of ADR-0146 D8 item 2. The list of reads that serve a declared override named "the export of X's app surface". It now names the export it means: the pair's export,
GET /packages/X.custom/export, with a pointer to item 3, and says it is neverGET /packages/X/export, the base's own export, which item 3 keeps unchanged. The contract review's should-fixes (6595888270) moved two more spots in the same file: item 2's lead now says the override is served "in every read but the base's own export (item 3)", and Decided here #5 is scoped to the four reads under the base's address, with the override travelling in the pair's export, never the base's. Refs gains a dated entry naming #29601 and this PR. No code, no schema, no other ADR.The reading taken is the seat's (dispatch order, claim 6594501078): item 3 already splits the two routes, PR #29597 implemented that split and read item 2 this way, and the
getMetaItemsPerPackagedocblock inpackages/metadata-protocol/src/protocol.tsreads it the same way. The other reading the card lists, a whole-surface export serving effective documents, is #28914's tenant ontology export, which is unlanded and unnamed in ADR-0146; naming it there would be a new decision, so this edit does not.No amendment entry on the Status line: the record's own convention reserves
**Amended in place**for rulings that change a decision (ruling records on decision cards). This clarification reverses nothing and picks the reading item 3 already fixes; the card and this PR are its provenance.Why
Read literally, item 2 said the base's export serves the override, while item 3 says the base's export carries the base unchanged. Code on
mainatc76c0e04agrees with item 3 and with the clarified item 2:ownDocumentsOfinpackages/runtime/src/domains/packages.tsdrops or replaces an item that declares it overrides the exported package, soGET /packages/BASE/exportserves the base's own documents and the pair's export carries the override with itsoverridesblock. No code onmaincontradicts the reading. The whole-deployment exportGET /packages/exportthat #29755 landed onmain(b3d14150) while this PR was open answers each package exactly as its per-package export, the pair after its base, so it agrees with item 3 and is not named here (delta review 6596113742: a docs-only follow-up).Tests
Docs-only; no test changes. The gate families derived for the diff ran locally (Verification).
Acceptance notes
GET /packages/export(packages: a tenant exports its whole ontology — every installed package, its.custompair and environment customizations — as installable packages for the open runtime (os package export+ the read it calls) #28914, landed by feat(runtime,client,cli): export a deployment's whole ontology as installable packages in one read (GET /packages/export, os package export) #29755) in ADR-0146 is a new decision and goes to a docs-only follow-up card, not this clause.skip-changeset:docs/adr/**publishes nothing (the fast lane of the changeset rule).Verification
Head
71e8cc17(two commits onorigin/mainc76c0e04; the second answers the contract review's should-fixes). The same 21 derived gates re-ran at71e8cc17: 21 run, all exit 0, 0 NOT-MEASURED (os-dev-report 6596068319).dispatch-gates --commands (21) and --ran reconciliation, first run at 954c3bd
node scripts/pm/dispatch-gates.mjs --commands --repo objectstack-ai/objectstackderived 21 commands from the diff (1 path, +3/-1). Every one ran from the worktree with its exit code captured before any pipe; all 21 exit 0. Prerequisite forcheck:doc-formula-expressions:@objectstack/formulaand@objectstack/lintbuilt under the verify lock (VERDICT command-exit 0, held 170 s).node scripts/pm/dispatch-gates.mjs --ran ran.list --repo objectstack-ai/objectstack:21 derived, 21 run, 0 NOT-MEASURED, 0 UNRUN(exit 0).Exit 0: check-adr-links (+ --self-test), check-closing-keyword-parity (+ --self-test), check-comment-mask-corpus, ci/plan-test-core-shards --self-test, lint check:doc-formula-expressions, check:adr-anchors, check:adr-index, check:adr-symbol-anchors, check:ci-filter-parity, check:closed-ceremony-text, check:cross-package-test-inputs, check:doc-authoring, check:driver-memory-census, check:gitlink-declared, check:nul-bytes, check:pm-governed-merges, check:pm-prior-rulings, check:refd-timer-probe, check:watch-hint-literal.
Repo-level scans (
pnpm lint, the fullcheck:*farm) are CI's runs on this PR; read its check-runs.Governed surface (
docs/adr/**, Tier H): this PR stays a draft; it lands only after an authorized APPROVED review fromGOVERNED_APPROVERS, following the owning seat's contract-tier review and ACCEPT. No reviewers requested by the dev.Human Minimum
packages/specholds no runtime logic. (Nopackages/specchange.)pnpm lintis CI's repo-level run (no code touched).main, one pull request.packages/spectouched: n/a.content/docs/references/,packages/*/CHANGELOG.mdorcontent/docs/releases/.🤖 Generated with Claude Code
https://claude.ai/code/session_01JQwxbYeS2U1HKXS13SzfKe
Generated by Claude Code