qualia-framework 2.6.0 → 3.2.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 (321) hide show
  1. package/CLAUDE.md +64 -0
  2. package/README.md +103 -30
  3. package/agents/builder.md +110 -0
  4. package/agents/planner.md +134 -0
  5. package/agents/qa-browser.md +186 -0
  6. package/agents/verifier.md +221 -0
  7. package/bin/cli.js +336 -531
  8. package/bin/install.js +570 -0
  9. package/bin/qualia-ui.js +299 -0
  10. package/bin/state.js +630 -0
  11. package/bin/statusline.js +252 -0
  12. package/guide.md +63 -0
  13. package/hooks/auto-update.js +139 -0
  14. package/hooks/branch-guard.js +47 -0
  15. package/hooks/migration-guard.js +60 -0
  16. package/hooks/pre-compact.js +32 -0
  17. package/hooks/pre-deploy-gate.js +110 -0
  18. package/hooks/pre-push.js +33 -0
  19. package/hooks/session-start.js +170 -0
  20. package/package.json +29 -20
  21. package/rules/design-reference.md +179 -0
  22. package/rules/frontend.md +126 -0
  23. package/skills/qualia/SKILL.md +87 -0
  24. package/skills/qualia-build/SKILL.md +97 -0
  25. package/skills/qualia-debug/SKILL.md +87 -0
  26. package/skills/qualia-design/SKILL.md +93 -0
  27. package/skills/qualia-handoff/SKILL.md +66 -0
  28. package/skills/qualia-idk/SKILL.md +8 -0
  29. package/skills/qualia-learn/SKILL.md +88 -0
  30. package/skills/qualia-new/SKILL.md +323 -0
  31. package/{framework/skills → skills}/qualia-optimize/SKILL.md +1 -1
  32. package/skills/qualia-pause/SKILL.md +63 -0
  33. package/skills/qualia-plan/SKILL.md +101 -0
  34. package/skills/qualia-polish/SKILL.md +157 -0
  35. package/skills/qualia-quick/SKILL.md +37 -0
  36. package/skills/qualia-report/SKILL.md +105 -0
  37. package/skills/qualia-resume/SKILL.md +49 -0
  38. package/skills/qualia-review/SKILL.md +76 -0
  39. package/skills/qualia-ship/SKILL.md +90 -0
  40. package/skills/qualia-skill-new/SKILL.md +167 -0
  41. package/skills/qualia-task/SKILL.md +91 -0
  42. package/skills/qualia-verify/SKILL.md +113 -0
  43. package/templates/DESIGN.md +137 -0
  44. package/templates/plan.md +28 -0
  45. package/templates/project.md +22 -0
  46. package/templates/state.md +27 -0
  47. package/templates/tracking.json +20 -0
  48. package/tests/bin.test.sh +673 -0
  49. package/tests/hooks.test.sh +315 -0
  50. package/tests/state.test.sh +535 -0
  51. package/tests/statusline.test.sh +243 -0
  52. package/bin/collect-metrics.sh +0 -62
  53. package/framework/.claudeignore +0 -51
  54. package/framework/CLAUDE.md +0 -51
  55. package/framework/MCP_SETUP.md +0 -229
  56. package/framework/agents/architecture-strategist.md +0 -53
  57. package/framework/agents/backend-agent.md +0 -150
  58. package/framework/agents/code-simplicity-reviewer.md +0 -86
  59. package/framework/agents/frontend-agent.md +0 -111
  60. package/framework/agents/kieran-typescript-reviewer.md +0 -96
  61. package/framework/agents/performance-oracle.md +0 -111
  62. package/framework/agents/qualia-codebase-mapper.md +0 -761
  63. package/framework/agents/qualia-debugger.md +0 -1204
  64. package/framework/agents/qualia-executor.md +0 -882
  65. package/framework/agents/qualia-integration-checker.md +0 -424
  66. package/framework/agents/qualia-phase-researcher.md +0 -457
  67. package/framework/agents/qualia-plan-checker.md +0 -700
  68. package/framework/agents/qualia-planner.md +0 -1245
  69. package/framework/agents/qualia-project-researcher.md +0 -603
  70. package/framework/agents/qualia-research-synthesizer.md +0 -200
  71. package/framework/agents/qualia-roadmapper.md +0 -606
  72. package/framework/agents/qualia-verifier.md +0 -686
  73. package/framework/agents/red-team-qa.md +0 -130
  74. package/framework/agents/security-auditor.md +0 -72
  75. package/framework/agents/team-orchestrator.md +0 -229
  76. package/framework/agents/teams/framework-audit-team.md +0 -66
  77. package/framework/agents/teams/full-stack-team.md +0 -48
  78. package/framework/agents/teams/optimize-team.md +0 -53
  79. package/framework/agents/teams/review-team.md +0 -70
  80. package/framework/agents/teams/ship-team.md +0 -86
  81. package/framework/agents/test-agent.md +0 -182
  82. package/framework/hooks/auto-format.sh +0 -54
  83. package/framework/hooks/block-env-edit.sh +0 -42
  84. package/framework/hooks/branch-guard.sh +0 -43
  85. package/framework/hooks/confirm-delete.sh +0 -59
  86. package/framework/hooks/migration-validate.sh +0 -77
  87. package/framework/hooks/notification-speak.sh +0 -16
  88. package/framework/hooks/pre-commit.sh +0 -100
  89. package/framework/hooks/pre-compact.sh +0 -56
  90. package/framework/hooks/pre-deploy-gate.sh +0 -160
  91. package/framework/hooks/qualia-colors.sh +0 -32
  92. package/framework/hooks/retention-cleanup.sh +0 -62
  93. package/framework/hooks/save-session-state.sh +0 -185
  94. package/framework/hooks/session-context-loader.sh +0 -96
  95. package/framework/hooks/session-learn.sh +0 -32
  96. package/framework/hooks/skill-announce.sh +0 -123
  97. package/framework/hooks/tool-error-announce.sh +0 -27
  98. package/framework/install.ps1 +0 -323
  99. package/framework/install.sh +0 -313
  100. package/framework/qualia-framework/VERSION +0 -1
  101. package/framework/qualia-framework/assets/qualia-logo.png +0 -0
  102. package/framework/qualia-framework/bin/collect-metrics.sh +0 -67
  103. package/framework/qualia-framework/bin/generate-report-docx.py +0 -429
  104. package/framework/qualia-framework/bin/qualia-tools.js +0 -2201
  105. package/framework/qualia-framework/bin/qualia-tools.test.js +0 -1054
  106. package/framework/qualia-framework/references/checkpoints.md +0 -775
  107. package/framework/qualia-framework/references/completion-checklists.md +0 -359
  108. package/framework/qualia-framework/references/continuation-format.md +0 -249
  109. package/framework/qualia-framework/references/continuation-prompt.md +0 -97
  110. package/framework/qualia-framework/references/decimal-phase-calculation.md +0 -65
  111. package/framework/qualia-framework/references/design-quality.md +0 -56
  112. package/framework/qualia-framework/references/employee-guide.md +0 -167
  113. package/framework/qualia-framework/references/git-integration.md +0 -254
  114. package/framework/qualia-framework/references/git-planning-commit.md +0 -50
  115. package/framework/qualia-framework/references/model-profile-resolution.md +0 -32
  116. package/framework/qualia-framework/references/model-profiles.md +0 -73
  117. package/framework/qualia-framework/references/phase-argument-parsing.md +0 -61
  118. package/framework/qualia-framework/references/planning-config.md +0 -195
  119. package/framework/qualia-framework/references/questioning.md +0 -141
  120. package/framework/qualia-framework/references/tdd.md +0 -263
  121. package/framework/qualia-framework/references/ui-brand.md +0 -160
  122. package/framework/qualia-framework/references/verification-patterns.md +0 -612
  123. package/framework/qualia-framework/templates/DEBUG.md +0 -159
  124. package/framework/qualia-framework/templates/DESIGN.md +0 -81
  125. package/framework/qualia-framework/templates/UAT.md +0 -247
  126. package/framework/qualia-framework/templates/codebase/architecture.md +0 -255
  127. package/framework/qualia-framework/templates/codebase/concerns.md +0 -310
  128. package/framework/qualia-framework/templates/codebase/conventions.md +0 -307
  129. package/framework/qualia-framework/templates/codebase/integrations.md +0 -280
  130. package/framework/qualia-framework/templates/codebase/stack.md +0 -186
  131. package/framework/qualia-framework/templates/codebase/structure.md +0 -285
  132. package/framework/qualia-framework/templates/codebase/testing.md +0 -480
  133. package/framework/qualia-framework/templates/config.json +0 -35
  134. package/framework/qualia-framework/templates/context.md +0 -283
  135. package/framework/qualia-framework/templates/continue-here.md +0 -78
  136. package/framework/qualia-framework/templates/debug-subagent-prompt.md +0 -91
  137. package/framework/qualia-framework/templates/discovery.md +0 -146
  138. package/framework/qualia-framework/templates/lab-notes.md +0 -16
  139. package/framework/qualia-framework/templates/milestone-archive.md +0 -123
  140. package/framework/qualia-framework/templates/milestone.md +0 -115
  141. package/framework/qualia-framework/templates/phase-prompt.md +0 -567
  142. package/framework/qualia-framework/templates/planner-subagent-prompt.md +0 -117
  143. package/framework/qualia-framework/templates/project.md +0 -184
  144. package/framework/qualia-framework/templates/projects/ai-agent.md +0 -156
  145. package/framework/qualia-framework/templates/projects/mobile-app.md +0 -181
  146. package/framework/qualia-framework/templates/projects/voice-agent.md +0 -134
  147. package/framework/qualia-framework/templates/projects/website.md +0 -137
  148. package/framework/qualia-framework/templates/requirements.md +0 -231
  149. package/framework/qualia-framework/templates/research-project/ARCHITECTURE.md +0 -204
  150. package/framework/qualia-framework/templates/research-project/FEATURES.md +0 -147
  151. package/framework/qualia-framework/templates/research-project/PITFALLS.md +0 -200
  152. package/framework/qualia-framework/templates/research-project/STACK.md +0 -120
  153. package/framework/qualia-framework/templates/research-project/SUMMARY.md +0 -170
  154. package/framework/qualia-framework/templates/research.md +0 -552
  155. package/framework/qualia-framework/templates/roadmap.md +0 -206
  156. package/framework/qualia-framework/templates/state.md +0 -179
  157. package/framework/qualia-framework/templates/summary-complex.md +0 -59
  158. package/framework/qualia-framework/templates/summary-minimal.md +0 -41
  159. package/framework/qualia-framework/templates/summary-standard.md +0 -48
  160. package/framework/qualia-framework/templates/summary.md +0 -246
  161. package/framework/qualia-framework/templates/user-setup.md +0 -311
  162. package/framework/qualia-framework/templates/verification-report.md +0 -322
  163. package/framework/qualia-framework/workflows/add-phase.md +0 -179
  164. package/framework/qualia-framework/workflows/add-todo.md +0 -157
  165. package/framework/qualia-framework/workflows/audit-milestone.md +0 -241
  166. package/framework/qualia-framework/workflows/check-todos.md +0 -176
  167. package/framework/qualia-framework/workflows/complete-milestone.md +0 -858
  168. package/framework/qualia-framework/workflows/diagnose-issues.md +0 -219
  169. package/framework/qualia-framework/workflows/discovery-phase.md +0 -289
  170. package/framework/qualia-framework/workflows/discuss-phase.md +0 -534
  171. package/framework/qualia-framework/workflows/execute-phase.md +0 -559
  172. package/framework/qualia-framework/workflows/execute-plan.md +0 -438
  173. package/framework/qualia-framework/workflows/help.md +0 -470
  174. package/framework/qualia-framework/workflows/insert-phase.md +0 -220
  175. package/framework/qualia-framework/workflows/list-phase-assumptions.md +0 -178
  176. package/framework/qualia-framework/workflows/map-codebase.md +0 -327
  177. package/framework/qualia-framework/workflows/new-milestone.md +0 -363
  178. package/framework/qualia-framework/workflows/new-project.md +0 -982
  179. package/framework/qualia-framework/workflows/pause-work.md +0 -122
  180. package/framework/qualia-framework/workflows/plan-milestone-gaps.md +0 -256
  181. package/framework/qualia-framework/workflows/plan-phase.md +0 -422
  182. package/framework/qualia-framework/workflows/progress.md +0 -389
  183. package/framework/qualia-framework/workflows/quick.md +0 -252
  184. package/framework/qualia-framework/workflows/remove-phase.md +0 -326
  185. package/framework/qualia-framework/workflows/research-phase.md +0 -74
  186. package/framework/qualia-framework/workflows/resume-project.md +0 -306
  187. package/framework/qualia-framework/workflows/set-profile.md +0 -80
  188. package/framework/qualia-framework/workflows/settings.md +0 -145
  189. package/framework/qualia-framework/workflows/transition.md +0 -556
  190. package/framework/qualia-framework/workflows/update.md +0 -197
  191. package/framework/qualia-framework/workflows/verify-phase.md +0 -195
  192. package/framework/qualia-framework/workflows/verify-work.md +0 -625
  193. package/framework/rules/context7.md +0 -14
  194. package/framework/rules/frontend.md +0 -33
  195. package/framework/rules/speed.md +0 -23
  196. package/framework/scripts/__pycache__/say.cpython-314.pyc +0 -0
  197. package/framework/scripts/apply-retention.sh +0 -120
  198. package/framework/scripts/bootstrap-pop-os.sh +0 -354
  199. package/framework/scripts/claude-voice +0 -13
  200. package/framework/scripts/cleanup.sh +0 -131
  201. package/framework/scripts/cowork-mode.sh +0 -141
  202. package/framework/scripts/generate-project-claude-md.sh +0 -153
  203. package/framework/scripts/load-test-webhook.js +0 -172
  204. package/framework/scripts/say.py +0 -236
  205. package/framework/scripts/showcase-video-recorder/ffmpeg-builder.js +0 -167
  206. package/framework/scripts/showcase-video-recorder/playwright-helpers.js +0 -216
  207. package/framework/scripts/speak.py +0 -55
  208. package/framework/scripts/speak.sh +0 -18
  209. package/framework/scripts/status.sh +0 -138
  210. package/framework/scripts/sync-to-framework.sh +0 -65
  211. package/framework/scripts/voice-hotkey.py +0 -227
  212. package/framework/scripts/voice-input.sh +0 -51
  213. package/framework/skills/animate/SKILL.md +0 -202
  214. package/framework/skills/bolder/SKILL.md +0 -144
  215. package/framework/skills/browser-qa/SKILL.md +0 -536
  216. package/framework/skills/clarify/SKILL.md +0 -179
  217. package/framework/skills/client-handoff/SKILL.md +0 -135
  218. package/framework/skills/collab-onboard/SKILL.md +0 -111
  219. package/framework/skills/colorize/SKILL.md +0 -170
  220. package/framework/skills/critique/SKILL.md +0 -126
  221. package/framework/skills/deep-research/SKILL.md +0 -240
  222. package/framework/skills/delight/SKILL.md +0 -329
  223. package/framework/skills/deploy/SKILL.md +0 -261
  224. package/framework/skills/deploy-verify/SKILL.md +0 -377
  225. package/framework/skills/deploy-verify/scripts/canary-check.sh +0 -206
  226. package/framework/skills/deploy-verify/scripts/check-console-errors.js +0 -147
  227. package/framework/skills/deploy-verify/scripts/check-cwv.js +0 -139
  228. package/framework/skills/deploy-verify/scripts/project-detect.sh +0 -84
  229. package/framework/skills/deploy-verify/scripts/verify.sh +0 -548
  230. package/framework/skills/design-quieter/SKILL.md +0 -130
  231. package/framework/skills/distill/SKILL.md +0 -149
  232. package/framework/skills/docs-lookup/SKILL.md +0 -79
  233. package/framework/skills/fcm-notifications/SKILL.md +0 -125
  234. package/framework/skills/financial-ledger/SKILL.md +0 -1039
  235. package/framework/skills/frontend-master/NOTICE.md +0 -4
  236. package/framework/skills/frontend-master/SKILL.md +0 -127
  237. package/framework/skills/frontend-master/reference/color-and-contrast.md +0 -132
  238. package/framework/skills/frontend-master/reference/interaction-design.md +0 -123
  239. package/framework/skills/frontend-master/reference/motion-design.md +0 -99
  240. package/framework/skills/frontend-master/reference/responsive-design.md +0 -114
  241. package/framework/skills/frontend-master/reference/spatial-design.md +0 -100
  242. package/framework/skills/frontend-master/reference/typography.md +0 -131
  243. package/framework/skills/frontend-master/reference/ux-writing.md +0 -107
  244. package/framework/skills/harden/SKILL.md +0 -357
  245. package/framework/skills/i18n-rtl/SKILL.md +0 -752
  246. package/framework/skills/learn/SKILL.md +0 -95
  247. package/framework/skills/memory/SKILL.md +0 -50
  248. package/framework/skills/mobile-expo/SKILL.md +0 -977
  249. package/framework/skills/mobile-expo/references/store-checklist.md +0 -550
  250. package/framework/skills/nestjs-backend/README.md +0 -73
  251. package/framework/skills/nestjs-backend/SKILL.md +0 -446
  252. package/framework/skills/nestjs-backend/references/templates.md +0 -1173
  253. package/framework/skills/normalize/SKILL.md +0 -79
  254. package/framework/skills/onboard/SKILL.md +0 -242
  255. package/framework/skills/openrouter-agent/SKILL.md +0 -922
  256. package/framework/skills/polish/SKILL.md +0 -209
  257. package/framework/skills/pr/SKILL.md +0 -66
  258. package/framework/skills/qualia/SKILL.md +0 -199
  259. package/framework/skills/qualia-add-todo/SKILL.md +0 -68
  260. package/framework/skills/qualia-audit-milestone/SKILL.md +0 -95
  261. package/framework/skills/qualia-check-todos/SKILL.md +0 -55
  262. package/framework/skills/qualia-complete-milestone/SKILL.md +0 -134
  263. package/framework/skills/qualia-debug/SKILL.md +0 -149
  264. package/framework/skills/qualia-design/SKILL.md +0 -203
  265. package/framework/skills/qualia-discuss-phase/SKILL.md +0 -72
  266. package/framework/skills/qualia-evolve/SKILL.md +0 -200
  267. package/framework/skills/qualia-execute-phase/SKILL.md +0 -89
  268. package/framework/skills/qualia-framework-audit/SKILL.md +0 -604
  269. package/framework/skills/qualia-guide/SKILL.md +0 -32
  270. package/framework/skills/qualia-help/SKILL.md +0 -114
  271. package/framework/skills/qualia-idk/SKILL.md +0 -352
  272. package/framework/skills/qualia-list-phase-assumptions/SKILL.md +0 -67
  273. package/framework/skills/qualia-new-milestone/SKILL.md +0 -72
  274. package/framework/skills/qualia-new-project/SKILL.md +0 -232
  275. package/framework/skills/qualia-pause-work/SKILL.md +0 -96
  276. package/framework/skills/qualia-plan-milestone-gaps/SKILL.md +0 -57
  277. package/framework/skills/qualia-plan-phase/SKILL.md +0 -104
  278. package/framework/skills/qualia-production-check/SKILL.md +0 -0
  279. package/framework/skills/qualia-progress/SKILL.md +0 -53
  280. package/framework/skills/qualia-quick/SKILL.md +0 -89
  281. package/framework/skills/qualia-report/SKILL.md +0 -166
  282. package/framework/skills/qualia-research-phase/SKILL.md +0 -88
  283. package/framework/skills/qualia-resume-work/SKILL.md +0 -62
  284. package/framework/skills/qualia-review/SKILL.md +0 -263
  285. package/framework/skills/qualia-start/SKILL.md +0 -161
  286. package/framework/skills/qualia-verify-work/SKILL.md +0 -132
  287. package/framework/skills/rag/SKILL.md +0 -750
  288. package/framework/skills/responsive/SKILL.md +0 -231
  289. package/framework/skills/retro/SKILL.md +0 -284
  290. package/framework/skills/sakani-conventions/SKILL.md +0 -136
  291. package/framework/skills/sakani-conventions/evals/evals.json +0 -23
  292. package/framework/skills/sakani-conventions/references/entities.md +0 -365
  293. package/framework/skills/sakani-conventions/references/error-codes.md +0 -95
  294. package/framework/skills/seo-master/SKILL.md +0 -490
  295. package/framework/skills/seo-master/references/checklist.md +0 -199
  296. package/framework/skills/seo-master/references/structured-data.md +0 -609
  297. package/framework/skills/ship/SKILL.md +0 -239
  298. package/framework/skills/stack-researcher/SKILL.md +0 -215
  299. package/framework/skills/status/SKILL.md +0 -154
  300. package/framework/skills/status/scripts/health-check.sh +0 -562
  301. package/framework/skills/subscription-payments/SKILL.md +0 -250
  302. package/framework/skills/supabase/SKILL.md +0 -973
  303. package/framework/skills/supabase/references/templates.md +0 -159
  304. package/framework/skills/team/SKILL.md +0 -67
  305. package/framework/skills/test-runner/SKILL.md +0 -202
  306. package/framework/skills/voice-agent/SKILL.md +0 -1312
  307. package/framework/skills/zoho-workflow/SKILL.md +0 -51
  308. package/framework/statusline-command.sh +0 -117
  309. package/framework/teams/default/inboxes/plan-04.json +0 -9
  310. package/framework/teams/review-team.md +0 -75
  311. package/framework/teams/ship-team.md +0 -86
  312. package/profiles/fawzi.json +0 -16
  313. package/profiles/hasan.json +0 -16
  314. package/profiles/moayad.json +0 -16
  315. package/templates/CLAUDE-owner.md +0 -52
  316. package/templates/CLAUDE.md.hbs +0 -58
  317. package/templates/env.claude.template +0 -12
  318. package/templates/settings.json +0 -172
  319. package/uninstall.sh +0 -90
  320. /package/{framework/rules → rules}/deployment.md +0 -0
  321. /package/{framework/rules → rules}/security.md +0 -0
@@ -1,858 +0,0 @@
1
- <purpose>
2
-
3
- Mark a shipped version (v1.0, v1.1, v2.0) as complete. Creates 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
- </purpose>
6
-
7
- <required_reading>
8
-
9
- 1. templates/milestone.md
10
- 2. templates/milestone-archive.md
11
- 3. `.planning/ROADMAP.md`
12
- 4. `.planning/REQUIREMENTS.md`
13
- 5. `.planning/PROJECT.md`
14
-
15
- </required_reading>
16
-
17
- <archival_behavior>
18
-
19
- When a milestone completes:
20
-
21
- 1. Extract full milestone details to `.planning/milestones/v[X.Y]-ROADMAP.md`
22
- 2. Archive requirements to `.planning/milestones/v[X.Y]-REQUIREMENTS.md`
23
- 3. Update ROADMAP.md — replace milestone details with one-line summary
24
- 4. Delete REQUIREMENTS.md (fresh one for next milestone)
25
- 5. Perform full PROJECT.md evolution review
26
- 6. Offer to create next milestone inline
27
-
28
- **Context Efficiency:** Archives keep ROADMAP.md constant-size and REQUIREMENTS.md milestone-scoped.
29
-
30
- **ROADMAP archive** uses `templates/milestone-archive.md` — includes milestone header (status, phases, date), full phase details, milestone summary (decisions, issues, tech debt).
31
-
32
- **REQUIREMENTS archive** contains all requirements marked complete with outcomes, traceability table with final status, notes on changed requirements.
33
-
34
- </archival_behavior>
35
-
36
- <process>
37
-
38
- <step name="verify_readiness">
39
-
40
- Check milestone completion:
41
-
42
- ```bash
43
- cat .planning/ROADMAP.md
44
- ls .planning/phases/*/SUMMARY.md 2>/dev/null | wc -l
45
- ```
46
-
47
- Verify:
48
- - Which phases belong to this milestone?
49
- - All phases complete (all plans have summaries)?
50
- - Work tested/validated?
51
- - Ready to ship/tag?
52
-
53
- Present:
54
-
55
- ```
56
- Milestone: [Name, e.g., "v1.0 MVP"]
57
-
58
- Includes:
59
- - Phase 1: Foundation (2/2 plans complete)
60
- - Phase 2: Authentication (2/2 plans complete)
61
- - Phase 3: Core Features (3/3 plans complete)
62
- - Phase 4: Polish (1/1 plan complete)
63
-
64
- Total: 4 phases, 8 plans, all complete
65
- ```
66
-
67
- <config-check>
68
-
69
- ```bash
70
- cat .planning/config.json 2>/dev/null
71
- ```
72
-
73
- </config-check>
74
-
75
- <if mode="yolo">
76
-
77
- ```
78
- ⚡ Auto-approved: Milestone scope verification
79
- [Show breakdown summary without prompting]
80
- Proceeding to stats gathering...
81
- ```
82
-
83
- Proceed to gather_stats.
84
-
85
- </if>
86
-
87
- <if mode="interactive" OR="custom with gates.confirm_milestone_scope true">
88
-
89
- ```
90
- Ready to mark this milestone as shipped?
91
- (yes / wait / adjust scope)
92
- ```
93
-
94
- Wait for confirmation.
95
- - "adjust scope": Ask which phases to include.
96
- - "wait": Stop, user returns when ready.
97
-
98
- </if>
99
-
100
- </step>
101
-
102
- <step name="gather_stats">
103
-
104
- Calculate milestone statistics:
105
-
106
- ```bash
107
- git log --oneline --grep="feat(" | head -20
108
- git diff --stat FIRST_COMMIT..LAST_COMMIT | tail -1
109
- find . -name "*.swift" -o -name "*.ts" -o -name "*.py" | xargs wc -l 2>/dev/null
110
- git log --format="%ai" FIRST_COMMIT | tail -1
111
- git log --format="%ai" LAST_COMMIT | head -1
112
- ```
113
-
114
- Present:
115
-
116
- ```
117
- Milestone Stats:
118
- - Phases: [X-Y]
119
- - Plans: [Z] total
120
- - Tasks: [N] total (from phase summaries)
121
- - Files modified: [M]
122
- - Lines of code: [LOC] [language]
123
- - Timeline: [Days] days ([Start] → [End])
124
- - Git range: feat(XX-XX) → feat(YY-YY)
125
- ```
126
-
127
- </step>
128
-
129
- <step name="extract_accomplishments">
130
-
131
- Extract one-liners from SUMMARY.md files using summary-extract:
132
-
133
- ```bash
134
- # For each phase in milestone, extract one-liner
135
- for summary in .planning/phases/*-*/*-SUMMARY.md; do
136
- node /home/qualia/.claude/qualia-framework/bin/qualia-tools.js summary-extract "$summary" --fields one_liner | jq -r '.one_liner'
137
- done
138
- ```
139
-
140
- Extract 4-6 key accomplishments. Present:
141
-
142
- ```
143
- Key accomplishments for this milestone:
144
- 1. [Achievement from phase 1]
145
- 2. [Achievement from phase 2]
146
- 3. [Achievement from phase 3]
147
- 4. [Achievement from phase 4]
148
- 5. [Achievement from phase 5]
149
- ```
150
-
151
- </step>
152
-
153
- <step name="create_milestone_entry">
154
-
155
- Create or update `.planning/MILESTONES.md`.
156
-
157
- If file doesn't exist, create with project name header. If exists, prepend new entry (reverse chronological).
158
-
159
- Use template from `templates/milestone.md`:
160
-
161
- ```markdown
162
- ## v[Version] [Name] (Shipped: YYYY-MM-DD)
163
-
164
- **Delivered:** [One sentence from user]
165
-
166
- **Phases completed:** [X-Y] ([Z] plans total)
167
-
168
- **Key accomplishments:**
169
-
170
- - [List from previous step]
171
-
172
- **Stats:**
173
-
174
- - [Files] files created/modified
175
- - [LOC] lines of [language]
176
- - [Phases] phases, [Plans] plans, [Tasks] tasks
177
- - [Days] days from [start] to ship
178
-
179
- **Git range:** `feat(XX-XX)` → `feat(YY-YY)`
180
-
181
- **What's next:** [Ask user: what's the next goal?]
182
-
183
- ---
184
- ```
185
-
186
- </step>
187
-
188
- <step name="evolve_project_full_review">
189
-
190
- Full PROJECT.md evolution review at milestone completion.
191
-
192
- Read all phase summaries:
193
-
194
- ```bash
195
- cat .planning/phases/*-*/*-SUMMARY.md
196
- ```
197
-
198
- **Full review checklist:**
199
-
200
- 1. **"What This Is" accuracy:**
201
- - Compare current description to what was built
202
- - Update if product has meaningfully changed
203
-
204
- 2. **Core Value check:**
205
- - Still the right priority? Did shipping reveal a different core value?
206
- - Update if the ONE thing has shifted
207
-
208
- 3. **Requirements audit:**
209
-
210
- **Validated section:**
211
- - All Active requirements shipped this milestone → Move to Validated
212
- - Format: `- ✓ [Requirement] — v[X.Y]`
213
-
214
- **Active section:**
215
- - Remove requirements moved to Validated
216
- - Add new requirements for next milestone
217
- - Keep unaddressed requirements
218
-
219
- **Out of Scope audit:**
220
- - Review each item — reasoning still valid?
221
- - Remove irrelevant items
222
- - Add requirements invalidated during milestone
223
-
224
- 4. **Context update:**
225
- - Current codebase state (LOC, tech stack)
226
- - User feedback themes (if any)
227
- - Known issues or technical debt
228
-
229
- 5. **Key Decisions audit:**
230
- - Extract all decisions from milestone phase summaries
231
- - Add to Key Decisions table with outcomes
232
- - Mark ✓ Good, ⚠️ Revisit, or — Pending
233
-
234
- 6. **Constraints check:**
235
- - Any constraints changed during development? Update as needed
236
-
237
- Update PROJECT.md inline. Update "Last updated" footer:
238
-
239
- ```markdown
240
- ---
241
- *Last updated: [date] after v[X.Y] milestone*
242
- ```
243
-
244
- **Example full evolution (v1.0 → v1.1 prep):**
245
-
246
- Before:
247
-
248
- ```markdown
249
- ## What This Is
250
-
251
- A real-time collaborative whiteboard for remote teams.
252
-
253
- ## Core Value
254
-
255
- Real-time sync that feels instant.
256
-
257
- ## Requirements
258
-
259
- ### Validated
260
-
261
- (None yet — ship to validate)
262
-
263
- ### Active
264
-
265
- - [ ] Canvas drawing tools
266
- - [ ] Real-time sync < 500ms
267
- - [ ] User authentication
268
- - [ ] Export to PNG
269
-
270
- ### Out of Scope
271
-
272
- - Mobile app — web-first approach
273
- - Video chat — use external tools
274
- ```
275
-
276
- After v1.0:
277
-
278
- ```markdown
279
- ## What This Is
280
-
281
- A real-time collaborative whiteboard for remote teams with instant sync and drawing tools.
282
-
283
- ## Core Value
284
-
285
- Real-time sync that feels instant.
286
-
287
- ## Requirements
288
-
289
- ### Validated
290
-
291
- - ✓ Canvas drawing tools — v1.0
292
- - ✓ Real-time sync < 500ms — v1.0 (achieved 200ms avg)
293
- - ✓ User authentication — v1.0
294
-
295
- ### Active
296
-
297
- - [ ] Export to PNG
298
- - [ ] Undo/redo history
299
- - [ ] Shape tools (rectangles, circles)
300
-
301
- ### Out of Scope
302
-
303
- - Mobile app — web-first approach, PWA works well
304
- - Video chat — use external tools
305
- - Offline mode — real-time is core value
306
-
307
- ## Context
308
-
309
- Shipped v1.0 with 2,400 LOC TypeScript.
310
- Tech stack: Next.js, Supabase, Canvas API.
311
- Initial user testing showed demand for shape tools.
312
- ```
313
-
314
- **Step complete when:**
315
-
316
- - [ ] "What This Is" reviewed and updated if needed
317
- - [ ] Core Value verified as still correct
318
- - [ ] All shipped requirements moved to Validated
319
- - [ ] New requirements added to Active for next milestone
320
- - [ ] Out of Scope reasoning audited
321
- - [ ] Context updated with current state
322
- - [ ] All milestone decisions added to Key Decisions
323
- - [ ] "Last updated" footer reflects milestone completion
324
-
325
- </step>
326
-
327
- <step name="reorganize_roadmap">
328
-
329
- Update `.planning/ROADMAP.md` — group completed milestone phases:
330
-
331
- ```markdown
332
- # Roadmap: [Project Name]
333
-
334
- ## Milestones
335
-
336
- - ✅ **v1.0 MVP** — Phases 1-4 (shipped YYYY-MM-DD)
337
- - 🚧 **v1.1 Security** — Phases 5-6 (in progress)
338
- - 📋 **v2.0 Redesign** — Phases 7-10 (planned)
339
-
340
- ## Phases
341
-
342
- <details>
343
- <summary>✅ v1.0 MVP (Phases 1-4) — SHIPPED YYYY-MM-DD</summary>
344
-
345
- - [x] Phase 1: Foundation (2/2 plans) — completed YYYY-MM-DD
346
- - [x] Phase 2: Authentication (2/2 plans) — completed YYYY-MM-DD
347
- - [x] Phase 3: Core Features (3/3 plans) — completed YYYY-MM-DD
348
- - [x] Phase 4: Polish (1/1 plan) — completed YYYY-MM-DD
349
-
350
- </details>
351
-
352
- ### 🚧 v[Next] [Name] (In Progress / Planned)
353
-
354
- - [ ] Phase 5: [Name] ([N] plans)
355
- - [ ] Phase 6: [Name] ([N] plans)
356
-
357
- ## Progress
358
-
359
- | Phase | Milestone | Plans Complete | Status | Completed |
360
- | ----------------- | --------- | -------------- | ----------- | ---------- |
361
- | 1. Foundation | v1.0 | 2/2 | Complete | YYYY-MM-DD |
362
- | 2. Authentication | v1.0 | 2/2 | Complete | YYYY-MM-DD |
363
- | 3. Core Features | v1.0 | 3/3 | Complete | YYYY-MM-DD |
364
- | 4. Polish | v1.0 | 1/1 | Complete | YYYY-MM-DD |
365
- | 5. Security Audit | v1.1 | 0/1 | Not started | - |
366
- | 6. Hardening | v1.1 | 0/2 | Not started | - |
367
- ```
368
-
369
- </step>
370
-
371
- <step name="archive_milestone">
372
-
373
- Extract completed milestone details to archive.
374
-
375
- 1. Create `.planning/milestones/v[X.Y]-ROADMAP.md`
376
- 2. Read `/home/qualia/.claude/qualia-framework/templates/milestone-archive.md` template
377
- 3. Extract from ROADMAP.md: all phases in milestone (by number range), full phase details, plan lists with checkmarks
378
- 4. Extract from PROJECT.md: key decisions, validated requirements
379
- 5. Fill template placeholders: {{VERSION}}, {{MILESTONE_NAME}}, {{DATE}}, {{PHASE_START}}, {{PHASE_END}}, {{TOTAL_PLANS}}, {{MILESTONE_DESCRIPTION}}, {{PHASES_SECTION}}, {{DECISIONS_FROM_PROJECT}}, {{ISSUES_RESOLVED_DURING_MILESTONE}}
380
- 6. Write to `.planning/milestones/v[X.Y]-ROADMAP.md`
381
- 7. Delete ROADMAP.md:
382
- ```bash
383
- rm .planning/ROADMAP.md
384
- ```
385
- 8. Verify:
386
- ```bash
387
- ls .planning/milestones/v[X.Y]-ROADMAP.md
388
- ```
389
- 9. Confirm:
390
- ```
391
- ✅ v[X.Y] roadmap archived to milestones/v[X.Y]-ROADMAP.md
392
- ✅ ROADMAP.md deleted (fresh one for next milestone)
393
- ```
394
-
395
- **Note:** Phase directories (`.planning/phases/`) are NOT deleted — they accumulate across milestones as raw execution history. Phase numbering continues (v1.0 phases 1-4, v1.1 phases 5-8, etc.).
396
-
397
- </step>
398
-
399
- <step name="archive_requirements">
400
-
401
- Archive requirements for next milestone.
402
-
403
- 1. Read REQUIREMENTS.md:
404
- ```bash
405
- cat .planning/REQUIREMENTS.md
406
- ```
407
-
408
- 2. Create `.planning/milestones/v[X.Y]-REQUIREMENTS.md`
409
-
410
- 3. Transform: mark all requirements `[x]` complete, add outcome notes, update traceability table to "Complete", add milestone summary (total shipped, scope changes, drops)
411
-
412
- 4. Write archive with header:
413
- ```markdown
414
- # Requirements Archive: v[X.Y] [Milestone Name]
415
-
416
- **Archived:** [DATE]
417
- **Status:** ✅ SHIPPED
418
-
419
- For current requirements, see `.planning/REQUIREMENTS.md`.
420
-
421
- ---
422
-
423
- [Full REQUIREMENTS.md content with checkboxes marked complete]
424
-
425
- ---
426
-
427
- ## Milestone Summary
428
-
429
- **Shipped:** [X] of [Y] requirements
430
- **Adjusted:** [list any that changed]
431
- **Dropped:** [list any removed and why]
432
-
433
- ---
434
- *Archived: [DATE] as part of v[X.Y] milestone completion*
435
- ```
436
-
437
- 5. Delete original:
438
- ```bash
439
- rm .planning/REQUIREMENTS.md
440
- ```
441
-
442
- 6. Confirm:
443
- ```
444
- ✅ Requirements archived to milestones/v[X.Y]-REQUIREMENTS.md
445
- ✅ REQUIREMENTS.md deleted (fresh one for next milestone)
446
- ```
447
-
448
- **Note:** Next milestone starts with `/qualia:new-milestone` which includes requirements definition. PROJECT.md's Validated section carries cumulative record across milestones.
449
-
450
- </step>
451
-
452
- <step name="generate_changelog">
453
-
454
- Generate or update CHANGELOG.md at project root.
455
-
456
- ```bash
457
- [ -f CHANGELOG.md ] && echo "EXISTS" || echo "NEW"
458
- ```
459
-
460
- **New entry format:**
461
- ```markdown
462
- ## [v{VERSION}] — YYYY-MM-DD
463
-
464
- ### What Shipped
465
- - {accomplishment 1 — from extract_accomplishments}
466
- - {accomplishment 2}
467
- - {accomplishment 3}
468
- - {accomplishment 4}
469
-
470
- ### By Phase
471
- - Phase {X}: {one-liner from SUMMARY.md}
472
- - Phase {Y}: {one-liner}
473
-
474
- ### Stats
475
- {phases} phases, {plans} plans, {files} files changed, {days} days
476
- ```
477
-
478
- **Sources:** Reuse `accomplishments[]` from extract_accomplishments step and phase one-liners from gather_stats.
479
-
480
- **If CHANGELOG.md exists:** Prepend new entry (newest first). Keep all previous entries.
481
- **If new:** Create with `# Changelog\n\n` header then the entry.
482
-
483
- Include CHANGELOG.md in the final git commit file list.
484
-
485
- </step>
486
-
487
- <step name="archive_audit">
488
-
489
- Move audit file to archive (if exists). Use init context or check directly:
490
-
491
- ```bash
492
- # Check if audit file exists
493
- [ -f ".planning/v[X.Y]-MILESTONE-AUDIT.md" ] && mv .planning/v[X.Y]-MILESTONE-AUDIT.md .planning/milestones/
494
- ```
495
-
496
- Confirm: `✅ Audit archived to milestones/v[X.Y]-MILESTONE-AUDIT.md`
497
-
498
- Skip silently if no audit file — audit is optional.
499
-
500
- </step>
501
-
502
- <step name="archive_and_reset_state">
503
-
504
- Archive current STATE.md decisions into the milestone archive, then reset for the next milestone.
505
- This prevents STATE.md from growing unbounded across milestones.
506
-
507
- **1. Archive STATE.md to milestone directory:**
508
-
509
- ```bash
510
- cp .planning/STATE.md .planning/milestones/v[X.Y]-STATE.md
511
- ```
512
-
513
- Confirm: `✅ STATE.md archived to milestones/v[X.Y]-STATE.md`
514
-
515
- **2. Reset STATE.md to a clean template:**
516
-
517
- Preserve the project header and position section but clear accumulated decisions, blockers, and quick tasks.
518
-
519
- Write a fresh STATE.md:
520
-
521
- ```markdown
522
- # State: [Project Name]
523
-
524
- ## Project Reference
525
-
526
- See: .planning/PROJECT.md (updated [today])
527
-
528
- **Core value:** [Current core value from PROJECT.md]
529
- **Current focus:** Planning next milestone
530
-
531
- ## Current Position
532
-
533
- Phase: [Next phase number] of [Total] (Not started)
534
- Plan: Not started
535
- Status: Ready to plan
536
- Last activity: [today] — v[X.Y] milestone complete, STATE.md reset
537
-
538
- Progress: [updated progress bar]
539
-
540
- ## Accumulated Context
541
-
542
- ### Key Decisions
543
- | # | Decision | Rationale | Date |
544
- |---|----------|-----------|------|
545
- | | | | |
546
-
547
- ### Blockers/Concerns
548
- (None — fresh milestone)
549
-
550
- ### Quick Tasks Completed
551
-
552
- | # | Description | Date | Commit | Directory |
553
- |---|-------------|------|--------|-----------|
554
- ```
555
-
556
- Note: The full decision history is preserved in:
557
- - `.planning/milestones/v[X.Y]-STATE.md` (raw archive)
558
- - `.planning/PROJECT.md` Key Decisions table (curated)
559
-
560
- </step>
561
-
562
- <step name="update_state">
563
-
564
- Update STATE.md for milestone completion.
565
-
566
- **Project Reference:**
567
-
568
- ```markdown
569
- ## Project Reference
570
-
571
- See: .planning/PROJECT.md (updated [today])
572
-
573
- **Core value:** [Current core value from PROJECT.md]
574
- **Current focus:** [Next milestone or "Planning next milestone"]
575
- ```
576
-
577
- **Current Position:**
578
-
579
- ```markdown
580
- Phase: [Next phase] of [Total] ([Phase name])
581
- Plan: Not started
582
- Status: Ready to plan
583
- Last activity: [today] — v[X.Y] milestone complete
584
-
585
- Progress: [updated progress bar]
586
- ```
587
-
588
- **Accumulated Context:**
589
- - Clear decisions summary (full log in PROJECT.md)
590
- - Clear resolved blockers
591
- - Keep open blockers for next milestone
592
-
593
- </step>
594
-
595
- <step name="handle_branches">
596
-
597
- Check branching strategy and offer merge options.
598
-
599
- Use `init milestone-op` for context, or load config directly:
600
-
601
- ```bash
602
- INIT=$(node /home/qualia/.claude/qualia-framework/bin/qualia-tools.js init execute-phase "1")
603
- ```
604
-
605
- Extract `branching_strategy`, `phase_branch_template`, `milestone_branch_template` from init JSON.
606
-
607
- **If "none":** Skip to git_tag.
608
-
609
- **For "phase" strategy:**
610
-
611
- ```bash
612
- BRANCH_PREFIX=$(echo "$PHASE_BRANCH_TEMPLATE" | sed 's/{.*//')
613
- PHASE_BRANCHES=$(git branch --list "${BRANCH_PREFIX}*" 2>/dev/null | sed 's/^\*//' | tr -d ' ')
614
- ```
615
-
616
- **For "milestone" strategy:**
617
-
618
- ```bash
619
- BRANCH_PREFIX=$(echo "$MILESTONE_BRANCH_TEMPLATE" | sed 's/{.*//')
620
- MILESTONE_BRANCH=$(git branch --list "${BRANCH_PREFIX}*" 2>/dev/null | sed 's/^\*//' | tr -d ' ' | head -1)
621
- ```
622
-
623
- **If no branches found:** Skip to git_tag.
624
-
625
- **If branches exist:**
626
-
627
- ```
628
- ## Git Branches Detected
629
-
630
- Branching strategy: {phase/milestone}
631
- Branches: {list}
632
-
633
- Options:
634
- 1. **Merge to main** — Merge branch(es) to main
635
- 2. **Delete without merging** — Already merged or not needed
636
- 3. **Keep branches** — Leave for manual handling
637
- ```
638
-
639
- AskUserQuestion with options: Squash merge (Recommended), Merge with history, Delete without merging, Keep branches.
640
-
641
- **Squash merge:**
642
-
643
- ```bash
644
- CURRENT_BRANCH=$(git branch --show-current)
645
- git checkout main
646
-
647
- if [ "$BRANCHING_STRATEGY" = "phase" ]; then
648
- for branch in $PHASE_BRANCHES; do
649
- git merge --squash "$branch"
650
- git commit -m "feat: $branch for v[X.Y]"
651
- done
652
- fi
653
-
654
- if [ "$BRANCHING_STRATEGY" = "milestone" ]; then
655
- git merge --squash "$MILESTONE_BRANCH"
656
- git commit -m "feat: $MILESTONE_BRANCH for v[X.Y]"
657
- fi
658
-
659
- git checkout "$CURRENT_BRANCH"
660
- ```
661
-
662
- **Merge with history:**
663
-
664
- ```bash
665
- CURRENT_BRANCH=$(git branch --show-current)
666
- git checkout main
667
-
668
- if [ "$BRANCHING_STRATEGY" = "phase" ]; then
669
- for branch in $PHASE_BRANCHES; do
670
- git merge --no-ff "$branch" -m "Merge branch '$branch' for v[X.Y]"
671
- done
672
- fi
673
-
674
- if [ "$BRANCHING_STRATEGY" = "milestone" ]; then
675
- git merge --no-ff "$MILESTONE_BRANCH" -m "Merge branch '$MILESTONE_BRANCH' for v[X.Y]"
676
- fi
677
-
678
- git checkout "$CURRENT_BRANCH"
679
- ```
680
-
681
- **Delete without merging:**
682
-
683
- ```bash
684
- if [ "$BRANCHING_STRATEGY" = "phase" ]; then
685
- for branch in $PHASE_BRANCHES; do
686
- git branch -d "$branch" 2>/dev/null || git branch -D "$branch"
687
- done
688
- fi
689
-
690
- if [ "$BRANCHING_STRATEGY" = "milestone" ]; then
691
- git branch -d "$MILESTONE_BRANCH" 2>/dev/null || git branch -D "$MILESTONE_BRANCH"
692
- fi
693
- ```
694
-
695
- **Keep branches:** Report "Branches preserved for manual handling"
696
-
697
- </step>
698
-
699
- <step name="production_deploy">
700
-
701
- **Deploy the milestone to production before tagging.**
702
-
703
- This ensures the git tag marks code that's actually live — not just code that's done locally.
704
-
705
- ```
706
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
707
- Qualia ► PRODUCTION DEPLOY
708
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
709
- ```
710
-
711
- **Detect project type from PROJECT.md/package.json:**
712
-
713
- | Project Type | Deploy Command |
714
- |-------------|----------------|
715
- | Next.js / Vercel | `/ship-website` |
716
- | AI Agent | `/ship-agent` |
717
- | Voice Agent | `/ship-voice` |
718
- | Mobile App (Expo) | `eas build` + `eas submit` |
719
- | Generic | `/ship` |
720
-
721
- Use AskUserQuestion:
722
- - header: "Deploy"
723
- - question: "Deploy v{version} to production now?"
724
- - options:
725
- - "Deploy now (Recommended)" — Run the full ship pipeline (quality gates → preview → production → verify)
726
- - "Already deployed" — I deployed manually, just tag and archive
727
- - "Skip deploy" — Tag and archive without deploying (e.g., staging only)
728
-
729
- **If "Deploy now":**
730
-
731
- Run the appropriate `/ship-*` command. This handles:
732
- - Quality gates (tsc, eslint, build)
733
- - Preview deploy + verification
734
- - Production deploy
735
- - Post-deploy verification (HTTP 200, auth, latency, console errors)
736
- - Supabase migration safety (if applicable)
737
-
738
- **If deploy fails:** Stop milestone completion. Fix the issue, re-run `/ship-*`, then resume with `/qualia:complete-milestone`.
739
-
740
- **If "Already deployed" or "Skip deploy":** Continue to git_tag.
741
-
742
- </step>
743
-
744
- <step name="git_tag">
745
-
746
- Create git tag:
747
-
748
- ```bash
749
- git tag -a v[X.Y] -m "$(cat <<'EOF'
750
- v[X.Y] [Name]
751
-
752
- Delivered: [One sentence]
753
-
754
- Key accomplishments:
755
- - [Item 1]
756
- - [Item 2]
757
- - [Item 3]
758
-
759
- See .planning/MILESTONES.md for full details.
760
- EOF
761
- )"
762
- ```
763
-
764
- Confirm: "Tagged: v[X.Y]"
765
-
766
- Ask: "Push tag to remote? (y/n)"
767
-
768
- If yes:
769
- ```bash
770
- git push origin v[X.Y]
771
- ```
772
-
773
- </step>
774
-
775
- <step name="git_commit_milestone">
776
-
777
- Commit milestone completion.
778
-
779
- ```bash
780
- node /home/qualia/.claude/qualia-framework/bin/qualia-tools.js commit "chore: complete v[X.Y] milestone" --files .planning/milestones/v[X.Y]-ROADMAP.md .planning/milestones/v[X.Y]-REQUIREMENTS.md .planning/milestones/v[X.Y]-MILESTONE-AUDIT.md .planning/MILESTONES.md .planning/PROJECT.md .planning/STATE.md
781
- ```
782
- ```
783
-
784
- Confirm: "Committed: chore: complete v[X.Y] milestone"
785
-
786
- </step>
787
-
788
- <step name="offer_next">
789
-
790
- ```
791
- ✅ Milestone v[X.Y] [Name] complete
792
-
793
- Shipped:
794
- - [N] phases ([M] plans, [P] tasks)
795
- - [One sentence of what shipped]
796
-
797
- Archived:
798
- - milestones/v[X.Y]-ROADMAP.md
799
- - milestones/v[X.Y]-REQUIREMENTS.md
800
-
801
- Summary: .planning/MILESTONES.md
802
- Tag: v[X.Y]
803
-
804
- ---
805
-
806
- ## ▶ Next Up
807
-
808
- **Start Next Milestone** — questioning → research → requirements → roadmap
809
-
810
- `/clear` then `/qualia:new-milestone`
811
-
812
- ---
813
- ```
814
-
815
- </step>
816
-
817
- </process>
818
-
819
- <milestone_naming>
820
-
821
- **Version conventions:**
822
- - **v1.0** — Initial MVP
823
- - **v1.1, v1.2** — Minor updates, new features, fixes
824
- - **v2.0, v3.0** — Major rewrites, breaking changes, new direction
825
-
826
- **Names:** Short 1-2 words (v1.0 MVP, v1.1 Security, v1.2 Performance, v2.0 Redesign).
827
-
828
- </milestone_naming>
829
-
830
- <what_qualifies>
831
-
832
- **Create milestones for:** Initial release, public releases, major feature sets shipped, before archiving planning.
833
-
834
- **Don't create milestones for:** Every phase completion (too granular), work in progress, internal dev iterations (unless truly shipped).
835
-
836
- Heuristic: "Is this deployed/usable/shipped?" If yes → milestone. If no → keep working.
837
-
838
- </what_qualifies>
839
-
840
- <success_criteria>
841
-
842
- Milestone completion is successful when:
843
-
844
- - [ ] MILESTONES.md entry created with stats and accomplishments
845
- - [ ] PROJECT.md full evolution review completed
846
- - [ ] All shipped requirements moved to Validated in PROJECT.md
847
- - [ ] Key Decisions updated with outcomes
848
- - [ ] ROADMAP.md reorganized with milestone grouping
849
- - [ ] Roadmap archive created (milestones/v[X.Y]-ROADMAP.md)
850
- - [ ] Requirements archive created (milestones/v[X.Y]-REQUIREMENTS.md)
851
- - [ ] REQUIREMENTS.md deleted (fresh for next milestone)
852
- - [ ] STATE.md archived to milestones/v[X.Y]-STATE.md
853
- - [ ] STATE.md reset to clean template for next milestone
854
- - [ ] Git tag created (v[X.Y])
855
- - [ ] Milestone commit made (includes archive files and deletion)
856
- - [ ] User knows next step (/qualia:new-milestone)
857
-
858
- </success_criteria>