Skip to content

Commit fcee5ff

Browse files
committed
docs(metadata-core): re-anchor the dead tracker citations to the commits and ADR that decided them
Stage 9 of the domain:engine dead-citation lane: 30 comment and docblock sites on 29 lines in 14 files of packages/metadata-core that cited tracker numbers now answering 404 cite an object this repository controls instead (ruling C+D, form C): 10 numbers by commit, #16864 by ADR-0087, and the objectui pair respelled objectui#6110 + objectui#6111. Comments only; every file keeps its line count. Claude-Session: https://claude.ai/code/session_01DDZNkDVwPQnevTFcYE47H3 Co-authored-by: Claude <noreply@anthropic.com>
1 parent c205b6c commit fcee5ff

14 files changed

Lines changed: 29 additions & 29 deletions

‎packages/metadata-core/src/artifact-forward-conversion.test.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -357,7 +357,7 @@ describe('the artifact door never stamps a column constraint (ADR-0113, #16693)'
357357
* the defect is WHO writes `_unpublished`).
358358
*
359359
* The entry is `retiredFromLoadPath: true`, which does NOT hold it back here —
360-
* that flag's jurisdiction is the authoring funnel and nothing else (#16864's
360+
* that flag's jurisdiction is the authoring funnel and nothing else (ADR-0087's recorded
361361
* determination, landed). So before this fix an artifact declaring
362362
* `engines.protocol: ^17.0.0` — the range `create-objectstack` stamps — had
363363
* every `defineApp({ hidden: true })` in it registered as an unpublished app,

‎packages/metadata-core/src/artifact-forward-conversion.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@
9898
* for `field-required-notnull-explicit`, #16693; measured again for
9999
* `app-hidden-to-unpublished`, #17885). Retirement does not hold those back
100100
* either: `retiredFromLoadPath`'s jurisdiction is the AUTHORING funnel and
101-
* nothing else (#16864's determination, and the flag's own docblock now says
101+
* nothing else (ADR-0087's recorded determination, and the flag's own docblock now says
102102
* so) — which is exactly why the window has to name them here.
103103
*
104104
* ⇒ {@link DEFAULT_FLIPS_NOT_REPLAYED_HERE} lists them, and the door refuses

‎packages/metadata-core/src/code-artifact-provenance.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
/**
44
* "Does a code package ship this name?" — the ADR-0029 D9.6 provenance test.
55
*
6-
* [#10062] Sunk here from `@objectstack/objectql`'s registry by the same
6+
* [commit fa5d137ab] Sunk here from `@objectstack/objectql`'s registry by the same
77
* criterion as the write-verb dispatch predicates and the audit governance
88
* table above it in `index.ts`: a second layer needs the answer, and the
99
* reverse import would either close a cycle or make the consumer depend on the

‎packages/metadata-core/src/contract-suite.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ export interface DeclaredDivergences {
8787
* for it is a MAY. That sentence used to be unwritten, and this member's
8888
* own doc used to name the no-`since` case as part of the divergence.
8989
*
90-
* Value is the tracking issue, e.g. `'#10842'`. **No declaration today:**
90+
* Value is the tracking issue, e.g. the one commit f334d662e closed. **No declaration today:**
9191
* `SysMetadataRepository`, the only one there has ever been, was fixed and
9292
* deleted its line — the pin below is what told it to. An empty ledger is
9393
* the mechanism at rest, not dead code; the shrink-only direction is the

‎packages/metadata-core/src/form-predicate-root-policy.test.ts‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ describe('the bound vocabulary is checked against the LIVE contract, not a copy
105105
* metadata forms. No `current_user` at section level — it is unbound
106106
* here and the predicate would fault open."
107107
*
108-
* #12914 replaced that sentence — objectui#6110 threads the host scope into
108+
* Commit f887e5249 replaced that sentence — objectui#6110 threads the host scope into
109109
* `isSectionVisible`, objectui#6111 evaluates the section predicate on the
110110
* `section-divider` pseudo-field with that scope bound — and the copy above
111111
* went stale HERE in total silence, because no gate reads a comment. It is
@@ -146,7 +146,7 @@ describe('the bound vocabulary is checked against the LIVE contract, not a copy
146146
// ⚠️ INVERTED IN PLACE. Was "judges the SAME predicate differently per
147147
// surface — the whole point of the split", expecting `['current_user']`
148148
// from the section vocabulary. The section binds the root since
149-
// objectui#6110 + #6111 (contract landed by #12914), so the section answer
149+
// objectui#6110 + objectui#6111 (contract landed by commit f887e5249), so the section answer
150150
// is now `[]` too, and a finding there would be a boot notice about a
151151
// predicate that resolves.
152152
const source = 'current_user.id == record.owner';
@@ -255,7 +255,7 @@ describe('detectUnboundFormViewPredicateRoots — traversal', () => {
255255

256256
it('stays SILENT on a current_user-family predicate on EITHER surface', () => {
257257
// Both regressions in one loop. Each of these resolves at FIELD level
258-
// (objectui#6010) and at SECTION level (objectui#6110 + #6111), so
258+
// (objectui#6010) and at SECTION level (objectui#6110 + objectui#6111), so
259259
// flagging one is crying wolf on a legitimate, correctly-authored
260260
// predicate — the failure the module doc forbids, once per surface.
261261
for (const root of CURRENT_USER_FAMILY_ROOTS) {
@@ -276,7 +276,7 @@ describe('detectUnboundFormViewPredicateRoots — traversal', () => {
276276
it('says NOTHING about the same root at SECTION level either — it binds there now', () => {
277277
// ⚠️ INVERTED IN PLACE. This case asserted exactly ONE finding — the
278278
// section slot — "where the contract says it is unbound", while the
279-
// identical field predicate stayed silent. #12914 replaced that contract
279+
// identical field predicate stayed silent. Commit f887e5249 replaced that contract
280280
// sentence, so the two slots now answer alike and the artifact below is
281281
// healthy on both. A finding here would be a boot notice about a predicate
282282
// that resolves, which the module doc names as worse than no notice.

‎packages/metadata-core/src/form-predicate-root-policy.ts‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
* forms, and `data` — the row under edit, at every depth, repeater rows
1212
* included — in metadata-editing forms. BOTH predicate surfaces additionally
1313
* bind `current_user` and its ADR-0068 aliases — a FIELD since objectui#6010,
14-
* a SECTION since objectui#6110 + #6111. The contract states the failure mode
14+
* a SECTION since objectui#6110 + objectui#6111. The contract states the failure mode
1515
* beside the vocabulary (`packages/spec/src/ui/view.zod.ts`,
1616
* `FormFieldSchema.visibleWhen` / `FormSectionSchema.visibleWhen`): **a bare
1717
* identifier is UNBOUND, the predicate faults, and `visibleWhen`'s fault
@@ -111,14 +111,14 @@
111111
* 1. **FIELD.** The first version omitted `current_user`, quoting
112112
* `FormFieldSchema.visibleWhen` faithfully — the root genuinely had been
113113
* unbound there (#6146). objectui#6010 had already bound it and the prose
114-
* had not caught up; #12930 re-measured the prose, and this module needed a
114+
* had not caught up; commit b5a239815 re-measured the prose, and this module needed a
115115
* same-day correction.
116116
* 2. **SECTION.** That correction then split the vocabulary and justified the
117117
* section half by quoting `FormSectionSchema.visibleWhen` — *"`current_user`
118118
* is absent here and that is CORRECT for a section: the section docblock
119119
* states it is unbound at that level and the predicate faults open."*
120-
* Faithful again, and stale again: objectui#6110 + #6111 had bound it, and
121-
* #12914 re-measured the prose. This list is that second correction.
120+
* Faithful again, and stale again: objectui#6110 + objectui#6111 had bound it, and
121+
* commit f887e5249 re-measured the prose. This list is that second correction.
122122
*
123123
* The prose is a transcription of a renderer, so it can only ever LAG one.
124124
* Membership here is therefore decided by the mechanism, stated so a reader can
@@ -202,7 +202,7 @@ export const BOUND_FORM_VIEW_PREDICATE_ROOTS: readonly string[] = [
202202
* that the QUESTION is still per surface: "what does a FIELD predicate bind?"
203203
* and "what does a SECTION predicate bind?" are two questions with one answer
204204
* today, and that answer rests on two different renderers (objectui#6010 versus
205-
* objectui#6110 + #6111). Either can move without the other; when one does,
205+
* objectui#6110 + objectui#6111). Either can move without the other; when one does,
206206
* this is where the divergence goes, and the live-contract assertion in this
207207
* module's test is what makes the day it happens findable.
208208
*/

‎packages/metadata-core/src/index.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ export * from './engine-findone-predicate.js';
5454
// reporting two.
5555
export * from './audit-field-governance.js';
5656

57-
// [#10062] The ADR-0029 D9.6 provenance pair, sunk here from
57+
// [commit fa5d137ab] The ADR-0029 D9.6 provenance pair, sunk here from
5858
// `@objectstack/objectql`'s registry by the same criterion as everything above:
5959
// `@objectstack/service-automation` needs the same "does a code package ship
6060
// this name?" answer for ADR-0048 flow precedence, and was reaching it by
@@ -117,7 +117,7 @@ export * from './meta-write-org-scope.js';
117117
// (through `declaresOrgOverride`) so a second copy is forbidden drift.
118118
export * from './meta-write-capability.js';
119119

120-
// [#8707 / #10101] The shared platform-row organization resolver — sunk here
120+
// [commit 1408fe385 / #10101] The shared platform-row organization resolver — sunk here
121121
// from `@objectstack/plugin-audit` per the maintainer ruling recorded on
122122
// cloud#1395 ("promoted to a shared resolver used by all three platform-row
123123
// writers"). The three sanctioned consumers — audit stamping, the approval-row

‎packages/metadata-core/src/meta-write-capability.test.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ describe('#12702 — org-scoped tier-A admission, derived from the registry', ()
121121

122122
it('the boundary fold composes: a URL-only spelling folded through canonicalMetaUrlType is admitted', () => {
123123
// `email_templates` is a URL-only spelling (`SINGULAR_TO_PLURAL` has no
124-
// manifest key for it — the #10340 measurement). The doors fold BEFORE
124+
// manifest key for it — the measurement commit 26f3588fb wrote). The doors fold BEFORE
125125
// asking; this case pins that the folded spelling answers tier-A.
126126
expect(canonicalMetaUrlType('email_templates')).toBe('email_template');
127127
const out = verdict({

‎packages/metadata-core/src/meta-write-capability.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -113,13 +113,13 @@ export type MetaWriteCapabilityVerdict =
113113
*
114114
* `canonicalType` MUST be the URL segment folded through
115115
* `canonicalMetaUrlType` — the boundary folds, the layers below read the
116-
* canonical singular (`metadata-url-spelling.ts`; the #10340 measurement in
116+
* canonical singular (`metadata-url-spelling.ts`; the measurement commit 26f3588fb wrote in
117117
* `meta-write-org-scope.ts` is why this is not optional).
118118
*
119119
* `activeOrganizationId` MUST be the same value the door threads into
120120
* {@link organizationIdForMetaWrite} (REST `ctx.tenantId`, dispatcher
121121
* `resolveActiveOrganizationId`) — one resolution feeding authorization AND
122-
* scope, the single-resolution shape the REST doors already carry (#8919).
122+
* scope, the single-resolution shape the REST doors already carry (commit b5378550e).
123123
*/
124124
export function metaWriteCapabilityVerdict(input: {
125125
isSystem?: boolean;

‎packages/metadata-core/src/meta-write-org-scope.test.ts‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// Copyright (c) 2026 ObjectStack. Licensed under the Apache-2.0 license.
22
//
3-
// #10340 — `declaresOrgOverride` and the boundary fold, pinned as ONE
3+
// Commit 26f3588fb — `declaresOrgOverride` and the boundary fold, pinned as ONE
44
// composed contract.
55
//
66
// The predicate tolerates the MANIFEST-collection spellings only; the URL
@@ -19,7 +19,7 @@
1919
// `metadata-url-spelling.ts` forbids ("nothing here should ever be
2020
// consulted by a predicate one layer down"). If a future change widens
2121
// the predicate, this pin turns red so the widening is argued against
22-
// #10340 / #7894 rather than slipped in as a convenience.
22+
// commit 26f3588fb / #7894 rather than slipped in as a convenience.
2323

2424
import { describe, it, expect } from 'vitest';
2525
import { DEFAULT_METADATA_TYPE_REGISTRY } from '@objectstack/spec/kernel';
@@ -38,7 +38,7 @@ const REGISTRY_FLAG = new Map<string, boolean>(
3838

3939
describe('#10340 org scope composed with the boundary fold', () => {
4040
it('fold → predicate answers the registry flag for EVERY spelling in the URL map', () => {
41-
// The contract every REST door relies on after #10340: whatever the
41+
// The contract every REST door relies on after commit 26f3588fb: whatever the
4242
// caller spelled, folding first yields the canonical type's own
4343
// declaration. Quantified over the whole map so a new spelling limb
4444
// arrives already covered.

0 commit comments

Comments
 (0)