Skip to content

Commit 04ae227

Browse files
committed
release: 4.0.1 (fix #17 checkpoint data-loss + pre-release CI gate)
Patch release for the data-loss bug shipped in 4.0.0: the periodic-checkpoint hook no longer wipes HANDOFF.json or creates .planning/ in non-GSD dirs.
1 parent 63f71c3 commit 04ae227

4 files changed

Lines changed: 14 additions & 3 deletions

File tree

.claude-plugin/marketplace.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"name": "gsd",
1212
"source": "./",
1313
"description": "Get Shit Done -- structured workflow plugin for Claude Code with planning, execution, verification, and MCP-backed project state",
14-
"version": "4.0.0",
14+
"version": "4.0.1",
1515
"author": {
1616
"name": "Jasper Nuyens"
1717
},

.claude-plugin/plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "gsd",
3-
"version": "4.0.0",
3+
"version": "4.0.1",
44
"description": "Get Shit Done -- a structured workflow plugin for Claude Code that adds planning, execution, and verification commands with MCP-backed project state",
55
"author": {
66
"name": "Jasper Nuyens"

CHANGELOG.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,17 @@ History before 2.38.2 lives in git + the per-milestone archive (see `.planning/m
88

99
## [Unreleased]
1010

11+
## [4.0.1] - 2026-06-28 (fix: checkpoint hook no longer wipes HANDOFF.json or creates .planning/ in non-GSD dirs)
12+
13+
### Fixed
14+
- **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).
15+
16+
### Added
17+
- **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.
18+
19+
### Changed
20+
- 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).
21+
1122
## [4.0.0] - 2026-06-27 (consistency and code-integrity safeguards, a second upstream, and an independent version line)
1223

1324
This is a milestone release (internal milestone v1.3) and the first on the plugin's own version line. The major bump is a **divergence signal, not a breaking change**: existing commands, config, and planning artifacts work unchanged, and the new capabilities are additive and opt-in. Follows the gsd-core `1.x` line.

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
# Get Shit Done for Claude Code
66

7-
**Plugin version:** `4.0.0`
7+
**Plugin version:** `4.0.1`
88

99
**GSD Plugin for Claude Code** ensures your coding work gets done in a systematic, structured way. It prompts you only for the important design and architectural decisions that actually need your judgment, and it splits each step into its own focused subcontext so token use stays optimised across long projects.
1010

0 commit comments

Comments
 (0)