T-OZ6A-readiness-gate-checks-symbol-reachability
Status: closed/superseded · Impact: medium · Complexity: small
The SDLC plugin’s implementation-ready readiness gate (the task ensure-ready /
gap-report machinery) verifies that the test paths an acceptance criterion cites
exist on disk, but not that the symbol the AC names is actually reachable
from that file’s layer. A downstream task on markdown-contract cited
projection.test.ts for a byAnchor / SectionView.anchors assertion, but
those are model-layer members built via read() and unreachable from
projection.test.ts’s parse() tree — the mismatch only surfaced at
implementation time, where the assertion had to move to model.test.ts. A
layer-mismatch check in the gate would catch this class of mis-routing at
definition time. Originating from T-DANF-dialect-anchor-fragment-edges on
https://github.com/sksizer/markdown-contract.
The implementation-ready readiness gate only verifies that cited test paths exist, not that the symbol an acceptance criterion names is reachable from that file’s layer. Add a layer-mismatch check so the gate flags at definition time when a cited test file can’t import or reach the symbol its AC references — e.g. a byAnchor / SectionView.anchors assertion cited against projection.test.ts that actually belongs in model.test.ts. — from
T-DANF-dialect-anchor-fragment-edges
TBD — receiver to fill before promoting from planning/draft.
Proposed
Section titled “Proposed”TBD — receiver to fill before promoting from planning/draft.
Approach
Section titled “Approach”TBD — receiver to fill before promoting from planning/draft.
Files to touch
Section titled “Files to touch”TBD — receiver to fill before promoting from planning/draft.
Acceptance criteria
Section titled “Acceptance criteria”TBD — receiver to fill before promoting from planning/draft.
Out of scope
Section titled “Out of scope”- none
Dependencies
Section titled “Dependencies”- none
Discovery context
Section titled “Discovery context”Spawned by /sdlc:spawn-task-pr on 2026-06-30 UTC from T-DANF-dialect-anchor-fragment-edges in
https://github.com/sksizer/markdown-contract.