gsd-opencode 1.5.2 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/agents/gsd-codebase-mapper.md +743 -0
  2. package/agents/gsd-debugger.md +1191 -0
  3. package/agents/gsd-executor.md +759 -0
  4. package/agents/gsd-integration-checker.md +427 -0
  5. package/agents/gsd-phase-researcher.md +637 -0
  6. package/agents/gsd-plan-checker.md +749 -0
  7. package/agents/gsd-planner.md +1373 -0
  8. package/agents/gsd-project-researcher.md +877 -0
  9. package/agents/gsd-research-synthesizer.md +250 -0
  10. package/agents/gsd-roadmapper.md +610 -0
  11. package/agents/gsd-verifier.md +782 -0
  12. package/bin/install.js +11 -1
  13. package/command/gsd/add-phase.md +5 -7
  14. package/command/gsd/add-todo.md +4 -6
  15. package/command/gsd/audit-milestone.md +257 -0
  16. package/command/gsd/check-todos.md +2 -4
  17. package/command/gsd/complete-milestone.md +53 -23
  18. package/command/gsd/debug.md +120 -30
  19. package/command/gsd/discuss-phase.md +51 -30
  20. package/command/gsd/execute-phase.md +192 -26
  21. package/command/gsd/help.md +66 -75
  22. package/command/gsd/insert-phase.md +6 -6
  23. package/command/gsd/list-phase-assumptions.md +1 -1
  24. package/command/gsd/map-codebase.md +15 -28
  25. package/command/gsd/new-milestone.md +693 -36
  26. package/command/gsd/new-project.md +668 -108
  27. package/command/gsd/pause-work.md +2 -2
  28. package/command/gsd/plan-milestone-gaps.md +284 -0
  29. package/command/gsd/plan-phase.md +449 -42
  30. package/command/gsd/progress.md +66 -36
  31. package/command/gsd/remove-phase.md +17 -19
  32. package/command/gsd/research-phase.md +155 -67
  33. package/command/gsd/resume-work.md +3 -3
  34. package/command/gsd/update.md +172 -0
  35. package/command/gsd/verify-work.md +186 -38
  36. package/command/gsd/whats-new.md +124 -0
  37. package/get-shit-done/references/checkpoints.md +599 -98
  38. package/get-shit-done/references/continuation-format.md +5 -11
  39. package/get-shit-done/references/questioning.md +87 -108
  40. package/get-shit-done/references/tdd.md +3 -3
  41. package/get-shit-done/references/ui-brand.md +160 -0
  42. package/get-shit-done/references/verification-patterns.md +595 -0
  43. package/get-shit-done/templates/DEBUG.md +3 -3
  44. package/get-shit-done/templates/UAT.md +247 -0
  45. package/get-shit-done/templates/codebase/architecture.md +5 -5
  46. package/get-shit-done/templates/codebase/concerns.md +1 -1
  47. package/get-shit-done/templates/codebase/conventions.md +1 -1
  48. package/get-shit-done/templates/codebase/structure.md +8 -8
  49. package/get-shit-done/templates/codebase/testing.md +2 -2
  50. package/get-shit-done/templates/context.md +221 -70
  51. package/get-shit-done/templates/debug-subagent-prompt.md +91 -0
  52. package/get-shit-done/templates/discovery.md +5 -5
  53. package/get-shit-done/templates/phase-prompt.md +115 -2
  54. package/get-shit-done/templates/planner-subagent-prompt.md +117 -0
  55. package/get-shit-done/templates/requirements.md +231 -0
  56. package/get-shit-done/templates/research-project/ARCHITECTURE.md +204 -0
  57. package/get-shit-done/templates/research-project/FEATURES.md +147 -0
  58. package/get-shit-done/templates/research-project/PITFALLS.md +200 -0
  59. package/get-shit-done/templates/research-project/STACK.md +120 -0
  60. package/get-shit-done/templates/research-project/SUMMARY.md +170 -0
  61. package/get-shit-done/templates/research.md +2 -2
  62. package/get-shit-done/templates/roadmap.md +26 -20
  63. package/get-shit-done/templates/state.md +2 -17
  64. package/get-shit-done/templates/summary.md +13 -17
  65. package/get-shit-done/templates/user-setup.md +323 -0
  66. package/get-shit-done/templates/verification-report.md +322 -0
  67. package/get-shit-done/workflows/complete-milestone.md +152 -45
  68. package/get-shit-done/workflows/diagnose-issues.md +233 -0
  69. package/get-shit-done/workflows/discovery-phase.md +12 -17
  70. package/get-shit-done/workflows/discuss-phase.md +309 -124
  71. package/get-shit-done/workflows/execute-phase.md +177 -18
  72. package/get-shit-done/workflows/execute-plan.md +163 -145
  73. package/get-shit-done/workflows/map-codebase.md +86 -231
  74. package/get-shit-done/workflows/resume-project.md +18 -20
  75. package/get-shit-done/workflows/transition.md +7 -23
  76. package/get-shit-done/workflows/verify-phase.md +629 -0
  77. package/get-shit-done/workflows/verify-work.md +495 -134
  78. package/package.json +2 -1
  79. package/command/gsd/consider-issues.md +0 -201
  80. package/command/gsd/create-roadmap.md +0 -115
  81. package/command/gsd/discuss-milestone.md +0 -47
  82. package/command/gsd/execute-plan.md +0 -103
  83. package/command/gsd/plan-fix.md +0 -205
  84. package/command/gsd/status.md +0 -127
  85. package/get-shit-done/references/debugging/debugging-mindset.md +0 -253
  86. package/get-shit-done/references/debugging/hypothesis-testing.md +0 -373
  87. package/get-shit-done/references/debugging/investigation-techniques.md +0 -337
  88. package/get-shit-done/references/debugging/verification-patterns.md +0 -425
  89. package/get-shit-done/references/debugging/when-to-research.md +0 -361
  90. package/get-shit-done/references/plan-format.md +0 -475
  91. package/get-shit-done/references/principles.md +0 -157
  92. package/get-shit-done/references/research-pitfalls.md +0 -215
  93. package/get-shit-done/references/scope-estimation.md +0 -256
  94. package/get-shit-done/templates/agent-history.md +0 -263
  95. package/get-shit-done/templates/checkpoint-return.md +0 -204
  96. package/get-shit-done/templates/config.json +0 -26
  97. package/get-shit-done/templates/continuation-prompt.md +0 -235
  98. package/get-shit-done/templates/issues.md +0 -32
  99. package/get-shit-done/templates/milestone-context.md +0 -93
  100. package/get-shit-done/templates/subagent-task-prompt.md +0 -95
  101. package/get-shit-done/templates/uat-issues.md +0 -143
  102. package/get-shit-done/workflows/_archive/execute-phase.md +0 -899
  103. package/get-shit-done/workflows/create-milestone.md +0 -416
  104. package/get-shit-done/workflows/create-roadmap.md +0 -481
  105. package/get-shit-done/workflows/debug.md +0 -426
  106. package/get-shit-done/workflows/discuss-milestone.md +0 -236
  107. package/get-shit-done/workflows/plan-phase.md +0 -701
  108. package/get-shit-done/workflows/research-phase.md +0 -436
package/bin/install.js CHANGED
@@ -20,7 +20,7 @@ const pkg = require("../package.json");
20
20
  const banner = `
21
21
  ${cyan} ██████╗ ███████╗██████╗
22
22
  ██╔════╝ ██╔════╝██╔══██╗
23
- ██║ ███╗█████╗ ██║ ██║
23
+ ██║ ███╗███████╗██║ ██║
24
24
  ██║ ██║╚════██║██║ ██║
25
25
  ╚██████╔╝███████║██████╔╝
26
26
  ╚═════╝ ╚══════╝╚═════╝${reset}
@@ -176,12 +176,22 @@ function install(isGlobal) {
176
176
  copyWithPathReplacement(gsdSrc, gsdDest, pathPrefix);
177
177
  console.log(` ${green}✓${reset} Installed command/gsd`);
178
178
 
179
+ // Copy agents with path replacement
180
+ const agentsSrc = path.join(src, "agents");
181
+ const agentsDest = path.join(opencodeDir, "agents");
182
+ copyWithPathReplacement(agentsSrc, agentsDest, pathPrefix);
183
+ console.log(` ${green}✓${reset} Installed agents`);
184
+
179
185
  // Copy get-shit-done skill with path replacement
180
186
  const skillSrc = path.join(src, "get-shit-done");
181
187
  const skillDest = path.join(opencodeDir, "get-shit-done");
182
188
  copyWithPathReplacement(skillSrc, skillDest, pathPrefix);
183
189
  console.log(` ${green}✓${reset} Installed get-shit-done`);
184
190
 
191
+ // Create VERSION file
192
+ fs.writeFileSync(path.join(skillDest, "VERSION"), `v${pkg.version}`);
193
+ console.log(` ${green}✓${reset} Created VERSION file`);
194
+
185
195
  console.log(`
186
196
  ${green}Done!${reset} Run ${cyan}/gsd-help${reset} to get started.
187
197
  `);
@@ -2,7 +2,7 @@
2
2
  name: gsd-add-phase
3
3
  description: Add phase to end of current milestone in roadmap
4
4
  argument-hint: <description>
5
- allowed-tools:
5
+ tools:
6
6
  - read
7
7
  - write
8
8
  - bash
@@ -19,15 +19,13 @@ Purpose: Add planned work discovered during execution that belongs at the end of
19
19
  <execution_context>
20
20
  @.planning/ROADMAP.md
21
21
  @.planning/STATE.md
22
-
23
- Phase description: $ARGUMENTS
24
22
  </execution_context>
25
23
 
26
24
  <process>
27
25
 
28
26
  <step name="parse_arguments">
29
27
  Parse the command arguments:
30
- - All arguments `$ARGUMENTS` become the phase description
28
+ - $ARGUMENTS the phase description
31
29
  - Example: `/gsd-add-phase Add authentication` → description = "Add authentication"
32
30
  - Example: `/gsd-add-phase Fix critical performance issues` → description = "Fix critical performance issues"
33
31
 
@@ -54,7 +52,7 @@ else
54
52
  fi
55
53
  ```
56
54
 
57
- Read roadmap content for parsing.
55
+ read roadmap content for parsing.
58
56
  </step>
59
57
 
60
58
  <step name="find_current_milestone">
@@ -136,7 +134,7 @@ Add the new phase entry to the roadmap:
136
134
  [To be added during planning]
137
135
  ```
138
136
 
139
- 3. Write updated roadmap back to file
137
+ 3. write updated roadmap back to file
140
138
 
141
139
  Preserve all other content exactly (formatting, spacing, other phases).
142
140
  </step>
@@ -144,7 +142,7 @@ Preserve all other content exactly (formatting, spacing, other phases).
144
142
  <step name="update_project_state">
145
143
  Update STATE.md to reflect the new phase:
146
144
 
147
- 1. Read `.planning/STATE.md`
145
+ 1. read `.planning/STATE.md`
148
146
  2. Under "## Current Position" → "**Next Phase:**" add reference to new phase
149
147
  3. Under "## Accumulated Context" → "### Roadmap Evolution" add entry:
150
148
  ```
@@ -2,7 +2,7 @@
2
2
  name: gsd-add-todo
3
3
  description: Capture idea or task as todo from current conversation context
4
4
  argument-hint: [optional description]
5
- allowed-tools:
5
+ tools:
6
6
  - read
7
7
  - write
8
8
  - bash
@@ -17,8 +17,6 @@ Enables "thought → capture → continue" flow without losing context or derail
17
17
 
18
18
  <context>
19
19
  @.planning/STATE.md
20
-
21
- Todo title: $ARGUMENTS
22
20
  </context>
23
21
 
24
22
  <process>
@@ -38,7 +36,7 @@ Note existing areas for consistency in infer_area step.
38
36
  </step>
39
37
 
40
38
  <step name="extract_content">
41
- **With arguments:** Use `$ARGUMENTS` as the title/focus.
39
+ **With arguments:** Use as the title/focus.
42
40
  - `/gsd-add-todo Add auth token refresh` → title = "Add auth token refresh"
43
41
 
44
42
  **Without arguments:** Analyze recent conversation to extract:
@@ -77,7 +75,7 @@ grep -l -i "[key words from title]" .planning/todos/pending/*.md 2>/dev/null
77
75
  ```
78
76
 
79
77
  If potential duplicate found:
80
- 1. Read the existing todo
78
+ 1. read the existing todo
81
79
  2. Compare scope
82
80
 
83
81
  If overlapping, use question:
@@ -97,7 +95,7 @@ date_prefix=$(date "+%Y-%m-%d")
97
95
 
98
96
  Generate slug from title (lowercase, hyphens, no special chars).
99
97
 
100
- Write to `.planning/todos/pending/${date_prefix}-${slug}.md`:
98
+ write to `.planning/todos/pending/${date_prefix}-${slug}.md`:
101
99
 
102
100
  ```markdown
103
101
  ---
@@ -0,0 +1,257 @@
1
+ ---
2
+ name: gsd-audit-milestone
3
+ description: Audit milestone completion against original intent before archiving
4
+ argument-hint: "[version]"
5
+ tools:
6
+ - read
7
+ - glob
8
+ - grep
9
+ - bash
10
+ - write
11
+ ---
12
+
13
+ <objective>
14
+ Verify milestone achieved its definition of done. Check requirements coverage, cross-phase integration, and end-to-end flows.
15
+
16
+ **This command IS the orchestrator.** Reads existing VERIFICATION.md files (phases already verified during execute-phase), aggregates tech debt and deferred gaps, then spawns integration checker for cross-phase wiring.
17
+ </objective>
18
+
19
+ <execution_context>
20
+ <!-- Spawns gsd-integration-checker agent which has all audit expertise baked in -->
21
+ </execution_context>
22
+
23
+ <context>
24
+ Version: $ARGUMENTS (optional — defaults to current milestone)
25
+
26
+ **Original Intent:**
27
+ @.planning/PROJECT.md
28
+ @.planning/REQUIREMENTS.md
29
+
30
+ **Planned Work:**
31
+ @.planning/ROADMAP.md
32
+ @.planning/config.json (if exists)
33
+
34
+ **Completed Work:**
35
+ glob: .planning/phases/*/*-SUMMARY.md
36
+ glob: .planning/phases/*/*-VERIFICATION.md
37
+ </context>
38
+
39
+ <process>
40
+
41
+ ## 1. Determine Milestone Scope
42
+
43
+ ```bash
44
+ # Get phases in milestone
45
+ ls -d .planning/phases/*/ | sort -V
46
+ ```
47
+
48
+ - Parse version from arguments or detect current from ROADMAP.md
49
+ - Identify all phase directories in scope
50
+ - Extract milestone definition of done from ROADMAP.md
51
+ - Extract requirements mapped to this milestone from REQUIREMENTS.md
52
+
53
+ ## 2. read All Phase Verifications
54
+
55
+ For each phase directory, read the VERIFICATION.md:
56
+
57
+ ```bash
58
+ cat .planning/phases/01-*/*-VERIFICATION.md
59
+ cat .planning/phases/02-*/*-VERIFICATION.md
60
+ # etc.
61
+ ```
62
+
63
+ From each VERIFICATION.md, extract:
64
+ - **Status:** passed | gaps_found
65
+ - **Critical gaps:** (if any — these are blockers)
66
+ - **Non-critical gaps:** tech debt, deferred items, warnings
67
+ - **Anti-patterns found:** TODOs, stubs, placeholders
68
+ - **Requirements coverage:** which requirements satisfied/blocked
69
+
70
+ If a phase is missing VERIFICATION.md, flag it as "unverified phase" — this is a blocker.
71
+
72
+ ## 3. Spawn Integration Checker
73
+
74
+ With phase context collected:
75
+
76
+ ```
77
+ Task(
78
+ prompt="Check cross-phase integration and E2E flows.
79
+
80
+ Phases: {phase_dirs}
81
+ Phase exports: {from SUMMARYs}
82
+ API routes: {routes created}
83
+
84
+ Verify cross-phase wiring and E2E user flows.",
85
+ subagent_type="gsd-integration-checker"
86
+ )
87
+ ```
88
+
89
+ ## 4. Collect Results
90
+
91
+ Combine:
92
+ - Phase-level gaps and tech debt (from step 2)
93
+ - Integration checker's report (wiring gaps, broken flows)
94
+
95
+ ## 5. Check Requirements Coverage
96
+
97
+ For each requirement in REQUIREMENTS.md mapped to this milestone:
98
+ - Find owning phase
99
+ - Check phase verification status
100
+ - Determine: satisfied | partial | unsatisfied
101
+
102
+ ## 6. Aggregate into v{version}-MILESTONE-AUDIT.md
103
+
104
+ Create `.planning/v{version}-v{version}-MILESTONE-AUDIT.md` with:
105
+
106
+ ```yaml
107
+ ---
108
+ milestone: {version}
109
+ audited: {timestamp}
110
+ status: passed | gaps_found | tech_debt
111
+ scores:
112
+ requirements: N/M
113
+ phases: N/M
114
+ integration: N/M
115
+ flows: N/M
116
+ gaps: # Critical blockers
117
+ requirements: [...]
118
+ integration: [...]
119
+ flows: [...]
120
+ tech_debt: # Non-critical, deferred
121
+ - phase: 01-auth
122
+ items:
123
+ - "TODO: add rate limiting"
124
+ - "Warning: no password strength validation"
125
+ - phase: 03-dashboard
126
+ items:
127
+ - "Deferred: mobile responsive layout"
128
+ ---
129
+ ```
130
+
131
+ Plus full markdown report with tables for requirements, phases, integration, tech debt.
132
+
133
+ **Status values:**
134
+ - `passed` — all requirements met, no critical gaps, minimal tech debt
135
+ - `gaps_found` — critical blockers exist
136
+ - `tech_debt` — no blockers but accumulated deferred items need review
137
+
138
+ ## 7. Present Results
139
+
140
+ Route by status (see `<offer_next>`).
141
+
142
+ </process>
143
+
144
+ <offer_next>
145
+ Output this markdown directly (not as a code block). Route based on status:
146
+
147
+ ---
148
+
149
+ **If passed:**
150
+
151
+ ## ✓ Milestone {version} — Audit Passed
152
+
153
+ **Score:** {N}/{M} requirements satisfied
154
+ **Report:** .planning/v{version}-MILESTONE-AUDIT.md
155
+
156
+ All requirements covered. Cross-phase integration verified. E2E flows complete.
157
+
158
+ ───────────────────────────────────────────────────────────────
159
+
160
+ ## ▶ Next Up
161
+
162
+ **Complete milestone** — archive and tag
163
+
164
+ /gsd-complete-milestone {version}
165
+
166
+ */new first → fresh context window*
167
+
168
+ ───────────────────────────────────────────────────────────────
169
+
170
+ ---
171
+
172
+ **If gaps_found:**
173
+
174
+ ## ⚠ Milestone {version} — Gaps Found
175
+
176
+ **Score:** {N}/{M} requirements satisfied
177
+ **Report:** .planning/v{version}-MILESTONE-AUDIT.md
178
+
179
+ ### Unsatisfied Requirements
180
+
181
+ {For each unsatisfied requirement:}
182
+ - **{REQ-ID}: {description}** (Phase {X})
183
+ - {reason}
184
+
185
+ ### Cross-Phase Issues
186
+
187
+ {For each integration gap:}
188
+ - **{from} → {to}:** {issue}
189
+
190
+ ### Broken Flows
191
+
192
+ {For each flow gap:}
193
+ - **{flow name}:** breaks at {step}
194
+
195
+ ───────────────────────────────────────────────────────────────
196
+
197
+ ## ▶ Next Up
198
+
199
+ **Plan gap closure** — create phases to complete milestone
200
+
201
+ /gsd-plan-milestone-gaps
202
+
203
+ */new first → fresh context window*
204
+
205
+ ───────────────────────────────────────────────────────────────
206
+
207
+ **Also available:**
208
+ - cat .planning/v{version}-MILESTONE-AUDIT.md — see full report
209
+ - /gsd-complete-milestone {version} — proceed anyway (accept tech debt)
210
+
211
+ ───────────────────────────────────────────────────────────────
212
+
213
+ ---
214
+
215
+ **If tech_debt (no blockers but accumulated debt):**
216
+
217
+ ## ⚡ Milestone {version} — Tech Debt Review
218
+
219
+ **Score:** {N}/{M} requirements satisfied
220
+ **Report:** .planning/v{version}-MILESTONE-AUDIT.md
221
+
222
+ All requirements met. No critical blockers. Accumulated tech debt needs review.
223
+
224
+ ### Tech Debt by Phase
225
+
226
+ {For each phase with debt:}
227
+ **Phase {X}: {name}**
228
+ - {item 1}
229
+ - {item 2}
230
+
231
+ ### Total: {N} items across {M} phases
232
+
233
+ ───────────────────────────────────────────────────────────────
234
+
235
+ ## ▶ Options
236
+
237
+ **A. Complete milestone** — accept debt, track in backlog
238
+
239
+ /gsd-complete-milestone {version}
240
+
241
+ **B. Plan cleanup phase** — address debt before completing
242
+
243
+ /gsd-plan-milestone-gaps
244
+
245
+ */new first → fresh context window*
246
+
247
+ ───────────────────────────────────────────────────────────────
248
+ </offer_next>
249
+
250
+ <success_criteria>
251
+ - [ ] Milestone scope identified
252
+ - [ ] All phase VERIFICATION.md files read
253
+ - [ ] Tech debt and deferred gaps aggregated
254
+ - [ ] Integration checker spawned for cross-phase wiring
255
+ - [ ] v{version}-MILESTONE-AUDIT.md created
256
+ - [ ] Results presented with actionable next steps
257
+ </success_criteria>
@@ -2,7 +2,7 @@
2
2
  name: gsd-check-todos
3
3
  description: List pending todos and select one to work on
4
4
  argument-hint: [area filter]
5
- allowed-tools:
5
+ tools:
6
6
  - read
7
7
  - write
8
8
  - bash
@@ -19,8 +19,6 @@ Enables reviewing captured ideas and deciding what to work on next.
19
19
  <context>
20
20
  @.planning/STATE.md
21
21
  @.planning/ROADMAP.md
22
-
23
- Area filter: $ARGUMENTS
24
22
  </context>
25
23
 
26
24
  <process>
@@ -91,7 +89,7 @@ If invalid: "Invalid selection. Reply with a number (1-[N]) or `q` to exit."
91
89
  </step>
92
90
 
93
91
  <step name="load_context">
94
- Read the todo file completely. Display:
92
+ read the todo file completely. Display:
95
93
 
96
94
  ```
97
95
  ## [title]
@@ -3,17 +3,17 @@ type: prompt
3
3
  name: gsd-complete-milestone
4
4
  description: Archive completed milestone and prepare for next version
5
5
  argument-hint: <version>
6
- allowed-tools:
6
+ tools:
7
7
  - read
8
8
  - write
9
9
  - bash
10
10
  ---
11
11
 
12
12
  <objective>
13
- Mark milestone $ARGUMENTS complete, archive to milestones/, and update ROADMAP.md.
13
+ Mark milestone {{version}} complete, archive to milestones/, and update ROADMAP.md and REQUIREMENTS.md.
14
14
 
15
- Purpose: Create historical record of shipped version, collapse completed work in roadmap, and prepare for next milestone.
16
- Output: Milestone archived, roadmap reorganized, git tagged.
15
+ Purpose: Create historical record of shipped version, archive milestone artifacts (roadmap + requirements), and prepare for next milestone.
16
+ Output: Milestone archived (roadmap + requirements), PROJECT.md evolved, git tagged.
17
17
  </objective>
18
18
 
19
19
  <execution_context>
@@ -26,18 +26,41 @@ Output: Milestone archived, roadmap reorganized, git tagged.
26
26
  <context>
27
27
  **Project files:**
28
28
  - `.planning/ROADMAP.md`
29
+ - `.planning/REQUIREMENTS.md`
29
30
  - `.planning/STATE.md`
30
31
  - `.planning/PROJECT.md`
31
32
 
32
33
  **User input:**
33
34
 
34
- - Version: $ARGUMENTS (e.g., "1.0", "1.1", "2.0")
35
+ - Version: {{version}} (e.g., "1.0", "1.1", "2.0")
35
36
  </context>
36
37
 
37
38
  <process>
38
39
 
39
40
  **Follow complete-milestone.md workflow:**
40
41
 
42
+ 0. **Check for audit:**
43
+
44
+ - Look for `.planning/v{{version}}-MILESTONE-AUDIT.md`
45
+ - If missing or stale: recommend `/gsd-audit-milestone` first
46
+ - If audit status is `gaps_found`: recommend `/gsd-plan-milestone-gaps` first
47
+ - If audit status is `passed`: proceed to step 1
48
+
49
+ ```markdown
50
+ ## Pre-flight Check
51
+
52
+ {If no v{{version}}-MILESTONE-AUDIT.md:}
53
+ ⚠ No milestone audit found. Run `/gsd-audit-milestone` first to verify
54
+ requirements coverage, cross-phase integration, and E2E flows.
55
+
56
+ {If audit has gaps:}
57
+ ⚠ Milestone audit found gaps. Run `/gsd-plan-milestone-gaps` to create
58
+ phases that close the gaps, or proceed anyway to accept as tech debt.
59
+
60
+ {If audit passed:}
61
+ ✓ Milestone audit passed. Proceeding with completion.
62
+ ```
63
+
41
64
  1. **Verify readiness:**
42
65
 
43
66
  - Check all phases in milestone have completed plans (SUMMARY.md exists)
@@ -53,54 +76,61 @@ Output: Milestone archived, roadmap reorganized, git tagged.
53
76
 
54
77
  3. **Extract accomplishments:**
55
78
 
56
- - Read all phase SUMMARY.md files in milestone range
79
+ - read all phase SUMMARY.md files in milestone range
57
80
  - Extract 4-6 key accomplishments
58
81
  - Present for approval
59
82
 
60
83
  4. **Archive milestone:**
61
84
 
62
- - Create `.planning/milestones/v$ARGUMENTS-ROADMAP.md`
85
+ - Create `.planning/milestones/v{{version}}-ROADMAP.md`
63
86
  - Extract full phase details from ROADMAP.md
64
87
  - Fill milestone-archive.md template
65
88
  - Update ROADMAP.md to one-line summary with link
66
- - Offer to create next milestone
67
89
 
68
- 5. **Update PROJECT.md:**
90
+ 5. **Archive requirements:**
91
+
92
+ - Create `.planning/milestones/v{{version}}-REQUIREMENTS.md`
93
+ - Mark all v1 requirements as complete (checkboxes checked)
94
+ - Note requirement outcomes (validated, adjusted, dropped)
95
+ - Delete `.planning/REQUIREMENTS.md` (fresh one created for next milestone)
96
+
97
+ 6. **Update PROJECT.md:**
69
98
 
70
99
  - Add "Current State" section with shipped version
71
100
  - Add "Next Milestone Goals" section
72
101
  - Archive previous content in `<details>` (if v1.1+)
73
102
 
74
- 6. **Commit and tag:**
103
+ 7. **Commit and tag:**
75
104
 
76
- - Stage: MILESTONES.md, PROJECT.md, ROADMAP.md, STATE.md, archive file
77
- - Commit: `chore: archive v$ARGUMENTS milestone`
78
- - Tag: `git tag -a v$ARGUMENTS -m "[milestone summary]"`
105
+ - Stage: MILESTONES.md, PROJECT.md, ROADMAP.md, STATE.md, archive files
106
+ - Commit: `chore: archive v{{version}} milestone`
107
+ - Tag: `git tag -a v{{version}} -m "[milestone summary]"`
79
108
  - Ask about pushing tag
80
109
 
81
- 7. **Offer next steps:**
82
- - Plan next milestone
83
- - Archive planning
84
- - Done for now
110
+ 8. **Offer next steps:**
111
+ - `/gsd-new-milestone` — start next milestone (questioning → research → requirements → roadmap)
85
112
 
86
113
  </process>
87
114
 
88
115
  <success_criteria>
89
116
 
90
- - Milestone archived to `.planning/milestones/v$ARGUMENTS-ROADMAP.md`
117
+ - Milestone archived to `.planning/milestones/v{{version}}-ROADMAP.md`
118
+ - Requirements archived to `.planning/milestones/v{{version}}-REQUIREMENTS.md`
119
+ - `.planning/REQUIREMENTS.md` deleted (fresh for next milestone)
91
120
  - ROADMAP.md collapsed to one-line entry
92
121
  - PROJECT.md updated with current state
93
- - Git tag v$ARGUMENTS created
122
+ - Git tag v{{version}} created
94
123
  - Commit successful
95
- - User knows next steps
124
+ - User knows next steps (including need for fresh requirements)
96
125
  </success_criteria>
97
126
 
98
127
  <critical_rules>
99
128
 
100
- - **Load workflow first:** Read complete-milestone.md before executing
129
+ - **Load workflow first:** read complete-milestone.md before executing
101
130
  - **Verify completion:** All phases must have SUMMARY.md files
102
131
  - **User confirmation:** Wait for approval at verification gates
103
- - **Archive before collapsing:** Always create archive file before updating ROADMAP.md
132
+ - **Archive before deleting:** Always create archive files before updating/deleting originals
104
133
  - **One-line summary:** Collapsed milestone in ROADMAP.md should be single line with link
105
- - **Context efficiency:** Archive keeps ROADMAP.md constant size
134
+ - **Context efficiency:** Archive keeps ROADMAP.md and REQUIREMENTS.md constant size per milestone
135
+ - **Fresh requirements:** Next milestone starts with `/gsd-new-milestone` which includes requirements definition
106
136
  </critical_rules>