Skip to content

T-N77L-task-define-reverse-reference-scan

Status: closed/done · Impact: medium · Complexity: small

When a task proposes deleting or renaming a symbol/field, its “Files to touch” list is only as complete as the author’s grep. The readiness gate (/sdlc:task-ensure-ready) accepts the list as long as every cited row resolves — it never checks whether the touch-list covers every site that references the doomed symbol. So a task can pass the gate with an incomplete blast radius, and the missing consumers only surface as compile errors mid-implementation.

This gap was observed in a downstream consumer:

The spec’s “Files to touch” list was authored from a partial grep and missed five real consuming sites; the readiness gate accepted it because the cited rows all resolved. The gap was only caught by the task-work relevance-check grep — task-define should run a symbol-level reverse-reference scan (grep the named symbol across the repo) when a task proposes deleting or renaming a field, and flag touch-list rows that don’t cover every hit.

Spawned from 2026-05-19-engine-review-derive-focus-sessions-today in git@github.com:sksizer/pumice.git.

TBD — receiver to fill before promoting from planning/draft.

TBD — receiver to fill before promoting from planning/draft. Sketch: when /sdlc:task-define detects a delete/rename-shaped touch-list row (or a symbol named in a “remove X” Approach step), grep that symbol across the repo and warn (advisory, like the existing validate-AC step 4b) about any reference site not covered by a Files-to-touch row.

TBD — receiver to fill before promoting from planning/draft.

TBD — receiver to fill before promoting from planning/draft.

TBD — receiver to fill before promoting from planning/draft.

TBD — receiver to fill before promoting from planning/draft.

TBD — receiver to fill before promoting from planning/draft.

Spawned by /sdlc:cross-repo-task-pr on 2026-05-24 UTC from 2026-05-19-engine-review-derive-focus-sessions-today in git@github.com:sksizer/pumice.git.


← Back to Tasks