up-cc 0.16.1 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/README.md +87 -577
  2. package/package.json +5 -3
  3. package/up/CHANGELOG.md +110 -0
  4. package/up/agents/up-arquiteto.md +95 -39
  5. package/up/agents/up-auditor.md +218 -0
  6. package/up/agents/up-executor.md +94 -31
  7. package/up/agents/up-mapeador-codigo.md +63 -10
  8. package/up/agents/up-pesquisador.md +278 -0
  9. package/up/agents/up-revisor.md +249 -0
  10. package/up/agents/up-sintetizador.md +156 -179
  11. package/up/agents/up-tester.md +280 -0
  12. package/up/agents/up-verificador.md +95 -11
  13. package/up/bin/install.js +182 -19
  14. package/up/bin/lib/core.cjs +17 -43
  15. package/up/bin/lib/github.cjs +495 -0
  16. package/up/bin/lib/multica.cjs +424 -0
  17. package/up/bin/up-tools.cjs +167 -46
  18. package/up/commands/auditar.md +66 -0
  19. package/up/commands/build.md +54 -43
  20. package/up/commands/depurar.md +1 -1
  21. package/up/commands/plan.md +52 -38
  22. package/up/commands/rapido.md +15 -9
  23. package/up/commands/testar.md +81 -122
  24. package/up/commands/up.md +106 -0
  25. package/up/hooks/up-session-start.js +107 -0
  26. package/up/references/engineering-principles.md +1 -1
  27. package/up/references/governance-rules.md +5 -5
  28. package/up/references/production-requirements.md +1 -1
  29. package/up/references/severity-levels.md +2 -2
  30. package/up/references/tdd-evidence-types.md +81 -0
  31. package/up/skills/up-brainstorm/SKILL.md +54 -0
  32. package/up/skills/up-brainstorm/visual-companion.md +33 -0
  33. package/up/skills/up-tdd/SKILL.md +39 -0
  34. package/up/skills/up-verificar-antes-de-concluir/SKILL.md +49 -0
  35. package/up/skills/usando-up/SKILL.md +26 -0
  36. package/up/templates/audit-plan.md +3 -3
  37. package/up/templates/audit-report.md +2 -2
  38. package/up/templates/design-tokens.md +2 -2
  39. package/up/workflows/auditar.md +255 -0
  40. package/up/workflows/build.md +600 -386
  41. package/up/workflows/dcrv.md +183 -99
  42. package/up/workflows/governance.md +112 -220
  43. package/up/workflows/plan.md +169 -399
  44. package/up/workflows/rapido.md +7 -1
  45. package/up/workflows/up.md +447 -0
  46. package/up/agents/up-analista-codigo.md +0 -446
  47. package/up/agents/up-api-tester.md +0 -405
  48. package/up/agents/up-architecture-supervisor.md +0 -126
  49. package/up/agents/up-audit-supervisor.md +0 -83
  50. package/up/agents/up-auditor-modernidade.md +0 -378
  51. package/up/agents/up-auditor-performance.md +0 -426
  52. package/up/agents/up-auditor-ux.md +0 -396
  53. package/up/agents/up-backend-specialist.md +0 -175
  54. package/up/agents/up-blind-validator.md +0 -259
  55. package/up/agents/up-chief-architect.md +0 -184
  56. package/up/agents/up-chief-engineer.md +0 -202
  57. package/up/agents/up-chief-operations.md +0 -123
  58. package/up/agents/up-chief-product.md +0 -103
  59. package/up/agents/up-chief-quality.md +0 -211
  60. package/up/agents/up-clone-crawler.md +0 -234
  61. package/up/agents/up-clone-design-extractor.md +0 -227
  62. package/up/agents/up-clone-feature-mapper.md +0 -225
  63. package/up/agents/up-clone-prd-writer.md +0 -169
  64. package/up/agents/up-clone-verifier.md +0 -227
  65. package/up/agents/up-code-reviewer.md +0 -229
  66. package/up/agents/up-consolidador-ideias.md +0 -493
  67. package/up/agents/up-database-specialist.md +0 -169
  68. package/up/agents/up-delivery-auditor.md +0 -247
  69. package/up/agents/up-devops-agent.md +0 -203
  70. package/up/agents/up-execution-supervisor.md +0 -315
  71. package/up/agents/up-exhaustive-tester.md +0 -348
  72. package/up/agents/up-frontend-specialist.md +0 -152
  73. package/up/agents/up-operations-supervisor.md +0 -94
  74. package/up/agents/up-pesquisador-mercado.md +0 -350
  75. package/up/agents/up-pesquisador-projeto.md +0 -358
  76. package/up/agents/up-planning-auditor.md +0 -284
  77. package/up/agents/up-planning-supervisor.md +0 -260
  78. package/up/agents/up-product-analyst.md +0 -192
  79. package/up/agents/up-product-supervisor.md +0 -83
  80. package/up/agents/up-project-ceo.md +0 -352
  81. package/up/agents/up-qa-agent.md +0 -171
  82. package/up/agents/up-quality-supervisor.md +0 -178
  83. package/up/agents/up-requirements-validator.md +0 -230
  84. package/up/agents/up-security-reviewer.md +0 -137
  85. package/up/agents/up-sintetizador-melhorias.md +0 -407
  86. package/up/agents/up-system-designer.md +0 -332
  87. package/up/agents/up-technical-writer.md +0 -188
  88. package/up/agents/up-verification-supervisor.md +0 -111
  89. package/up/agents/up-visual-critic.md +0 -358
  90. package/up/commands/adicionar-fase.md +0 -47
  91. package/up/commands/adicionar-testes.md +0 -145
  92. package/up/commands/ajuda.md +0 -176
  93. package/up/commands/atualizar.md +0 -103
  94. package/up/commands/clone-builder.md +0 -67
  95. package/up/commands/configurar.md +0 -219
  96. package/up/commands/custos.md +0 -67
  97. package/up/commands/dashboard.md +0 -48
  98. package/up/commands/discutir-fase.md +0 -35
  99. package/up/commands/executar-fase.md +0 -40
  100. package/up/commands/ideias.md +0 -49
  101. package/up/commands/iniciar.md +0 -31
  102. package/up/commands/mapear-codigo.md +0 -63
  103. package/up/commands/melhorias.md +0 -45
  104. package/up/commands/mobile-first.md +0 -71
  105. package/up/commands/modo-builder.md +0 -186
  106. package/up/commands/novo-projeto.md +0 -40
  107. package/up/commands/onboard.md +0 -69
  108. package/up/commands/pausar.md +0 -33
  109. package/up/commands/planejar-fase.md +0 -45
  110. package/up/commands/progresso.md +0 -33
  111. package/up/commands/remover-fase.md +0 -34
  112. package/up/commands/resetar.md +0 -27
  113. package/up/commands/retomar.md +0 -35
  114. package/up/commands/saude.md +0 -103
  115. package/up/commands/ux-tester.md +0 -63
  116. package/up/commands/verificar-trabalho.md +0 -35
  117. package/up/workflows/adicionar-fase.md +0 -112
  118. package/up/workflows/builder-e2e.md +0 -501
  119. package/up/workflows/builder.md +0 -3419
  120. package/up/workflows/ceo-intake.md +0 -305
  121. package/up/workflows/ceo-updates.md +0 -183
  122. package/up/workflows/clone-builder.md +0 -320
  123. package/up/workflows/discutir-fase.md +0 -336
  124. package/up/workflows/executar-fase.md +0 -358
  125. package/up/workflows/executar-plano.md +0 -659
  126. package/up/workflows/ideias.md +0 -381
  127. package/up/workflows/iniciar.md +0 -235
  128. package/up/workflows/melhorias.md +0 -409
  129. package/up/workflows/mobile-first.md +0 -692
  130. package/up/workflows/novo-projeto.md +0 -778
  131. package/up/workflows/planejar-fase.md +0 -293
  132. package/up/workflows/progresso.md +0 -226
  133. package/up/workflows/retomar.md +0 -231
  134. package/up/workflows/ux-tester.md +0 -526
  135. package/up/workflows/verificar-trabalho.md +0 -308
@@ -1,55 +1,37 @@
1
1
  <purpose>
2
- Workflow `/up:plan` — Planejamento completo de projeto.
2
+ Workflow `/up:plan` — Planejamento completo de projeto OU de fase.
3
3
 
4
- Conduz Estagios 1 (Intake) + 2 (Arquitetura) + 2.5 (Planejamento exaustivo de TODAS fases) + Planning Audit + PLAN-READY.
4
+ Conduz Arquitetura + Planejamento exaustivo de TODAS as fases + Planning Review + PLAN-READY.
5
5
 
6
- NAO executa nada. Para apos gerar PLAN-READY.md.
6
+ NAO executa nada. Para apos gerar PLAN-READY.md. Resultado: projeto completamente planejado, pronto
7
+ para `/up:build` no mesmo runtime ou outro.
7
8
 
8
- Resultado: projeto completamente planejado, pronto para `/up:build` no mesmo runtime ou outro.
9
+ Absorveu discutir-fase.md e planejar-fase.md: detecta automaticamente se o pedido e o PROJETO inteiro
10
+ ou uma FASE especifica (`/up:plan` vs `/up:plan N`).
9
11
  </purpose>
10
12
 
11
13
  <core_principle>
12
- Este workflow REUTILIZA os agentes existentes do UP. Apenas orquestra Intake → Arquitetura → Planejamento → Audit.
14
+ Pipeline final (redesign v2):
13
15
 
14
- Diferenca do builder:
15
- - Builder planeja UMA fase, executa, planeja proxima, executa, etc. (incremental)
16
- - Plan planeja TODAS as fases de uma vez antes de qualquer execucao (batch)
16
+ ```
17
+ up-pesquisador -> up-arquiteto (absorve system-designer) -> up-roteirista
18
+ -> up-sintetizador (valida REQUIREMENTS) -> [GATE approvals.log] -> up-revisor
19
+ ```
17
20
 
18
- Por que? Para permitir que o build rode em outro runtime (ex: planeja em Claude Code, executa em OpenCode).
21
+ O intake/brainstorm NAO acontece aqui ja rodou no `/up` (workflows/up.md, inline, sem CEO) e produziu
22
+ `.plano/BRIEFING.md`. `/up:plan` consome o BRIEFING. Se for chamado direto sem BRIEFING, faz um intake
23
+ minimo inline (sem CEO).
19
24
 
20
25
  **Model routing configuravel (v0.9.0+):**
21
- Antes de spawnar qualquer agente, resolver o modelo:
22
26
  ```bash
23
27
  MODEL=$(node "$HOME/.claude/up/bin/up-tools.cjs" config resolve-model {agent-name} --raw)
24
28
  ```
25
- Se `default`: nao passar `model=`. Se `opus/sonnet/haiku`: passar `model="{MODEL}"` no spawn.
26
- Isso permite que o usuario configure via `/up:configurar` quais agentes usam qual modelo.
27
- Sem configuracao, todos usam o modelo do runtime (comportamento v0.6.0).
28
-
29
- **Sonnet-ready obrigatorio** — todos planos em nivel maximo de detalhe.
30
-
31
- **REGRA ANTI-COLAPSO — SEPARACAO RIGIDA DE AGENTES:**
29
+ Default fixo: Opus planeja, Sonnet executa. `default` -> nao passar model=.
32
30
 
33
- O LLM tende a otimizar colapsando passos dar ao mesmo agente tarefas de analisar + projetar,
34
- ou pular supervisores por parecer "overhead". Isso e PROIBIDO.
31
+ **Sonnet-ready obrigatorio** todos os planos em nivel maximo de detalhe.
35
32
 
36
- **Cada passo abaixo DEVE ser um Agent() SEPARADO.**
37
- **NUNCA combinar dois passos em um unico spawn.**
38
- **NUNCA instruir um agente a fazer o trabalho de outro.**
39
-
40
- Exemplo do que NAO fazer:
41
- ```
42
- # ERRADO — combina product-analyst + system-designer
43
- Agent(subagent_type="up-product-analyst", prompt="Analisar produto E projetar sistema...")
44
-
45
- # ERRADO — pula supervisor
46
- Agent(subagent_type="up-arquiteto", prompt="Estruturar e validar...")
47
- ```
48
-
49
- **Mecanismo de enforcement: GATES verificaveis.**
50
- Cada supervisor DEVE escrever no `.plano/governance/approvals.log`.
51
- Cada GATE verifica que o log tem a entry esperada.
52
- Se o gate falha, NAO avance — spawne o agente faltante.
33
+ **SEPARACAO RIGIDA DE AGENTES:** cada passo e um `Agent()` SEPARADO. O enforcement e o GATE
34
+ deterministico do `approvals.log` (ver `@~/.claude/up/workflows/governance.md`), nao supervisores.
53
35
  </core_principle>
54
36
 
55
37
  <process>
@@ -60,8 +42,8 @@ Se o gate falha, NAO avance — spawne o agente faltante.
60
42
 
61
43
  ```bash
62
44
  if [ ! -f ~/.claude/up/owner-profile.md ]; then
63
- echo "Owner profile nao existe. Rodando /up:onboard primeiro..."
64
- # Delegar pro workflow onboarding.md
45
+ echo "Owner profile nao existe. Rodando onboarding..."
46
+ # Delegar pro workflow @~/.claude/up/workflows/onboarding.md
65
47
  fi
66
48
  ```
67
49
 
@@ -70,36 +52,26 @@ fi
70
52
  ```bash
71
53
  ls .plano/LOCK.md 2>/dev/null
72
54
  ```
73
-
74
55
  Se LOCK.md existe e `stage: planning`: retomar de onde parou.
75
56
 
76
- ## Estagio 1: INTAKE (CEO conduz)
57
+ ### 0.3 Deteccao projeto vs fase (absorve discutir-fase + planejar-fase)
77
58
 
78
- **Referencia:** `@~/.claude/up/workflows/ceo-intake.md`
59
+ Se `$ARGUMENTS` contem um numero de fase (ex: `/up:plan 3`), entrar em **MODO FASE** (planejar SO aquela
60
+ fase, com research/context inline e self-check). Senao, **MODO PROJETO** (planejar todas as fases).
79
61
 
80
- Spawnar CEO:
62
+ ## Estagio 1: INTAKE (inline, sem CEO)
81
63
 
82
- ```python
83
- Agent(
84
- subagent_type="up-project-ceo",
85
- prompt="""
86
- Conduzir intake para novo projeto UP via /up:plan.
87
-
88
- Briefing: {ARGUMENTS}
89
- Modo: detectar (greenfield | brownfield)
90
-
91
- Executar workflow ceo-intake.md ate completar:
92
- - Briefing coletado
93
- - Design system (passar pendente se nao tem)
94
- - Credenciais (passar pendente se nao tem)
95
- - Referencias
96
- - Restricoes
97
-
98
- Gerar BRIEFING.md, OWNER.md, PENDING.md, DESIGN-TOKENS.md.
99
- """
100
- )
64
+ Entrada esperada = `.plano/BRIEFING.md` (gerado pelo `/up`).
65
+
66
+ ```bash
67
+ [ -f .plano/BRIEFING.md ] && cat .plano/BRIEFING.md
101
68
  ```
102
69
 
70
+ **Se BRIEFING.md NAO existe** (plan chamado direto): fazer um intake minimo inline. Ler owner-profile
71
+ pra tom; perguntar o essencial via AskUserQuestion (briefing, design, credenciais criticas); gerar
72
+ `.plano/BRIEFING.md`, `.plano/PENDING.md`, `.plano/DESIGN-TOKENS.md` (custom ou placeholder shadcn).
73
+ Sem CEO, sem 5 blocos cerimoniais — so o que falta pra planejar.
74
+
103
75
  ## Estagio 2: ARQUITETURA
104
76
 
105
77
  ### 2.0 Gate: Inicializar .plano/
@@ -112,352 +84,195 @@ git init 2>/dev/null
112
84
  ### 2.1 Detectar Modo
113
85
 
114
86
  ```bash
115
- # Brownfield se ha codigo existente
116
- if ls package.json src/ app/ pages/ components/ 2>/dev/null; then
117
- MODE=brownfield
118
- else
119
- MODE=greenfield
120
- fi
87
+ if ls package.json src/ app/ pages/ components/ 2>/dev/null; then MODE=brownfield; else MODE=greenfield; fi
121
88
  ```
122
89
 
123
90
  ### 2.2 Pesquisa OU Mapeamento (paralelo)
124
91
 
125
- **Greenfield:** spawnar 4 pesquisadores em paralelo (ver builder.md secao similar).
92
+ **Greenfield:** se a pesquisa de dominio ainda nao rodou no `/up`, spawnar 4x `up-pesquisador`
93
+ (modo dominio) em paralelo + `up-sintetizador` (modo research) — ver `workflows/up.md` Passo 2.4.
94
+ Se `.plano/pesquisa/SUMMARY.md` ja existe, reutilizar.
126
95
 
127
- **Brownfield:** spawnar 4 mapeadores em paralelo (ver builder.md secao similar).
96
+ **Brownfield:** se `.plano/codebase/` nao existe, sugerir `/up:mapear-codigo`
97
+ (`@~/.claude/up/workflows/mapear-codigo.md`); senao reutilizar o mapa.
128
98
 
129
- ### 2.3 Pipeline de Arquitetura (com GATES verificaveis)
99
+ ### 2.3 Pipeline de Arquitetura (Agents SEPARADOS + GATE)
130
100
 
131
101
  **Inicializar governance:**
132
102
  ```bash
133
- mkdir -p .plano/governance
134
103
  touch .plano/governance/approvals.log
135
- echo "# Governance initialized at $(date -u +%Y-%m-%dT%H:%M:%SZ)" >> .plano/governance/approvals.log
136
- ```
137
-
138
- Spawnar em sequencia — CADA UM e um Agent() SEPARADO:
139
-
140
- ```python
141
- # PASSO 1: Product Analyst
142
- Agent(subagent_type="up-product-analyst", prompt="...")
143
- ```
144
-
145
- ```bash
146
- # GATE: PRODUCT-ANALYSIS.md existe?
147
- [ -f .plano/PRODUCT-ANALYSIS.md ] && echo "OK" || { echo "FALHOU: re-spawnar product-analyst"; exit 1; }
148
- ```
149
-
150
- ```python
151
- # PASSO 2: Product-supervisor revisa
152
- Agent(subagent_type="up-product-supervisor", prompt="""
153
- ...
154
- **OUTPUT OBRIGATORIO (fazer ANTES de retornar):**
155
- ```bash
156
- echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) | architecture | product-supervisor | {DECISAO} | {motivo}" >> .plano/governance/approvals.log
157
- ```
158
- """)
159
- ```
160
-
161
- ```bash
162
- # GATE: product-supervisor logou?
163
- grep -q "product-supervisor" .plano/governance/approvals.log || { echo "FALHOU: spawnar product-supervisor"; exit 1; }
104
+ [ -s .plano/governance/approvals.log ] || \
105
+ echo "# Governance initialized at $(date -u +%Y-%m-%dT%H:%M:%SZ)" >> .plano/governance/approvals.log
164
106
  ```
165
107
 
166
108
  ```python
167
- # PASSO 3: System Designer
168
- Agent(subagent_type="up-system-designer", prompt="...")
169
- ```
170
-
171
- ```bash
172
- # GATE: SYSTEM-DESIGN.md existe?
173
- [ -f .plano/SYSTEM-DESIGN.md ] && echo "OK" || { echo "FALHOU: re-spawnar system-designer"; exit 1; }
174
- ```
175
-
176
- ```python
177
- # PASSO 4: Architecture-supervisor revisa system design
178
- Agent(subagent_type="up-architecture-supervisor", prompt="""
179
- ...
180
- **OUTPUT OBRIGATORIO (fazer ANTES de retornar):**
181
- ```bash
182
- echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) | architecture | architecture-supervisor | {DECISAO} | system-design" >> .plano/governance/approvals.log
183
- ```
109
+ # PASSO 1: Arquiteto (absorve system-designer + a analise de produto)
110
+ # Faz o design upfront: modulos, roles, schema, rotas, permissoes, blueprints de producao,
111
+ # E deriva PROJECT.md + ROADMAP.md + REQUIREMENTS.md + SYSTEM-DESIGN.md.
112
+ Agent(subagent_type="up-arquiteto", prompt="""
113
+ Projetar a arquitetura e a estrutura do projeto a partir do BRIEFING.
114
+
115
+ <files_to_read>
116
+ - .plano/BRIEFING.md
117
+ - .plano/pesquisa/SUMMARY.md (se existir)
118
+ - .plano/codebase/ARCHITECTURE.md, STACK.md, CONVENTIONS.md (se brownfield)
119
+ - ~/.claude/up/owner-profile.md (stack preferida)
120
+ Sob demanda: $HOME/.claude/up/references/production-requirements.md
121
+ </files_to_read>
122
+
123
+ Produzir:
124
+ - .plano/SYSTEM-DESIGN.md (modulos, roles, data model/schema, rotas, permissoes, blueprints de prod)
125
+ - .plano/PROJECT.md (visao do produto, requisitos, decisoes-chave)
126
+ - .plano/ROADMAP.md (fases derivadas dos requisitos, com criterios de sucesso)
127
+ - .plano/REQUIREMENTS.md (REQ-IDs por categoria, rastreabilidade fase<->requisito)
184
128
  """)
185
129
  ```
186
130
 
187
131
  ```bash
188
- # GATE: architecture-supervisor logou para system-design?
189
- grep -q "architecture-supervisor.*system-design" .plano/governance/approvals.log || { echo "FALHOU: spawnar architecture-supervisor"; exit 1; }
132
+ # GATE: artefatos de arquitetura existem?
133
+ [ -f .plano/SYSTEM-DESIGN.md ] && [ -f .plano/PROJECT.md ] && [ -f .plano/ROADMAP.md ] && [ -f .plano/REQUIREMENTS.md ] \
134
+ && echo "OK" || { echo "FALHOU: re-spawnar up-arquiteto"; exit 1; }
190
135
  ```
191
136
 
192
- ```python
193
- # PASSO 5: Arquiteto
194
- Agent(subagent_type="up-arquiteto", prompt="...")
195
- ```
137
+ **Multica: criar 1 issue-filha por fase (so se `--board`, BATCHED, MODO PROJETO).**
138
+ Agora que o ROADMAP existe com todas as fases, `multica init` garante o project + a issue-pai e cria 1
139
+ issue-filha por fase (`--parent <pai> --status backlog`, `metadata up_project=<repo> up_phase=N`) numa
140
+ chamada batched (uma por fase, nao por microtransicao). Idempotente: reconcilia via
141
+ `multica issue list --metadata up_project=<repo> --metadata up_phase=N` (nao duplica em re-plans).
142
+ FAIL-OPEN: se `multica` indisponivel ou erro, avisa e segue o planejamento sem board. Deteccao `uname -s`
143
+ fica dentro de `multica.cjs`. So roda no MODO PROJETO (no MODO FASE nao recria o board).
196
144
 
197
145
  ```bash
198
- # GATE: PROJECT.md + ROADMAP.md + REQUIREMENTS.md existem?
199
- [ -f .plano/PROJECT.md ] && [ -f .plano/ROADMAP.md ] && [ -f .plano/REQUIREMENTS.md ] && echo "OK" || { echo "FALHOU: re-spawnar arquiteto"; exit 1; }
200
- ```
201
-
202
- ```python
203
- # PASSO 6: Architecture-supervisor revisa artefatos do arquiteto
204
- Agent(subagent_type="up-architecture-supervisor", prompt="""
205
- ...
206
- **OUTPUT OBRIGATORIO (fazer ANTES de retornar):**
207
- ```bash
208
- echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) | architecture | architecture-supervisor | {DECISAO} | architect-artifacts" >> .plano/governance/approvals.log
209
- ```
210
- """)
211
- ```
212
-
213
- ```bash
214
- # GATE: architecture-supervisor logou para architect-artifacts?
215
- grep -q "architecture-supervisor.*architect-artifacts" .plano/governance/approvals.log || { echo "FALHOU: spawnar architecture-supervisor"; exit 1; }
146
+ if [ "$BOARD" = "true" ] && [ "$MODE_FASE" != "true" ]; then
147
+ node "$HOME/.claude/up/bin/up-tools.cjs" multica init --from-roadmap --raw 2>/dev/null \
148
+ || echo "AVISO: Multica indisponivel (init/issues por fase). Seguindo o plano sem board."
149
+ fi
216
150
  ```
217
151
 
218
152
  ```python
219
- # PASSO 7: Requirements validator
220
- Agent(subagent_type="up-requirements-validator", prompt="...")
221
-
222
- # PASSO 8: Chief-architect aprova arquitetura global
223
- Agent(subagent_type="up-chief-architect", prompt="""
224
- ...
225
- **OUTPUT OBRIGATORIO (fazer ANTES de retornar):**
226
- ```bash
227
- echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) | architecture | chief-architect | {DECISAO} | global-architecture" >> .plano/governance/approvals.log
228
- ```
153
+ # PASSO 2: Sintetizador valida os REQUIREMENTS (modo validacao — 13 checks)
154
+ # Absorve requirements-validator: completude, testabilidade, cobertura, ausencia de ambiguidade.
155
+ Agent(subagent_type="up-sintetizador", prompt="""
156
+ <modo>validacao</modo>
157
+ Validar .plano/REQUIREMENTS.md contra o BRIEFING e o SYSTEM-DESIGN (13 checks: cada REQ e
158
+ especifico, testavel, mapeado a uma fase, sem contradicao, com criterio de aceite claro, etc).
159
+ Se houver gaps, registrar em .plano/REQUIREMENTS-VALIDATION.md e sugerir correcoes ao arquiteto.
160
+ <files_to_read>
161
+ - .plano/REQUIREMENTS.md
162
+ - .plano/BRIEFING.md
163
+ - .plano/SYSTEM-DESIGN.md
164
+ - .plano/ROADMAP.md
165
+ </files_to_read>
229
166
  """)
230
167
  ```
231
168
 
232
- ```bash
233
- # GATE FINAL DE ARQUITETURA: chief-architect logou?
234
- grep -q "chief-architect.*global-architecture" .plano/governance/approvals.log || { echo "FALHOU: spawnar chief-architect"; exit 1; }
235
- ```
236
-
237
- ### 2.4 Gate Pos-Arquitetura
238
-
239
- ```bash
240
- [ -f .plano/PROJECT.md ] || { echo "FALTANDO: PROJECT.md"; exit 1; }
241
- [ -f .plano/ROADMAP.md ] || { echo "FALTANDO: ROADMAP.md"; exit 1; }
242
- [ -f .plano/REQUIREMENTS.md ] || { echo "FALTANDO: REQUIREMENTS.md"; exit 1; }
243
- [ -f .plano/SYSTEM-DESIGN.md ] || { echo "FALTANDO: SYSTEM-DESIGN.md"; exit 1; }
244
- ```
245
-
246
169
  ## Estagio 2.5: PLANEJAMENTO EXAUSTIVO
247
170
 
248
- **Para CADA fase do ROADMAP, planejar AGORA (nao incrementalmente).**
171
+ **Para CADA fase do ROADMAP (MODO PROJETO) ou para a fase pedida (MODO FASE), planejar AGORA.**
249
172
 
250
173
  ```bash
251
174
  PHASES=$(node "$HOME/.claude/up/bin/up-tools.cjs" roadmap list-phases)
252
175
  ```
253
176
 
254
- Para cada fase — **planejador e supervisor sao SEMPRE agentes SEPARADOS:**
177
+ Para cada fase — `up-planejador` faz self-check (sem camada de revisao intermediaria):
255
178
 
256
179
  ```python
257
- # PASSO A: Planejador (Sonnet-ready obrigatorio)
258
180
  Agent(
259
181
  subagent_type="up-planejador",
260
182
  prompt=f"""
261
183
  Planejar Fase {phase_number}: {phase_name}.
262
-
263
- Modo: builder (autonomo, sem AskUserQuestion)
264
- Sonnet-ready: SEMPRE (default v0.6.0+)
265
-
184
+
185
+ Modo: builder (autonomo, sem AskUserQuestion no MODO PROJETO; no MODO FASE pode coletar contexto).
186
+ Sonnet-ready: SEMPRE.
187
+
266
188
  <files_to_read>
267
- TIER 1 Sempre:
268
- - .plano/STATE.md
269
- - .plano/fases/{phase_number}/PHASE.md (slice do ROADMAP — v0.7.0+)
270
- - .plano/fases/{phase_number}/REQUIREMENTS-SLICE.md (REQs APENAS desta fase — v0.7.0+)
271
-
272
- TIER 2 — Se brownfield apenas:
273
- - .plano/codebase/CONVENTIONS.md
274
- - .plano/codebase/CONCERNS.md
275
- - .plano/codebase/ARCHITECTURE.md
276
-
277
- TIER 3 — Sob demanda apenas:
278
- - .plano/SYSTEM-DESIGN.md (so se decisao arquitetural especifica)
279
- - .plano/PROJECT.md (so se precisar visao geral)
280
- - .plano/ROADMAP.md (so se precisar entender fases adjacentes)
281
- - .plano/REQUIREMENTS.md (so se a slice nao tiver info suficiente)
282
-
283
- FALLBACK: Se as slices nao existem (projeto pre-v0.7.0), carregar
284
- .plano/ROADMAP.md e .plano/REQUIREMENTS.md completos.
189
+ TIER 1: .plano/STATE.md, .plano/fases/{phase_number}/PHASE.md,
190
+ .plano/fases/{phase_number}/REQUIREMENTS-SLICE.md
191
+ TIER 2 (brownfield): .plano/codebase/CONVENTIONS.md, CONCERNS.md, ARCHITECTURE.md
192
+ TIER 3 (sob demanda): .plano/SYSTEM-DESIGN.md, .plano/PROJECT.md, .plano/ROADMAP.md, .plano/REQUIREMENTS.md
193
+ FALLBACK: se as slices nao existem, carregar ROADMAP.md e REQUIREMENTS.md completos.
285
194
  </files_to_read>
286
-
195
+
287
196
  REQs da fase: {phase_req_ids}
288
-
289
197
  Gerar 5-8 planos com nivel maximo de detalhe.
290
- """
291
- )
292
- ```
293
-
294
- ```bash
295
- # GATE: Planos da fase existem?
296
- PLAN_COUNT=$(ls .plano/fases/${PHASE_DIR}/*-PLAN.md 2>/dev/null | wc -l)
297
- [ "$PLAN_COUNT" -eq 0 ] && echo "GATE FALHOU: Nenhum PLAN.md para fase ${phase_number}. Re-spawnar planejador." && exit 1
298
- echo "OK: ${PLAN_COUNT} planos gerados para fase ${phase_number}"
299
- ```
300
198
 
301
- ```python
302
- # PASSO B: Planning-supervisor revisa (SEPARADO do planejador)
303
- Agent(
304
- subagent_type="up-planning-supervisor",
305
- prompt=f"""
306
- Revisar planos da Fase {phase_number}.
307
-
308
- Decisao: APPROVE | REQUEST_CHANGES | ESCALATE
309
- Max 3 ciclos de rework.
310
-
311
- **OUTPUT OBRIGATORIO (fazer ANTES de retornar):**
312
- ```bash
313
- echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) | phase-{phase_number} | planning-supervisor | {{DECISAO}} | {{motivo}}" >> .plano/governance/approvals.log
314
- ```
199
+ SELF-CHECK obrigatorio antes de retornar: confirme que cada tarefa e implementavel, que os REQs da
200
+ fase estao 100% cobertos, e que dependencias/waves estao corretas. Corrija o que falhar.
315
201
  """
316
202
  )
317
203
  ```
318
204
 
319
205
  ```bash
320
- # GATE: planning-supervisor logou para esta fase?
321
- grep -q "phase-${PHASE_NUMBER}.*planning-supervisor" .plano/governance/approvals.log || { echo "GATE FALHOU: planning-supervisor NAO rodou para fase ${PHASE_NUMBER}. Spawnar agora."; exit 1; }
206
+ # GATE: planos da fase existem?
207
+ PLAN_COUNT=$(ls .plano/fases/${PHASE_DIR}/*-PLAN.md 2>/dev/null | wc -l)
208
+ [ "$PLAN_COUNT" -eq 0 ] && echo "GATE FALHOU: nenhum PLAN.md para fase ${phase_number}. Re-spawnar planejador." && exit 1
209
+ echo "OK: ${PLAN_COUNT} planos para fase ${phase_number}"
322
210
  ```
323
211
 
324
- Se REQUEST_CHANGES: re-spawn planejador com feedback (max 3 ciclos).
325
- Se ESCALATE: chief-engineer entra.
326
- Se APPROVE: prosseguir pra proxima fase.
212
+ **Repetir para cada fase (MODO PROJETO).**
327
213
 
328
- **Repetir para cada fase do ROADMAP.**
214
+ ## Estagio P: PLANNING REVIEW (up-revisor)
329
215
 
330
- Apos TODAS fases planejadas:
216
+ Spawnar `up-revisor` para a revisao consolidada do planejamento. Substitui planning-auditor +
217
+ chief-engineer cross-phase + chief-architect + supervisores.
331
218
 
332
219
  ```python
333
- # PASSO FINAL: Chief-engineer aprova consistencia cross-fase
334
220
  Agent(
335
- subagent_type="up-chief-engineer",
221
+ subagent_type="up-revisor",
336
222
  prompt="""
337
- Revisar TODOS os planos gerados.
338
- Validar coerencia cross-fase, dependencies, waves.
339
- Decisao: APPROVE | REQUEST_CHANGES
340
-
341
- **OUTPUT OBRIGATORIO (fazer ANTES de retornar):**
342
- ```bash
343
- echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) | planning | chief-engineer | {DECISAO} | cross-phase-review" >> .plano/governance/approvals.log
344
- ```
345
- """
346
- )
347
- ```
348
-
349
- ```bash
350
- # GATE FINAL DE PLANEJAMENTO: chief-engineer logou cross-phase review?
351
- grep -q "chief-engineer.*cross-phase-review" .plano/governance/approvals.log || { echo "GATE FALHOU: chief-engineer NAO aprovou cross-fase. Spawnar agora."; exit 1; }
352
- ```
223
+ Revisar o planejamento completo (escopo: planning). Two-stage adaptado ao planejamento:
353
224
 
354
- ## Estagio P: PLANNING AUDIT
225
+ STAGE 1 — spec-compliance cetico: os planos cobrem 100% dos REQUIREMENTS? Ha plano "rapido demais"
226
+ que pula um REQ? Calcular Planning Confidence Score (0-100).
227
+ STAGE 2 — qualidade: coerencia cross-fase, dependencias/waves corretas, Sonnet-readiness (detalhe
228
+ suficiente pra executar sem ambiguidade), sem contradicao entre SYSTEM-DESIGN e planos.
355
229
 
356
- ### GATE PRE-AUDIT: Verificar que TODA governanca do planejamento rodou
357
-
358
- ```bash
359
- echo "=== GATE PRE-AUDIT: Verificando governanca completa ==="
360
-
361
- # Contar entries esperadas
362
- PHASES=$(node "$HOME/.claude/up/bin/up-tools.cjs" roadmap list-phases 2>/dev/null | grep -c "phase" || echo "0")
363
- PLAN_SUP_COUNT=$(grep -c "planning-supervisor" .plano/governance/approvals.log 2>/dev/null)
364
- CHIEF_ENG=$(grep -c "chief-engineer.*cross-phase" .plano/governance/approvals.log 2>/dev/null)
365
- CHIEF_ARCH=$(grep -c "chief-architect" .plano/governance/approvals.log 2>/dev/null)
366
- PROD_SUP=$(grep -c "product-supervisor" .plano/governance/approvals.log 2>/dev/null)
367
- ARCH_SUP=$(grep -c "architecture-supervisor" .plano/governance/approvals.log 2>/dev/null)
368
-
369
- echo "Planning-supervisor entries: ${PLAN_SUP_COUNT} (esperado: >= ${PHASES})"
370
- echo "Chief-engineer cross-phase: ${CHIEF_ENG} (esperado: >= 1)"
371
- echo "Chief-architect: ${CHIEF_ARCH} (esperado: >= 1)"
372
- echo "Product-supervisor: ${PROD_SUP} (esperado: >= 1)"
373
- echo "Architecture-supervisor: ${ARCH_SUP} (esperado: >= 1)"
374
-
375
- FAIL=false
376
- [ "$CHIEF_ENG" -eq 0 ] && echo "FALHA: chief-engineer NAO aprovou cross-fase" && FAIL=true
377
- [ "$CHIEF_ARCH" -eq 0 ] && echo "FALHA: chief-architect NAO aprovou arquitetura" && FAIL=true
378
- [ "$PROD_SUP" -eq 0 ] && echo "FALHA: product-supervisor NAO revisou" && FAIL=true
379
- [ "$ARCH_SUP" -eq 0 ] && echo "FALHA: architecture-supervisor NAO revisou" && FAIL=true
380
-
381
- if [ "$FAIL" = true ]; then
382
- echo ""
383
- echo "GATE PRE-AUDIT FALHOU: Voltar e spawnar os agentes faltantes."
384
- exit 1
385
- else
386
- echo "GATE PRE-AUDIT OK: Toda governanca logada."
387
- fi
388
- ```
389
-
390
- ### Rodar Auditor
391
-
392
- ```python
393
- Agent(
394
- subagent_type="up-planning-auditor",
395
- prompt="""
396
- Auditar planejamento completo.
397
-
398
230
  <files_to_read>
399
- - .plano/CHECKLIST.md
400
- - .plano/BRIEFING.md
401
- - .plano/PROJECT.md
402
- - .plano/ROADMAP.md
403
- - .plano/REQUIREMENTS.md
404
- - .plano/SYSTEM-DESIGN.md
405
- - .plano/PENDING.md
231
+ - .plano/PROJECT.md, .plano/ROADMAP.md, .plano/REQUIREMENTS.md, .plano/SYSTEM-DESIGN.md
232
+ - .plano/REQUIREMENTS-VALIDATION.md (se existir)
406
233
  - .plano/fases/*/*.md
407
- - .plano/governance/approvals.log (VERIFICAR que supervisores e chiefs logaram)
408
234
  - $HOME/.claude/up/templates/audit-plan.md
409
235
  </files_to_read>
410
-
411
- Calcular Planning Confidence Score (0-100).
412
- Validar artefatos, planos, cobertura REQs, Sonnet-readiness, aprovacoes.
413
-
414
- **VERIFICAR no approvals.log:**
415
- - product-supervisor logou? Se nao: penalizar score
416
- - architecture-supervisor logou 2x (system-design + architect-artifacts)? Se nao: penalizar
417
- - planning-supervisor logou para CADA fase? Se nao: penalizar
418
- - chief-architect logou? Se nao: penalizar
419
- - chief-engineer logou cross-phase? Se nao: penalizar
420
-
421
- Gerar .plano/AUDIT-PLAN.md.
422
-
423
- Decisao: READY_FOR_BUILD | READY_WITH_WARNINGS | NEEDS_REWORK | BLOCKED
236
+
237
+ Gerar .plano/AUDIT-PLAN.md (usando o template) com o Planning Confidence Score.
238
+ Decisao: APPROVE (READY_FOR_BUILD) | REQUEST_CHANGES (NEEDS_REWORK) | BLOCK.
239
+
240
+ **OUTPUT OBRIGATORIO (ANTES de retornar):**
241
+ ```bash
242
+ echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) | planning | up-revisor | {DECISAO} | confidence=NN" >> .plano/governance/approvals.log
243
+ ```
424
244
  """
425
245
  )
426
246
  ```
427
247
 
428
- ### Processar Decisao
429
-
430
- **Se READY_FOR_BUILD:** prosseguir pro Estagio PR.
431
-
432
- **Se READY_WITH_WARNINGS:** CEO confirma com dono se quer prosseguir mesmo assim.
248
+ ### GATE de planejamento (deterministico)
433
249
 
434
- **Se NEEDS_REWORK:** executar rework plan, re-rodar auditor (max 3 ciclos).
250
+ ```bash
251
+ echo "=== GATE: planning ==="
252
+ [ -f .plano/AUDIT-PLAN.md ] || { echo "FALHA: sem AUDIT-PLAN.md"; exit 1; }
253
+ REVISOR_ENTRY=$(grep "planning.*up-revisor" .plano/governance/approvals.log 2>/dev/null | tail -1)
254
+ [ -z "$REVISOR_ENTRY" ] && echo "FALHA: up-revisor NAO logou planning" && exit 1
255
+ DECISION=$(echo "$REVISOR_ENTRY" | awk -F'|' '{gsub(/ /,"",$4); print $4}')
256
+ ```
435
257
 
436
- **Se BLOCKED:** escalar pro CEO, que alerta dono.
258
+ **Processar:**
259
+ - `APPROVE`: prosseguir pro Estagio PR.
260
+ - `REQUEST_CHANGES`: cap de rework 1 round (governance.md). Re-spawn planejador/arquiteto com o review;
261
+ apos 1 round, forced approval com debito tecnico.
262
+ - `BLOCK`: alertar o dono (AskUserQuestion).
437
263
 
438
264
  ## Estagio PR: PLAN READY
439
265
 
440
266
  ### PR.1 Gerar PLAN-READY.md
441
267
 
442
- Usar template `$HOME/.claude/up/templates/plan-ready.md`.
443
-
444
- Preencher com:
445
- - planned_at: timestamp atual
446
- - planned_by.runtime: detectar (claude-code | opencode | gemini-cli)
447
- - planned_by.ceo_name: do owner-profile
448
- - intended_execution.runtime: do flag --execution-runtime ou "same"
449
- - project_name: do PROJECT.md
450
- - mode: greenfield | brownfield
451
- - total_phases, total_plans, total_requirements
452
- - planning_confidence: do AUDIT-PLAN.md
453
- - Lista completa de planos
268
+ Usar template `$HOME/.claude/up/templates/plan-ready.md`. Preencher: planned_at, planned_by.runtime
269
+ (detectar), intended_execution.runtime (flag --execution-runtime ou "same"), project_name, mode,
270
+ total_phases/plans/requirements, planning_confidence (do AUDIT-PLAN.md), lista completa de planos.
454
271
 
455
272
  ```bash
456
- # Detectar runtime atual
457
273
  if [ -d ~/.claude ]; then RUNTIME="claude-code"
458
274
  elif [ -d ~/.config/opencode ]; then RUNTIME="opencode"
459
- elif [ -d ~/.gemini ]; then RUNTIME="gemini-cli"
460
- fi
275
+ elif [ -d ~/.gemini ]; then RUNTIME="gemini-cli"; fi
461
276
  ```
462
277
 
463
278
  ### PR.2 Commit Final
@@ -467,60 +282,24 @@ git add .plano/
467
282
  node "$HOME/.claude/up/bin/up-tools.cjs" commit "plan: project ready for execution" --files .plano/PLAN-READY.md .plano/AUDIT-PLAN.md
468
283
  ```
469
284
 
470
- ### PR.3 CEO Apresenta
285
+ ### PR.3 Apresentar (orquestrador, sem CEO)
471
286
 
472
- Spawnar CEO:
473
-
474
- ```python
475
- Agent(
476
- subagent_type="up-project-ceo",
477
- prompt="""
478
- Apresentar resumo do planejamento ao dono.
479
-
480
- <files_to_read>
481
- - ~/.claude/up/owner-profile.md
482
- - .plano/PLAN-READY.md
483
- - .plano/AUDIT-PLAN.md
484
- - .plano/PENDING.md
485
- </files_to_read>
486
-
487
- Apresentar:
488
- - Briefing entendido
489
- - Stack escolhida
490
- - N fases planejadas
491
- - M planos gerados
492
- - Planning confidence score
493
- - Pendencias (agrupadas)
494
-
495
- Informar:
496
- "Planejamento completo. Para executar, use /up:build neste runtime
497
- ou em outro (ex: OpenCode mais barato pra rodar)."
498
- """
499
- )
500
- ```
501
-
502
- ## Sair
287
+ Output direto, le owner-profile pra tom:
503
288
 
504
289
  ```
505
290
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
506
291
  UP > /up:plan COMPLETO
507
292
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
508
293
 
509
- Projeto planejado com sucesso.
510
-
511
- Confidence: {N}/100
512
- Fases: {N}
513
- Planos: {M}
294
+ Projeto planejado. Confidence: {N}/100. Fases: {N}. Planos: {M}.
295
+ Pendencias: {de PENDING.md}.
514
296
 
515
297
  Proximo passo:
516
298
  /up:build ← executar neste runtime
517
-
518
299
  Ou em outro runtime:
519
- cd <projeto> && /up-build (OpenCode)
520
- cd <projeto> && /up:build (Gemini CLI)
300
+ cd <projeto> && /up:build (OpenCode / Gemini CLI — plano viaja no .plano/)
521
301
 
522
302
  Estado completo em .plano/
523
-
524
303
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
525
304
  ```
526
305
 
@@ -528,48 +307,39 @@ Estado completo em .plano/
528
307
 
529
308
  <flags>
530
309
 
531
- ## Flags Suportadas
532
-
533
310
  ### --execution-runtime=<runtime>
534
-
535
311
  Informa ao planejador qual runtime sera usado pra executar.
536
-
537
- Valores: `same` | `claude-code` | `opencode` | `gemini-cli` | `any`
538
-
539
- Default: `same`
540
-
541
- Efeito:
542
- - Marca em PLAN-READY.md
543
- - Se diferente do runtime atual, planejador adapta documentacao
544
- - Build vai validar se PLAN-READY.md.intended_execution e compativel
312
+ Valores: `same` | `claude-code` | `opencode` | `gemini-cli` | `any`. Default: `same`.
313
+ Marca em PLAN-READY.md; o build valida compatibilidade.
545
314
 
546
315
  ```bash
547
316
  /up:plan "CRM" --execution-runtime=opencode
548
317
  ```
549
318
 
550
319
  ### --no-audit
320
+ Pula o Planning Review (estagio P). Util pra dev rapido. NAO recomendado em producao.
551
321
 
552
- Pula o Planning Audit (estagio P). Util pra desenvolvimento rapido.
553
- NAO RECOMENDADO em producao.
322
+ ### --board
323
+ Espelha o plano no Multica (OPT-IN). Ao gerar o ROADMAP (MODO PROJETO), cria 1 issue-filha por fase
324
+ (batched, `--status backlog`, `metadata up_project up_phase`) sob a issue-pai do projeto. Idempotente
325
+ (reconcilia via metadata, nao duplica). FAIL-OPEN: `multica` indisponivel -> avisa e planeja sem board.
326
+ Sem stream ao vivo: o board reflete so status. O `/up:build --board` continua a sincronizacao na execucao.
554
327
 
555
328
  </flags>
556
329
 
557
330
  <success_criteria>
558
331
  - [ ] Owner profile validado
559
- - [ ] CEO conduziu intake
560
- - [ ] BRIEFING, OWNER, PENDING, DESIGN-TOKENS gerados
561
- - [ ] Pipeline de arquitetura completo (product-analyst system-designer → arquiteto)
562
- - [ ] Architecture supervisor aprovou cada artefato (LOGOU em approvals.log)
563
- - [ ] Chief-architect aprovou arquitetura global (LOGOU em approvals.log)
564
- - [ ] Chief-product aprovou fit
565
- - [ ] TODAS fases do ROADMAP foram planejadas (PLAN.md por fase)
566
- - [ ] Planning-supervisor aprovou cada plano (LOGOU em approvals.log POR FASE)
567
- - [ ] Chief-engineer aprovou cross-fase (LOGOU em approvals.log)
568
- - [ ] GATE PRE-AUDIT passou (todos 5+ governance entries verificados)
569
- - [ ] Planning-auditor rodou e gerou AUDIT-PLAN.md
570
- - [ ] Planning Confidence Score calculado
571
- - [ ] PLAN-READY.md gerado
572
- - [ ] CEO apresentou resumo ao dono
573
- - [ ] Commit final feito
574
- - [ ] .plano/governance/approvals.log tem entries de TODOS supervisores e chiefs
332
+ - [ ] Intake consumido de BRIEFING.md (ou intake minimo inline, sem CEO)
333
+ - [ ] Deteccao projeto vs fase (absorve discutir-fase/planejar-fase)
334
+ - [ ] up-arquiteto gerou SYSTEM-DESIGN + PROJECT + ROADMAP + REQUIREMENTS (absorveu system-designer)
335
+ - [ ] up-sintetizador validou REQUIREMENTS (modo validacao, absorveu requirements-validator)
336
+ - [ ] TODAS as fases planejadas com PLAN.md (self-check do planejador)
337
+ - [ ] up-revisor fez a revisao consolidada do planejamento e LOGOU em approvals.log
338
+ - [ ] GATE de planejamento deterministico passou (APPROVE ou forced approval)
339
+ - [ ] AUDIT-PLAN.md gerado com Planning Confidence Score
340
+ - [ ] PLAN-READY.md gerado e committado
341
+ - [ ] `--board` (se passado, MODO PROJETO): 1 issue-filha Multica por fase criada batched (via `multica init --from-roadmap`), idempotente e fail-open
342
+ - [ ] Apresentacao = output do orquestrador (sem CEO)
343
+ - [ ] Nenhuma referencia a CEO, chiefs, camadas de revisao intermediaria ou aos agentes de planejamento deletados
575
344
  </success_criteria>
345
+ </output>