Step 3 of the maintainer-ruled execution chain on #12057 (ruling: comment 5459699497, adopting decision comment 5451376436 — verbatim chain line: 「ADR 更正单独 draft PR 挂人工合并」). Sibling of #13135, which executes the widened retirement itself.
What to correct
docs/adr/0126-packaged-metadata-customization-model.md §6.4 records the predicate "consumed by zero runtime packages" for kernel/metadata-customization.zod.ts. The fork report on #12057 (comment 5451357017) established that this reading was instrument blindness at measurement time, not later drift:
- The schema-name grep set genuinely reads zero outside
packages/spec, with positive controls — that instrument was blind to the module's exported TYPE names. - The widened measurement finds a real build-against consumer:
packages/metadata/src/metadata-manager.ts:45 imports type MetadataOverlay from @objectstack/spec/kernel and implements a working overlay limb (in-memory map at 315-316; getOverlay/saveOverlay/removeOverlay/getEffective at 2166-2245) — unreachable from any served surface (no route serves the paper endpoints; only its own unit tests call the methods). - Verified present at the original card's measured ref
0b048393f via git show, so the zero-consumer reading was wrong when recorded, and §6.4 inherited it.
What is NOT touched
⛔ The model-level ruling is not re-opened: §6.4's supersession ("nothing may build against it") and the retirement charter stand — the maintainer's 2026-08-29 ruling adopts retirement on the widened evidence. This card corrects only the factual record so the ADR does not teach a false measurement.
Deliverable
ONE docs-only draft PR editing docs/adr/0126-packaged-metadata-customization-model.md. Follow the ADR file's own correction convention if it has one (dated addendum / correction note); otherwise add a dated "Correction (2026-08-29)" note under §6.4 stating the corrected predicate (one unreachable build-against consumer in packages/metadata, reachable only from its own unit tests; zero served-surface consumers) and citing #12057 comment 5451357017. Governed surface — the PR stays draft, human merge: ⛔ never mark ready, never arm auto-merge.
Size: S. Clause-②: no (no packages/spec/src/** touch; no accept/reject or public-surface change — a docs factual note on a governed file whose landing is human).
Step 3 of the maintainer-ruled execution chain on #12057 (ruling: comment 5459699497, adopting decision comment 5451376436 — verbatim chain line: 「ADR 更正单独 draft PR 挂人工合并」). Sibling of #13135, which executes the widened retirement itself.
What to correct
docs/adr/0126-packaged-metadata-customization-model.md§6.4 records the predicate "consumed by zero runtime packages" forkernel/metadata-customization.zod.ts. The fork report on #12057 (comment 5451357017) established that this reading was instrument blindness at measurement time, not later drift:packages/spec, with positive controls — that instrument was blind to the module's exported TYPE names.packages/metadata/src/metadata-manager.ts:45importstype MetadataOverlayfrom@objectstack/spec/kerneland implements a working overlay limb (in-memory map at 315-316; getOverlay/saveOverlay/removeOverlay/getEffective at 2166-2245) — unreachable from any served surface (no route serves the paper endpoints; only its own unit tests call the methods).0b048393fviagit show, so the zero-consumer reading was wrong when recorded, and §6.4 inherited it.What is NOT touched
⛔ The model-level ruling is not re-opened: §6.4's supersession ("nothing may build against it") and the retirement charter stand — the maintainer's 2026-08-29 ruling adopts retirement on the widened evidence. This card corrects only the factual record so the ADR does not teach a false measurement.
Deliverable
ONE docs-only draft PR editing
docs/adr/0126-packaged-metadata-customization-model.md. Follow the ADR file's own correction convention if it has one (dated addendum / correction note); otherwise add a dated "Correction (2026-08-29)" note under §6.4 stating the corrected predicate (one unreachable build-against consumer inpackages/metadata, reachable only from its own unit tests; zero served-surface consumers) and citing #12057 comment 5451357017. Governed surface — the PR stays draft, human merge: ⛔ never mark ready, never arm auto-merge.Size: S. Clause-②: no (no
packages/spec/src/**touch; no accept/reject or public-surface change — a docs factual note on a governed file whose landing is human).