Summary
gsd-tools phase complete <phase> can emit false warnings from metadata that is not part of the current phase completion contract.
Symptoms
- A
*-VERIFICATION.md with current frontmatter status: passed still warns has unresolved gaps if historical metadata contains previous_status: gaps_found.
REQUIREMENTS.md IDs in explicitly deferred/future/v2 sections are reported as missing from the active traceability table, even when those requirements are outside the current release scope.
Expected
- Verification completion warnings should use the current frontmatter
status only, not scan the whole file for stale keys.
- Traceability warnings should apply to active/current requirements, not deferred/backlog/future sections.
Observed impact
A phase can be completed successfully but still report misleading warnings, causing operators/agents to manually edit state or traceability artifacts unnecessarily.
Repro sketch
Create .planning/phases/01-x/01-VERIFICATION.md:
---
status: passed
previous_status: gaps_found
---
Then run:
gsd-tools phase complete 01
Current behavior warns about unresolved gaps even though the current status is passed.
A second repro is a REQUIREMENTS.md with ## Deferred v2 Requirements containing IDs like FILE-001, while the active Traceability table only tracks v1 IDs. phase complete warns that deferred IDs are missing from traceability.
Notes
This was observed from a Codex runtime using GSD in a downstream repo before the latest next sync, then rechecked against current next/deploy behavior.
Summary
gsd-tools phase complete <phase>can emit false warnings from metadata that is not part of the current phase completion contract.Symptoms
*-VERIFICATION.mdwith current frontmatterstatus: passedstill warnshas unresolved gapsif historical metadata containsprevious_status: gaps_found.REQUIREMENTS.mdIDs in explicitly deferred/future/v2 sections are reported as missing from the active traceability table, even when those requirements are outside the current release scope.Expected
statusonly, not scan the whole file for stale keys.Observed impact
A phase can be completed successfully but still report misleading warnings, causing operators/agents to manually edit state or traceability artifacts unnecessarily.
Repro sketch
Create
.planning/phases/01-x/01-VERIFICATION.md:Then run:
gsd-tools phase complete 01Current behavior warns about unresolved gaps even though the current status is passed.
A second repro is a
REQUIREMENTS.mdwith## Deferred v2 Requirementscontaining IDs likeFILE-001, while the active Traceability table only tracks v1 IDs.phase completewarns that deferred IDs are missing from traceability.Notes
This was observed from a Codex runtime using GSD in a downstream repo before the latest next sync, then rechecked against current next/deploy behavior.