@luanpdd/kit-mcp 1.20.0 → 1.21.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 (259) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +648 -648
  3. package/gates/dept-cycle-prevention.md +179 -0
  4. package/gates/multi-tenant-rls-coverage.md +102 -0
  5. package/gates/service-role-not-in-user-facing.md +113 -0
  6. package/kit/COMANDOS.md +138 -138
  7. package/kit/README.md +52 -52
  8. package/kit/agents/advisor-researcher.md +106 -106
  9. package/kit/agents/assumptions-analyzer.md +107 -107
  10. package/kit/agents/audit-log-implementer.md +175 -0
  11. package/kit/agents/b2b-saas-architect.md +156 -0
  12. package/kit/agents/codebase-mapper.md +768 -768
  13. package/kit/agents/crm-pipeline-implementer.md +150 -0
  14. package/kit/agents/debugger.md +772 -772
  15. package/kit/agents/evolution-go-integrator.md +179 -0
  16. package/kit/agents/example-reviewer.md +21 -21
  17. package/kit/agents/executor.md +523 -523
  18. package/kit/agents/integration-checker.md +200 -200
  19. package/kit/agents/invite-flow-implementer.md +137 -0
  20. package/kit/agents/lgpd-compliance-auditor.md +206 -0
  21. package/kit/agents/multi-tenant-isolation-auditor.md +243 -0
  22. package/kit/agents/multi-tenant-rls-writer.md +262 -0
  23. package/kit/agents/nyquist-auditor.md +178 -178
  24. package/kit/agents/org-onboarding-implementer.md +202 -0
  25. package/kit/agents/phase-researcher.md +696 -696
  26. package/kit/agents/plan-checker.md +272 -272
  27. package/kit/agents/planner.md +891 -891
  28. package/kit/agents/project-researcher.md +652 -652
  29. package/kit/agents/research-synthesizer.md +245 -245
  30. package/kit/agents/roadmapper.md +677 -677
  31. package/kit/agents/super-admin-implementer.md +182 -0
  32. package/kit/agents/ui-auditor.md +437 -437
  33. package/kit/agents/ui-checker.md +302 -302
  34. package/kit/agents/ui-researcher.md +355 -355
  35. package/kit/agents/user-profiler.md +175 -175
  36. package/kit/agents/verifier.md +728 -728
  37. package/kit/commands/adicionar-backlog.md +75 -75
  38. package/kit/commands/adicionar-fase.md +42 -42
  39. package/kit/commands/adicionar-tarefa.md +45 -45
  40. package/kit/commands/adicionar-testes.md +41 -41
  41. package/kit/commands/ajuda.md +21 -21
  42. package/kit/commands/atualizar.md +37 -37
  43. package/kit/commands/auditar-marco.md +179 -179
  44. package/kit/commands/auditar-uat.md +23 -23
  45. package/kit/commands/autonomo.md +40 -40
  46. package/kit/commands/branch-pr.md +24 -24
  47. package/kit/commands/concluir-marco.md +247 -247
  48. package/kit/commands/configuracoes.md +36 -36
  49. package/kit/commands/definir-perfil.md +10 -10
  50. package/kit/commands/depurar.md +190 -190
  51. package/kit/commands/discutir-fase.md +131 -131
  52. package/kit/commands/entrar-discord.md +17 -17
  53. package/kit/commands/estatisticas.md +18 -18
  54. package/kit/commands/example-greeting.md +33 -33
  55. package/kit/commands/executar-fase.md +58 -58
  56. package/kit/commands/expresso.md +56 -56
  57. package/kit/commands/fase-ui.md +34 -34
  58. package/kit/commands/fazer.md +57 -57
  59. package/kit/commands/fio.md +125 -125
  60. package/kit/commands/fluxos-trabalho.md +64 -64
  61. package/kit/commands/forense.md +176 -176
  62. package/kit/commands/gerenciador.md +38 -38
  63. package/kit/commands/inserir-fase.md +31 -31
  64. package/kit/commands/limpeza.md +17 -17
  65. package/kit/commands/listar-hipoteses-fase.md +45 -45
  66. package/kit/commands/listar-workspaces.md +18 -18
  67. package/kit/commands/mapear-codebase.md +70 -70
  68. package/kit/commands/multi-tenant.md +163 -0
  69. package/kit/commands/nota.md +33 -33
  70. package/kit/commands/novo-marco.md +43 -43
  71. package/kit/commands/novo-projeto.md +41 -41
  72. package/kit/commands/novo-workspace.md +43 -43
  73. package/kit/commands/pausar-trabalho.md +37 -37
  74. package/kit/commands/perfil-usuario.md +45 -45
  75. package/kit/commands/pesquisar-fase.md +195 -195
  76. package/kit/commands/planejar-fase.md +67 -67
  77. package/kit/commands/planejar-lacunas.md +33 -33
  78. package/kit/commands/plantar-ideia.md +25 -25
  79. package/kit/commands/progresso.md +24 -24
  80. package/kit/commands/proximo.md +30 -30
  81. package/kit/commands/publicar.md +490 -490
  82. package/kit/commands/rapido.md +35 -35
  83. package/kit/commands/reaplicar-patches.md +124 -124
  84. package/kit/commands/relatorio-sessao.md +19 -19
  85. package/kit/commands/remover-fase.md +31 -31
  86. package/kit/commands/remover-workspace.md +26 -26
  87. package/kit/commands/resumo-marco.md +50 -50
  88. package/kit/commands/retomar-trabalho.md +40 -40
  89. package/kit/commands/revisar-backlog.md +60 -60
  90. package/kit/commands/revisar-ui.md +32 -32
  91. package/kit/commands/revisar.md +37 -37
  92. package/kit/commands/saude.md +21 -21
  93. package/kit/commands/setup-notion.md +93 -93
  94. package/kit/commands/sync-main.md +68 -68
  95. package/kit/commands/validar-fase.md +35 -35
  96. package/kit/commands/verificar-tarefas.md +44 -44
  97. package/kit/commands/verificar-trabalho.md +64 -64
  98. package/kit/file-manifest.json +30 -3
  99. package/kit/framework/bin/lib/commands.cjs +959 -959
  100. package/kit/framework/bin/lib/config.cjs +442 -442
  101. package/kit/framework/bin/lib/core.cjs +1230 -1230
  102. package/kit/framework/bin/lib/frontmatter.cjs +336 -336
  103. package/kit/framework/bin/lib/init.cjs +1442 -1442
  104. package/kit/framework/bin/lib/milestone.cjs +252 -252
  105. package/kit/framework/bin/lib/model-profiles.cjs +68 -68
  106. package/kit/framework/bin/lib/phase.cjs +888 -888
  107. package/kit/framework/bin/lib/profile-output.cjs +952 -952
  108. package/kit/framework/bin/lib/profile-pipeline.cjs +539 -539
  109. package/kit/framework/bin/lib/roadmap.cjs +329 -329
  110. package/kit/framework/bin/lib/security.cjs +382 -382
  111. package/kit/framework/bin/lib/state.cjs +1031 -1031
  112. package/kit/framework/bin/lib/template.cjs +222 -222
  113. package/kit/framework/bin/lib/uat.cjs +282 -282
  114. package/kit/framework/bin/lib/verify.cjs +888 -888
  115. package/kit/framework/bin/lib/workstream.cjs +491 -491
  116. package/kit/framework/bin/tools.cjs +918 -918
  117. package/kit/framework/commands/workstreams.md +63 -63
  118. package/kit/framework/references/checkpoints.md +778 -778
  119. package/kit/framework/references/continuation-format.md +249 -249
  120. package/kit/framework/references/decimal-phase-calculation.md +64 -64
  121. package/kit/framework/references/git-integration.md +295 -295
  122. package/kit/framework/references/git-planning-commit.md +38 -38
  123. package/kit/framework/references/model-profile-resolution.md +36 -36
  124. package/kit/framework/references/model-profiles.md +139 -139
  125. package/kit/framework/references/phase-argument-parsing.md +61 -61
  126. package/kit/framework/references/planning-config.md +202 -202
  127. package/kit/framework/references/questioning.md +162 -162
  128. package/kit/framework/references/tdd.md +263 -263
  129. package/kit/framework/references/ui-brand.md +160 -160
  130. package/kit/framework/references/user-profiling.md +657 -657
  131. package/kit/framework/references/verification-patterns.md +612 -612
  132. package/kit/framework/references/workstream-flag.md +58 -58
  133. package/kit/framework/templates/DEBUG.md +164 -164
  134. package/kit/framework/templates/UAT.md +265 -265
  135. package/kit/framework/templates/UI-SPEC.md +100 -100
  136. package/kit/framework/templates/VALIDATION.md +76 -76
  137. package/kit/framework/templates/claude-md.md +122 -122
  138. package/kit/framework/templates/codebase/architecture.md +185 -185
  139. package/kit/framework/templates/codebase/concerns.md +205 -205
  140. package/kit/framework/templates/codebase/conventions.md +204 -204
  141. package/kit/framework/templates/codebase/integrations.md +192 -192
  142. package/kit/framework/templates/codebase/stack.md +158 -158
  143. package/kit/framework/templates/codebase/structure.md +199 -199
  144. package/kit/framework/templates/codebase/testing.md +301 -301
  145. package/kit/framework/templates/config.json +44 -44
  146. package/kit/framework/templates/context.md +352 -352
  147. package/kit/framework/templates/continue-here.md +78 -78
  148. package/kit/framework/templates/copilot-instructions.md +7 -7
  149. package/kit/framework/templates/debug-subagent-prompt.md +91 -91
  150. package/kit/framework/templates/dev-preferences.md +20 -20
  151. package/kit/framework/templates/discovery.md +146 -146
  152. package/kit/framework/templates/discussion-log.md +63 -63
  153. package/kit/framework/templates/milestone-archive.md +123 -123
  154. package/kit/framework/templates/milestone.md +115 -115
  155. package/kit/framework/templates/phase-prompt.md +610 -610
  156. package/kit/framework/templates/planner-subagent-prompt.md +117 -117
  157. package/kit/framework/templates/project.md +186 -186
  158. package/kit/framework/templates/requirements.md +231 -231
  159. package/kit/framework/templates/research-project/ARCHITECTURE.md +204 -204
  160. package/kit/framework/templates/research-project/FEATURES.md +147 -147
  161. package/kit/framework/templates/research-project/PITFALLS.md +200 -200
  162. package/kit/framework/templates/research-project/STACK.md +120 -120
  163. package/kit/framework/templates/research-project/SUMMARY.md +170 -170
  164. package/kit/framework/templates/research.md +419 -419
  165. package/kit/framework/templates/retrospective.md +54 -54
  166. package/kit/framework/templates/roadmap.md +202 -202
  167. package/kit/framework/templates/state.md +176 -176
  168. package/kit/framework/templates/summary-complex.md +59 -59
  169. package/kit/framework/templates/summary-minimal.md +41 -41
  170. package/kit/framework/templates/summary-standard.md +48 -48
  171. package/kit/framework/templates/summary.md +209 -209
  172. package/kit/framework/templates/user-profile.md +146 -146
  173. package/kit/framework/templates/user-setup.md +256 -256
  174. package/kit/framework/templates/verification-report.md +258 -258
  175. package/kit/framework/workflows/add-phase.md +112 -112
  176. package/kit/framework/workflows/add-tests.md +351 -351
  177. package/kit/framework/workflows/add-todo.md +158 -158
  178. package/kit/framework/workflows/audit-milestone.md +340 -340
  179. package/kit/framework/workflows/audit-uat.md +109 -109
  180. package/kit/framework/workflows/autonomous.md +891 -891
  181. package/kit/framework/workflows/check-todos.md +177 -177
  182. package/kit/framework/workflows/cleanup.md +152 -152
  183. package/kit/framework/workflows/complete-milestone.md +696 -696
  184. package/kit/framework/workflows/diagnose-issues.md +231 -231
  185. package/kit/framework/workflows/discovery-phase.md +289 -289
  186. package/kit/framework/workflows/discuss-phase-assumptions.md +653 -653
  187. package/kit/framework/workflows/discuss-phase.md +784 -784
  188. package/kit/framework/workflows/do.md +104 -104
  189. package/kit/framework/workflows/execute-phase.md +838 -838
  190. package/kit/framework/workflows/execute-plan.md +510 -510
  191. package/kit/framework/workflows/fast.md +102 -102
  192. package/kit/framework/workflows/forensics.md +265 -265
  193. package/kit/framework/workflows/health.md +181 -181
  194. package/kit/framework/workflows/help.md +619 -619
  195. package/kit/framework/workflows/insert-phase.md +130 -130
  196. package/kit/framework/workflows/list-phase-assumptions.md +178 -178
  197. package/kit/framework/workflows/list-workspaces.md +56 -56
  198. package/kit/framework/workflows/manager.md +362 -362
  199. package/kit/framework/workflows/map-codebase.md +377 -377
  200. package/kit/framework/workflows/milestone-summary.md +223 -223
  201. package/kit/framework/workflows/new-milestone.md +486 -486
  202. package/kit/framework/workflows/new-project.md +1159 -1159
  203. package/kit/framework/workflows/new-workspace.md +237 -237
  204. package/kit/framework/workflows/next.md +97 -97
  205. package/kit/framework/workflows/node-repair.md +92 -92
  206. package/kit/framework/workflows/note.md +156 -156
  207. package/kit/framework/workflows/pause-work.md +176 -176
  208. package/kit/framework/workflows/plan-milestone-gaps.md +273 -273
  209. package/kit/framework/workflows/plan-phase.md +765 -765
  210. package/kit/framework/workflows/plant-seed.md +169 -169
  211. package/kit/framework/workflows/pr-branch.md +129 -129
  212. package/kit/framework/workflows/profile-user.md +450 -450
  213. package/kit/framework/workflows/progress.md +507 -507
  214. package/kit/framework/workflows/quick.md +757 -757
  215. package/kit/framework/workflows/remove-phase.md +155 -155
  216. package/kit/framework/workflows/remove-workspace.md +90 -90
  217. package/kit/framework/workflows/research-phase.md +82 -82
  218. package/kit/framework/workflows/resume-project.md +326 -326
  219. package/kit/framework/workflows/review.md +228 -228
  220. package/kit/framework/workflows/session-report.md +146 -146
  221. package/kit/framework/workflows/settings.md +283 -283
  222. package/kit/framework/workflows/ship.md +228 -228
  223. package/kit/framework/workflows/stats.md +60 -60
  224. package/kit/framework/workflows/transition.md +671 -671
  225. package/kit/framework/workflows/ui-phase.md +302 -302
  226. package/kit/framework/workflows/ui-review.md +165 -165
  227. package/kit/framework/workflows/update.md +323 -323
  228. package/kit/framework/workflows/validate-phase.md +174 -174
  229. package/kit/framework/workflows/verify-phase.md +252 -252
  230. package/kit/framework/workflows/verify-work.md +637 -637
  231. package/kit/hooks/check-update.js +118 -118
  232. package/kit/hooks/context-monitor.js +163 -163
  233. package/kit/hooks/prompt-guard.js +103 -103
  234. package/kit/hooks/statusline.js +125 -125
  235. package/kit/hooks/workflow-guard.js +101 -101
  236. package/kit/settings.json +45 -45
  237. package/kit/skills/_shared-multi-tenant/glossary.md +186 -0
  238. package/kit/skills/audit-log-multi-tenant/SKILL.md +334 -0
  239. package/kit/skills/b2b-saas-architecture/SKILL.md +300 -0
  240. package/kit/skills/crm-lead-pipeline-patterns/SKILL.md +326 -0
  241. package/kit/skills/evolution-go-whatsapp-integration/SKILL.md +322 -0
  242. package/kit/skills/example-skill/SKILL.md +42 -42
  243. package/kit/skills/lgpd-multi-tenant-compliance/SKILL.md +340 -0
  244. package/kit/skills/member-invite-flow/SKILL.md +305 -0
  245. package/kit/skills/member-management-react-shadcn/SKILL.md +328 -0
  246. package/kit/skills/multi-tenant-performance-scaling/SKILL.md +312 -0
  247. package/kit/skills/multi-tenant-rls-hierarchy/SKILL.md +338 -0
  248. package/kit/skills/org-onboarding-flow/SKILL.md +257 -0
  249. package/kit/skills/org-switcher-react-pattern/SKILL.md +349 -0
  250. package/kit/skills/permission-gate-react-pattern/SKILL.md +271 -0
  251. package/kit/skills/rbac-permissions-matrix-supabase/SKILL.md +301 -0
  252. package/kit/skills/super-admin-platform-pattern/SKILL.md +322 -0
  253. package/kit/skills/whatsapp-conversation-state-machine/SKILL.md +287 -0
  254. package/package.json +63 -63
  255. package/src/core/kit.js +216 -216
  256. package/src/core/reflect.js +247 -247
  257. package/src/core/reverse-sync.js +372 -372
  258. package/src/core/sync.js +418 -418
  259. package/src/core/watch.js +121 -121
@@ -1,228 +1,228 @@
1
- <purpose>
2
- Cria um pull request a partir do trabalho concluído de fase/marco, gera um corpo rico para o PR a partir dos artefatos de planejamento, opcionalmente executa revisão de código e prepara para o merge. Fecha o loop planejar → executar → verificar → publicar.
3
- </purpose>
4
-
5
- <required_reading>
6
- Leia todos os arquivos referenciados pelo execution_context do prompt invocador antes de começar.
7
- </required_reading>
8
-
9
- <process>
10
-
11
- <step name="initialize">
12
- Analise os argumentos e carregue o estado do projeto:
13
-
14
- ```bash
15
- INIT=$(node "./.claude/framework/bin/tools.cjs" init phase-op "${PHASE_ARG}")
16
- if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
17
- ```
18
-
19
- Analise do JSON do init: `phase_found`, `phase_dir`, `phase_number`, `phase_name`, `padded_phase`, `commit_docs`.
20
-
21
- Também carregue o config para a estratégia de branching:
22
- ```bash
23
- CONFIG=$(node "./.claude/framework/bin/tools.cjs" state load)
24
- ```
25
-
26
- Extraia: `branching_strategy`, `branch_name`.
27
- </step>
28
-
29
- <step name="preflight_checks">
30
- Verifique se o trabalho está pronto para publicar:
31
-
32
- 1. **Verificação passou?**
33
- ```bash
34
- VERIFICATION=$(cat ${PHASE_DIR}/*-VERIFICATION.md 2>/dev/null)
35
- ```
36
- Verifique `status: passed` ou `status: human_needed` (com aprovação humana).
37
- Se nenhum VERIFICATION.md ou status for `gaps_found`: avise e peça confirmação do usuário.
38
-
39
- 2. **Árvore de trabalho limpa?**
40
- ```bash
41
- git status --short
42
- ```
43
- Se houver mudanças não commitadas: peça ao usuário para fazer commit ou stash primeiro.
44
-
45
- 3. **Na branch correta?**
46
- ```bash
47
- CURRENT_BRANCH=$(git branch --show-current)
48
- ```
49
- Se estiver em `main`/`master`: avise — deve estar em uma branch de feature.
50
- Se a branching_strategy for `none`: ofereça criar uma branch agora.
51
-
52
- 4. **Remote configurado?**
53
- ```bash
54
- git remote -v | head -2
55
- ```
56
- Detecte o remote `origin`. Se nenhum remote: erro — não é possível criar PR.
57
-
58
- 5. **CLI `gh` disponível?**
59
- ```bash
60
- which gh && gh auth status 2>&1
61
- ```
62
- Se `gh` não encontrado ou não autenticado: forneça instruções de configuração e encerre.
63
- </step>
64
-
65
- <step name="push_branch">
66
- Faça push da branch atual para o remote:
67
-
68
- ```bash
69
- git push origin ${CURRENT_BRANCH} 2>&1
70
- ```
71
-
72
- Se o push falhar (ex.: sem upstream): defina o upstream:
73
- ```bash
74
- git push --set-upstream origin ${CURRENT_BRANCH} 2>&1
75
- ```
76
-
77
- Reporte: "Push de `{branch}` para origin ({contagem_commits} commits à frente de main)"
78
- </step>
79
-
80
- <step name="generate_pr_body">
81
- Gere automaticamente um corpo rico para o PR a partir dos artefatos de planejamento:
82
-
83
- **1. Título:**
84
- ```
85
- Fase {número_da_fase}: {nome_da_fase}
86
- ```
87
- Ou para marco: `Marco {versão}: {nome}`
88
-
89
- **2. Seção de Resumo:**
90
- Leia ROADMAP.md para o objetivo da fase. Leia VERIFICATION.md para o status de verificação.
91
-
92
- ```markdown
93
- ## Resumo
94
-
95
- **Fase {N}: {Nome}**
96
- **Objetivo:** {objetivo do ROADMAP.md}
97
- **Status:** Verificado ✓
98
-
99
- {Um parágrafo sintetizado dos arquivos SUMMARY.md — o que foi construído}
100
- ```
101
-
102
- **3. Seção de Mudanças:**
103
- Para cada SUMMARY.md no diretório da fase:
104
- ```markdown
105
- ## Mudanças
106
-
107
- ### Plano {plan_id}: {nome_do_plano}
108
- {uma_linha do frontmatter do SUMMARY.md}
109
-
110
- **Arquivos principais:**
111
- {key-files.created e key-files.modified do frontmatter do SUMMARY.md}
112
- ```
113
-
114
- **4. Seção de Requisitos:**
115
- ```markdown
116
- ## Requisitos Atendidos
117
-
118
- {REQ-IDs do frontmatter do plano, vinculados às descrições do REQUIREMENTS.md}
119
- ```
120
-
121
- **5. Seção de Testes:**
122
- ```markdown
123
- ## Verificação
124
-
125
- - [x] Verificação automatizada: {passou/falhou do VERIFICATION.md}
126
- - {itens de verificação humana do VERIFICATION.md, se houver}
127
- ```
128
-
129
- **6. Seção de Decisões:**
130
- ```markdown
131
- ## Decisões Principais
132
-
133
- {Decisões do contexto acumulado do STATE.md relevantes para esta fase}
134
- ```
135
- </step>
136
-
137
- <step name="create_pr">
138
- Crie o PR usando o corpo gerado:
139
-
140
- ```bash
141
- gh pr create \
142
- --title "Fase ${PHASE_NUMBER}: ${PHASE_NAME}" \
143
- --body "${PR_BODY}" \
144
- --base main
145
- ```
146
-
147
- Se a flag `--draft` foi passada: adicione `--draft`.
148
-
149
- Reporte: "PR #{número} criado: {url}"
150
- </step>
151
-
152
- <step name="optional_review">
153
- Pergunte se o usuário quer acionar uma revisão de código:
154
-
155
- ```
156
- AskUserQuestion:
157
- question: "PR criado. Executar revisão de código antes do merge?"
158
- options:
159
- - label: "Pular revisão"
160
- description: "PR está pronto — fazer merge quando CI passar"
161
- - label: "Auto-revisão"
162
- description: "Vou revisar o diff no PR eu mesmo"
163
- - label: "Solicitar revisão"
164
- description: "Solicitar revisão de um colega de equipe"
165
- ```
166
-
167
- **Se "Solicitar revisão":**
168
- ```bash
169
- gh pr edit ${PR_NUMBER} --add-reviewer "${REVIEWER}"
170
- ```
171
-
172
- **Se "Auto-revisão":**
173
- Reporte a URL do PR e sugira: "Revise o diff em {url}/files"
174
- </step>
175
-
176
- <step name="track_shipping">
177
- Atualize o STATE.md para refletir a ação de publicação:
178
-
179
- ```bash
180
- node "./.claude/framework/bin/tools.cjs" state update "Last Activity" "$(date +%Y-%m-%d)"
181
- node "./.claude/framework/bin/tools.cjs" state update "Status" "Fase ${PHASE_NUMBER} publicada — PR #${PR_NUMBER}"
182
- ```
183
-
184
- Se `commit_docs` for true:
185
- ```bash
186
- node "./.claude/framework/bin/tools.cjs" commit "docs(${padded_phase}): publicar fase ${PHASE_NUMBER} — PR #${PR_NUMBER}" --files .planning/STATE.md
187
- ```
188
- </step>
189
-
190
- <step name="report">
191
- ```
192
- ───────────────────────────────────────────────────────────────
193
-
194
- ## ✓ Fase {X}: {Nome} — Publicada
195
-
196
- PR: #{número} ({url})
197
- Branch: {branch} → main
198
- Commits: {contagem}
199
- Verificação: ✓ Passou
200
- Requisitos: {N} REQ-IDs atendidos
201
-
202
- Próximos passos:
203
- - Revisar/aprovar PR
204
- - Fazer merge quando CI passar
205
- - /concluir-marco (se for a última fase do marco)
206
- - /progresso (para ver o que vem a seguir)
207
-
208
- ───────────────────────────────────────────────────────────────
209
- ```
210
- </step>
211
-
212
- </process>
213
-
214
- <offer_next>
215
- Após publicar:
216
-
217
- - /concluir-marco — se todas as fases do marco estiverem concluídas
218
- - /progresso — ver o estado geral do projeto
219
- - /executar-fase {próxima} — continuar para a próxima fase
220
- </offer_next>
221
-
222
- <success_criteria>
223
- - [ ] Verificações de preflight passaram (verificação, árvore limpa, branch, remote, gh)
224
- - [ ] Branch enviada para o remote via push
225
- - [ ] PR criado com corpo rico gerado automaticamente
226
- - [ ] STATE.md atualizado com status de publicação
227
- - [ ] Usuário conhece o número do PR e os próximos passos
228
- </success_criteria>
1
+ <purpose>
2
+ Cria um pull request a partir do trabalho concluído de fase/marco, gera um corpo rico para o PR a partir dos artefatos de planejamento, opcionalmente executa revisão de código e prepara para o merge. Fecha o loop planejar → executar → verificar → publicar.
3
+ </purpose>
4
+
5
+ <required_reading>
6
+ Leia todos os arquivos referenciados pelo execution_context do prompt invocador antes de começar.
7
+ </required_reading>
8
+
9
+ <process>
10
+
11
+ <step name="initialize">
12
+ Analise os argumentos e carregue o estado do projeto:
13
+
14
+ ```bash
15
+ INIT=$(node "./.claude/framework/bin/tools.cjs" init phase-op "${PHASE_ARG}")
16
+ if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
17
+ ```
18
+
19
+ Analise do JSON do init: `phase_found`, `phase_dir`, `phase_number`, `phase_name`, `padded_phase`, `commit_docs`.
20
+
21
+ Também carregue o config para a estratégia de branching:
22
+ ```bash
23
+ CONFIG=$(node "./.claude/framework/bin/tools.cjs" state load)
24
+ ```
25
+
26
+ Extraia: `branching_strategy`, `branch_name`.
27
+ </step>
28
+
29
+ <step name="preflight_checks">
30
+ Verifique se o trabalho está pronto para publicar:
31
+
32
+ 1. **Verificação passou?**
33
+ ```bash
34
+ VERIFICATION=$(cat ${PHASE_DIR}/*-VERIFICATION.md 2>/dev/null)
35
+ ```
36
+ Verifique `status: passed` ou `status: human_needed` (com aprovação humana).
37
+ Se nenhum VERIFICATION.md ou status for `gaps_found`: avise e peça confirmação do usuário.
38
+
39
+ 2. **Árvore de trabalho limpa?**
40
+ ```bash
41
+ git status --short
42
+ ```
43
+ Se houver mudanças não commitadas: peça ao usuário para fazer commit ou stash primeiro.
44
+
45
+ 3. **Na branch correta?**
46
+ ```bash
47
+ CURRENT_BRANCH=$(git branch --show-current)
48
+ ```
49
+ Se estiver em `main`/`master`: avise — deve estar em uma branch de feature.
50
+ Se a branching_strategy for `none`: ofereça criar uma branch agora.
51
+
52
+ 4. **Remote configurado?**
53
+ ```bash
54
+ git remote -v | head -2
55
+ ```
56
+ Detecte o remote `origin`. Se nenhum remote: erro — não é possível criar PR.
57
+
58
+ 5. **CLI `gh` disponível?**
59
+ ```bash
60
+ which gh && gh auth status 2>&1
61
+ ```
62
+ Se `gh` não encontrado ou não autenticado: forneça instruções de configuração e encerre.
63
+ </step>
64
+
65
+ <step name="push_branch">
66
+ Faça push da branch atual para o remote:
67
+
68
+ ```bash
69
+ git push origin ${CURRENT_BRANCH} 2>&1
70
+ ```
71
+
72
+ Se o push falhar (ex.: sem upstream): defina o upstream:
73
+ ```bash
74
+ git push --set-upstream origin ${CURRENT_BRANCH} 2>&1
75
+ ```
76
+
77
+ Reporte: "Push de `{branch}` para origin ({contagem_commits} commits à frente de main)"
78
+ </step>
79
+
80
+ <step name="generate_pr_body">
81
+ Gere automaticamente um corpo rico para o PR a partir dos artefatos de planejamento:
82
+
83
+ **1. Título:**
84
+ ```
85
+ Fase {número_da_fase}: {nome_da_fase}
86
+ ```
87
+ Ou para marco: `Marco {versão}: {nome}`
88
+
89
+ **2. Seção de Resumo:**
90
+ Leia ROADMAP.md para o objetivo da fase. Leia VERIFICATION.md para o status de verificação.
91
+
92
+ ```markdown
93
+ ## Resumo
94
+
95
+ **Fase {N}: {Nome}**
96
+ **Objetivo:** {objetivo do ROADMAP.md}
97
+ **Status:** Verificado ✓
98
+
99
+ {Um parágrafo sintetizado dos arquivos SUMMARY.md — o que foi construído}
100
+ ```
101
+
102
+ **3. Seção de Mudanças:**
103
+ Para cada SUMMARY.md no diretório da fase:
104
+ ```markdown
105
+ ## Mudanças
106
+
107
+ ### Plano {plan_id}: {nome_do_plano}
108
+ {uma_linha do frontmatter do SUMMARY.md}
109
+
110
+ **Arquivos principais:**
111
+ {key-files.created e key-files.modified do frontmatter do SUMMARY.md}
112
+ ```
113
+
114
+ **4. Seção de Requisitos:**
115
+ ```markdown
116
+ ## Requisitos Atendidos
117
+
118
+ {REQ-IDs do frontmatter do plano, vinculados às descrições do REQUIREMENTS.md}
119
+ ```
120
+
121
+ **5. Seção de Testes:**
122
+ ```markdown
123
+ ## Verificação
124
+
125
+ - [x] Verificação automatizada: {passou/falhou do VERIFICATION.md}
126
+ - {itens de verificação humana do VERIFICATION.md, se houver}
127
+ ```
128
+
129
+ **6. Seção de Decisões:**
130
+ ```markdown
131
+ ## Decisões Principais
132
+
133
+ {Decisões do contexto acumulado do STATE.md relevantes para esta fase}
134
+ ```
135
+ </step>
136
+
137
+ <step name="create_pr">
138
+ Crie o PR usando o corpo gerado:
139
+
140
+ ```bash
141
+ gh pr create \
142
+ --title "Fase ${PHASE_NUMBER}: ${PHASE_NAME}" \
143
+ --body "${PR_BODY}" \
144
+ --base main
145
+ ```
146
+
147
+ Se a flag `--draft` foi passada: adicione `--draft`.
148
+
149
+ Reporte: "PR #{número} criado: {url}"
150
+ </step>
151
+
152
+ <step name="optional_review">
153
+ Pergunte se o usuário quer acionar uma revisão de código:
154
+
155
+ ```
156
+ AskUserQuestion:
157
+ question: "PR criado. Executar revisão de código antes do merge?"
158
+ options:
159
+ - label: "Pular revisão"
160
+ description: "PR está pronto — fazer merge quando CI passar"
161
+ - label: "Auto-revisão"
162
+ description: "Vou revisar o diff no PR eu mesmo"
163
+ - label: "Solicitar revisão"
164
+ description: "Solicitar revisão de um colega de equipe"
165
+ ```
166
+
167
+ **Se "Solicitar revisão":**
168
+ ```bash
169
+ gh pr edit ${PR_NUMBER} --add-reviewer "${REVIEWER}"
170
+ ```
171
+
172
+ **Se "Auto-revisão":**
173
+ Reporte a URL do PR e sugira: "Revise o diff em {url}/files"
174
+ </step>
175
+
176
+ <step name="track_shipping">
177
+ Atualize o STATE.md para refletir a ação de publicação:
178
+
179
+ ```bash
180
+ node "./.claude/framework/bin/tools.cjs" state update "Last Activity" "$(date +%Y-%m-%d)"
181
+ node "./.claude/framework/bin/tools.cjs" state update "Status" "Fase ${PHASE_NUMBER} publicada — PR #${PR_NUMBER}"
182
+ ```
183
+
184
+ Se `commit_docs` for true:
185
+ ```bash
186
+ node "./.claude/framework/bin/tools.cjs" commit "docs(${padded_phase}): publicar fase ${PHASE_NUMBER} — PR #${PR_NUMBER}" --files .planning/STATE.md
187
+ ```
188
+ </step>
189
+
190
+ <step name="report">
191
+ ```
192
+ ───────────────────────────────────────────────────────────────
193
+
194
+ ## ✓ Fase {X}: {Nome} — Publicada
195
+
196
+ PR: #{número} ({url})
197
+ Branch: {branch} → main
198
+ Commits: {contagem}
199
+ Verificação: ✓ Passou
200
+ Requisitos: {N} REQ-IDs atendidos
201
+
202
+ Próximos passos:
203
+ - Revisar/aprovar PR
204
+ - Fazer merge quando CI passar
205
+ - /concluir-marco (se for a última fase do marco)
206
+ - /progresso (para ver o que vem a seguir)
207
+
208
+ ───────────────────────────────────────────────────────────────
209
+ ```
210
+ </step>
211
+
212
+ </process>
213
+
214
+ <offer_next>
215
+ Após publicar:
216
+
217
+ - /concluir-marco — se todas as fases do marco estiverem concluídas
218
+ - /progresso — ver o estado geral do projeto
219
+ - /executar-fase {próxima} — continuar para a próxima fase
220
+ </offer_next>
221
+
222
+ <success_criteria>
223
+ - [ ] Verificações de preflight passaram (verificação, árvore limpa, branch, remote, gh)
224
+ - [ ] Branch enviada para o remote via push
225
+ - [ ] PR criado com corpo rico gerado automaticamente
226
+ - [ ] STATE.md atualizado com status de publicação
227
+ - [ ] Usuário conhece o número do PR e os próximos passos
228
+ </success_criteria>
@@ -1,60 +1,60 @@
1
- <purpose>
2
- Exibe estatísticas abrangentes do projeto incluindo fases, planos, requisitos, métricas git e linha do tempo.
3
- </purpose>
4
-
5
- <required_reading>
6
- Leia todos os arquivos referenciados pelo execution_context do prompt invocador antes de começar.
7
- </required_reading>
8
-
9
- <process>
10
-
11
- <step name="gather_stats">
12
- Colete estatísticas do projeto:
13
-
14
- ```bash
15
- STATS=$(node "./.claude/framework/bin/tools.cjs" stats json)
16
- if [[ "$STATS" == @file:* ]]; then STATS=$(cat "${STATS#@file:}"); fi
17
- ```
18
-
19
- Extraia campos do JSON: `milestone_version`, `milestone_name`, `phases`, `phases_completed`, `phases_total`, `total_plans`, `total_summaries`, `percent`, `plan_percent`, `requirements_total`, `requirements_complete`, `git_commits`, `git_first_commit_date`, `last_activity`.
20
- </step>
21
-
22
- <step name="present_stats">
23
- Apresente ao usuário com este formato:
24
-
25
- ```
26
- # 📊 Estatísticas do Projeto — {milestone_version} {milestone_name}
27
-
28
- ## Progresso
29
- [████████░░] X/Y fases (Z%)
30
-
31
- ## Planos
32
- X/Y planos concluídos (Z%)
33
-
34
- ## Fases
35
- | Fase | Nome | Planos | Concluídos | Status |
36
- |------|------|--------|------------|--------|
37
- | ... | ... | ... | ... | ... |
38
-
39
- ## Requisitos
40
- ✅ X/Y requisitos concluídos
41
-
42
- ## Git
43
- - **Commits:** N
44
- - **Iniciado em:** AAAA-MM-DD
45
- - **Última atividade:** AAAA-MM-DD
46
-
47
- ## Linha do Tempo
48
- - **Idade do projeto:** N dias
49
- ```
50
-
51
- Se nenhum diretório `.planning/` existir, informe ao usuário para executar `/novo-projeto` primeiro.
52
- </step>
53
-
54
- </process>
55
-
56
- <success_criteria>
57
- - [ ] Estatísticas coletadas do estado do projeto
58
- - [ ] Resultados formatados claramente
59
- - [ ] Exibidos ao usuário
60
- </success_criteria>
1
+ <purpose>
2
+ Exibe estatísticas abrangentes do projeto incluindo fases, planos, requisitos, métricas git e linha do tempo.
3
+ </purpose>
4
+
5
+ <required_reading>
6
+ Leia todos os arquivos referenciados pelo execution_context do prompt invocador antes de começar.
7
+ </required_reading>
8
+
9
+ <process>
10
+
11
+ <step name="gather_stats">
12
+ Colete estatísticas do projeto:
13
+
14
+ ```bash
15
+ STATS=$(node "./.claude/framework/bin/tools.cjs" stats json)
16
+ if [[ "$STATS" == @file:* ]]; then STATS=$(cat "${STATS#@file:}"); fi
17
+ ```
18
+
19
+ Extraia campos do JSON: `milestone_version`, `milestone_name`, `phases`, `phases_completed`, `phases_total`, `total_plans`, `total_summaries`, `percent`, `plan_percent`, `requirements_total`, `requirements_complete`, `git_commits`, `git_first_commit_date`, `last_activity`.
20
+ </step>
21
+
22
+ <step name="present_stats">
23
+ Apresente ao usuário com este formato:
24
+
25
+ ```
26
+ # 📊 Estatísticas do Projeto — {milestone_version} {milestone_name}
27
+
28
+ ## Progresso
29
+ [████████░░] X/Y fases (Z%)
30
+
31
+ ## Planos
32
+ X/Y planos concluídos (Z%)
33
+
34
+ ## Fases
35
+ | Fase | Nome | Planos | Concluídos | Status |
36
+ |------|------|--------|------------|--------|
37
+ | ... | ... | ... | ... | ... |
38
+
39
+ ## Requisitos
40
+ ✅ X/Y requisitos concluídos
41
+
42
+ ## Git
43
+ - **Commits:** N
44
+ - **Iniciado em:** AAAA-MM-DD
45
+ - **Última atividade:** AAAA-MM-DD
46
+
47
+ ## Linha do Tempo
48
+ - **Idade do projeto:** N dias
49
+ ```
50
+
51
+ Se nenhum diretório `.planning/` existir, informe ao usuário para executar `/novo-projeto` primeiro.
52
+ </step>
53
+
54
+ </process>
55
+
56
+ <success_criteria>
57
+ - [ ] Estatísticas coletadas do estado do projeto
58
+ - [ ] Resultados formatados claramente
59
+ - [ ] Exibidos ao usuário
60
+ </success_criteria>