up-cc 0.16.1 → 2.0.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.
- package/README.md +87 -577
- package/package.json +5 -3
- package/up/CHANGELOG.md +110 -0
- package/up/agents/up-arquiteto.md +95 -39
- package/up/agents/up-auditor.md +218 -0
- package/up/agents/up-executor.md +94 -31
- package/up/agents/up-mapeador-codigo.md +63 -10
- package/up/agents/up-pesquisador.md +278 -0
- package/up/agents/up-revisor.md +249 -0
- package/up/agents/up-sintetizador.md +156 -179
- package/up/agents/up-tester.md +280 -0
- package/up/agents/up-verificador.md +95 -11
- package/up/bin/install.js +182 -19
- package/up/bin/lib/core.cjs +17 -43
- package/up/bin/lib/github.cjs +495 -0
- package/up/bin/lib/multica.cjs +424 -0
- package/up/bin/up-tools.cjs +167 -46
- package/up/commands/auditar.md +66 -0
- package/up/commands/build.md +54 -43
- package/up/commands/depurar.md +1 -1
- package/up/commands/plan.md +52 -38
- package/up/commands/rapido.md +15 -9
- package/up/commands/testar.md +81 -122
- package/up/commands/up.md +106 -0
- package/up/hooks/up-session-start.js +107 -0
- package/up/references/engineering-principles.md +1 -1
- package/up/references/governance-rules.md +5 -5
- package/up/references/production-requirements.md +1 -1
- package/up/references/severity-levels.md +2 -2
- package/up/references/tdd-evidence-types.md +81 -0
- package/up/skills/up-brainstorm/SKILL.md +39 -0
- package/up/skills/up-tdd/SKILL.md +39 -0
- package/up/skills/up-verificar-antes-de-concluir/SKILL.md +49 -0
- package/up/skills/usando-up/SKILL.md +26 -0
- package/up/templates/audit-plan.md +3 -3
- package/up/templates/audit-report.md +2 -2
- package/up/templates/design-tokens.md +2 -2
- package/up/workflows/auditar.md +255 -0
- package/up/workflows/build.md +600 -386
- package/up/workflows/dcrv.md +183 -99
- package/up/workflows/governance.md +112 -220
- package/up/workflows/plan.md +169 -399
- package/up/workflows/rapido.md +7 -1
- package/up/workflows/up.md +447 -0
- package/up/agents/up-analista-codigo.md +0 -446
- package/up/agents/up-api-tester.md +0 -405
- package/up/agents/up-architecture-supervisor.md +0 -126
- package/up/agents/up-audit-supervisor.md +0 -83
- package/up/agents/up-auditor-modernidade.md +0 -378
- package/up/agents/up-auditor-performance.md +0 -426
- package/up/agents/up-auditor-ux.md +0 -396
- package/up/agents/up-backend-specialist.md +0 -175
- package/up/agents/up-blind-validator.md +0 -259
- package/up/agents/up-chief-architect.md +0 -184
- package/up/agents/up-chief-engineer.md +0 -202
- package/up/agents/up-chief-operations.md +0 -123
- package/up/agents/up-chief-product.md +0 -103
- package/up/agents/up-chief-quality.md +0 -211
- package/up/agents/up-clone-crawler.md +0 -234
- package/up/agents/up-clone-design-extractor.md +0 -227
- package/up/agents/up-clone-feature-mapper.md +0 -225
- package/up/agents/up-clone-prd-writer.md +0 -169
- package/up/agents/up-clone-verifier.md +0 -227
- package/up/agents/up-code-reviewer.md +0 -229
- package/up/agents/up-consolidador-ideias.md +0 -493
- package/up/agents/up-database-specialist.md +0 -169
- package/up/agents/up-delivery-auditor.md +0 -247
- package/up/agents/up-devops-agent.md +0 -203
- package/up/agents/up-execution-supervisor.md +0 -315
- package/up/agents/up-exhaustive-tester.md +0 -348
- package/up/agents/up-frontend-specialist.md +0 -152
- package/up/agents/up-operations-supervisor.md +0 -94
- package/up/agents/up-pesquisador-mercado.md +0 -350
- package/up/agents/up-pesquisador-projeto.md +0 -358
- package/up/agents/up-planning-auditor.md +0 -284
- package/up/agents/up-planning-supervisor.md +0 -260
- package/up/agents/up-product-analyst.md +0 -192
- package/up/agents/up-product-supervisor.md +0 -83
- package/up/agents/up-project-ceo.md +0 -352
- package/up/agents/up-qa-agent.md +0 -171
- package/up/agents/up-quality-supervisor.md +0 -178
- package/up/agents/up-requirements-validator.md +0 -230
- package/up/agents/up-security-reviewer.md +0 -137
- package/up/agents/up-sintetizador-melhorias.md +0 -407
- package/up/agents/up-system-designer.md +0 -332
- package/up/agents/up-technical-writer.md +0 -188
- package/up/agents/up-verification-supervisor.md +0 -111
- package/up/agents/up-visual-critic.md +0 -358
- package/up/commands/adicionar-fase.md +0 -47
- package/up/commands/adicionar-testes.md +0 -145
- package/up/commands/ajuda.md +0 -176
- package/up/commands/atualizar.md +0 -103
- package/up/commands/clone-builder.md +0 -67
- package/up/commands/configurar.md +0 -219
- package/up/commands/custos.md +0 -67
- package/up/commands/dashboard.md +0 -48
- package/up/commands/discutir-fase.md +0 -35
- package/up/commands/executar-fase.md +0 -40
- package/up/commands/ideias.md +0 -49
- package/up/commands/iniciar.md +0 -31
- package/up/commands/mapear-codigo.md +0 -63
- package/up/commands/melhorias.md +0 -45
- package/up/commands/mobile-first.md +0 -71
- package/up/commands/modo-builder.md +0 -186
- package/up/commands/novo-projeto.md +0 -40
- package/up/commands/onboard.md +0 -69
- package/up/commands/pausar.md +0 -33
- package/up/commands/planejar-fase.md +0 -45
- package/up/commands/progresso.md +0 -33
- package/up/commands/remover-fase.md +0 -34
- package/up/commands/resetar.md +0 -27
- package/up/commands/retomar.md +0 -35
- package/up/commands/saude.md +0 -103
- package/up/commands/ux-tester.md +0 -63
- package/up/commands/verificar-trabalho.md +0 -35
- package/up/workflows/adicionar-fase.md +0 -112
- package/up/workflows/builder-e2e.md +0 -501
- package/up/workflows/builder.md +0 -3419
- package/up/workflows/ceo-intake.md +0 -305
- package/up/workflows/ceo-updates.md +0 -183
- package/up/workflows/clone-builder.md +0 -320
- package/up/workflows/discutir-fase.md +0 -336
- package/up/workflows/executar-fase.md +0 -358
- package/up/workflows/executar-plano.md +0 -659
- package/up/workflows/ideias.md +0 -381
- package/up/workflows/iniciar.md +0 -235
- package/up/workflows/melhorias.md +0 -409
- package/up/workflows/mobile-first.md +0 -692
- package/up/workflows/novo-projeto.md +0 -778
- package/up/workflows/planejar-fase.md +0 -293
- package/up/workflows/progresso.md +0 -226
- package/up/workflows/retomar.md +0 -231
- package/up/workflows/ux-tester.md +0 -526
- package/up/workflows/verificar-trabalho.md +0 -308
package/up/workflows/plan.md
CHANGED
|
@@ -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
|
|
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
|
-
|
|
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
|
-
|
|
14
|
+
Pipeline final (redesign v2):
|
|
13
15
|
|
|
14
|
-
|
|
15
|
-
-
|
|
16
|
-
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
**
|
|
37
|
-
|
|
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
|
|
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
|
-
|
|
57
|
+
### 0.3 Deteccao projeto vs fase (absorve discutir-fase + planejar-fase)
|
|
77
58
|
|
|
78
|
-
|
|
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
|
-
|
|
62
|
+
## Estagio 1: INTAKE (inline, sem CEO)
|
|
81
63
|
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
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
|
-
|
|
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:**
|
|
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:**
|
|
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 (
|
|
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
|
-
|
|
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
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
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:
|
|
189
|
-
|
|
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
|
-
|
|
193
|
-
|
|
194
|
-
|
|
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
|
-
|
|
199
|
-
|
|
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
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
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
|
|
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 —
|
|
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
|
|
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
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
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
|
-
|
|
302
|
-
|
|
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:
|
|
321
|
-
|
|
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
|
-
|
|
325
|
-
Se ESCALATE: chief-engineer entra.
|
|
326
|
-
Se APPROVE: prosseguir pra proxima fase.
|
|
212
|
+
**Repetir para cada fase (MODO PROJETO).**
|
|
327
213
|
|
|
328
|
-
|
|
214
|
+
## Estagio P: PLANNING REVIEW (up-revisor)
|
|
329
215
|
|
|
330
|
-
|
|
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-
|
|
221
|
+
subagent_type="up-revisor",
|
|
336
222
|
prompt="""
|
|
337
|
-
Revisar
|
|
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
|
-
|
|
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/
|
|
400
|
-
- .plano/
|
|
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
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
**
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
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
|
-
###
|
|
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
|
-
|
|
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
|
-
**
|
|
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
|
-
|
|
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
|
|
285
|
+
### PR.3 Apresentar (orquestrador, sem CEO)
|
|
471
286
|
|
|
472
|
-
|
|
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
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
553
|
-
|
|
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
|
-
- [ ]
|
|
560
|
-
- [ ]
|
|
561
|
-
- [ ]
|
|
562
|
-
- [ ]
|
|
563
|
-
- [ ]
|
|
564
|
-
- [ ]
|
|
565
|
-
- [ ]
|
|
566
|
-
- [ ]
|
|
567
|
-
- [ ]
|
|
568
|
-
- [ ]
|
|
569
|
-
- [ ]
|
|
570
|
-
- [ ]
|
|
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>
|