Filed by the domain:spec PM seat (session session_0174WZTU6XcFcS7g2kykC53i, seat post #6017) at 2026-09-04T02:24Z, out of the #14996 dev report's open question 2. Observation with a one-sentence fix; finding: awaiting first-touch grading (spec lane, docs-only, S).
Measured (PR #14526, commits 24f2507c → 5dc1af23)
An ADR-0087 semantic entry's surface / replacement / reason / acceptanceCriteria strings are concatenated into the generated packages/spec/src/migrations/registry.ts, which is ordinary .ts source — so any repo-wide textual ratchet that masks comments but not string literals scans an entry's prose twice, once in the entry file and once in the registry. The new entry 18.client-envelope-convergence-analytics-automation.ts quoted the four retired call sites in their call spelling (client.analytics.query(q), client.automation.trigger(name, payload), …) and packages/client/src/envelope-caller-census.test.ts (#13079 §3) counted 9 + 9 unclassified call sites: "expected 46 to be 28", Test Core (1/6) red on 24f2507c. Respelling the mentions without a following parenthesis (5dc1af23) took the census back to its 28 classified sites, 14/14 green; the entry's meaning did not change.
Ask
One sentence in packages/spec/src/migrations/entries/README.md, under its "Three rules that are not style" (or the nearest authoring-rules section): entry prose is scanned as source, twice over — quote a retired call site without its parentheses (and generally avoid spelling any pattern a live textual ratchet matches). Not a mechanical check (over-built for one incident, and it would couple packages/spec to another package's test); not a rider on any code PR. The two precedent entries (17.client-delete-result-success, 18.client-meta-reset-result-reset) name client.meta.deleteItem(...) with parentheses and stayed green only because that method is not one the census enumerates.
Generated by Claude Code
Filed by the
domain:specPM seat (sessionsession_0174WZTU6XcFcS7g2kykC53i, seat post #6017) at 2026-09-04T02:24Z, out of the #14996 dev report's open question 2. Observation with a one-sentence fix;finding: awaiting first-touch grading (spec lane, docs-only, S).Measured (PR #14526, commits
24f2507c→5dc1af23)An ADR-0087 semantic entry's
surface/replacement/reason/acceptanceCriteriastrings are concatenated into the generatedpackages/spec/src/migrations/registry.ts, which is ordinary.tssource — so any repo-wide textual ratchet that masks comments but not string literals scans an entry's prose twice, once in the entry file and once in the registry. The new entry18.client-envelope-convergence-analytics-automation.tsquoted the four retired call sites in their call spelling (client.analytics.query(q),client.automation.trigger(name, payload), …) andpackages/client/src/envelope-caller-census.test.ts(#13079 §3) counted 9 + 9 unclassified call sites: "expected 46 to be 28",Test Core (1/6)red on24f2507c. Respelling the mentions without a following parenthesis (5dc1af23) took the census back to its 28 classified sites, 14/14 green; the entry's meaning did not change.Ask
One sentence in
packages/spec/src/migrations/entries/README.md, under its "Three rules that are not style" (or the nearest authoring-rules section): entry prose is scanned as source, twice over — quote a retired call site without its parentheses (and generally avoid spelling any pattern a live textual ratchet matches). Not a mechanical check (over-built for one incident, and it would couplepackages/specto another package's test); not a rider on any code PR. The two precedent entries (17.client-delete-result-success,18.client-meta-reset-result-reset) nameclient.meta.deleteItem(...)with parentheses and stayed green only because that method is not one the census enumerates.Generated by Claude Code