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
Step (2) of the two-level remedy #13482's triage ruling ordered. Step (1) — stripping the rotting :NNN suffixes — landed in PR #13786; this is the half that was deliberately deferred, and it is
filed so the deferral cannot quietly become an abandonment.
Step (1) is done. The citations now carry file + symbol and no line number, so nothing rots — but
⛔ nothing checks that the cited symbol is actually in the cited file either. That is this card.
The size, measured
From #13786's census, produced under a defined criterion rather than a grep:
That census is why the two steps were split: folding a 1,647-citation re-authoring into a new
verification surface would have made both unreviewable, and it would have inverted the ruling's own
reason for the ordering — step (1) removes a false "verified against source" signal, step (2) adds
a new signal that must itself be proven.
⭐ The shape is already in the gate, so this is not a design question
scripts/check-platform-checklist.mjs already resolves a structured pin — enumSource {file, export, expect} — checking file existence, export presence and member count.
⇒ The resolver for symbol anchors is a known quantity built on an existing mechanism, ⛔ not a new
invention. #13003 chose the same shape for the sibling ledger under packages/spec/liveness/; read its
implementation for the shape, ⛔ but do not reuse its gate — that is a different file family with its
own gate, which is why #13482 was not merged into it.
What this card owes
Re-author the citations into a structured symbol anchor;
a resolver that reds when a cited symbol is absent from the cited file, with its own
registration, self-test and baseline;
and the two-direction pinning this gate's existing checks use — a firing case and a silent
neighbour for each rule.
⚠️ Known context the implementer needs up front
pnpm check:platform-checklist is not CI-wired, by a standing maintainer decision recorded in lint.yml; the visibility gap is carded separately as #11730 (pm:awaiting-maintainer). ⇒ A red
from this resolver reaches whoever runs the gate, ⛔ not every PR. State that plainly in the PR
rather than implying reach the check does not have — overstating a new check's reach would reproduce
the very defect this family is closing: a signal that reads as verified while pointing at nothing.
⛔ Do not touch the CI wiring here; that decision is the maintainer's and #11730 holds it.
Provenance
Deferred half of #13482's ruling. #13786's dev searched all 384 open issues (REST list + local grep on
symbol-anchor / platform-checklist / citation / line-number keywords) and found no existing
step-(2) card, then correctly left the sequencing to the PM rather than filing it as its own find.
Filed unassigned and ungraded by the domain:devx PM seat — domain:*, priority and type are
triage's field.
Step (2) of the two-level remedy #13482's triage ruling ordered. Step (1) — stripping the rotting
:NNNsuffixes — landed in PR #13786; this is the half that was deliberately deferred, and it isfiled so the deferral cannot quietly become an abandonment.
What the ruling said
Step (1) is done. The citations now carry file + symbol and no line number, so nothing rots — but
⛔ nothing checks that the cited symbol is actually in the cited file either. That is this card.
The size, measured
From #13786's census, produced under a defined criterion rather than a grep:
That census is why the two steps were split: folding a 1,647-citation re-authoring into a new
verification surface would have made both unreviewable, and it would have inverted the ruling's own
reason for the ordering — step (1) removes a false "verified against source" signal, step (2) adds
a new signal that must itself be proven.
⭐ The shape is already in the gate, so this is not a design question
scripts/check-platform-checklist.mjsalready resolves a structured pin —enumSource {file, export, expect}— checking file existence, export presence and member count.⇒ The resolver for symbol anchors is a known quantity built on an existing mechanism, ⛔ not a new
invention. #13003 chose the same shape for the sibling ledger under
packages/spec/liveness/; read itsimplementation for the shape, ⛔ but do not reuse its gate — that is a different file family with its
own gate, which is why #13482 was not merged into it.
What this card owes
registration, self-test and baseline;
neighbour for each rule.
pnpm check:platform-checklistis not CI-wired, by a standing maintainer decision recorded inlint.yml; the visibility gap is carded separately as #11730 (pm:awaiting-maintainer). ⇒ A redfrom this resolver reaches whoever runs the gate, ⛔ not every PR. State that plainly in the PR
rather than implying reach the check does not have — overstating a new check's reach would reproduce
the very defect this family is closing: a signal that reads as verified while pointing at nothing.
⛔ Do not touch the CI wiring here; that decision is the maintainer's and #11730 holds it.
Provenance
Deferred half of #13482's ruling. #13786's dev searched all 384 open issues (REST list + local grep on
symbol-anchor / platform-checklist / citation / line-number keywords) and found no existing
step-(2) card, then correctly left the sequencing to the PM rather than filing it as its own find.
Filed unassigned and ungraded by the
domain:devxPM seat —domain:*, priority and type aretriage's field.
Generated by Claude Code