@luanpdd/kit-mcp 1.30.2 → 1.31.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 (347) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +168 -168
  3. package/gates/agent-no-recursive-dispatch.md +84 -82
  4. package/kit/COMANDOS.md +138 -138
  5. package/kit/README.md +76 -76
  6. package/kit/agents/advisor-researcher.md +107 -106
  7. package/kit/agents/ai-mutation-tester.md +1 -0
  8. package/kit/agents/assumptions-analyzer.md +108 -107
  9. package/kit/agents/audit-log-implementer.md +314 -313
  10. package/kit/agents/auditor-consistencia-isolamento.md +414 -413
  11. package/kit/agents/b2b-saas-architect.md +157 -156
  12. package/kit/agents/burn-rate-forecaster.md +1 -0
  13. package/kit/agents/cascading-failures-auditor.md +299 -298
  14. package/kit/agents/codebase-mapper.md +769 -768
  15. package/kit/agents/crm-pipeline-implementer.md +257 -256
  16. package/kit/agents/debugger.md +814 -813
  17. package/kit/agents/detector-tenant-quente.md +338 -337
  18. package/kit/agents/evolution-go-integrator.md +201 -200
  19. package/kit/agents/example-reviewer.md +22 -21
  20. package/kit/agents/executor.md +565 -564
  21. package/kit/agents/golden-signals-instrumenter.md +1 -0
  22. package/kit/agents/incident-investigator.md +1 -0
  23. package/kit/agents/integration-checker.md +201 -200
  24. package/kit/agents/invite-flow-implementer.md +190 -189
  25. package/kit/agents/legacy-characterizer.md +369 -368
  26. package/kit/agents/lgpd-compliance-auditor.md +296 -295
  27. package/kit/agents/load-shedding-instrumenter.md +1 -0
  28. package/kit/agents/multi-tenant-isolation-auditor.md +254 -253
  29. package/kit/agents/multi-tenant-rls-writer.md +341 -340
  30. package/kit/agents/nyquist-auditor.md +179 -178
  31. package/kit/agents/observability-coverage-auditor.md +316 -315
  32. package/kit/agents/observability-instrumenter.md +1 -0
  33. package/kit/agents/omm-auditor.md +1 -0
  34. package/kit/agents/org-onboarding-implementer.md +224 -223
  35. package/kit/agents/payload-capture-instrumenter.md +274 -273
  36. package/kit/agents/phase-researcher.md +697 -696
  37. package/kit/agents/plan-checker.md +273 -272
  38. package/kit/agents/planner.md +923 -922
  39. package/kit/agents/postmortem-writer.md +1 -0
  40. package/kit/agents/project-researcher.md +653 -652
  41. package/kit/agents/prr-conductor.md +1 -0
  42. package/kit/agents/refactor-safety-auditor.md +405 -404
  43. package/kit/agents/release-pipeline-auditor.md +1 -0
  44. package/kit/agents/research-synthesizer.md +246 -245
  45. package/kit/agents/roadmapper.md +678 -677
  46. package/kit/agents/schema-checker.md +1 -0
  47. package/kit/agents/seam-finder.md +360 -359
  48. package/kit/agents/shotgun-surgery-detector.md +350 -349
  49. package/kit/agents/slo-engineer.md +1 -0
  50. package/kit/agents/storytelling-analyst.md +1 -0
  51. package/kit/agents/supabase-architect.md +1 -0
  52. package/kit/agents/supabase-auth-bootstrapper.md +1 -0
  53. package/kit/agents/supabase-branching-architect.md +563 -562
  54. package/kit/agents/supabase-cicd-pipeline-implementer.md +778 -777
  55. package/kit/agents/supabase-column-privileges-writer.md +400 -399
  56. package/kit/agents/supabase-edge-fn-tester.md +2 -1
  57. package/kit/agents/supabase-edge-fn-writer.md +2 -1
  58. package/kit/agents/supabase-migration-writer.md +386 -385
  59. package/kit/agents/supabase-rbac-implementer.md +393 -392
  60. package/kit/agents/supabase-realtime-implementer.md +364 -363
  61. package/kit/agents/supabase-rls-hardener.md +522 -521
  62. package/kit/agents/supabase-rls-writer.md +324 -323
  63. package/kit/agents/supabase-roles-implementer.md +356 -355
  64. package/kit/agents/supabase-storage-implementer.md +1 -0
  65. package/kit/agents/super-admin-implementer.md +282 -281
  66. package/kit/agents/toil-auditor.md +1 -0
  67. package/kit/agents/ui-auditor.md +438 -437
  68. package/kit/agents/ui-checker.md +303 -302
  69. package/kit/agents/ui-researcher.md +356 -355
  70. package/kit/agents/user-profiler.md +176 -175
  71. package/kit/agents/validador-evolucao-schema.md +336 -335
  72. package/kit/agents/verifier.md +729 -728
  73. package/kit/commands/adicionar-backlog.md +75 -75
  74. package/kit/commands/adicionar-fase.md +42 -42
  75. package/kit/commands/adicionar-tarefa.md +45 -45
  76. package/kit/commands/adicionar-testes.md +41 -41
  77. package/kit/commands/ajuda.md +21 -21
  78. package/kit/commands/atualizar.md +37 -37
  79. package/kit/commands/auditar-cascading.md +111 -111
  80. package/kit/commands/auditar-marco.md +179 -179
  81. package/kit/commands/auditar-observabilidade-cobertura.md +183 -183
  82. package/kit/commands/auditar-refactor.md +219 -219
  83. package/kit/commands/auditar-release.md +109 -109
  84. package/kit/commands/auditar-uat.md +23 -23
  85. package/kit/commands/autonomo.md +40 -40
  86. package/kit/commands/branch-pr.md +24 -24
  87. package/kit/commands/burn-rate-status.md +408 -408
  88. package/kit/commands/capturar-payloads.md +193 -193
  89. package/kit/commands/caracterizar.md +212 -212
  90. package/kit/commands/concluir-marco.md +247 -247
  91. package/kit/commands/configuracoes.md +36 -36
  92. package/kit/commands/dados-distribuidos.md +188 -188
  93. package/kit/commands/definir-perfil.md +10 -10
  94. package/kit/commands/depurar.md +190 -190
  95. package/kit/commands/detectar-duplicacao.md +197 -197
  96. package/kit/commands/discutir-fase.md +131 -131
  97. package/kit/commands/encontrar-seams.md +136 -136
  98. package/kit/commands/entrar-discord.md +17 -17
  99. package/kit/commands/estatisticas.md +18 -18
  100. package/kit/commands/example-greeting.md +33 -33
  101. package/kit/commands/executar-fase.md +58 -58
  102. package/kit/commands/expresso.md +56 -56
  103. package/kit/commands/fase-ui.md +34 -34
  104. package/kit/commands/fazer.md +57 -57
  105. package/kit/commands/fio.md +125 -125
  106. package/kit/commands/fluxos-trabalho.md +64 -64
  107. package/kit/commands/forense.md +176 -176
  108. package/kit/commands/gerenciador.md +38 -38
  109. package/kit/commands/inserir-fase.md +31 -31
  110. package/kit/commands/legacy.md +263 -263
  111. package/kit/commands/limpeza.md +17 -17
  112. package/kit/commands/listar-hipoteses-fase.md +45 -45
  113. package/kit/commands/listar-workspaces.md +18 -18
  114. package/kit/commands/load-shedding.md +117 -117
  115. package/kit/commands/mapear-codebase.md +70 -70
  116. package/kit/commands/multi-tenant.md +163 -163
  117. package/kit/commands/nota.md +33 -33
  118. package/kit/commands/novo-marco.md +43 -43
  119. package/kit/commands/novo-projeto.md +41 -41
  120. package/kit/commands/novo-workspace.md +43 -43
  121. package/kit/commands/pausar-trabalho.md +37 -37
  122. package/kit/commands/perfil-usuario.md +45 -45
  123. package/kit/commands/pesquisar-fase.md +195 -195
  124. package/kit/commands/planejar-fase.md +67 -67
  125. package/kit/commands/planejar-lacunas.md +33 -33
  126. package/kit/commands/plantar-ideia.md +25 -25
  127. package/kit/commands/progresso.md +24 -24
  128. package/kit/commands/proximo.md +30 -30
  129. package/kit/commands/publicar.md +490 -490
  130. package/kit/commands/rapido.md +35 -35
  131. package/kit/commands/reaplicar-patches.md +124 -124
  132. package/kit/commands/refactor-seguro.md +321 -321
  133. package/kit/commands/relatorio-sessao.md +19 -19
  134. package/kit/commands/remover-fase.md +31 -31
  135. package/kit/commands/remover-workspace.md +26 -26
  136. package/kit/commands/resumo-marco.md +50 -50
  137. package/kit/commands/retomar-trabalho.md +40 -40
  138. package/kit/commands/revisar-backlog.md +60 -60
  139. package/kit/commands/revisar-ui.md +32 -32
  140. package/kit/commands/revisar.md +37 -37
  141. package/kit/commands/saude.md +21 -21
  142. package/kit/commands/setup-notion.md +93 -93
  143. package/kit/commands/storytelling.md +179 -179
  144. package/kit/commands/sync-main.md +68 -68
  145. package/kit/commands/validar-fase.md +35 -35
  146. package/kit/commands/verificar-tarefas.md +44 -44
  147. package/kit/commands/verificar-trabalho.md +64 -64
  148. package/kit/file-manifest.json +82 -81
  149. package/kit/framework/bin/lib/commands.cjs +959 -959
  150. package/kit/framework/bin/lib/config.cjs +442 -442
  151. package/kit/framework/bin/lib/core.cjs +1230 -1230
  152. package/kit/framework/bin/lib/frontmatter.cjs +336 -336
  153. package/kit/framework/bin/lib/init.cjs +1442 -1442
  154. package/kit/framework/bin/lib/milestone.cjs +252 -252
  155. package/kit/framework/bin/lib/model-profiles.cjs +68 -68
  156. package/kit/framework/bin/lib/phase.cjs +888 -888
  157. package/kit/framework/bin/lib/profile-output.cjs +952 -952
  158. package/kit/framework/bin/lib/profile-pipeline.cjs +539 -539
  159. package/kit/framework/bin/lib/roadmap.cjs +329 -329
  160. package/kit/framework/bin/lib/security.cjs +382 -382
  161. package/kit/framework/bin/lib/state.cjs +1031 -1031
  162. package/kit/framework/bin/lib/template.cjs +222 -222
  163. package/kit/framework/bin/lib/uat.cjs +282 -282
  164. package/kit/framework/bin/lib/verify.cjs +888 -888
  165. package/kit/framework/bin/lib/workstream.cjs +491 -491
  166. package/kit/framework/bin/tools.cjs +918 -918
  167. package/kit/framework/commands/workstreams.md +63 -63
  168. package/kit/framework/references/checkpoints.md +778 -778
  169. package/kit/framework/references/continuation-format.md +249 -249
  170. package/kit/framework/references/decimal-phase-calculation.md +64 -64
  171. package/kit/framework/references/git-integration.md +295 -295
  172. package/kit/framework/references/git-planning-commit.md +38 -38
  173. package/kit/framework/references/model-profile-resolution.md +36 -36
  174. package/kit/framework/references/model-profiles.md +139 -139
  175. package/kit/framework/references/phase-argument-parsing.md +61 -61
  176. package/kit/framework/references/planning-config.md +202 -202
  177. package/kit/framework/references/questioning.md +162 -162
  178. package/kit/framework/references/tdd.md +263 -263
  179. package/kit/framework/references/ui-brand.md +160 -160
  180. package/kit/framework/references/user-profiling.md +657 -657
  181. package/kit/framework/references/verification-patterns.md +612 -612
  182. package/kit/framework/references/workstream-flag.md +58 -58
  183. package/kit/framework/templates/DEBUG.md +164 -164
  184. package/kit/framework/templates/UAT.md +265 -265
  185. package/kit/framework/templates/UI-SPEC.md +100 -100
  186. package/kit/framework/templates/VALIDATION.md +76 -76
  187. package/kit/framework/templates/claude-md.md +122 -122
  188. package/kit/framework/templates/codebase/architecture.md +185 -185
  189. package/kit/framework/templates/codebase/concerns.md +205 -205
  190. package/kit/framework/templates/codebase/conventions.md +204 -204
  191. package/kit/framework/templates/codebase/integrations.md +192 -192
  192. package/kit/framework/templates/codebase/stack.md +158 -158
  193. package/kit/framework/templates/codebase/structure.md +199 -199
  194. package/kit/framework/templates/codebase/testing.md +301 -301
  195. package/kit/framework/templates/config.json +44 -44
  196. package/kit/framework/templates/context.md +352 -352
  197. package/kit/framework/templates/continue-here.md +78 -78
  198. package/kit/framework/templates/copilot-instructions.md +7 -7
  199. package/kit/framework/templates/debug-subagent-prompt.md +91 -91
  200. package/kit/framework/templates/dev-preferences.md +20 -20
  201. package/kit/framework/templates/discovery.md +146 -146
  202. package/kit/framework/templates/discussion-log.md +63 -63
  203. package/kit/framework/templates/milestone-archive.md +123 -123
  204. package/kit/framework/templates/milestone.md +115 -115
  205. package/kit/framework/templates/phase-prompt.md +610 -610
  206. package/kit/framework/templates/planner-subagent-prompt.md +117 -117
  207. package/kit/framework/templates/project.md +186 -186
  208. package/kit/framework/templates/requirements.md +231 -231
  209. package/kit/framework/templates/research-project/ARCHITECTURE.md +204 -204
  210. package/kit/framework/templates/research-project/FEATURES.md +147 -147
  211. package/kit/framework/templates/research-project/PITFALLS.md +200 -200
  212. package/kit/framework/templates/research-project/STACK.md +120 -120
  213. package/kit/framework/templates/research-project/SUMMARY.md +170 -170
  214. package/kit/framework/templates/research.md +419 -419
  215. package/kit/framework/templates/retrospective.md +54 -54
  216. package/kit/framework/templates/roadmap.md +202 -202
  217. package/kit/framework/templates/state.md +176 -176
  218. package/kit/framework/templates/summary-complex.md +59 -59
  219. package/kit/framework/templates/summary-minimal.md +41 -41
  220. package/kit/framework/templates/summary-standard.md +48 -48
  221. package/kit/framework/templates/summary.md +209 -209
  222. package/kit/framework/templates/user-profile.md +146 -146
  223. package/kit/framework/templates/user-setup.md +256 -256
  224. package/kit/framework/templates/verification-report.md +258 -258
  225. package/kit/framework/workflows/add-phase.md +112 -112
  226. package/kit/framework/workflows/add-tests.md +351 -351
  227. package/kit/framework/workflows/add-todo.md +158 -158
  228. package/kit/framework/workflows/audit-milestone.md +340 -340
  229. package/kit/framework/workflows/audit-uat.md +109 -109
  230. package/kit/framework/workflows/autonomous.md +891 -891
  231. package/kit/framework/workflows/check-todos.md +177 -177
  232. package/kit/framework/workflows/cleanup.md +152 -152
  233. package/kit/framework/workflows/complete-milestone.md +696 -696
  234. package/kit/framework/workflows/diagnose-issues.md +231 -231
  235. package/kit/framework/workflows/discovery-phase.md +289 -289
  236. package/kit/framework/workflows/discuss-phase-assumptions.md +653 -653
  237. package/kit/framework/workflows/discuss-phase.md +784 -784
  238. package/kit/framework/workflows/do.md +104 -104
  239. package/kit/framework/workflows/execute-phase.md +838 -838
  240. package/kit/framework/workflows/execute-plan.md +510 -510
  241. package/kit/framework/workflows/fast.md +102 -102
  242. package/kit/framework/workflows/forensics.md +265 -265
  243. package/kit/framework/workflows/health.md +181 -181
  244. package/kit/framework/workflows/help.md +619 -619
  245. package/kit/framework/workflows/insert-phase.md +130 -130
  246. package/kit/framework/workflows/list-phase-assumptions.md +178 -178
  247. package/kit/framework/workflows/list-workspaces.md +56 -56
  248. package/kit/framework/workflows/manager.md +362 -362
  249. package/kit/framework/workflows/map-codebase.md +377 -377
  250. package/kit/framework/workflows/milestone-summary.md +223 -223
  251. package/kit/framework/workflows/new-milestone.md +486 -486
  252. package/kit/framework/workflows/new-project.md +1159 -1159
  253. package/kit/framework/workflows/new-workspace.md +237 -237
  254. package/kit/framework/workflows/next.md +97 -97
  255. package/kit/framework/workflows/node-repair.md +92 -92
  256. package/kit/framework/workflows/note.md +156 -156
  257. package/kit/framework/workflows/pause-work.md +176 -176
  258. package/kit/framework/workflows/plan-milestone-gaps.md +273 -273
  259. package/kit/framework/workflows/plan-phase.md +765 -765
  260. package/kit/framework/workflows/plant-seed.md +169 -169
  261. package/kit/framework/workflows/pr-branch.md +129 -129
  262. package/kit/framework/workflows/profile-user.md +450 -450
  263. package/kit/framework/workflows/progress.md +507 -507
  264. package/kit/framework/workflows/quick.md +757 -757
  265. package/kit/framework/workflows/remove-phase.md +155 -155
  266. package/kit/framework/workflows/remove-workspace.md +90 -90
  267. package/kit/framework/workflows/research-phase.md +82 -82
  268. package/kit/framework/workflows/resume-project.md +326 -326
  269. package/kit/framework/workflows/review.md +228 -228
  270. package/kit/framework/workflows/session-report.md +146 -146
  271. package/kit/framework/workflows/settings.md +283 -283
  272. package/kit/framework/workflows/ship.md +228 -228
  273. package/kit/framework/workflows/stats.md +60 -60
  274. package/kit/framework/workflows/transition.md +671 -671
  275. package/kit/framework/workflows/ui-phase.md +302 -302
  276. package/kit/framework/workflows/ui-review.md +165 -165
  277. package/kit/framework/workflows/update.md +323 -323
  278. package/kit/framework/workflows/validate-phase.md +174 -174
  279. package/kit/framework/workflows/verify-phase.md +252 -252
  280. package/kit/framework/workflows/verify-work.md +637 -637
  281. package/kit/hooks/check-update.js +118 -118
  282. package/kit/hooks/context-monitor.js +163 -163
  283. package/kit/hooks/kit-attribution-reminder.cjs +29 -50
  284. package/kit/hooks/kit-router.cjs +137 -0
  285. package/kit/hooks/prompt-guard.js +103 -103
  286. package/kit/hooks/statusline.js +125 -125
  287. package/kit/hooks/workflow-guard.js +101 -101
  288. package/kit/settings.json +45 -45
  289. package/kit/skills/ai-prompt-characterization/SKILL.md +335 -335
  290. package/kit/skills/armadilhas-sistemas-distribuidos/SKILL.md +447 -447
  291. package/kit/skills/audit-log-multi-tenant/SKILL.md +340 -340
  292. package/kit/skills/b2b-saas-architecture/SKILL.md +300 -300
  293. package/kit/skills/consistencia-leitura-replica/SKILL.md +385 -385
  294. package/kit/skills/crm-lead-pipeline-patterns/SKILL.md +343 -343
  295. package/kit/skills/escolha-modelo-consistencia/SKILL.md +494 -494
  296. package/kit/skills/evolucao-schema-compativel/SKILL.md +448 -448
  297. package/kit/skills/evolution-go-whatsapp-integration/SKILL.md +322 -322
  298. package/kit/skills/example-skill/SKILL.md +42 -42
  299. package/kit/skills/legacy-api-only-applications/SKILL.md +358 -358
  300. package/kit/skills/legacy-characterization-tests/SKILL.md +330 -330
  301. package/kit/skills/legacy-effect-analysis/SKILL.md +331 -331
  302. package/kit/skills/legacy-extract-class/SKILL.md +203 -203
  303. package/kit/skills/legacy-programming-by-difference/SKILL.md +252 -252
  304. package/kit/skills/legacy-seams-and-test-harness/SKILL.md +460 -460
  305. package/kit/skills/legacy-shotgun-surgery/SKILL.md +286 -286
  306. package/kit/skills/legacy-sprout-wrap-techniques/SKILL.md +434 -434
  307. package/kit/skills/legacy-storytelling-naked-crc/SKILL.md +270 -270
  308. package/kit/skills/lgpd-multi-tenant-compliance/SKILL.md +340 -340
  309. package/kit/skills/member-invite-flow/SKILL.md +305 -305
  310. package/kit/skills/member-management-react-shadcn/SKILL.md +328 -328
  311. package/kit/skills/multi-tenant-performance-scaling/SKILL.md +316 -316
  312. package/kit/skills/multi-tenant-rls-hierarchy/SKILL.md +342 -342
  313. package/kit/skills/org-onboarding-flow/SKILL.md +257 -257
  314. package/kit/skills/org-switcher-react-pattern/SKILL.md +349 -349
  315. package/kit/skills/permission-gate-react-pattern/SKILL.md +271 -271
  316. package/kit/skills/postgres-isolamento-concorrencia/SKILL.md +552 -552
  317. package/kit/skills/pre-refactor-characterization/SKILL.md +421 -421
  318. package/kit/skills/rbac-permissions-matrix-supabase/SKILL.md +338 -338
  319. package/kit/skills/streams-eventos-cdc/SKILL.md +711 -711
  320. package/kit/skills/supabase-branching-workflow/SKILL.md +544 -544
  321. package/kit/skills/supabase-ci-cd-github-actions/SKILL.md +880 -880
  322. package/kit/skills/supabase-column-level-security/SKILL.md +426 -426
  323. package/kit/skills/supabase-config-toml-remotes/SKILL.md +807 -807
  324. package/kit/skills/supabase-custom-claims-rbac/SKILL.md +472 -472
  325. package/kit/skills/supabase-edge-functions/SKILL.md +1 -1
  326. package/kit/skills/supabase-edge-functions-auth/SKILL.md +1 -1
  327. package/kit/skills/supabase-edge-functions-limits/SKILL.md +1 -1
  328. package/kit/skills/supabase-edge-functions-mcp-server/SKILL.md +1 -1
  329. package/kit/skills/supabase-edge-functions-testing/SKILL.md +1 -1
  330. package/kit/skills/supabase-edge-runtime-builtins/SKILL.md +1 -1
  331. package/kit/skills/supabase-migration-repair/SKILL.md +823 -823
  332. package/kit/skills/supabase-migrations/SKILL.md +297 -297
  333. package/kit/skills/supabase-pgtap-testing/SKILL.md +1053 -1053
  334. package/kit/skills/supabase-postgres-roles/SKILL.md +392 -392
  335. package/kit/skills/supabase-realtime/SKILL.md +460 -460
  336. package/kit/skills/supabase-rls-defense-in-depth/SKILL.md +418 -418
  337. package/kit/skills/supabase-rls-policies/SKILL.md +635 -635
  338. package/kit/skills/super-admin-platform-pattern/SKILL.md +326 -326
  339. package/kit/skills/tenant-quente-mitigacao/SKILL.md +605 -605
  340. package/kit/skills/whatsapp-conversation-state-machine/SKILL.md +287 -287
  341. package/package.json +1 -1
  342. package/src/core/kit.js +216 -216
  343. package/src/core/reflect.js +247 -247
  344. package/src/core/reverse-sync.js +372 -372
  345. package/src/core/sync.js +437 -418
  346. package/src/core/watch.js +121 -121
  347. package/src/mcp-server/index.js +794 -746
@@ -1,696 +1,696 @@
1
- <purpose>
2
-
3
- Marcar uma versão enviada (v1.0, v1.1, v2.0) como completa. Cria registro histórico no MILESTONES.md, realiza revisão completa de evolução do PROJECT.md, reorganiza ROADMAP.md com agrupamentos de milestone e tageia o release no 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
- Quando um milestone é concluído:
20
-
21
- 1. Extrair detalhes completos do milestone para `.planning/milestones/v[X.Y]-ROADMAP.md`
22
- 2. Arquivar requisitos para `.planning/milestones/v[X.Y]-REQUIREMENTS.md`
23
- 3. Atualizar ROADMAP.md — substituir detalhes do milestone por resumo em uma linha
24
- 4. Deletar REQUIREMENTS.md (novo para próximo milestone)
25
- 5. Realizar revisão completa de evolução do PROJECT.md
26
- 6. Oferecer criar próximo milestone inline
27
- 7. Arquivar artefatos UI (`*-UI-SPEC.md`, `*-UI-REVIEW.md`) junto com outros documentos de fase
28
- 8. Limpar arquivos de screenshot `.planning/ui-reviews/` (ativos binários, nunca arquivados)
29
-
30
- **Eficiência de Contexto:** Arquivos mantêm ROADMAP.md de tamanho constante e REQUIREMENTS.md com escopo de milestone.
31
-
32
- **Arquivo ROADMAP** usa `templates/milestone-archive.md` — inclui cabeçalho de milestone (status, fases, data), detalhes completos de fase, resumo do milestone (decisões, issues, dívida técnica).
33
-
34
- **Arquivo REQUIREMENTS** contém todos os requisitos marcados como completos com resultados, tabela de rastreabilidade com status final, notas sobre requisitos alterados.
35
-
36
- </archival_behavior>
37
-
38
- <process>
39
-
40
- <step name="verify_readiness">
41
-
42
- **Usar `roadmap analyze` para verificação abrangente de prontidão:**
43
-
44
- ```bash
45
- ROADMAP=$(node "./.claude/framework/bin/tools.cjs" roadmap analyze)
46
- ```
47
-
48
- Isso retorna todas as fases com contagens de plano/resumo e status de disco. Usar isso para verificar:
49
- - Quais fases pertencem a este milestone?
50
- - Todas as fases completas (todos os planos têm resumos)? Verificar `disk_status === 'complete'` para cada uma.
51
- - `progress_percent` deve ser 100%.
52
-
53
- **Verificação de conclusão de requisitos (OBRIGATÓRIO antes de apresentar):**
54
-
55
- Analisar tabela de rastreabilidade do REQUIREMENTS.md:
56
- - Contar total de requisitos v1 vs requisitos marcados (`[x]`)
57
- - Identificar quaisquer linhas não-Completas na tabela de rastreabilidade
58
-
59
- Apresentar:
60
-
61
- ```
62
- Milestone: [Nome, ex: "v1.0 MVP"]
63
-
64
- Inclui:
65
- - Fase 1: Foundation (2/2 planos completos)
66
- - Fase 2: Authentication (2/2 planos completos)
67
- - Fase 3: Core Features (3/3 planos completos)
68
- - Fase 4: Polish (1/1 plano completo)
69
-
70
- Total: {phase_count} fases, {total_plans} planos, todos completos
71
- Requisitos: {N}/{M} requisitos v1 marcados
72
- ```
73
-
74
- **Se requisitos incompletos** (N < M):
75
-
76
- ```
77
- ⚠ Requisitos Não Marcados:
78
-
79
- - [ ] {REQ-ID}: {descrição} (Fase {X})
80
- - [ ] {REQ-ID}: {descrição} (Fase {Y})
81
- ```
82
-
83
- DEVE apresentar 3 opções:
84
- 1. **Prosseguir mesmo assim** — marcar milestone como completo com lacunas conhecidas
85
- 2. **Executar auditoria primeiro** — `/auditar-marco` para avaliar severidade das lacunas
86
- 3. **Abortar** — retornar ao desenvolvimento
87
-
88
- Se o usuário selecionar "Prosseguir mesmo assim": notar requisitos incompletos no MILESTONES.md em `### Lacunas Conhecidas` com REQ-IDs e descrições.
89
-
90
- <config-check>
91
-
92
- ```bash
93
- cat .planning/config.json 2>/dev/null || true
94
- ```
95
-
96
- </config-check>
97
-
98
- <if mode="yolo">
99
-
100
- ```
101
- ⚡ Auto-aprovado: Verificação de escopo do milestone
102
- [Mostrar resumo de breakdown sem perguntar]
103
- Prosseguindo para coleta de estatísticas...
104
- ```
105
-
106
- Prosseguir para gather_stats.
107
-
108
- </if>
109
-
110
- <if mode="interactive" OR="custom with gates.confirm_milestone_scope true">
111
-
112
- ```
113
- Pronto para marcar este milestone como enviado?
114
- (sim / esperar / ajustar escopo)
115
- ```
116
-
117
- Aguardar confirmação.
118
- - "ajustar escopo": Perguntar quais fases incluir.
119
- - "esperar": Parar, usuário retorna quando pronto.
120
-
121
- </if>
122
-
123
- </step>
124
-
125
- <step name="gather_stats">
126
-
127
- Calcular estatísticas do milestone:
128
-
129
- ```bash
130
- git log --oneline --grep="feat(" | head -20
131
- git diff --stat FIRST_COMMIT..LAST_COMMIT | tail -1
132
- find . -name "*.swift" -o -name "*.ts" -o -name "*.py" | xargs wc -l 2>/dev/null || true
133
- git log --format="%ai" FIRST_COMMIT | tail -1
134
- git log --format="%ai" LAST_COMMIT | head -1
135
- ```
136
-
137
- Apresentar:
138
-
139
- ```
140
- Estatísticas do Milestone:
141
- - Fases: [X-Y]
142
- - Planos: [Z] total
143
- - Tarefas: [N] total (dos resumos de fase)
144
- - Arquivos modificados: [M]
145
- - Linhas de código: [LOC] [linguagem]
146
- - Linha do tempo: [Dias] dias ([Início] → [Fim])
147
- - Intervalo Git: feat(XX-XX) → feat(YY-YY)
148
- ```
149
-
150
- </step>
151
-
152
- <step name="extract_accomplishments">
153
-
154
- Extrair resumos de uma linha dos arquivos SUMMARY.md usando summary-extract:
155
-
156
- ```bash
157
- # Para cada fase no milestone, extrair uma linha
158
- for summary in .planning/phases/*-*/*-SUMMARY.md; do
159
- [ -e "$summary" ] || continue
160
- node "./.claude/framework/bin/tools.cjs" summary-extract "$summary" --fields one_liner --pick one_liner
161
- done
162
- ```
163
-
164
- Extrair 4-6 realizações principais. Apresentar:
165
-
166
- ```
167
- Realizações principais para este milestone:
168
- 1. [Conquista da fase 1]
169
- 2. [Conquista da fase 2]
170
- 3. [Conquista da fase 3]
171
- 4. [Conquista da fase 4]
172
- 5. [Conquista da fase 5]
173
- ```
174
-
175
- </step>
176
-
177
- <step name="create_milestone_entry">
178
-
179
- **Nota:** A entrada do MILESTONES.md agora é criada automaticamente por `tools milestone complete` no passo archive_milestone. A entrada inclui versão, data, contagens de fase/plano/tarefa e realizações extraídas dos arquivos SUMMARY.md.
180
-
181
- Se detalhes adicionais forem necessários (ex: resumo "Entregado" fornecido pelo usuário, intervalo git, estatísticas LOC), adicioná-los manualmente após a CLI criar a entrada base.
182
-
183
- </step>
184
-
185
- <step name="evolve_project_full_review">
186
-
187
- Revisão completa de evolução do PROJECT.md na conclusão do milestone.
188
-
189
- Ler todos os resumos de fase:
190
-
191
- ```bash
192
- cat .planning/phases/*-*/*-SUMMARY.md
193
- ```
194
-
195
- **Checklist de revisão completa:**
196
-
197
- 1. **Precisão de "O Que É":**
198
- - Comparar descrição atual com o que foi construído
199
- - Atualizar se o produto mudou de forma significativa
200
-
201
- 2. **Verificação de Valor Central:**
202
- - Ainda é a prioridade correta? O envio revelou um valor central diferente?
203
- - Atualizar se A ÚNICA COISA mudou
204
-
205
- 3. **Auditoria de Requisitos:**
206
-
207
- **Seção Validados:**
208
- - Todos os requisitos Ativos enviados neste milestone → Mover para Validados
209
- - Formato: `- ✓ [Requisito] — v[X.Y]`
210
-
211
- **Seção Ativos:**
212
- - Remover requisitos movidos para Validados
213
- - Adicionar novos requisitos para próximo milestone
214
- - Manter requisitos não endereçados
215
-
216
- **Auditoria de Fora do Escopo:**
217
- - Revisar cada item — raciocínio ainda é válido?
218
- - Remover itens irrelevantes
219
- - Adicionar requisitos invalidados durante o milestone
220
-
221
- 4. **Atualização de Contexto:**
222
- - Estado atual da base de código (LOC, stack tecnológica)
223
- - Temas de feedback do usuário (se houver)
224
- - Issues conhecidas ou dívida técnica
225
-
226
- 5. **Auditoria de Decisões Importantes:**
227
- - Extrair todas as decisões dos resumos de fase do milestone
228
- - Adicionar à tabela de Decisões Importantes com resultados
229
- - Marcar ✓ Bom, ⚠️ Revisar, ou — Pendente
230
-
231
- 6. **Verificação de Restrições:**
232
- - Alguma restrição mudou durante o desenvolvimento? Atualizar conforme necessário
233
-
234
- Atualizar PROJECT.md inline. Atualizar rodapé "Última atualização":
235
-
236
- ```markdown
237
- ---
238
- *Última atualização: [data] após milestone v[X.Y]*
239
- ```
240
-
241
- **Passo completo quando:**
242
-
243
- - [ ] "O Que É" revisado e atualizado se necessário
244
- - [ ] Valor Central verificado como ainda correto
245
- - [ ] Todos os requisitos enviados movidos para Validados
246
- - [ ] Novos requisitos adicionados a Ativos para próximo milestone
247
- - [ ] Raciocínio de Fora do Escopo auditado
248
- - [ ] Contexto atualizado com estado atual
249
- - [ ] Todas as decisões do milestone adicionadas a Decisões Importantes
250
- - [ ] Rodapé "Última atualização" reflete conclusão do milestone
251
-
252
- </step>
253
-
254
- <step name="reorganize_roadmap">
255
-
256
- Atualizar `.planning/ROADMAP.md` — agrupar fases do milestone concluído:
257
-
258
- ```markdown
259
- # Roadmap: [Nome do Projeto]
260
-
261
- ## Milestones
262
-
263
- - ✅ **v1.0 MVP** — Fases 1-4 (enviado YYYY-MM-DD)
264
- - 🚧 **v1.1 Segurança** — Fases 5-6 (em progresso)
265
- - 📋 **v2.0 Redesign** — Fases 7-10 (planejado)
266
-
267
- ## Fases
268
-
269
- <details>
270
- <summary>✅ v1.0 MVP (Fases 1-4) — ENVIADO YYYY-MM-DD</summary>
271
-
272
- - [x] Fase 1: Foundation (2/2 planos) — concluído YYYY-MM-DD
273
- - [x] Fase 2: Authentication (2/2 planos) — concluído YYYY-MM-DD
274
- - [x] Fase 3: Core Features (3/3 planos) — concluído YYYY-MM-DD
275
- - [x] Fase 4: Polish (1/1 plano) — concluído YYYY-MM-DD
276
-
277
- </details>
278
-
279
- ### 🚧 v[Próximo] [Nome] (Em Progresso / Planejado)
280
-
281
- - [ ] Fase 5: [Nome] ([N] planos)
282
- - [ ] Fase 6: [Nome] ([N] planos)
283
-
284
- ## Progresso
285
-
286
- | Fase | Milestone | Planos Completos | Status | Concluído |
287
- | ----------------- | --------- | ---------------- | ------------ | ---------- |
288
- | 1. Foundation | v1.0 | 2/2 | Completo | YYYY-MM-DD |
289
- | 2. Authentication | v1.0 | 2/2 | Completo | YYYY-MM-DD |
290
- | 3. Core Features | v1.0 | 3/3 | Completo | YYYY-MM-DD |
291
- | 4. Polish | v1.0 | 1/1 | Completo | YYYY-MM-DD |
292
- | 5. Auditoria Seg. | v1.1 | 0/1 | Não iniciado | - |
293
- | 6. Hardening | v1.1 | 0/2 | Não iniciado | - |
294
- ```
295
-
296
- </step>
297
-
298
- <step name="archive_milestone">
299
-
300
- **Delegar arquivamento ao tools:**
301
-
302
- ```bash
303
- ARCHIVE=$(node "./.claude/framework/bin/tools.cjs" milestone complete "v[X.Y]" --name "[Nome do Milestone]")
304
- ```
305
-
306
- A CLI cuida de:
307
- - Criar diretório `.planning/milestones/`
308
- - Arquivar ROADMAP.md para `milestones/v[X.Y]-ROADMAP.md`
309
- - Arquivar REQUIREMENTS.md para `milestones/v[X.Y]-REQUIREMENTS.md` com cabeçalho de arquivo
310
- - Mover arquivo de auditoria para milestones se existir
311
- - Criar/anexar entrada MILESTONES.md com realizações dos arquivos SUMMARY.md
312
- - Atualizar STATE.md (status, última atividade)
313
-
314
- Extrair do resultado: `version`, `date`, `phases`, `plans`, `tasks`, `accomplishments`, `archived`.
315
-
316
- Verificar: `✅ Milestone arquivado em .planning/milestones/`
317
-
318
- **Arquivamento de fase (opcional):** Após o arquivamento concluir, perguntar ao usuário:
319
-
320
- AskUserQuestion(header="Arquivar Fases", question="Arquivar diretórios de fase para milestones/?", options: "Sim — mover para milestones/v[X.Y]-phases/" | "Pular — manter fases no lugar")
321
-
322
- Se "Sim": mover diretórios de fase para o arquivo de milestone:
323
- ```bash
324
- mkdir -p .planning/milestones/v[X.Y]-phases
325
- # Para cada diretório de fase em .planning/phases/:
326
- mv .planning/phases/{phase-dir} .planning/milestones/v[X.Y]-phases/
327
- ```
328
- Verificar: `✅ Diretórios de fase arquivados em .planning/milestones/v[X.Y]-phases/`
329
-
330
- Se "Pular": Diretórios de fase permanecem em `.planning/phases/` como histórico de execução bruto. Use `/limpeza` mais tarde para arquivar retroativamente.
331
-
332
- Após o arquivamento, a IA ainda cuida de:
333
- - Reorganizar ROADMAP.md com agrupamento de milestone (requer julgamento)
334
- - Revisão completa de evolução do PROJECT.md (requer compreensão)
335
- - Deletar ROADMAP.md e REQUIREMENTS.md originais
336
- - Estes NÃO são totalmente delegados porque requerem interpretação de conteúdo pela IA
337
-
338
- </step>
339
-
340
- <step name="reorganize_roadmap_and_delete_originals">
341
-
342
- Após `milestone complete` ter arquivado, reorganizar ROADMAP.md com agrupamentos de milestone, então deletar originais:
343
-
344
- **Reorganizar ROADMAP.md** — agrupar fases do milestone concluído:
345
-
346
- ```markdown
347
- # Roadmap: [Nome do Projeto]
348
-
349
- ## Milestones
350
-
351
- - ✅ **v1.0 MVP** — Fases 1-4 (enviado YYYY-MM-DD)
352
- - 🚧 **v1.1 Segurança** — Fases 5-6 (em progresso)
353
-
354
- ## Fases
355
-
356
- <details>
357
- <summary>✅ v1.0 MVP (Fases 1-4) — ENVIADO YYYY-MM-DD</summary>
358
-
359
- - [x] Fase 1: Foundation (2/2 planos) — concluído YYYY-MM-DD
360
- - [x] Fase 2: Authentication (2/2 planos) — concluído YYYY-MM-DD
361
-
362
- </details>
363
- ```
364
-
365
- **Então deletar originais:**
366
-
367
- ```bash
368
- rm .planning/ROADMAP.md
369
- rm .planning/REQUIREMENTS.md
370
- ```
371
-
372
- </step>
373
-
374
- <step name="write_retrospective">
375
-
376
- **Anexar à retrospectiva viva:**
377
-
378
- Verificar retrospectiva existente:
379
- ```bash
380
- ls .planning/RETROSPECTIVE.md 2>/dev/null || true
381
- ```
382
-
383
- **Se existir:** Ler o arquivo, anexar nova seção de milestone antes da seção "## Tendências Cross-Milestone".
384
-
385
- **Se não existir:** Criar a partir do template em `./.claude/framework/templates/retrospective.md`.
386
-
387
- **Coletar dados de retrospectiva:**
388
-
389
- 1. De arquivos SUMMARY.md: Extrair principais entregáveis, resumos de uma linha, decisões técnicas
390
- 2. De arquivos VERIFICATION.md: Extrair pontuações de verificação, lacunas encontradas
391
- 3. De arquivos UAT.md: Extrair resultados de testes, issues encontradas
392
- 4. De git log: Contar commits, calcular linha do tempo
393
- 5. Do trabalho do milestone: Refletir sobre o que funcionou e o que não funcionou
394
-
395
- **Escrever a seção do milestone:**
396
-
397
- ```markdown
398
- ## Milestone: v{versão} — {nome}
399
-
400
- **Enviado:** {data}
401
- **Fases:** {phase_count} | **Planos:** {plan_count}
402
-
403
- ### O Que Foi Construído
404
- {Extrair resumos de uma linha do SUMMARY.md}
405
-
406
- ### O Que Funcionou
407
- {Padrões que levaram a execução suave}
408
-
409
- ### O Que Foi Ineficiente
410
- {Oportunidades perdidas, retrabalho, gargalos}
411
-
412
- ### Padrões Estabelecidos
413
- {Novas convenções descobertas durante este milestone}
414
-
415
- ### Lições Principais
416
- {Aprendizados específicos e acionáveis}
417
-
418
- ### Observações de Custo
419
- - Mix de modelos: {X}% opus, {Y}% sonnet, {Z}% haiku
420
- - Sessões: {contagem}
421
- - Notável: {observação de eficiência}
422
- ```
423
-
424
- **Atualizar tendências cross-milestone:**
425
-
426
- Se a seção "## Tendências Cross-Milestone" existir, atualizar as tabelas com novos dados deste milestone.
427
-
428
- **Commitar:**
429
- ```bash
430
- node "./.claude/framework/bin/tools.cjs" commit "docs: atualizar retrospectiva para v${VERSION}" --files .planning/RETROSPECTIVE.md
431
- ```
432
-
433
- </step>
434
-
435
- <step name="update_state">
436
-
437
- A maioria das atualizações do STATE.md foi tratada pelo `milestone complete`, mas verificar e atualizar campos restantes:
438
-
439
- **Referência do Projeto:**
440
-
441
- ```markdown
442
- ## Referência do Projeto
443
-
444
- Ver: .planning/PROJECT.md (atualizado [hoje])
445
-
446
- **Valor central:** [Valor central atual do PROJECT.md]
447
- **Foco atual:** [Próximo milestone ou "Planejando próximo milestone"]
448
- ```
449
-
450
- **Contexto Acumulado:**
451
- - Limpar resumo de decisões (log completo no PROJECT.md)
452
- - Limpar bloqueadores resolvidos
453
- - Manter bloqueadores abertos para próximo milestone
454
-
455
- </step>
456
-
457
- <step name="handle_branches">
458
-
459
- Verificar estratégia de branching e oferecer opções de merge.
460
-
461
- Usar `init milestone-op` para contexto, ou carregar config diretamente:
462
-
463
- ```bash
464
- INIT=$(node "./.claude/framework/bin/tools.cjs" init execute-phase "1")
465
- if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
466
- ```
467
-
468
- Extrair `branching_strategy`, `phase_branch_template`, `milestone_branch_template` e `commit_docs` do JSON de init.
469
-
470
- **Se "none":** Pular para git_tag.
471
-
472
- **Para estratégia "phase":**
473
-
474
- ```bash
475
- BRANCH_PREFIX=$(echo "$PHASE_BRANCH_TEMPLATE" | sed 's/{.*//')
476
- PHASE_BRANCHES=$(git branch --list "${BRANCH_PREFIX}*" 2>/dev/null | sed 's/^\*//' | tr -d ' ')
477
- ```
478
-
479
- **Para estratégia "milestone":**
480
-
481
- ```bash
482
- BRANCH_PREFIX=$(echo "$MILESTONE_BRANCH_TEMPLATE" | sed 's/{.*//')
483
- MILESTONE_BRANCH=$(git branch --list "${BRANCH_PREFIX}*" 2>/dev/null | sed 's/^\*//' | tr -d ' ' | head -1)
484
- ```
485
-
486
- **Se nenhuma branch encontrada:** Pular para git_tag.
487
-
488
- **Se branches existirem:**
489
-
490
- ```
491
- ## Branches Git Detectadas
492
-
493
- Estratégia de branching: {phase/milestone}
494
- Branches: {lista}
495
-
496
- Opções:
497
- 1. **Merge para main** — Fazer merge da(s) branch(es) para main
498
- 2. **Deletar sem merge** — Já foi feito merge ou não é necessário
499
- 3. **Manter branches** — Deixar para tratamento manual
500
- ```
501
-
502
- AskUserQuestion com opções: Squash merge (Recomendado), Merge com histórico, Deletar sem merge, Manter branches.
503
-
504
- **Squash merge:**
505
-
506
- ```bash
507
- CURRENT_BRANCH=$(git branch --show-current)
508
- git checkout main
509
-
510
- if [ "$BRANCHING_STRATEGY" = "phase" ]; then
511
- for branch in $PHASE_BRANCHES; do
512
- git merge --squash "$branch"
513
- # Remover .planning/ do staging se commit_docs for false
514
- if [ "$COMMIT_DOCS" = "false" ]; then
515
- git reset HEAD .planning/ 2>/dev/null || true
516
- fi
517
- git commit -m "feat: $branch para v[X.Y]"
518
- done
519
- fi
520
-
521
- if [ "$BRANCHING_STRATEGY" = "milestone" ]; then
522
- git merge --squash "$MILESTONE_BRANCH"
523
- # Remover .planning/ do staging se commit_docs for false
524
- if [ "$COMMIT_DOCS" = "false" ]; then
525
- git reset HEAD .planning/ 2>/dev/null || true
526
- fi
527
- git commit -m "feat: $MILESTONE_BRANCH para v[X.Y]"
528
- fi
529
-
530
- git checkout "$CURRENT_BRANCH"
531
- ```
532
-
533
- **Merge com histórico:**
534
-
535
- ```bash
536
- CURRENT_BRANCH=$(git branch --show-current)
537
- git checkout main
538
-
539
- if [ "$BRANCHING_STRATEGY" = "phase" ]; then
540
- for branch in $PHASE_BRANCHES; do
541
- git merge --no-ff --no-commit "$branch"
542
- # Remover .planning/ do staging se commit_docs for false
543
- if [ "$COMMIT_DOCS" = "false" ]; then
544
- git reset HEAD .planning/ 2>/dev/null || true
545
- fi
546
- git commit -m "Merge branch '$branch' para v[X.Y]"
547
- done
548
- fi
549
-
550
- if [ "$BRANCHING_STRATEGY" = "milestone" ]; then
551
- git merge --no-ff --no-commit "$MILESTONE_BRANCH"
552
- # Remover .planning/ do staging se commit_docs for false
553
- if [ "$COMMIT_DOCS" = "false" ]; then
554
- git reset HEAD .planning/ 2>/dev/null || true
555
- fi
556
- git commit -m "Merge branch '$MILESTONE_BRANCH' para v[X.Y]"
557
- fi
558
-
559
- git checkout "$CURRENT_BRANCH"
560
- ```
561
-
562
- **Deletar sem merge:**
563
-
564
- ```bash
565
- if [ "$BRANCHING_STRATEGY" = "phase" ]; then
566
- for branch in $PHASE_BRANCHES; do
567
- git branch -d "$branch" 2>/dev/null || git branch -D "$branch"
568
- done
569
- fi
570
-
571
- if [ "$BRANCHING_STRATEGY" = "milestone" ]; then
572
- git branch -d "$MILESTONE_BRANCH" 2>/dev/null || git branch -D "$MILESTONE_BRANCH"
573
- fi
574
- ```
575
-
576
- **Manter branches:** Reportar "Branches preservadas para tratamento manual"
577
-
578
- </step>
579
-
580
- <step name="git_tag">
581
-
582
- Criar tag git:
583
-
584
- ```bash
585
- git tag -a v[X.Y] -m "v[X.Y] [Nome]
586
-
587
- Entregado: [Uma frase]
588
-
589
- Realizações principais:
590
- - [Item 1]
591
- - [Item 2]
592
- - [Item 3]
593
-
594
- Ver .planning/MILESTONES.md para detalhes completos."
595
- ```
596
-
597
- Confirmar: "Taggeado: v[X.Y]"
598
-
599
- Perguntar: "Fazer push da tag para o remoto? (s/n)"
600
-
601
- Se sim:
602
- ```bash
603
- git push origin v[X.Y]
604
- ```
605
-
606
- </step>
607
-
608
- <step name="git_commit_milestone">
609
-
610
- Commitar conclusão do milestone.
611
-
612
- ```bash
613
- node "./.claude/framework/bin/tools.cjs" commit "chore: concluir milestone v[X.Y]" --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
614
- ```
615
-
616
- Confirmar: "Commitado: chore: concluir milestone v[X.Y]"
617
-
618
- </step>
619
-
620
- <step name="offer_next">
621
-
622
- ```
623
- ✅ Milestone v[X.Y] [Nome] concluído
624
-
625
- Enviado:
626
- - [N] fases ([M] planos, [P] tarefas)
627
- - [Uma frase do que foi enviado]
628
-
629
- Arquivado:
630
- - milestones/v[X.Y]-ROADMAP.md
631
- - milestones/v[X.Y]-REQUIREMENTS.md
632
-
633
- Resumo: .planning/MILESTONES.md
634
- Tag: v[X.Y]
635
-
636
- ---
637
-
638
- ## ▶ Próximo Passo
639
-
640
- **Iniciar Próximo Milestone** — questionamento → pesquisa → requisitos → roadmap
641
-
642
- `/novo-marco`
643
-
644
- <sub>`/clear` primeiro → janela de contexto fresca</sub>
645
-
646
- ---
647
- ```
648
-
649
- </step>
650
-
651
- </process>
652
-
653
- <milestone_naming>
654
-
655
- **Convenções de versão:**
656
- - **v1.0** — MVP Inicial
657
- - **v1.1, v1.2** — Atualizações menores, novas funcionalidades, correções
658
- - **v2.0, v3.0** — Reescritas maiores, mudanças breaking, nova direção
659
-
660
- **Nomes:** Palavras curtas 1-2 (v1.0 MVP, v1.1 Segurança, v1.2 Performance, v2.0 Redesign).
661
-
662
- </milestone_naming>
663
-
664
- <what_qualifies>
665
-
666
- **Criar milestones para:** Release inicial, releases públicos, conjuntos de funcionalidades principais enviados, antes de arquivar planejamento.
667
-
668
- **Não criar milestones para:** Cada conclusão de fase (muito granular), trabalho em progresso, iterações de dev internas (a menos que realmente enviado).
669
-
670
- Heurística: "Isso foi implantado/usável/enviado?" Se sim → milestone. Se não → continuar trabalhando.
671
-
672
- </what_qualifies>
673
-
674
- <success_criteria>
675
-
676
- A conclusão do milestone é bem-sucedida quando:
677
-
678
- - [ ] Entrada MILESTONES.md criada com estatísticas e realizações
679
- - [ ] Revisão completa de evolução do PROJECT.md concluída
680
- - [ ] Todos os requisitos enviados movidos para Validados no PROJECT.md
681
- - [ ] Decisões Importantes atualizadas com resultados
682
- - [ ] ROADMAP.md reorganizado com agrupamento de milestone
683
- - [ ] Arquivo de roadmap criado (milestones/v[X.Y]-ROADMAP.md)
684
- - [ ] Arquivo de requisitos criado (milestones/v[X.Y]-REQUIREMENTS.md)
685
- - [ ] REQUIREMENTS.md deletado (novo para próximo milestone)
686
- - [ ] STATE.md atualizado com referência de projeto fresca
687
- - [ ] Tag git criada (v[X.Y])
688
- - [ ] Commit de milestone feito (inclui arquivos de arquivo e deleção)
689
- - [ ] Conclusão de requisitos verificada contra tabela de rastreabilidade do REQUIREMENTS.md
690
- - [ ] Requisitos incompletos surfaçados com opções prosseguir/auditar/abortar
691
- - [ ] Lacunas conhecidas registradas no MILESTONES.md se usuário prosseguiu com requisitos incompletos
692
- - [ ] RETROSPECTIVE.md atualizado com seção de milestone
693
- - [ ] Tendências cross-milestone atualizadas
694
- - [ ] Usuário conhece próximo passo (/novo-marco)
695
-
696
- </success_criteria>
1
+ <purpose>
2
+
3
+ Marcar uma versão enviada (v1.0, v1.1, v2.0) como completa. Cria registro histórico no MILESTONES.md, realiza revisão completa de evolução do PROJECT.md, reorganiza ROADMAP.md com agrupamentos de milestone e tageia o release no 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
+ Quando um milestone é concluído:
20
+
21
+ 1. Extrair detalhes completos do milestone para `.planning/milestones/v[X.Y]-ROADMAP.md`
22
+ 2. Arquivar requisitos para `.planning/milestones/v[X.Y]-REQUIREMENTS.md`
23
+ 3. Atualizar ROADMAP.md — substituir detalhes do milestone por resumo em uma linha
24
+ 4. Deletar REQUIREMENTS.md (novo para próximo milestone)
25
+ 5. Realizar revisão completa de evolução do PROJECT.md
26
+ 6. Oferecer criar próximo milestone inline
27
+ 7. Arquivar artefatos UI (`*-UI-SPEC.md`, `*-UI-REVIEW.md`) junto com outros documentos de fase
28
+ 8. Limpar arquivos de screenshot `.planning/ui-reviews/` (ativos binários, nunca arquivados)
29
+
30
+ **Eficiência de Contexto:** Arquivos mantêm ROADMAP.md de tamanho constante e REQUIREMENTS.md com escopo de milestone.
31
+
32
+ **Arquivo ROADMAP** usa `templates/milestone-archive.md` — inclui cabeçalho de milestone (status, fases, data), detalhes completos de fase, resumo do milestone (decisões, issues, dívida técnica).
33
+
34
+ **Arquivo REQUIREMENTS** contém todos os requisitos marcados como completos com resultados, tabela de rastreabilidade com status final, notas sobre requisitos alterados.
35
+
36
+ </archival_behavior>
37
+
38
+ <process>
39
+
40
+ <step name="verify_readiness">
41
+
42
+ **Usar `roadmap analyze` para verificação abrangente de prontidão:**
43
+
44
+ ```bash
45
+ ROADMAP=$(node "./.claude/framework/bin/tools.cjs" roadmap analyze)
46
+ ```
47
+
48
+ Isso retorna todas as fases com contagens de plano/resumo e status de disco. Usar isso para verificar:
49
+ - Quais fases pertencem a este milestone?
50
+ - Todas as fases completas (todos os planos têm resumos)? Verificar `disk_status === 'complete'` para cada uma.
51
+ - `progress_percent` deve ser 100%.
52
+
53
+ **Verificação de conclusão de requisitos (OBRIGATÓRIO antes de apresentar):**
54
+
55
+ Analisar tabela de rastreabilidade do REQUIREMENTS.md:
56
+ - Contar total de requisitos v1 vs requisitos marcados (`[x]`)
57
+ - Identificar quaisquer linhas não-Completas na tabela de rastreabilidade
58
+
59
+ Apresentar:
60
+
61
+ ```
62
+ Milestone: [Nome, ex: "v1.0 MVP"]
63
+
64
+ Inclui:
65
+ - Fase 1: Foundation (2/2 planos completos)
66
+ - Fase 2: Authentication (2/2 planos completos)
67
+ - Fase 3: Core Features (3/3 planos completos)
68
+ - Fase 4: Polish (1/1 plano completo)
69
+
70
+ Total: {phase_count} fases, {total_plans} planos, todos completos
71
+ Requisitos: {N}/{M} requisitos v1 marcados
72
+ ```
73
+
74
+ **Se requisitos incompletos** (N < M):
75
+
76
+ ```
77
+ ⚠ Requisitos Não Marcados:
78
+
79
+ - [ ] {REQ-ID}: {descrição} (Fase {X})
80
+ - [ ] {REQ-ID}: {descrição} (Fase {Y})
81
+ ```
82
+
83
+ DEVE apresentar 3 opções:
84
+ 1. **Prosseguir mesmo assim** — marcar milestone como completo com lacunas conhecidas
85
+ 2. **Executar auditoria primeiro** — `/auditar-marco` para avaliar severidade das lacunas
86
+ 3. **Abortar** — retornar ao desenvolvimento
87
+
88
+ Se o usuário selecionar "Prosseguir mesmo assim": notar requisitos incompletos no MILESTONES.md em `### Lacunas Conhecidas` com REQ-IDs e descrições.
89
+
90
+ <config-check>
91
+
92
+ ```bash
93
+ cat .planning/config.json 2>/dev/null || true
94
+ ```
95
+
96
+ </config-check>
97
+
98
+ <if mode="yolo">
99
+
100
+ ```
101
+ ⚡ Auto-aprovado: Verificação de escopo do milestone
102
+ [Mostrar resumo de breakdown sem perguntar]
103
+ Prosseguindo para coleta de estatísticas...
104
+ ```
105
+
106
+ Prosseguir para gather_stats.
107
+
108
+ </if>
109
+
110
+ <if mode="interactive" OR="custom with gates.confirm_milestone_scope true">
111
+
112
+ ```
113
+ Pronto para marcar este milestone como enviado?
114
+ (sim / esperar / ajustar escopo)
115
+ ```
116
+
117
+ Aguardar confirmação.
118
+ - "ajustar escopo": Perguntar quais fases incluir.
119
+ - "esperar": Parar, usuário retorna quando pronto.
120
+
121
+ </if>
122
+
123
+ </step>
124
+
125
+ <step name="gather_stats">
126
+
127
+ Calcular estatísticas do milestone:
128
+
129
+ ```bash
130
+ git log --oneline --grep="feat(" | head -20
131
+ git diff --stat FIRST_COMMIT..LAST_COMMIT | tail -1
132
+ find . -name "*.swift" -o -name "*.ts" -o -name "*.py" | xargs wc -l 2>/dev/null || true
133
+ git log --format="%ai" FIRST_COMMIT | tail -1
134
+ git log --format="%ai" LAST_COMMIT | head -1
135
+ ```
136
+
137
+ Apresentar:
138
+
139
+ ```
140
+ Estatísticas do Milestone:
141
+ - Fases: [X-Y]
142
+ - Planos: [Z] total
143
+ - Tarefas: [N] total (dos resumos de fase)
144
+ - Arquivos modificados: [M]
145
+ - Linhas de código: [LOC] [linguagem]
146
+ - Linha do tempo: [Dias] dias ([Início] → [Fim])
147
+ - Intervalo Git: feat(XX-XX) → feat(YY-YY)
148
+ ```
149
+
150
+ </step>
151
+
152
+ <step name="extract_accomplishments">
153
+
154
+ Extrair resumos de uma linha dos arquivos SUMMARY.md usando summary-extract:
155
+
156
+ ```bash
157
+ # Para cada fase no milestone, extrair uma linha
158
+ for summary in .planning/phases/*-*/*-SUMMARY.md; do
159
+ [ -e "$summary" ] || continue
160
+ node "./.claude/framework/bin/tools.cjs" summary-extract "$summary" --fields one_liner --pick one_liner
161
+ done
162
+ ```
163
+
164
+ Extrair 4-6 realizações principais. Apresentar:
165
+
166
+ ```
167
+ Realizações principais para este milestone:
168
+ 1. [Conquista da fase 1]
169
+ 2. [Conquista da fase 2]
170
+ 3. [Conquista da fase 3]
171
+ 4. [Conquista da fase 4]
172
+ 5. [Conquista da fase 5]
173
+ ```
174
+
175
+ </step>
176
+
177
+ <step name="create_milestone_entry">
178
+
179
+ **Nota:** A entrada do MILESTONES.md agora é criada automaticamente por `tools milestone complete` no passo archive_milestone. A entrada inclui versão, data, contagens de fase/plano/tarefa e realizações extraídas dos arquivos SUMMARY.md.
180
+
181
+ Se detalhes adicionais forem necessários (ex: resumo "Entregado" fornecido pelo usuário, intervalo git, estatísticas LOC), adicioná-los manualmente após a CLI criar a entrada base.
182
+
183
+ </step>
184
+
185
+ <step name="evolve_project_full_review">
186
+
187
+ Revisão completa de evolução do PROJECT.md na conclusão do milestone.
188
+
189
+ Ler todos os resumos de fase:
190
+
191
+ ```bash
192
+ cat .planning/phases/*-*/*-SUMMARY.md
193
+ ```
194
+
195
+ **Checklist de revisão completa:**
196
+
197
+ 1. **Precisão de "O Que É":**
198
+ - Comparar descrição atual com o que foi construído
199
+ - Atualizar se o produto mudou de forma significativa
200
+
201
+ 2. **Verificação de Valor Central:**
202
+ - Ainda é a prioridade correta? O envio revelou um valor central diferente?
203
+ - Atualizar se A ÚNICA COISA mudou
204
+
205
+ 3. **Auditoria de Requisitos:**
206
+
207
+ **Seção Validados:**
208
+ - Todos os requisitos Ativos enviados neste milestone → Mover para Validados
209
+ - Formato: `- ✓ [Requisito] — v[X.Y]`
210
+
211
+ **Seção Ativos:**
212
+ - Remover requisitos movidos para Validados
213
+ - Adicionar novos requisitos para próximo milestone
214
+ - Manter requisitos não endereçados
215
+
216
+ **Auditoria de Fora do Escopo:**
217
+ - Revisar cada item — raciocínio ainda é válido?
218
+ - Remover itens irrelevantes
219
+ - Adicionar requisitos invalidados durante o milestone
220
+
221
+ 4. **Atualização de Contexto:**
222
+ - Estado atual da base de código (LOC, stack tecnológica)
223
+ - Temas de feedback do usuário (se houver)
224
+ - Issues conhecidas ou dívida técnica
225
+
226
+ 5. **Auditoria de Decisões Importantes:**
227
+ - Extrair todas as decisões dos resumos de fase do milestone
228
+ - Adicionar à tabela de Decisões Importantes com resultados
229
+ - Marcar ✓ Bom, ⚠️ Revisar, ou — Pendente
230
+
231
+ 6. **Verificação de Restrições:**
232
+ - Alguma restrição mudou durante o desenvolvimento? Atualizar conforme necessário
233
+
234
+ Atualizar PROJECT.md inline. Atualizar rodapé "Última atualização":
235
+
236
+ ```markdown
237
+ ---
238
+ *Última atualização: [data] após milestone v[X.Y]*
239
+ ```
240
+
241
+ **Passo completo quando:**
242
+
243
+ - [ ] "O Que É" revisado e atualizado se necessário
244
+ - [ ] Valor Central verificado como ainda correto
245
+ - [ ] Todos os requisitos enviados movidos para Validados
246
+ - [ ] Novos requisitos adicionados a Ativos para próximo milestone
247
+ - [ ] Raciocínio de Fora do Escopo auditado
248
+ - [ ] Contexto atualizado com estado atual
249
+ - [ ] Todas as decisões do milestone adicionadas a Decisões Importantes
250
+ - [ ] Rodapé "Última atualização" reflete conclusão do milestone
251
+
252
+ </step>
253
+
254
+ <step name="reorganize_roadmap">
255
+
256
+ Atualizar `.planning/ROADMAP.md` — agrupar fases do milestone concluído:
257
+
258
+ ```markdown
259
+ # Roadmap: [Nome do Projeto]
260
+
261
+ ## Milestones
262
+
263
+ - ✅ **v1.0 MVP** — Fases 1-4 (enviado YYYY-MM-DD)
264
+ - 🚧 **v1.1 Segurança** — Fases 5-6 (em progresso)
265
+ - 📋 **v2.0 Redesign** — Fases 7-10 (planejado)
266
+
267
+ ## Fases
268
+
269
+ <details>
270
+ <summary>✅ v1.0 MVP (Fases 1-4) — ENVIADO YYYY-MM-DD</summary>
271
+
272
+ - [x] Fase 1: Foundation (2/2 planos) — concluído YYYY-MM-DD
273
+ - [x] Fase 2: Authentication (2/2 planos) — concluído YYYY-MM-DD
274
+ - [x] Fase 3: Core Features (3/3 planos) — concluído YYYY-MM-DD
275
+ - [x] Fase 4: Polish (1/1 plano) — concluído YYYY-MM-DD
276
+
277
+ </details>
278
+
279
+ ### 🚧 v[Próximo] [Nome] (Em Progresso / Planejado)
280
+
281
+ - [ ] Fase 5: [Nome] ([N] planos)
282
+ - [ ] Fase 6: [Nome] ([N] planos)
283
+
284
+ ## Progresso
285
+
286
+ | Fase | Milestone | Planos Completos | Status | Concluído |
287
+ | ----------------- | --------- | ---------------- | ------------ | ---------- |
288
+ | 1. Foundation | v1.0 | 2/2 | Completo | YYYY-MM-DD |
289
+ | 2. Authentication | v1.0 | 2/2 | Completo | YYYY-MM-DD |
290
+ | 3. Core Features | v1.0 | 3/3 | Completo | YYYY-MM-DD |
291
+ | 4. Polish | v1.0 | 1/1 | Completo | YYYY-MM-DD |
292
+ | 5. Auditoria Seg. | v1.1 | 0/1 | Não iniciado | - |
293
+ | 6. Hardening | v1.1 | 0/2 | Não iniciado | - |
294
+ ```
295
+
296
+ </step>
297
+
298
+ <step name="archive_milestone">
299
+
300
+ **Delegar arquivamento ao tools:**
301
+
302
+ ```bash
303
+ ARCHIVE=$(node "./.claude/framework/bin/tools.cjs" milestone complete "v[X.Y]" --name "[Nome do Milestone]")
304
+ ```
305
+
306
+ A CLI cuida de:
307
+ - Criar diretório `.planning/milestones/`
308
+ - Arquivar ROADMAP.md para `milestones/v[X.Y]-ROADMAP.md`
309
+ - Arquivar REQUIREMENTS.md para `milestones/v[X.Y]-REQUIREMENTS.md` com cabeçalho de arquivo
310
+ - Mover arquivo de auditoria para milestones se existir
311
+ - Criar/anexar entrada MILESTONES.md com realizações dos arquivos SUMMARY.md
312
+ - Atualizar STATE.md (status, última atividade)
313
+
314
+ Extrair do resultado: `version`, `date`, `phases`, `plans`, `tasks`, `accomplishments`, `archived`.
315
+
316
+ Verificar: `✅ Milestone arquivado em .planning/milestones/`
317
+
318
+ **Arquivamento de fase (opcional):** Após o arquivamento concluir, perguntar ao usuário:
319
+
320
+ AskUserQuestion(header="Arquivar Fases", question="Arquivar diretórios de fase para milestones/?", options: "Sim — mover para milestones/v[X.Y]-phases/" | "Pular — manter fases no lugar")
321
+
322
+ Se "Sim": mover diretórios de fase para o arquivo de milestone:
323
+ ```bash
324
+ mkdir -p .planning/milestones/v[X.Y]-phases
325
+ # Para cada diretório de fase em .planning/phases/:
326
+ mv .planning/phases/{phase-dir} .planning/milestones/v[X.Y]-phases/
327
+ ```
328
+ Verificar: `✅ Diretórios de fase arquivados em .planning/milestones/v[X.Y]-phases/`
329
+
330
+ Se "Pular": Diretórios de fase permanecem em `.planning/phases/` como histórico de execução bruto. Use `/limpeza` mais tarde para arquivar retroativamente.
331
+
332
+ Após o arquivamento, a IA ainda cuida de:
333
+ - Reorganizar ROADMAP.md com agrupamento de milestone (requer julgamento)
334
+ - Revisão completa de evolução do PROJECT.md (requer compreensão)
335
+ - Deletar ROADMAP.md e REQUIREMENTS.md originais
336
+ - Estes NÃO são totalmente delegados porque requerem interpretação de conteúdo pela IA
337
+
338
+ </step>
339
+
340
+ <step name="reorganize_roadmap_and_delete_originals">
341
+
342
+ Após `milestone complete` ter arquivado, reorganizar ROADMAP.md com agrupamentos de milestone, então deletar originais:
343
+
344
+ **Reorganizar ROADMAP.md** — agrupar fases do milestone concluído:
345
+
346
+ ```markdown
347
+ # Roadmap: [Nome do Projeto]
348
+
349
+ ## Milestones
350
+
351
+ - ✅ **v1.0 MVP** — Fases 1-4 (enviado YYYY-MM-DD)
352
+ - 🚧 **v1.1 Segurança** — Fases 5-6 (em progresso)
353
+
354
+ ## Fases
355
+
356
+ <details>
357
+ <summary>✅ v1.0 MVP (Fases 1-4) — ENVIADO YYYY-MM-DD</summary>
358
+
359
+ - [x] Fase 1: Foundation (2/2 planos) — concluído YYYY-MM-DD
360
+ - [x] Fase 2: Authentication (2/2 planos) — concluído YYYY-MM-DD
361
+
362
+ </details>
363
+ ```
364
+
365
+ **Então deletar originais:**
366
+
367
+ ```bash
368
+ rm .planning/ROADMAP.md
369
+ rm .planning/REQUIREMENTS.md
370
+ ```
371
+
372
+ </step>
373
+
374
+ <step name="write_retrospective">
375
+
376
+ **Anexar à retrospectiva viva:**
377
+
378
+ Verificar retrospectiva existente:
379
+ ```bash
380
+ ls .planning/RETROSPECTIVE.md 2>/dev/null || true
381
+ ```
382
+
383
+ **Se existir:** Ler o arquivo, anexar nova seção de milestone antes da seção "## Tendências Cross-Milestone".
384
+
385
+ **Se não existir:** Criar a partir do template em `./.claude/framework/templates/retrospective.md`.
386
+
387
+ **Coletar dados de retrospectiva:**
388
+
389
+ 1. De arquivos SUMMARY.md: Extrair principais entregáveis, resumos de uma linha, decisões técnicas
390
+ 2. De arquivos VERIFICATION.md: Extrair pontuações de verificação, lacunas encontradas
391
+ 3. De arquivos UAT.md: Extrair resultados de testes, issues encontradas
392
+ 4. De git log: Contar commits, calcular linha do tempo
393
+ 5. Do trabalho do milestone: Refletir sobre o que funcionou e o que não funcionou
394
+
395
+ **Escrever a seção do milestone:**
396
+
397
+ ```markdown
398
+ ## Milestone: v{versão} — {nome}
399
+
400
+ **Enviado:** {data}
401
+ **Fases:** {phase_count} | **Planos:** {plan_count}
402
+
403
+ ### O Que Foi Construído
404
+ {Extrair resumos de uma linha do SUMMARY.md}
405
+
406
+ ### O Que Funcionou
407
+ {Padrões que levaram a execução suave}
408
+
409
+ ### O Que Foi Ineficiente
410
+ {Oportunidades perdidas, retrabalho, gargalos}
411
+
412
+ ### Padrões Estabelecidos
413
+ {Novas convenções descobertas durante este milestone}
414
+
415
+ ### Lições Principais
416
+ {Aprendizados específicos e acionáveis}
417
+
418
+ ### Observações de Custo
419
+ - Mix de modelos: {X}% opus, {Y}% sonnet, {Z}% haiku
420
+ - Sessões: {contagem}
421
+ - Notável: {observação de eficiência}
422
+ ```
423
+
424
+ **Atualizar tendências cross-milestone:**
425
+
426
+ Se a seção "## Tendências Cross-Milestone" existir, atualizar as tabelas com novos dados deste milestone.
427
+
428
+ **Commitar:**
429
+ ```bash
430
+ node "./.claude/framework/bin/tools.cjs" commit "docs: atualizar retrospectiva para v${VERSION}" --files .planning/RETROSPECTIVE.md
431
+ ```
432
+
433
+ </step>
434
+
435
+ <step name="update_state">
436
+
437
+ A maioria das atualizações do STATE.md foi tratada pelo `milestone complete`, mas verificar e atualizar campos restantes:
438
+
439
+ **Referência do Projeto:**
440
+
441
+ ```markdown
442
+ ## Referência do Projeto
443
+
444
+ Ver: .planning/PROJECT.md (atualizado [hoje])
445
+
446
+ **Valor central:** [Valor central atual do PROJECT.md]
447
+ **Foco atual:** [Próximo milestone ou "Planejando próximo milestone"]
448
+ ```
449
+
450
+ **Contexto Acumulado:**
451
+ - Limpar resumo de decisões (log completo no PROJECT.md)
452
+ - Limpar bloqueadores resolvidos
453
+ - Manter bloqueadores abertos para próximo milestone
454
+
455
+ </step>
456
+
457
+ <step name="handle_branches">
458
+
459
+ Verificar estratégia de branching e oferecer opções de merge.
460
+
461
+ Usar `init milestone-op` para contexto, ou carregar config diretamente:
462
+
463
+ ```bash
464
+ INIT=$(node "./.claude/framework/bin/tools.cjs" init execute-phase "1")
465
+ if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
466
+ ```
467
+
468
+ Extrair `branching_strategy`, `phase_branch_template`, `milestone_branch_template` e `commit_docs` do JSON de init.
469
+
470
+ **Se "none":** Pular para git_tag.
471
+
472
+ **Para estratégia "phase":**
473
+
474
+ ```bash
475
+ BRANCH_PREFIX=$(echo "$PHASE_BRANCH_TEMPLATE" | sed 's/{.*//')
476
+ PHASE_BRANCHES=$(git branch --list "${BRANCH_PREFIX}*" 2>/dev/null | sed 's/^\*//' | tr -d ' ')
477
+ ```
478
+
479
+ **Para estratégia "milestone":**
480
+
481
+ ```bash
482
+ BRANCH_PREFIX=$(echo "$MILESTONE_BRANCH_TEMPLATE" | sed 's/{.*//')
483
+ MILESTONE_BRANCH=$(git branch --list "${BRANCH_PREFIX}*" 2>/dev/null | sed 's/^\*//' | tr -d ' ' | head -1)
484
+ ```
485
+
486
+ **Se nenhuma branch encontrada:** Pular para git_tag.
487
+
488
+ **Se branches existirem:**
489
+
490
+ ```
491
+ ## Branches Git Detectadas
492
+
493
+ Estratégia de branching: {phase/milestone}
494
+ Branches: {lista}
495
+
496
+ Opções:
497
+ 1. **Merge para main** — Fazer merge da(s) branch(es) para main
498
+ 2. **Deletar sem merge** — Já foi feito merge ou não é necessário
499
+ 3. **Manter branches** — Deixar para tratamento manual
500
+ ```
501
+
502
+ AskUserQuestion com opções: Squash merge (Recomendado), Merge com histórico, Deletar sem merge, Manter branches.
503
+
504
+ **Squash merge:**
505
+
506
+ ```bash
507
+ CURRENT_BRANCH=$(git branch --show-current)
508
+ git checkout main
509
+
510
+ if [ "$BRANCHING_STRATEGY" = "phase" ]; then
511
+ for branch in $PHASE_BRANCHES; do
512
+ git merge --squash "$branch"
513
+ # Remover .planning/ do staging se commit_docs for false
514
+ if [ "$COMMIT_DOCS" = "false" ]; then
515
+ git reset HEAD .planning/ 2>/dev/null || true
516
+ fi
517
+ git commit -m "feat: $branch para v[X.Y]"
518
+ done
519
+ fi
520
+
521
+ if [ "$BRANCHING_STRATEGY" = "milestone" ]; then
522
+ git merge --squash "$MILESTONE_BRANCH"
523
+ # Remover .planning/ do staging se commit_docs for false
524
+ if [ "$COMMIT_DOCS" = "false" ]; then
525
+ git reset HEAD .planning/ 2>/dev/null || true
526
+ fi
527
+ git commit -m "feat: $MILESTONE_BRANCH para v[X.Y]"
528
+ fi
529
+
530
+ git checkout "$CURRENT_BRANCH"
531
+ ```
532
+
533
+ **Merge com histórico:**
534
+
535
+ ```bash
536
+ CURRENT_BRANCH=$(git branch --show-current)
537
+ git checkout main
538
+
539
+ if [ "$BRANCHING_STRATEGY" = "phase" ]; then
540
+ for branch in $PHASE_BRANCHES; do
541
+ git merge --no-ff --no-commit "$branch"
542
+ # Remover .planning/ do staging se commit_docs for false
543
+ if [ "$COMMIT_DOCS" = "false" ]; then
544
+ git reset HEAD .planning/ 2>/dev/null || true
545
+ fi
546
+ git commit -m "Merge branch '$branch' para v[X.Y]"
547
+ done
548
+ fi
549
+
550
+ if [ "$BRANCHING_STRATEGY" = "milestone" ]; then
551
+ git merge --no-ff --no-commit "$MILESTONE_BRANCH"
552
+ # Remover .planning/ do staging se commit_docs for false
553
+ if [ "$COMMIT_DOCS" = "false" ]; then
554
+ git reset HEAD .planning/ 2>/dev/null || true
555
+ fi
556
+ git commit -m "Merge branch '$MILESTONE_BRANCH' para v[X.Y]"
557
+ fi
558
+
559
+ git checkout "$CURRENT_BRANCH"
560
+ ```
561
+
562
+ **Deletar sem merge:**
563
+
564
+ ```bash
565
+ if [ "$BRANCHING_STRATEGY" = "phase" ]; then
566
+ for branch in $PHASE_BRANCHES; do
567
+ git branch -d "$branch" 2>/dev/null || git branch -D "$branch"
568
+ done
569
+ fi
570
+
571
+ if [ "$BRANCHING_STRATEGY" = "milestone" ]; then
572
+ git branch -d "$MILESTONE_BRANCH" 2>/dev/null || git branch -D "$MILESTONE_BRANCH"
573
+ fi
574
+ ```
575
+
576
+ **Manter branches:** Reportar "Branches preservadas para tratamento manual"
577
+
578
+ </step>
579
+
580
+ <step name="git_tag">
581
+
582
+ Criar tag git:
583
+
584
+ ```bash
585
+ git tag -a v[X.Y] -m "v[X.Y] [Nome]
586
+
587
+ Entregado: [Uma frase]
588
+
589
+ Realizações principais:
590
+ - [Item 1]
591
+ - [Item 2]
592
+ - [Item 3]
593
+
594
+ Ver .planning/MILESTONES.md para detalhes completos."
595
+ ```
596
+
597
+ Confirmar: "Taggeado: v[X.Y]"
598
+
599
+ Perguntar: "Fazer push da tag para o remoto? (s/n)"
600
+
601
+ Se sim:
602
+ ```bash
603
+ git push origin v[X.Y]
604
+ ```
605
+
606
+ </step>
607
+
608
+ <step name="git_commit_milestone">
609
+
610
+ Commitar conclusão do milestone.
611
+
612
+ ```bash
613
+ node "./.claude/framework/bin/tools.cjs" commit "chore: concluir milestone v[X.Y]" --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
614
+ ```
615
+
616
+ Confirmar: "Commitado: chore: concluir milestone v[X.Y]"
617
+
618
+ </step>
619
+
620
+ <step name="offer_next">
621
+
622
+ ```
623
+ ✅ Milestone v[X.Y] [Nome] concluído
624
+
625
+ Enviado:
626
+ - [N] fases ([M] planos, [P] tarefas)
627
+ - [Uma frase do que foi enviado]
628
+
629
+ Arquivado:
630
+ - milestones/v[X.Y]-ROADMAP.md
631
+ - milestones/v[X.Y]-REQUIREMENTS.md
632
+
633
+ Resumo: .planning/MILESTONES.md
634
+ Tag: v[X.Y]
635
+
636
+ ---
637
+
638
+ ## ▶ Próximo Passo
639
+
640
+ **Iniciar Próximo Milestone** — questionamento → pesquisa → requisitos → roadmap
641
+
642
+ `/novo-marco`
643
+
644
+ <sub>`/clear` primeiro → janela de contexto fresca</sub>
645
+
646
+ ---
647
+ ```
648
+
649
+ </step>
650
+
651
+ </process>
652
+
653
+ <milestone_naming>
654
+
655
+ **Convenções de versão:**
656
+ - **v1.0** — MVP Inicial
657
+ - **v1.1, v1.2** — Atualizações menores, novas funcionalidades, correções
658
+ - **v2.0, v3.0** — Reescritas maiores, mudanças breaking, nova direção
659
+
660
+ **Nomes:** Palavras curtas 1-2 (v1.0 MVP, v1.1 Segurança, v1.2 Performance, v2.0 Redesign).
661
+
662
+ </milestone_naming>
663
+
664
+ <what_qualifies>
665
+
666
+ **Criar milestones para:** Release inicial, releases públicos, conjuntos de funcionalidades principais enviados, antes de arquivar planejamento.
667
+
668
+ **Não criar milestones para:** Cada conclusão de fase (muito granular), trabalho em progresso, iterações de dev internas (a menos que realmente enviado).
669
+
670
+ Heurística: "Isso foi implantado/usável/enviado?" Se sim → milestone. Se não → continuar trabalhando.
671
+
672
+ </what_qualifies>
673
+
674
+ <success_criteria>
675
+
676
+ A conclusão do milestone é bem-sucedida quando:
677
+
678
+ - [ ] Entrada MILESTONES.md criada com estatísticas e realizações
679
+ - [ ] Revisão completa de evolução do PROJECT.md concluída
680
+ - [ ] Todos os requisitos enviados movidos para Validados no PROJECT.md
681
+ - [ ] Decisões Importantes atualizadas com resultados
682
+ - [ ] ROADMAP.md reorganizado com agrupamento de milestone
683
+ - [ ] Arquivo de roadmap criado (milestones/v[X.Y]-ROADMAP.md)
684
+ - [ ] Arquivo de requisitos criado (milestones/v[X.Y]-REQUIREMENTS.md)
685
+ - [ ] REQUIREMENTS.md deletado (novo para próximo milestone)
686
+ - [ ] STATE.md atualizado com referência de projeto fresca
687
+ - [ ] Tag git criada (v[X.Y])
688
+ - [ ] Commit de milestone feito (inclui arquivos de arquivo e deleção)
689
+ - [ ] Conclusão de requisitos verificada contra tabela de rastreabilidade do REQUIREMENTS.md
690
+ - [ ] Requisitos incompletos surfaçados com opções prosseguir/auditar/abortar
691
+ - [ ] Lacunas conhecidas registradas no MILESTONES.md se usuário prosseguiu com requisitos incompletos
692
+ - [ ] RETROSPECTIVE.md atualizado com seção de milestone
693
+ - [ ] Tendências cross-milestone atualizadas
694
+ - [ ] Usuário conhece próximo passo (/novo-marco)
695
+
696
+ </success_criteria>