up-cc 0.4.5 → 0.5.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.
@@ -0,0 +1,183 @@
1
+ <purpose>
2
+ Workflow do CEO pra mandar updates periodicos ao dono durante execucao do projeto.
3
+
4
+ Chamado pelo builder apos cada fase concluida (se updates != silent).
5
+ </purpose>
6
+
7
+ <process>
8
+
9
+ ## Quando rodar
10
+
11
+ - Apos cada fase do build completar
12
+ - Apos Quality Gate completar
13
+ - Apos Delivery Auditor rodar
14
+ - Em qualquer momento critico
15
+
16
+ ## Carregar contexto
17
+
18
+ ```bash
19
+ cat ~/.claude/up/owner-profile.md
20
+ cat .plano/OWNER.md
21
+ cat .plano/STATE.md
22
+ cat .plano/ROADMAP.md
23
+ ```
24
+
25
+ Extrair:
26
+ - `$PREFERRED_NAME`
27
+ - `$CEO_NAME`
28
+ - `$CEO_TONE`
29
+ - `$UPDATES_LEVEL` (verbose | normal | silent)
30
+
31
+ **Se `$UPDATES_LEVEL = silent`:** Pular updates por fase. Voltar pro builder.
32
+
33
+ ## Formato do Update (por fase)
34
+
35
+ ### Verbose (detalhado)
36
+
37
+ ```
38
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
39
+ {CEO_NAME}: Update — Fase {X}/{TOTAL} concluida
40
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
41
+
42
+ **Fase {X}:** {nome da fase}
43
+
44
+ **O que foi feito:**
45
+ - [bullet 1 — resumo do que foi construido]
46
+ - [bullet 2]
47
+ - [bullet 3]
48
+
49
+ **Qualidade:**
50
+ - Testes E2E: {passed}/{total} ({%})
51
+ - DCRV Score: {score}/10
52
+ - Visual: {N}/10
53
+ - Interacao: {N}% pass
54
+ - API: {N}% pass
55
+ - Code Review: {N} issues ({critical} critical, {high} high)
56
+ - Supervisores: {N} aprovacoes, {M} reworks
57
+
58
+ **Decisoes Tomadas:**
59
+ - [decisao 1]
60
+ - [decisao 2]
61
+
62
+ **Proxima Fase ({X+1}):**
63
+ - {nome}
64
+ - {N} planos estimados
65
+ - {M} tarefas
66
+
67
+ **Progresso Total:** {%} ({phases_done}/{total_phases})
68
+
69
+ Continuar? (enter pra seguir, ou digita feedback)
70
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
71
+ ```
72
+
73
+ ### Normal (resumido)
74
+
75
+ ```
76
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
77
+ {CEO_NAME}: Fase {X}/{TOTAL} ✓
78
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
79
+
80
+ {nome da fase} concluida.
81
+ {testes} testes, {passed}% pass.
82
+
83
+ Proxima: {nome proxima fase}
84
+ Progresso: {%}
85
+
86
+ (enter pra continuar)
87
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
88
+ ```
89
+
90
+ ### Silent (nao manda nada)
91
+
92
+ Pular.
93
+
94
+ ## Formato Alerta Critico (qualquer modo)
95
+
96
+ Se ha 🔴 CRITICO, interrompe SEMPRE:
97
+
98
+ ```
99
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
100
+ 🔴 {CEO_NAME}: Preciso do seu input
101
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
102
+
103
+ {PREFERRED_NAME}, precisei parar.
104
+
105
+ **Situacao:**
106
+ [descricao clara]
107
+
108
+ **Por que nao posso decidir sozinho:**
109
+ [explicacao]
110
+
111
+ **Opcoes:**
112
+ a) [opcao 1]
113
+ b) [opcao 2]
114
+ c) [opcao 3]
115
+
116
+ **Minha recomendacao:** {opcao} — {justificativa curta}
117
+
118
+ Qual voce prefere?
119
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
120
+ ```
121
+
122
+ Usar `AskUserQuestion` para capturar resposta.
123
+
124
+ ## Formato Alerta Importante (modo interactive)
125
+
126
+ ```
127
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
128
+ 🟡 {CEO_NAME}: Decisao a tomar
129
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
130
+
131
+ {PREFERRED_NAME}, situacao:
132
+
133
+ [descricao]
134
+
135
+ **Opcoes viaveis:**
136
+ a) [opcao] — {pros/contras}
137
+ b) [opcao] — {pros/contras}
138
+
139
+ **Minha recomendacao:** {opcao}
140
+ **Por que:** {explicacao}
141
+
142
+ Voce confirma? Ou prefere outra?
143
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
144
+ ```
145
+
146
+ Se `$INTERACTIVE = true` ou `$UPDATES_LEVEL = verbose`: perguntar via AskUserQuestion.
147
+ Senao: tomar decisao recomendada e registrar em OWNER.md como "Decisao delegada".
148
+
149
+ ## Formato FYI (nao interrompe)
150
+
151
+ Registrar em `.plano/OWNER.md` na secao "Feedback Durante Execucao":
152
+
153
+ ```markdown
154
+ | {timestamp} | 🟢 Decisao automatica | {decisao} |
155
+ ```
156
+
157
+ Nao falar nada pro dono.
158
+
159
+ ## Registrar Interacao
160
+
161
+ Toda vez que CEO fala com dono, registrar em `.plano/OWNER.md`:
162
+
163
+ ```markdown
164
+ ## Interacoes com o CEO
165
+
166
+ | Timestamp | Tipo | Conteudo |
167
+ |-----------|------|----------|
168
+ | {timestamp} | update-verbose | Fase 3 concluida — dashboard |
169
+ | {timestamp} | alerta-critico | Credencial Asaas expirou |
170
+ | {timestamp} | alerta-importante | Trade-off: Redis vs in-memory |
171
+ | {timestamp} | fyi | Adicionei loading states automaticamente |
172
+ ```
173
+
174
+ </process>
175
+
176
+ <success_criteria>
177
+ - [ ] Owner-profile lido
178
+ - [ ] Nivel de updates respeitado (verbose/normal/silent)
179
+ - [ ] Tom correto usado
180
+ - [ ] Severidade respeitada (critico sempre interrompe)
181
+ - [ ] Interacao registrada em OWNER.md
182
+ - [ ] Formato apropriado aplicado
183
+ </success_criteria>
@@ -0,0 +1,237 @@
1
+ <purpose>
2
+ Workflow de governanca do UP. Define o loop de aprovacao operacional → supervisor → chief → CEO.
3
+
4
+ Usado por todos os comandos UP que executam trabalho.
5
+ </purpose>
6
+
7
+ <process>
8
+
9
+ ## Loop de Governanca (Nivel Supervisor)
10
+
11
+ ### Passo 1: Operacional executa trabalho
12
+
13
+ Qualquer agente operacional (planejador, executor, verificador, detector, auditor, etc.) completa sua tarefa e retorna output.
14
+
15
+ ### Passo 2: Supervisor correspondente revisa
16
+
17
+ Determinar supervisor baseado no agente operacional:
18
+
19
+ | Operacional | Supervisor |
20
+ |------------|-----------|
21
+ | planejador, roteirista | planning-supervisor |
22
+ | executor, frontend/backend/database-specialist | execution-supervisor |
23
+ | verificador, blind-validator | verification-supervisor |
24
+ | visual-critic, exhaustive-tester, api-tester, qa-agent | quality-supervisor |
25
+ | auditor-ux/perf/modernidade, security-reviewer, sintetizador-melhorias | audit-supervisor |
26
+ | product-analyst, pesquisadores, mapeador-codigo | product-supervisor |
27
+ | arquiteto, system-designer, requirements-validator | architecture-supervisor |
28
+ | devops-agent, technical-writer | operations-supervisor |
29
+
30
+ Spawnar o supervisor:
31
+
32
+ ```python
33
+ Agent(
34
+ subagent_type="up-{supervisor_name}",
35
+ model="opus",
36
+ prompt="""
37
+ Revisar output de {operacional_name} para {context}.
38
+
39
+ <files_to_read>
40
+ - $HOME/.claude/up/references/governance-rules.md
41
+ - $HOME/.claude/up/references/rework-limits.md
42
+ - [arquivos do output do operacional]
43
+ - [arquivos de contexto]
44
+ </files_to_read>
45
+
46
+ Avaliar contra criterios objetivos.
47
+ Retornar: APPROVE | REQUEST_CHANGES | ESCALATE
48
+ """
49
+ )
50
+ ```
51
+
52
+ ### Passo 3: Processar decisao do supervisor
53
+
54
+ **Se APPROVE:**
55
+ - Marcar item como completed no CHECKLIST
56
+ - Logar em governance/approvals.log
57
+ - Prosseguir pro proximo passo do pipeline
58
+
59
+ **Se REQUEST_CHANGES:**
60
+ - Incrementar rework_cycle do item
61
+ - Se cycle < 3: re-spawnar operacional com review como contexto
62
+ - Se cycle = 3: FORCA aprovacao com debito tecnico, registrar e prosseguir
63
+
64
+ ```python
65
+ # Re-spawn do operacional
66
+ Agent(
67
+ subagent_type="up-{operacional_name}",
68
+ model="{modelo correto}",
69
+ prompt="""
70
+ REWORK — Ciclo {N}/3
71
+
72
+ Seu output anterior foi revisado e precisa de mudancas.
73
+
74
+ Review: .plano/{path_do_review}
75
+
76
+ Mudancas requeridas:
77
+ {lista_de_mudancas}
78
+
79
+ Refaca seu trabalho atendendo os criterios.
80
+ """
81
+ )
82
+ ```
83
+
84
+ **Se ESCALATE:**
85
+ - Supervisor nao consegue resolver, passa pro chief
86
+ - Spawnar chief correspondente
87
+
88
+ ```python
89
+ Agent(
90
+ subagent_type="up-chief-{area}",
91
+ model="opus",
92
+ prompt="""
93
+ Escalation recebida do {supervisor_name}.
94
+
95
+ Problema: {problema}
96
+ Contexto: {files_to_read}
97
+
98
+ Decidir: APPROVE | REQUEST_CHANGES | ESCALATE_CEO
99
+ """
100
+ )
101
+ ```
102
+
103
+ ## Loop de Governanca (Nivel Chief)
104
+
105
+ ### Quando chief age
106
+
107
+ Chief age em 2 situacoes:
108
+
109
+ 1. **Escalacao do supervisor** — problema que supervisor nao resolveu
110
+ 2. **Aprovacao consolidada** — revisao periodica do trabalho de uma area inteira
111
+
112
+ ### Ciclos de Rework (Chief ← Supervisor)
113
+
114
+ Max 2 ciclos:
115
+
116
+ ```
117
+ Ciclo 1: Chief pede rework → Supervisor coordena com operacional
118
+ Ciclo 2: Chief re-revisa → APPROVE ou ESCALATE_CEO
119
+ ```
120
+
121
+ ## Loop de Governanca (Nivel CEO)
122
+
123
+ ### Quando CEO age
124
+
125
+ 1. **Escalacao do chief** — problema que chief nao resolveu
126
+ 2. **Pre-delivery** — auditoria final antes de entregar
127
+ 3. **Decisao estrategica** — briefing ambiguo, trade-off grande
128
+
129
+ ### Ciclos (CEO ← Chief)
130
+
131
+ Max 1 ciclo:
132
+
133
+ ```
134
+ Ciclo 1: CEO pede rework → Chief coordena com supervisores
135
+ Apos isso: CEO decide APPROVE ou ALERTA_DONO
136
+ ```
137
+
138
+ ### Se CEO decide ALERTA_DONO
139
+
140
+ CEO usa severidade apropriada:
141
+ - 🔴 Critico: sempre interrompe via AskUserQuestion
142
+ - 🟡 Importante: interrompe se --interactive
143
+ - 🟢 FYI: apenas registra
144
+
145
+ ## Forced Approval (Debito Tecnico)
146
+
147
+ Quando max ciclos atingido sem melhoria:
148
+
149
+ ```bash
150
+ # Registrar
151
+ cat >> .plano/governance/technical-debt.log <<EOF
152
+ $(date -u +%Y-%m-%dT%H:%M:%SZ) | {item-id} | {supervisor} | FORCED_APPROVAL
153
+ Reason: Max rework cycles ({N}) reached without improvement
154
+ Remaining issues: [lista]
155
+ EOF
156
+
157
+ # Atualizar checklist
158
+ node "$HOME/.claude/up/bin/up-tools.cjs" checklist update \
159
+ --item "{item-id}" \
160
+ --status "completed_with_debt"
161
+ ```
162
+
163
+ Items com `completed_with_debt` aparecem no AUDIT-REPORT.md como ressalva.
164
+
165
+ ## Aplicacao em Cada Comando UP
166
+
167
+ ### /up:modo-builder (Full)
168
+ - Governanca COMPLETA em todos estagios
169
+ - CEO conduz intake e delivery
170
+ - Supervisores em cada passo
171
+ - Chiefs consolidam
172
+ - CEO aprova antes do delivery
173
+
174
+ ### /up:modo-builder --light
175
+ - Governanca LIGHT
176
+ - Supervisores ainda ativos (criticos)
177
+ - Chiefs pulados
178
+ - CEO so no intake e delivery
179
+ - Max rework: 1 ciclo
180
+
181
+ ### /up:rapido
182
+ - Governanca MINIMAL
183
+ - Apenas supervisor do operacional
184
+ - Sem chief, sem CEO
185
+ - Max rework: 1 ciclo
186
+
187
+ ### /up:planejar-fase
188
+ - planning-supervisor ativo
189
+ - Sem chief
190
+ - Sem CEO
191
+
192
+ ### /up:executar-fase
193
+ - execution-supervisor ativo
194
+ - chief-engineer no final da fase
195
+ - Sem CEO
196
+
197
+ ### /up:testar
198
+ - quality-supervisor ativo
199
+ - chief-quality no final
200
+ - Sem CEO
201
+
202
+ ### /up:melhorias
203
+ - audit-supervisor ativo
204
+ - chief-quality no final
205
+
206
+ ### /up:verificar-trabalho
207
+ - verification-supervisor ativo
208
+ - Sem chief (UAT humano ja e autoritativo)
209
+
210
+ ## Flag Global: --no-supervision
211
+
212
+ Para casos emergenciais onde voce precisa bypassar governanca:
213
+
214
+ ```
215
+ /up:modo-builder "feature urgente" --no-supervision
216
+ ```
217
+
218
+ Efeito:
219
+ - Supervisores nao rodam
220
+ - Nenhum rework
221
+ - Trabalho direto pro proximo estagio
222
+ - **Tudo registrado como SKIPPED_SUPERVISION no delivery**
223
+
224
+ Use APENAS em emergencia. Governanca existe por um motivo.
225
+
226
+ </process>
227
+
228
+ <success_criteria>
229
+ - [ ] Supervisor correspondente identificado
230
+ - [ ] Supervisor spawnado com contexto correto
231
+ - [ ] Decisao processada
232
+ - [ ] Rework cycles respeitados
233
+ - [ ] Escalacoes corretas
234
+ - [ ] Forced approval com debito tecnico registrado
235
+ - [ ] Checklist atualizado em cada passo
236
+ - [ ] Governance logs mantidos
237
+ </success_criteria>