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
Periodic-checkpoint hook destroyed HANDOFF.json and created .planning/ where it should not (#17).writeCheckpoint() in bin/lib/checkpoint.cjs had no guards: it created .planning/ when absent (so the PostToolUse hook spawned a .planning/HANDOFF.json in directories that are not GSD projects) and wrote a phase:null/task:null skeleton even with nothing to resume (so it silently blanked a hand-authored HANDOFF.json in an idle GSD project). Added two early-return guards before any filesystem mutation: no-op when .planning/ does not already exist, and no-op for any non-manual-pause source when both phase and task are null. /gsd:pause-work still writes via the manual-pause bypass; active phase/task work still checkpoints. Regression test tests/checkpoint-write-guards.test.cjs (8 cases).
Added
Pre-release CI gate for the #17 regression. The checkpoint write-guards test now runs in CI (.github/workflows/check-drift.yml, handoff-schema job) on every push, so the data-loss failure mode fails the build before any tag. New RELEASING.md documents the pre-release checklist with CI as the source-of-truth gate.
Changed
README polish: install flow moved ahead of "What's New"; "Added features beyond upstream" descriptions tightened for scannability; intro reworded ("evolution" of GSD, not "packaging"); redundant "Based on" header dropped (covered by the Upstream projects section).