get-research-done 1.1.0

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 (127) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +560 -0
  3. package/agents/grd-architect.md +789 -0
  4. package/agents/grd-codebase-mapper.md +738 -0
  5. package/agents/grd-critic.md +1065 -0
  6. package/agents/grd-debugger.md +1203 -0
  7. package/agents/grd-evaluator.md +948 -0
  8. package/agents/grd-executor.md +784 -0
  9. package/agents/grd-explorer.md +2063 -0
  10. package/agents/grd-graduator.md +484 -0
  11. package/agents/grd-integration-checker.md +423 -0
  12. package/agents/grd-phase-researcher.md +641 -0
  13. package/agents/grd-plan-checker.md +745 -0
  14. package/agents/grd-planner.md +1386 -0
  15. package/agents/grd-project-researcher.md +865 -0
  16. package/agents/grd-research-synthesizer.md +256 -0
  17. package/agents/grd-researcher.md +2361 -0
  18. package/agents/grd-roadmapper.md +605 -0
  19. package/agents/grd-verifier.md +778 -0
  20. package/bin/install.js +1294 -0
  21. package/commands/grd/add-phase.md +207 -0
  22. package/commands/grd/add-todo.md +193 -0
  23. package/commands/grd/architect.md +283 -0
  24. package/commands/grd/audit-milestone.md +277 -0
  25. package/commands/grd/check-todos.md +228 -0
  26. package/commands/grd/complete-milestone.md +136 -0
  27. package/commands/grd/debug.md +169 -0
  28. package/commands/grd/discuss-phase.md +86 -0
  29. package/commands/grd/evaluate.md +1095 -0
  30. package/commands/grd/execute-phase.md +339 -0
  31. package/commands/grd/explore.md +258 -0
  32. package/commands/grd/graduate.md +323 -0
  33. package/commands/grd/help.md +482 -0
  34. package/commands/grd/insert-phase.md +227 -0
  35. package/commands/grd/insights.md +231 -0
  36. package/commands/grd/join-discord.md +18 -0
  37. package/commands/grd/list-phase-assumptions.md +50 -0
  38. package/commands/grd/map-codebase.md +71 -0
  39. package/commands/grd/new-milestone.md +721 -0
  40. package/commands/grd/new-project.md +1008 -0
  41. package/commands/grd/pause-work.md +134 -0
  42. package/commands/grd/plan-milestone-gaps.md +295 -0
  43. package/commands/grd/plan-phase.md +525 -0
  44. package/commands/grd/progress.md +364 -0
  45. package/commands/grd/quick-explore.md +236 -0
  46. package/commands/grd/quick.md +309 -0
  47. package/commands/grd/remove-phase.md +349 -0
  48. package/commands/grd/research-phase.md +200 -0
  49. package/commands/grd/research.md +681 -0
  50. package/commands/grd/resume-work.md +40 -0
  51. package/commands/grd/set-profile.md +106 -0
  52. package/commands/grd/settings.md +136 -0
  53. package/commands/grd/update.md +172 -0
  54. package/commands/grd/verify-work.md +219 -0
  55. package/get-research-done/config/default.json +15 -0
  56. package/get-research-done/references/checkpoints.md +1078 -0
  57. package/get-research-done/references/continuation-format.md +249 -0
  58. package/get-research-done/references/git-integration.md +254 -0
  59. package/get-research-done/references/model-profiles.md +73 -0
  60. package/get-research-done/references/planning-config.md +94 -0
  61. package/get-research-done/references/questioning.md +141 -0
  62. package/get-research-done/references/tdd.md +263 -0
  63. package/get-research-done/references/ui-brand.md +160 -0
  64. package/get-research-done/references/verification-patterns.md +612 -0
  65. package/get-research-done/templates/DEBUG.md +159 -0
  66. package/get-research-done/templates/UAT.md +247 -0
  67. package/get-research-done/templates/archive-reason.md +195 -0
  68. package/get-research-done/templates/codebase/architecture.md +255 -0
  69. package/get-research-done/templates/codebase/concerns.md +310 -0
  70. package/get-research-done/templates/codebase/conventions.md +307 -0
  71. package/get-research-done/templates/codebase/integrations.md +280 -0
  72. package/get-research-done/templates/codebase/stack.md +186 -0
  73. package/get-research-done/templates/codebase/structure.md +285 -0
  74. package/get-research-done/templates/codebase/testing.md +480 -0
  75. package/get-research-done/templates/config.json +35 -0
  76. package/get-research-done/templates/context.md +283 -0
  77. package/get-research-done/templates/continue-here.md +78 -0
  78. package/get-research-done/templates/critic-log.md +288 -0
  79. package/get-research-done/templates/data-report.md +173 -0
  80. package/get-research-done/templates/debug-subagent-prompt.md +91 -0
  81. package/get-research-done/templates/decision-log.md +58 -0
  82. package/get-research-done/templates/decision.md +138 -0
  83. package/get-research-done/templates/discovery.md +146 -0
  84. package/get-research-done/templates/experiment-readme.md +104 -0
  85. package/get-research-done/templates/graduated-script.md +180 -0
  86. package/get-research-done/templates/iteration-summary.md +234 -0
  87. package/get-research-done/templates/milestone-archive.md +123 -0
  88. package/get-research-done/templates/milestone.md +115 -0
  89. package/get-research-done/templates/objective.md +271 -0
  90. package/get-research-done/templates/phase-prompt.md +567 -0
  91. package/get-research-done/templates/planner-subagent-prompt.md +117 -0
  92. package/get-research-done/templates/project.md +184 -0
  93. package/get-research-done/templates/requirements.md +231 -0
  94. package/get-research-done/templates/research-project/ARCHITECTURE.md +204 -0
  95. package/get-research-done/templates/research-project/FEATURES.md +147 -0
  96. package/get-research-done/templates/research-project/PITFALLS.md +200 -0
  97. package/get-research-done/templates/research-project/STACK.md +120 -0
  98. package/get-research-done/templates/research-project/SUMMARY.md +170 -0
  99. package/get-research-done/templates/research.md +529 -0
  100. package/get-research-done/templates/roadmap.md +202 -0
  101. package/get-research-done/templates/scorecard.json +113 -0
  102. package/get-research-done/templates/state.md +287 -0
  103. package/get-research-done/templates/summary.md +246 -0
  104. package/get-research-done/templates/user-setup.md +311 -0
  105. package/get-research-done/templates/verification-report.md +322 -0
  106. package/get-research-done/workflows/complete-milestone.md +756 -0
  107. package/get-research-done/workflows/diagnose-issues.md +231 -0
  108. package/get-research-done/workflows/discovery-phase.md +289 -0
  109. package/get-research-done/workflows/discuss-phase.md +433 -0
  110. package/get-research-done/workflows/execute-phase.md +657 -0
  111. package/get-research-done/workflows/execute-plan.md +1844 -0
  112. package/get-research-done/workflows/list-phase-assumptions.md +178 -0
  113. package/get-research-done/workflows/map-codebase.md +322 -0
  114. package/get-research-done/workflows/resume-project.md +307 -0
  115. package/get-research-done/workflows/transition.md +556 -0
  116. package/get-research-done/workflows/verify-phase.md +628 -0
  117. package/get-research-done/workflows/verify-work.md +596 -0
  118. package/hooks/dist/grd-check-update.js +61 -0
  119. package/hooks/dist/grd-statusline.js +84 -0
  120. package/package.json +47 -0
  121. package/scripts/audit-help-commands.sh +115 -0
  122. package/scripts/build-hooks.js +42 -0
  123. package/scripts/verify-all-commands.sh +246 -0
  124. package/scripts/verify-architect-warning.sh +35 -0
  125. package/scripts/verify-insights-mode.sh +40 -0
  126. package/scripts/verify-quick-mode.sh +20 -0
  127. package/scripts/verify-revise-data-routing.sh +139 -0
@@ -0,0 +1,756 @@
1
+ <purpose>
2
+
3
+ Mark a shipped version (v1.0, v1.1, v2.0) as complete. This creates a historical record in MILESTONES.md, performs full PROJECT.md evolution review, reorganizes ROADMAP.md with milestone groupings, and tags the release in git.
4
+
5
+ This is the ritual that separates "development" from "shipped."
6
+
7
+ </purpose>
8
+
9
+ <required_reading>
10
+
11
+ **Read these files NOW:**
12
+
13
+ 1. templates/milestone.md
14
+ 2. templates/milestone-archive.md
15
+ 3. `.planning/ROADMAP.md`
16
+ 4. `.planning/REQUIREMENTS.md`
17
+ 5. `.planning/PROJECT.md`
18
+
19
+ </required_reading>
20
+
21
+ <archival_behavior>
22
+
23
+ When a milestone completes, this workflow:
24
+
25
+ 1. Extracts full milestone details to `.planning/milestones/v[X.Y]-ROADMAP.md`
26
+ 2. Archives requirements to `.planning/milestones/v[X.Y]-REQUIREMENTS.md`
27
+ 3. Updates ROADMAP.md to replace milestone details with one-line summary
28
+ 4. Deletes REQUIREMENTS.md (fresh one created for next milestone)
29
+ 5. Performs full PROJECT.md evolution review
30
+ 6. Offers to create next milestone inline
31
+
32
+ **Context Efficiency:** Archives keep ROADMAP.md constant-size and REQUIREMENTS.md milestone-scoped.
33
+
34
+ **Archive Format:**
35
+
36
+ **ROADMAP archive** uses `templates/milestone-archive.md` template with:
37
+ - Milestone header (status, phases, date)
38
+ - Full phase details from roadmap
39
+ - Milestone summary (decisions, issues, technical debt)
40
+
41
+ **REQUIREMENTS archive** contains:
42
+ - All v1 requirements marked complete with outcomes
43
+ - Traceability table with final status
44
+ - Notes on any requirements that changed during milestone
45
+
46
+ </archival_behavior>
47
+
48
+ <process>
49
+
50
+ <step name="verify_readiness">
51
+
52
+ Check if milestone is truly complete:
53
+
54
+ ```bash
55
+ cat .planning/ROADMAP.md
56
+ ls .planning/phases/*/SUMMARY.md 2>/dev/null | wc -l
57
+ ```
58
+
59
+ **Questions to ask:**
60
+
61
+ - Which phases belong to this milestone?
62
+ - Are all those phases complete (all plans have summaries)?
63
+ - Has the work been tested/validated?
64
+ - Is this ready to ship/tag?
65
+
66
+ Present:
67
+
68
+ ```
69
+ Milestone: [Name from user, e.g., "v1.0 MVP"]
70
+
71
+ Appears to include:
72
+ - Phase 1: Foundation (2/2 plans complete)
73
+ - Phase 2: Authentication (2/2 plans complete)
74
+ - Phase 3: Core Features (3/3 plans complete)
75
+ - Phase 4: Polish (1/1 plan complete)
76
+
77
+ Total: 4 phases, 8 plans, all complete
78
+ ```
79
+
80
+ <config-check>
81
+
82
+ ```bash
83
+ cat .planning/config.json 2>/dev/null
84
+ ```
85
+
86
+ </config-check>
87
+
88
+ <if mode="yolo">
89
+
90
+ ```
91
+ ⚡ Auto-approved: Milestone scope verification
92
+
93
+ [Show breakdown summary without prompting]
94
+
95
+ Proceeding to stats gathering...
96
+ ```
97
+
98
+ Proceed directly to gather_stats step.
99
+
100
+ </if>
101
+
102
+ <if mode="interactive" OR="custom with gates.confirm_milestone_scope true">
103
+
104
+ ```
105
+ Ready to mark this milestone as shipped?
106
+ (yes / wait / adjust scope)
107
+ ```
108
+
109
+ Wait for confirmation.
110
+
111
+ If "adjust scope": Ask which phases should be included.
112
+ If "wait": Stop, user will return when ready.
113
+
114
+ </if>
115
+
116
+ </step>
117
+
118
+ <step name="gather_stats">
119
+
120
+ Calculate milestone statistics:
121
+
122
+ ```bash
123
+ # Count phases and plans in milestone
124
+ # (user specified or detected from roadmap)
125
+
126
+ # Find git range
127
+ git log --oneline --grep="feat(" | head -20
128
+
129
+ # Count files modified in range
130
+ git diff --stat FIRST_COMMIT..LAST_COMMIT | tail -1
131
+
132
+ # Count LOC (adapt to language)
133
+ find . -name "*.swift" -o -name "*.ts" -o -name "*.py" | xargs wc -l 2>/dev/null
134
+
135
+ # Calculate timeline
136
+ git log --format="%ai" FIRST_COMMIT | tail -1 # Start date
137
+ git log --format="%ai" LAST_COMMIT | head -1 # End date
138
+ ```
139
+
140
+ Present summary:
141
+
142
+ ```
143
+ Milestone Stats:
144
+ - Phases: [X-Y]
145
+ - Plans: [Z] total
146
+ - Tasks: [N] total (estimated from phase summaries)
147
+ - Files modified: [M]
148
+ - Lines of code: [LOC] [language]
149
+ - Timeline: [Days] days ([Start] → [End])
150
+ - Git range: feat(XX-XX) → feat(YY-YY)
151
+ ```
152
+
153
+ </step>
154
+
155
+ <step name="extract_accomplishments">
156
+
157
+ Read all phase SUMMARY.md files in milestone range:
158
+
159
+ ```bash
160
+ cat .planning/phases/01-*/01-*-SUMMARY.md
161
+ cat .planning/phases/02-*/02-*-SUMMARY.md
162
+ # ... for each phase in milestone
163
+ ```
164
+
165
+ From summaries, extract 4-6 key accomplishments.
166
+
167
+ Present:
168
+
169
+ ```
170
+ Key accomplishments for this milestone:
171
+ 1. [Achievement from phase 1]
172
+ 2. [Achievement from phase 2]
173
+ 3. [Achievement from phase 3]
174
+ 4. [Achievement from phase 4]
175
+ 5. [Achievement from phase 5]
176
+ ```
177
+
178
+ </step>
179
+
180
+ <step name="create_milestone_entry">
181
+
182
+ Create or update `.planning/MILESTONES.md`.
183
+
184
+ If file doesn't exist:
185
+
186
+ ```markdown
187
+ # Project Milestones: [Project Name from PROJECT.md]
188
+
189
+ [New entry]
190
+ ```
191
+
192
+ If exists, prepend new entry (reverse chronological order).
193
+
194
+ Use template from `templates/milestone.md`:
195
+
196
+ ```markdown
197
+ ## v[Version] [Name] (Shipped: YYYY-MM-DD)
198
+
199
+ **Delivered:** [One sentence from user]
200
+
201
+ **Phases completed:** [X-Y] ([Z] plans total)
202
+
203
+ **Key accomplishments:**
204
+
205
+ - [List from previous step]
206
+
207
+ **Stats:**
208
+
209
+ - [Files] files created/modified
210
+ - [LOC] lines of [language]
211
+ - [Phases] phases, [Plans] plans, [Tasks] tasks
212
+ - [Days] days from [start milestone or start project] to ship
213
+
214
+ **Git range:** `feat(XX-XX)` → `feat(YY-YY)`
215
+
216
+ **What's next:** [Ask user: what's the next goal?]
217
+
218
+ ---
219
+ ```
220
+
221
+ </step>
222
+
223
+ <step name="evolve_project_full_review">
224
+
225
+ Perform full PROJECT.md evolution review at milestone completion.
226
+
227
+ **Read all phase summaries in this milestone:**
228
+
229
+ ```bash
230
+ cat .planning/phases/*-*/*-SUMMARY.md
231
+ ```
232
+
233
+ **Full review checklist:**
234
+
235
+ 1. **"What This Is" accuracy:**
236
+ - Read current description
237
+ - Compare to what was actually built
238
+ - Update if the product has meaningfully changed
239
+
240
+ 2. **Core Value check:**
241
+ - Is the stated core value still the right priority?
242
+ - Did shipping reveal a different core value?
243
+ - Update if the ONE thing has shifted
244
+
245
+ 3. **Requirements audit:**
246
+
247
+ **Validated section:**
248
+ - All Active requirements shipped in this milestone → Move to Validated
249
+ - Format: `- ✓ [Requirement] — v[X.Y]`
250
+
251
+ **Active section:**
252
+ - Remove requirements that moved to Validated
253
+ - Add any new requirements for next milestone
254
+ - Keep requirements that weren't addressed yet
255
+
256
+ **Out of Scope audit:**
257
+ - Review each item — is the reasoning still valid?
258
+ - Remove items that are no longer relevant
259
+ - Add any requirements invalidated during this milestone
260
+
261
+ 4. **Context update:**
262
+ - Current codebase state (LOC, tech stack)
263
+ - User feedback themes (if any)
264
+ - Known issues or technical debt to address
265
+
266
+ 5. **Key Decisions audit:**
267
+ - Extract all decisions from milestone phase summaries
268
+ - Add to Key Decisions table with outcomes where known
269
+ - Mark ✓ Good, ⚠️ Revisit, or — Pending for each
270
+
271
+ 6. **Constraints check:**
272
+ - Any constraints that changed during development?
273
+ - Update as needed
274
+
275
+ **Update PROJECT.md:**
276
+
277
+ Make all edits inline. Update "Last updated" footer:
278
+
279
+ ```markdown
280
+ ---
281
+ *Last updated: [date] after v[X.Y] milestone*
282
+ ```
283
+
284
+ **Example full evolution (v1.0 → v1.1 prep):**
285
+
286
+ Before:
287
+
288
+ ```markdown
289
+ ## What This Is
290
+
291
+ A real-time collaborative whiteboard for remote teams.
292
+
293
+ ## Core Value
294
+
295
+ Real-time sync that feels instant.
296
+
297
+ ## Requirements
298
+
299
+ ### Validated
300
+
301
+ (None yet — ship to validate)
302
+
303
+ ### Active
304
+
305
+ - [ ] Canvas drawing tools
306
+ - [ ] Real-time sync < 500ms
307
+ - [ ] User authentication
308
+ - [ ] Export to PNG
309
+
310
+ ### Out of Scope
311
+
312
+ - Mobile app — web-first approach
313
+ - Video chat — use external tools
314
+ ```
315
+
316
+ After v1.0:
317
+
318
+ ```markdown
319
+ ## What This Is
320
+
321
+ A real-time collaborative whiteboard for remote teams with instant sync and drawing tools.
322
+
323
+ ## Core Value
324
+
325
+ Real-time sync that feels instant.
326
+
327
+ ## Requirements
328
+
329
+ ### Validated
330
+
331
+ - ✓ Canvas drawing tools — v1.0
332
+ - ✓ Real-time sync < 500ms — v1.0 (achieved 200ms avg)
333
+ - ✓ User authentication — v1.0
334
+
335
+ ### Active
336
+
337
+ - [ ] Export to PNG
338
+ - [ ] Undo/redo history
339
+ - [ ] Shape tools (rectangles, circles)
340
+
341
+ ### Out of Scope
342
+
343
+ - Mobile app — web-first approach, PWA works well
344
+ - Video chat — use external tools
345
+ - Offline mode — real-time is core value
346
+
347
+ ## Context
348
+
349
+ Shipped v1.0 with 2,400 LOC TypeScript.
350
+ Tech stack: Next.js, Supabase, Canvas API.
351
+ Initial user testing showed demand for shape tools.
352
+ ```
353
+
354
+ **Step complete when:**
355
+
356
+ - [ ] "What This Is" reviewed and updated if needed
357
+ - [ ] Core Value verified as still correct
358
+ - [ ] All shipped requirements moved to Validated
359
+ - [ ] New requirements added to Active for next milestone
360
+ - [ ] Out of Scope reasoning audited
361
+ - [ ] Context updated with current state
362
+ - [ ] All milestone decisions added to Key Decisions
363
+ - [ ] "Last updated" footer reflects milestone completion
364
+
365
+ </step>
366
+
367
+ <step name="reorganize_roadmap">
368
+
369
+ Update `.planning/ROADMAP.md` to group completed milestone phases.
370
+
371
+ Add milestone headers and collapse completed work:
372
+
373
+ ```markdown
374
+ # Roadmap: [Project Name]
375
+
376
+ ## Milestones
377
+
378
+ - ✅ **v1.0 MVP** — Phases 1-4 (shipped YYYY-MM-DD)
379
+ - 🚧 **v1.1 Security** — Phases 5-6 (in progress)
380
+ - 📋 **v2.0 Redesign** — Phases 7-10 (planned)
381
+
382
+ ## Phases
383
+
384
+ <details>
385
+ <summary>✅ v1.0 MVP (Phases 1-4) — SHIPPED YYYY-MM-DD</summary>
386
+
387
+ - [x] Phase 1: Foundation (2/2 plans) — completed YYYY-MM-DD
388
+ - [x] Phase 2: Authentication (2/2 plans) — completed YYYY-MM-DD
389
+ - [x] Phase 3: Core Features (3/3 plans) — completed YYYY-MM-DD
390
+ - [x] Phase 4: Polish (1/1 plan) — completed YYYY-MM-DD
391
+
392
+ </details>
393
+
394
+ ### 🚧 v[Next] [Name] (In Progress / Planned)
395
+
396
+ - [ ] Phase 5: [Name] ([N] plans)
397
+ - [ ] Phase 6: [Name] ([N] plans)
398
+
399
+ ## Progress
400
+
401
+ | Phase | Milestone | Plans Complete | Status | Completed |
402
+ | ----------------- | --------- | -------------- | ----------- | ---------- |
403
+ | 1. Foundation | v1.0 | 2/2 | Complete | YYYY-MM-DD |
404
+ | 2. Authentication | v1.0 | 2/2 | Complete | YYYY-MM-DD |
405
+ | 3. Core Features | v1.0 | 3/3 | Complete | YYYY-MM-DD |
406
+ | 4. Polish | v1.0 | 1/1 | Complete | YYYY-MM-DD |
407
+ | 5. Security Audit | v1.1 | 0/1 | Not started | - |
408
+ | 6. Hardening | v1.1 | 0/2 | Not started | - |
409
+ ```
410
+
411
+ </step>
412
+
413
+ <step name="archive_milestone">
414
+
415
+ Extract completed milestone details and create archive file.
416
+
417
+ **Process:**
418
+
419
+ 1. Create archive file path: `.planning/milestones/v[X.Y]-ROADMAP.md`
420
+
421
+ 2. Read `~/.claude/get-research-done/templates/milestone-archive.md` template
422
+
423
+ 3. Extract data from current ROADMAP.md:
424
+ - All phases belonging to this milestone (by phase number range)
425
+ - Full phase details (goals, plans, dependencies, status)
426
+ - Phase plan lists with completion checkmarks
427
+
428
+ 4. Extract data from PROJECT.md:
429
+ - Key decisions made during this milestone
430
+ - Requirements that were validated
431
+
432
+ 5. Fill template {{PLACEHOLDERS}}:
433
+ - {{VERSION}} — Milestone version (e.g., "1.0")
434
+ - {{MILESTONE_NAME}} — From ROADMAP.md milestone header
435
+ - {{DATE}} — Today's date
436
+ - {{PHASE_START}} — First phase number in milestone
437
+ - {{PHASE_END}} — Last phase number in milestone
438
+ - {{TOTAL_PLANS}} — Count of all plans in milestone
439
+ - {{MILESTONE_DESCRIPTION}} — From ROADMAP.md overview
440
+ - {{PHASES_SECTION}} — Full phase details extracted
441
+ - {{DECISIONS_FROM_PROJECT}} — Key decisions from PROJECT.md
442
+ - {{ISSUES_RESOLVED_DURING_MILESTONE}} — From summaries
443
+
444
+ 6. Write filled template to `.planning/milestones/v[X.Y]-ROADMAP.md`
445
+
446
+ 7. Delete ROADMAP.md (fresh one created for next milestone):
447
+ ```bash
448
+ rm .planning/ROADMAP.md
449
+ ```
450
+
451
+ 8. Verify archive exists:
452
+ ```bash
453
+ ls .planning/milestones/v[X.Y]-ROADMAP.md
454
+ ```
455
+
456
+ 9. Confirm roadmap archive complete:
457
+
458
+ ```
459
+ ✅ v[X.Y] roadmap archived to milestones/v[X.Y]-ROADMAP.md
460
+ ✅ ROADMAP.md deleted (fresh one for next milestone)
461
+ ```
462
+
463
+ **Note:** Phase directories (`.planning/phases/`) are NOT deleted. They accumulate across milestones as the raw execution history. Phase numbering continues (v1.0 phases 1-4, v1.1 phases 5-8, etc.).
464
+
465
+ </step>
466
+
467
+ <step name="archive_requirements">
468
+
469
+ Archive requirements and prepare for fresh requirements in next milestone.
470
+
471
+ **Process:**
472
+
473
+ 1. Read current REQUIREMENTS.md:
474
+ ```bash
475
+ cat .planning/REQUIREMENTS.md
476
+ ```
477
+
478
+ 2. Create archive file: `.planning/milestones/v[X.Y]-REQUIREMENTS.md`
479
+
480
+ 3. Transform requirements for archive:
481
+ - Mark all v1 requirements as `[x]` complete
482
+ - Add outcome notes where relevant (validated, adjusted, dropped)
483
+ - Update traceability table status to "Complete" for all shipped requirements
484
+ - Add "Milestone Summary" section with:
485
+ - Total requirements shipped
486
+ - Any requirements that changed scope during milestone
487
+ - Any requirements dropped and why
488
+
489
+ 4. Write archive file with header:
490
+ ```markdown
491
+ # Requirements Archive: v[X.Y] [Milestone Name]
492
+
493
+ **Archived:** [DATE]
494
+ **Status:** ✅ SHIPPED
495
+
496
+ This is the archived requirements specification for v[X.Y].
497
+ For current requirements, see `.planning/REQUIREMENTS.md` (created for next milestone).
498
+
499
+ ---
500
+
501
+ [Full REQUIREMENTS.md content with checkboxes marked complete]
502
+
503
+ ---
504
+
505
+ ## Milestone Summary
506
+
507
+ **Shipped:** [X] of [Y] v1 requirements
508
+ **Adjusted:** [list any requirements that changed during implementation]
509
+ **Dropped:** [list any requirements removed and why]
510
+
511
+ ---
512
+ *Archived: [DATE] as part of v[X.Y] milestone completion*
513
+ ```
514
+
515
+ 5. Delete original REQUIREMENTS.md:
516
+ ```bash
517
+ rm .planning/REQUIREMENTS.md
518
+ ```
519
+
520
+ 6. Confirm:
521
+ ```
522
+ ✅ Requirements archived to milestones/v[X.Y]-REQUIREMENTS.md
523
+ ✅ REQUIREMENTS.md deleted (fresh one needed for next milestone)
524
+ ```
525
+
526
+ **Important:** The next milestone workflow starts with `/grd:new-milestone` which includes requirements definition. PROJECT.md's Validated section carries the cumulative record across milestones.
527
+
528
+ </step>
529
+
530
+ <step name="archive_audit">
531
+
532
+ Move the milestone audit file to the archive (if it exists):
533
+
534
+ ```bash
535
+ # Move audit to milestones folder (if exists)
536
+ [ -f .planning/v[X.Y]-MILESTONE-AUDIT.md ] && mv .planning/v[X.Y]-MILESTONE-AUDIT.md .planning/milestones/
537
+ ```
538
+
539
+ Confirm:
540
+ ```
541
+ ✅ Audit archived to milestones/v[X.Y]-MILESTONE-AUDIT.md
542
+ ```
543
+
544
+ (Skip silently if no audit file exists — audit is optional)
545
+
546
+ </step>
547
+
548
+ <step name="update_state">
549
+
550
+ Update STATE.md to reflect milestone completion.
551
+
552
+ **Project Reference:**
553
+
554
+ ```markdown
555
+ ## Project Reference
556
+
557
+ See: .planning/PROJECT.md (updated [today])
558
+
559
+ **Core value:** [Current core value from PROJECT.md]
560
+ **Current focus:** [Next milestone or "Planning next milestone"]
561
+ ```
562
+
563
+ **Current Position:**
564
+
565
+ ```markdown
566
+ Phase: [Next phase] of [Total] ([Phase name])
567
+ Plan: Not started
568
+ Status: Ready to plan
569
+ Last activity: [today] — v[X.Y] milestone complete
570
+
571
+ Progress: [updated progress bar]
572
+ ```
573
+
574
+ **Accumulated Context:**
575
+
576
+ - Clear decisions summary (full log in PROJECT.md)
577
+ - Clear resolved blockers
578
+ - Keep open blockers for next milestone
579
+
580
+ </step>
581
+
582
+ <step name="git_tag">
583
+
584
+ Create git tag for milestone:
585
+
586
+ ```bash
587
+ git tag -a v[X.Y] -m "$(cat <<'EOF'
588
+ v[X.Y] [Name]
589
+
590
+ Delivered: [One sentence]
591
+
592
+ Key accomplishments:
593
+ - [Item 1]
594
+ - [Item 2]
595
+ - [Item 3]
596
+
597
+ See .planning/MILESTONES.md for full details.
598
+ EOF
599
+ )"
600
+ ```
601
+
602
+ Confirm: "Tagged: v[X.Y]"
603
+
604
+ Ask: "Push tag to remote? (y/n)"
605
+
606
+ If yes:
607
+
608
+ ```bash
609
+ git push origin v[X.Y]
610
+ ```
611
+
612
+ </step>
613
+
614
+ <step name="git_commit_milestone">
615
+
616
+ Commit milestone completion including archive files and deletions.
617
+
618
+ **Check planning config:**
619
+
620
+ ```bash
621
+ COMMIT_PLANNING_DOCS=$(cat .planning/config.json 2>/dev/null | grep -o '"commit_docs"[[:space:]]*:[[:space:]]*[^,}]*' | grep -o 'true\|false' || echo "true")
622
+ git check-ignore -q .planning 2>/dev/null && COMMIT_PLANNING_DOCS=false
623
+ ```
624
+
625
+ **If `COMMIT_PLANNING_DOCS=false`:** Skip git operations
626
+
627
+ **If `COMMIT_PLANNING_DOCS=true` (default):**
628
+
629
+ ```bash
630
+ # Stage archive files (new)
631
+ git add .planning/milestones/v[X.Y]-ROADMAP.md
632
+ git add .planning/milestones/v[X.Y]-REQUIREMENTS.md
633
+ git add .planning/milestones/v[X.Y]-MILESTONE-AUDIT.md 2>/dev/null || true
634
+
635
+ # Stage updated files
636
+ git add .planning/MILESTONES.md
637
+ git add .planning/PROJECT.md
638
+ git add .planning/STATE.md
639
+
640
+ # Stage deletions
641
+ git add -u .planning/
642
+
643
+ # Commit with descriptive message
644
+ git commit -m "$(cat <<'EOF'
645
+ chore: complete v[X.Y] milestone
646
+
647
+ Archived:
648
+ - milestones/v[X.Y]-ROADMAP.md
649
+ - milestones/v[X.Y]-REQUIREMENTS.md
650
+ - milestones/v[X.Y]-MILESTONE-AUDIT.md (if audit was run)
651
+
652
+ Deleted (fresh for next milestone):
653
+ - ROADMAP.md
654
+ - REQUIREMENTS.md
655
+
656
+ Updated:
657
+ - MILESTONES.md (new entry)
658
+ - PROJECT.md (requirements → Validated)
659
+ - STATE.md (reset for next milestone)
660
+
661
+ Tagged: v[X.Y]
662
+ EOF
663
+ )"
664
+ ```
665
+
666
+ Confirm: "Committed: chore: complete v[X.Y] milestone"
667
+
668
+ </step>
669
+
670
+ <step name="offer_next">
671
+
672
+ ```
673
+ ✅ Milestone v[X.Y] [Name] complete
674
+
675
+ Shipped:
676
+ - [N] phases ([M] plans, [P] tasks)
677
+ - [One sentence of what shipped]
678
+
679
+ Archived:
680
+ - milestones/v[X.Y]-ROADMAP.md
681
+ - milestones/v[X.Y]-REQUIREMENTS.md
682
+
683
+ Summary: .planning/MILESTONES.md
684
+ Tag: v[X.Y]
685
+
686
+ ---
687
+
688
+ ## ▶ Next Up
689
+
690
+ **Start Next Milestone** — questioning → research → requirements → roadmap
691
+
692
+ `/grd:new-milestone`
693
+
694
+ <sub>`/clear` first → fresh context window</sub>
695
+
696
+ ---
697
+ ```
698
+
699
+ </step>
700
+
701
+ </process>
702
+
703
+ <milestone_naming>
704
+
705
+ **Version conventions:**
706
+ - **v1.0** — Initial MVP
707
+ - **v1.1, v1.2, v1.3** — Minor updates, new features, fixes
708
+ - **v2.0, v3.0** — Major rewrites, breaking changes, significant new direction
709
+
710
+ **Name conventions:**
711
+ - v1.0 MVP
712
+ - v1.1 Security
713
+ - v1.2 Performance
714
+ - v2.0 Redesign
715
+ - v2.0 iOS Launch
716
+
717
+ Keep names short (1-2 words describing the focus).
718
+
719
+ </milestone_naming>
720
+
721
+ <what_qualifies>
722
+
723
+ **Create milestones for:**
724
+ - Initial release (v1.0)
725
+ - Public releases
726
+ - Major feature sets shipped
727
+ - Before archiving planning
728
+
729
+ **Don't create milestones for:**
730
+ - Every phase completion (too granular)
731
+ - Work in progress (wait until shipped)
732
+ - Internal dev iterations (unless truly shipped internally)
733
+
734
+ If uncertain, ask: "Is this deployed/usable/shipped in some form?"
735
+ If yes → milestone. If no → keep working.
736
+
737
+ </what_qualifies>
738
+
739
+ <success_criteria>
740
+
741
+ Milestone completion is successful when:
742
+
743
+ - [ ] MILESTONES.md entry created with stats and accomplishments
744
+ - [ ] PROJECT.md full evolution review completed
745
+ - [ ] All shipped requirements moved to Validated in PROJECT.md
746
+ - [ ] Key Decisions updated with outcomes
747
+ - [ ] ROADMAP.md reorganized with milestone grouping
748
+ - [ ] Roadmap archive created (milestones/v[X.Y]-ROADMAP.md)
749
+ - [ ] Requirements archive created (milestones/v[X.Y]-REQUIREMENTS.md)
750
+ - [ ] REQUIREMENTS.md deleted (fresh for next milestone)
751
+ - [ ] STATE.md updated with fresh project reference
752
+ - [ ] Git tag created (v[X.Y])
753
+ - [ ] Milestone commit made (includes archive files and deletion)
754
+ - [ ] User knows next step (/grd:new-milestone)
755
+
756
+ </success_criteria>