@thatix.io/context-first-agents-cli 0.1.1 → 0.2.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 (89) hide show
  1. package/README.md +25 -12
  2. package/dist/commands/create-orchestrator.js +4 -1
  3. package/dist/commands/doctor.js +21 -5
  4. package/dist/commands/init.js +3 -1
  5. package/dist/templates/commands/en/engineer/plan.md +301 -0
  6. package/dist/templates/commands/en/engineer/pr.md +194 -0
  7. package/dist/templates/commands/en/engineer/pre-pr.md +325 -0
  8. package/dist/templates/commands/en/engineer/start.md +285 -0
  9. package/dist/templates/commands/en/engineer/work.md +256 -0
  10. package/dist/templates/commands/en/products/check.md +237 -0
  11. package/dist/templates/commands/en/products/collect.md +170 -0
  12. package/dist/templates/commands/en/products/refine.md +231 -0
  13. package/dist/templates/commands/en/products/spec.md +273 -0
  14. package/dist/templates/commands/en/quality/metrics.md +266 -0
  15. package/dist/templates/commands/en/quality/observe.md +172 -0
  16. package/dist/templates/commands/en/warm-up.md +83 -0
  17. package/dist/templates/commands/es/agents/CONTEXT-CONTRACT.md +63 -0
  18. package/dist/templates/commands/es/agents/implementer.md +27 -0
  19. package/dist/templates/commands/es/agents/integrator.md +24 -0
  20. package/dist/templates/commands/es/agents/reviewer.md +31 -0
  21. package/dist/templates/commands/es/agents/tester.md +22 -0
  22. package/dist/templates/commands/es/engineer/plan.md +335 -0
  23. package/dist/templates/commands/es/engineer/pr.md +228 -0
  24. package/dist/templates/commands/es/engineer/pre-pr.md +359 -0
  25. package/dist/templates/commands/es/engineer/start.md +318 -0
  26. package/dist/templates/commands/es/engineer/work.md +290 -0
  27. package/dist/templates/commands/es/orchestrate.md +125 -0
  28. package/dist/templates/commands/es/products/check.md +271 -0
  29. package/dist/templates/commands/es/products/collect.md +218 -0
  30. package/dist/templates/commands/es/products/refine.md +265 -0
  31. package/dist/templates/commands/es/products/spec.md +306 -0
  32. package/dist/templates/commands/es/quality/metrics.md +300 -0
  33. package/dist/templates/commands/es/quality/observe.md +205 -0
  34. package/dist/templates/commands/es/warm-up.md +83 -0
  35. package/dist/templates/commands/pt-BR/engineer/plan.md +335 -0
  36. package/dist/templates/commands/pt-BR/engineer/pr.md +228 -0
  37. package/dist/templates/commands/pt-BR/engineer/pre-pr.md +359 -0
  38. package/dist/templates/commands/pt-BR/engineer/start.md +319 -0
  39. package/dist/templates/commands/pt-BR/engineer/work.md +290 -0
  40. package/dist/templates/commands/pt-BR/products/check.md +271 -0
  41. package/dist/templates/commands/pt-BR/products/collect.md +219 -0
  42. package/dist/templates/commands/pt-BR/products/refine.md +265 -0
  43. package/dist/templates/commands/pt-BR/products/spec.md +307 -0
  44. package/dist/templates/commands/pt-BR/quality/metrics.md +300 -0
  45. package/dist/templates/commands/pt-BR/quality/observe.md +206 -0
  46. package/dist/templates/commands/pt-BR/warm-up.md +83 -0
  47. package/package.json +1 -1
  48. package/templates/commands/en/engineer/plan.md +301 -0
  49. package/templates/commands/en/engineer/pr.md +194 -0
  50. package/templates/commands/en/engineer/pre-pr.md +325 -0
  51. package/templates/commands/en/engineer/start.md +285 -0
  52. package/templates/commands/en/engineer/work.md +256 -0
  53. package/templates/commands/en/products/check.md +237 -0
  54. package/templates/commands/en/products/collect.md +170 -0
  55. package/templates/commands/en/products/refine.md +231 -0
  56. package/templates/commands/en/products/spec.md +273 -0
  57. package/templates/commands/en/quality/metrics.md +266 -0
  58. package/templates/commands/en/quality/observe.md +172 -0
  59. package/templates/commands/en/warm-up.md +83 -0
  60. package/templates/commands/es/agents/CONTEXT-CONTRACT.md +63 -0
  61. package/templates/commands/es/agents/implementer.md +27 -0
  62. package/templates/commands/es/agents/integrator.md +24 -0
  63. package/templates/commands/es/agents/reviewer.md +31 -0
  64. package/templates/commands/es/agents/tester.md +22 -0
  65. package/templates/commands/es/engineer/plan.md +335 -0
  66. package/templates/commands/es/engineer/pr.md +228 -0
  67. package/templates/commands/es/engineer/pre-pr.md +359 -0
  68. package/templates/commands/es/engineer/start.md +318 -0
  69. package/templates/commands/es/engineer/work.md +290 -0
  70. package/templates/commands/es/orchestrate.md +125 -0
  71. package/templates/commands/es/products/check.md +271 -0
  72. package/templates/commands/es/products/collect.md +218 -0
  73. package/templates/commands/es/products/refine.md +265 -0
  74. package/templates/commands/es/products/spec.md +306 -0
  75. package/templates/commands/es/quality/metrics.md +300 -0
  76. package/templates/commands/es/quality/observe.md +205 -0
  77. package/templates/commands/es/warm-up.md +83 -0
  78. package/templates/commands/pt-BR/engineer/plan.md +335 -0
  79. package/templates/commands/pt-BR/engineer/pr.md +228 -0
  80. package/templates/commands/pt-BR/engineer/pre-pr.md +359 -0
  81. package/templates/commands/pt-BR/engineer/start.md +319 -0
  82. package/templates/commands/pt-BR/engineer/work.md +290 -0
  83. package/templates/commands/pt-BR/products/check.md +271 -0
  84. package/templates/commands/pt-BR/products/collect.md +219 -0
  85. package/templates/commands/pt-BR/products/refine.md +265 -0
  86. package/templates/commands/pt-BR/products/spec.md +307 -0
  87. package/templates/commands/pt-BR/quality/metrics.md +300 -0
  88. package/templates/commands/pt-BR/quality/observe.md +206 -0
  89. package/templates/commands/pt-BR/warm-up.md +83 -0
@@ -0,0 +1,300 @@
1
+ # Métricas de Qualidade
2
+
3
+ Este comando coleta e analisa métricas de qualidade do código e do processo de desenvolvimento.
4
+
5
+ ## 🎯 Objetivo
6
+
7
+ Medir e documentar a qualidade da implementação através de métricas objetivas:
8
+ - Cobertura de testes
9
+ - Complexidade do código
10
+ - Dívida técnica
11
+ - Performance
12
+ - Conformidade com padrões
13
+
14
+ ## 📋 Configuração do Projeto
15
+
16
+ **⚠️ IMPORTANTE: Sempre leia os arquivos de configuração do projeto ANTES de executar este comando!**
17
+
18
+ ### Arquivos Obrigatórios
19
+
20
+ 1. **`context-manifest.json`** (raiz do orchestrator)
21
+ - Lista de repositórios do projeto
22
+ - Roles de cada repositório (metaspecs, application, etc.)
23
+ - URLs e dependências entre repositórios
24
+
25
+ 2. **`ai.properties.md`** (raiz do orchestrator)
26
+ - Configurações do projeto (`project_name`, `base_path`)
27
+ - Sistema de gerenciamento de tarefas (`task_management_system`)
28
+ - Credenciais e configurações específicas
29
+
30
+ ### Como Ler
31
+
32
+ ```bash
33
+ # 1. Ler context-manifest.json
34
+ cat context-manifest.json
35
+
36
+ # 2. Ler ai.properties.md
37
+ cat ai.properties.md
38
+ ```
39
+
40
+ ### Informações Essenciais
41
+
42
+ Após ler os arquivos, você terá:
43
+ - ✅ Lista completa de repositórios do projeto
44
+ - ✅ Localização do repositório de metaspecs
45
+ - ✅ Base path para localizar repositórios
46
+ - ✅ Sistema de task management configurado
47
+ - ✅ Configurações específicas do projeto
48
+
49
+ **🛑 NÃO prossiga sem ler estes arquivos!** Eles contêm informações críticas para a execução correta do comando.
50
+
51
+
52
+ ## 📋 Pré-requisitos
53
+
54
+ - Implementação concluída (após `/work`)
55
+ - Testes implementados
56
+ - Build funcionando
57
+
58
+ ## 📊 Métricas a Coletar
59
+
60
+ ### 1. Cobertura de Testes
61
+
62
+ Para cada repositório modificado:
63
+
64
+ ```bash
65
+ cd <repositório>
66
+
67
+ # Executar testes com cobertura (exemplos por stack):
68
+ # Node.js: npm run test:coverage / jest --coverage
69
+ # Python: pytest --cov=src tests/
70
+ # Java: mvn jacoco:report / gradle jacocoTestReport
71
+ # Go: go test -cover ./...
72
+ # Ruby: rspec --coverage
73
+ # Rust: cargo tarpaulin
74
+ # PHP: ./vendor/bin/phpunit --coverage-html coverage/
75
+ # C#: dotnet test /p:CollectCoverage=true
76
+
77
+ # Capturar resultados
78
+ ```
79
+
80
+ Documente:
81
+ ```markdown
82
+ ## Cobertura de Testes
83
+
84
+ ### <repo-1>
85
+ - **Cobertura Total**: X%
86
+ - **Statements**: X%
87
+ - **Branches**: X%
88
+ - **Functions**: X%
89
+ - **Lines**: X%
90
+ - **Arquivos não cobertos**: [lista]
91
+
92
+ ### <repo-2>
93
+ [Mesmo formato]
94
+ ```
95
+
96
+ ### 2. Complexidade do Código
97
+
98
+ Analise a complexidade ciclomática dos arquivos modificados:
99
+
100
+ ```markdown
101
+ ## Complexidade do Código
102
+
103
+ ### Arquivos com Alta Complexidade
104
+ - **arquivo1.ts**: Complexidade 15 (recomendado: < 10)
105
+ - **arquivo2.ts**: Complexidade 12
106
+
107
+ ### Recomendações
108
+ - [Sugestão de refatoração 1]
109
+ - [Sugestão de refatoração 2]
110
+ ```
111
+
112
+ ### 3. Qualidade do Código
113
+
114
+ ```bash
115
+ # Executar linting (exemplos por stack):
116
+ # Node.js: npm run lint / eslint .
117
+ # Python: flake8 . / pylint src/
118
+ # Java: mvn checkstyle:check
119
+ # Go: golangci-lint run
120
+ # Ruby: rubocop
121
+ # Rust: cargo clippy
122
+
123
+ # Verificar formatação (exemplos por stack):
124
+ # Node.js: prettier --check .
125
+ # Python: black --check .
126
+ # Java: mvn formatter:validate
127
+ # Go: gofmt -l .
128
+ # Ruby: rubocop --format-only
129
+ # Rust: cargo fmt --check
130
+
131
+ # Análise estática (exemplos por stack):
132
+ # Node.js: npm run analyze (se configurado)
133
+ # Python: mypy src/ / bandit -r src/
134
+ # Java: mvn pmd:check / spotbugs:check
135
+ # Go: go vet ./...
136
+ # Ruby: brakeman (para Rails)
137
+ # Rust: cargo audit
138
+ ```
139
+
140
+ Documente:
141
+ ```markdown
142
+ ## Qualidade do Código
143
+
144
+ ### Linting
145
+ - **Erros**: 0
146
+ - **Warnings**: X
147
+ - **Warnings Justificados**: [lista com justificativas]
148
+
149
+ ### Formatação
150
+ - **Status**: ✅ Conforme / ⚠️ Ajustes necessários
151
+
152
+ ### Análise Estática
153
+ - **Problemas Críticos**: 0
154
+ - **Problemas Médios**: X
155
+ - **Problemas Baixos**: Y
156
+ ```
157
+
158
+ ### 4. Performance
159
+
160
+ Se aplicável, meça performance:
161
+
162
+ ```markdown
163
+ ## Performance
164
+
165
+ ### Benchmarks
166
+ - **Operação X**: Yms (baseline: Zms)
167
+ - **Operação Y**: Yms (baseline: Zms)
168
+
169
+ ### Otimizações Aplicadas
170
+ - [Otimização 1 e impacto]
171
+ - [Otimização 2 e impacto]
172
+
173
+ ### Gargalos Identificados
174
+ - [Gargalo 1 e plano de mitigação]
175
+ ```
176
+
177
+ ### 5. Tamanho e Impacto
178
+
179
+ ```markdown
180
+ ## Tamanho e Impacto
181
+
182
+ ### Linhas de Código
183
+ - **Adicionadas**: +X linhas
184
+ - **Removidas**: -Y linhas
185
+ - **Modificadas**: Z linhas
186
+
187
+ ### Arquivos
188
+ - **Novos**: X arquivos
189
+ - **Modificados**: Y arquivos
190
+ - **Removidos**: Z arquivos
191
+
192
+ ### Dependências
193
+ - **Novas dependências**: [lista]
194
+ - **Tamanho do bundle**: +X KB
195
+ ```
196
+
197
+ ### 6. Dívida Técnica
198
+
199
+ Identifique dívida técnica introduzida ou resolvida:
200
+
201
+ ```markdown
202
+ ## Dívida Técnica
203
+
204
+ ### Dívida Introduzida
205
+ - **Item 1**: [Descrição e justificativa]
206
+ - Severidade: Alta / Média / Baixa
207
+ - Plano de resolução: [quando e como resolver]
208
+
209
+ ### Dívida Resolvida
210
+ - **Item 1**: [O que foi resolvido]
211
+ - Impacto: [melhoria obtida]
212
+ ```
213
+
214
+ ## 📄 Relatório de Métricas
215
+
216
+ Crie `./.sessions/<ISSUE-ID>/metrics.md`:
217
+
218
+ ```markdown
219
+ # Relatório de Métricas - [ISSUE-ID]
220
+
221
+ **Data**: [data/hora]
222
+ **Repositórios**: [lista]
223
+
224
+ ## Resumo Executivo
225
+
226
+ - **Cobertura de Testes**: X% (meta: Y%)
227
+ - **Qualidade do Código**: ✅ / ⚠️ / ❌
228
+ - **Performance**: ✅ / ⚠️ / ❌
229
+ - **Dívida Técnica**: Baixa / Média / Alta
230
+
231
+ ## Métricas Detalhadas
232
+
233
+ [Incluir todas as seções acima]
234
+
235
+ ## Comparação com Baseline
236
+
237
+ | Métrica | Antes | Depois | Variação |
238
+ |---------|-------|--------|----------|
239
+ | Cobertura | X% | Y% | +Z% |
240
+ | Complexidade Média | X | Y | +Z |
241
+ | Bundle Size | X KB | Y KB | +Z KB |
242
+
243
+ ## Ações Recomendadas
244
+
245
+ 1. [Ação 1 - prioridade alta]
246
+ 2. [Ação 2 - prioridade média]
247
+ 3. [Ação 3 - prioridade baixa]
248
+
249
+ ## Aprovação para Merge
250
+
251
+ - [ ] Cobertura de testes >= meta
252
+ - [ ] Sem problemas críticos de qualidade
253
+ - [ ] Performance dentro dos requisitos
254
+ - [ ] Dívida técnica documentada e aprovada
255
+ ```
256
+
257
+ ## 🎯 Metas de Qualidade
258
+
259
+ Se o projeto tiver metas definidas nas metaspecs, valide:
260
+
261
+ ```markdown
262
+ ## Validação contra Metas
263
+
264
+ ### Metas do Projeto
265
+ - **Cobertura mínima**: 80%
266
+ - **Complexidade máxima**: 10
267
+ - **Performance**: < 100ms
268
+
269
+ ### Status
270
+ - Cobertura: ✅ 85% (meta: 80%)
271
+ - Complexidade: ⚠️ 12 (meta: 10) - Justificado
272
+ - Performance: ✅ 85ms (meta: 100ms)
273
+ ```
274
+
275
+ ## 🚨 Alertas
276
+
277
+ Se alguma métrica estiver fora do aceitável:
278
+ 1. 🛑 **DOCUMENTE** o problema
279
+ 2. 💬 **ALERTE** o usuário
280
+ 3. 🔧 **PROPONHA** ações corretivas
281
+ 4. ⏸️ **CONSIDERE** bloquear o merge até resolução
282
+
283
+ ---
284
+
285
+ **Argumentos fornecidos**:
286
+
287
+ ```
288
+ #$ARGUMENTS
289
+ ```
290
+
291
+ ---
292
+
293
+ ## 🎯 Resultado
294
+
295
+ Após executar este comando, você terá:
296
+ - Relatório completo de métricas
297
+ - Comparação com baseline e metas
298
+ - Identificação de problemas de qualidade
299
+ - Recomendações de ações
300
+ - Base objetiva para aprovação de merge
@@ -0,0 +1,206 @@
1
+ # Observabilidade de Decisões
2
+
3
+ Este comando registra decisões importantes tomadas durante o desenvolvimento, criando um log auditável para explicabilidade e rastreabilidade.
4
+
5
+ ## 🎯 Objetivo
6
+
7
+ Criar registro estruturado de decisões técnicas e de produto, garantindo:
8
+ - **Explicabilidade**: Por que cada decisão foi tomada
9
+ - **Rastreabilidade**: Quais fontes (PRD, metaspecs, ADRs) embasaram a decisão
10
+ - **Auditoria**: Histórico completo de escolhas para revisão futura
11
+ - **Aprendizado**: Documentação de trade-offs e alternativas consideradas
12
+
13
+ **IMPORTANTE**: Este comando NÃO gera decisões novas. Ele apenas REGISTRA decisões que já foram tomadas no processo de desenvolvimento.
14
+
15
+ ## 📋 Configuração do Projeto
16
+
17
+ **⚠️ IMPORTANTE: Sempre leia os arquivos de configuração do projeto ANTES de executar este comando!**
18
+
19
+ ### Arquivos Obrigatórios
20
+
21
+ 1. **`context-manifest.json`** (raiz do orchestrator)
22
+ - Lista de repositórios do projeto
23
+ - Roles de cada repositório (metaspecs, application, etc.)
24
+ - URLs e dependências entre repositórios
25
+
26
+ 2. **`ai.properties.md`** (raiz do orchestrator)
27
+ - Configurações do projeto (`project_name`, `base_path`)
28
+ - Sistema de gerenciamento de tarefas (`task_management_system`)
29
+ - Credenciais e configurações específicas
30
+
31
+ ### Como Ler
32
+
33
+ ```bash
34
+ # 1. Ler context-manifest.json
35
+ cat context-manifest.json
36
+
37
+ # 2. Ler ai.properties.md
38
+ cat ai.properties.md
39
+ ```
40
+
41
+ ### Informações Essenciais
42
+
43
+ Após ler os arquivos, você terá:
44
+ - ✅ Lista completa de repositórios do projeto
45
+ - ✅ Localização do repositório de metaspecs
46
+ - ✅ Base path para localizar repositórios
47
+ - ✅ Sistema de task management configurado
48
+ - ✅ Configurações específicas do projeto
49
+
50
+ **🛑 NÃO prossiga sem ler estes arquivos!** Eles contêm informações críticas para a execução correta do comando.
51
+
52
+
53
+ ## 📋 Pré-requisitos
54
+
55
+ - Executou pelo menos um dos comandos que geram decisões:
56
+ - `/spec` - gera PRD com decisões de produto
57
+ - `/plan` - gera plan.md com decisões técnicas
58
+ - `/work` - implementação gera decisões durante desenvolvimento
59
+
60
+ ## 🔍 Processo de Observação
61
+
62
+ ### 1. Identificar Decisões Relevantes
63
+
64
+ Analise os arquivos da sessão (`./.sessions/<ISSUE-ID>/`) para identificar decisões:
65
+
66
+ **Após `/spec`** - Decisões de Produto:
67
+ - Leia `./.sessions/<ISSUE-ID>/prd.md`
68
+ - Identifique decisões em:
69
+ - Escopo (o que entra/não entra na feature)
70
+ - Personas atendidas (quem é o público-alvo)
71
+ - Métricas de sucesso (como medir resultados)
72
+ - Requisitos não-funcionais (performance, acessibilidade)
73
+ - Restrições e trade-offs
74
+
75
+ **Após `/plan`** - Decisões Técnicas:
76
+ - Leia `./.sessions/<ISSUE-ID>/plan.md`
77
+ - Identifique decisões em:
78
+ - Arquitetura de componentes/módulos
79
+ - Escolha de bibliotecas ou ferramentas
80
+ - Padrões de implementação
81
+ - Estrutura de dados
82
+ - Estratégia de testes
83
+
84
+ **Durante `/work`** - Decisões de Implementação:
85
+ - Leia `./.sessions/<ISSUE-ID>/work.md`
86
+ - Identifique decisões em:
87
+ - Refatorações realizadas
88
+ - Mudanças de abordagem
89
+ - Otimizações aplicadas
90
+ - Tratamento de edge cases
91
+
92
+ ### 2. Documentar Cada Decisão
93
+
94
+ Para cada decisão identificada, documente:
95
+
96
+ ```markdown
97
+ ## Decisão: [Título Claro]
98
+
99
+ **Contexto**: [Por que precisamos decidir isso? Qual o problema ou necessidade?]
100
+
101
+ **Opções Consideradas**:
102
+ 1. **Opção A**: [Descrição]
103
+ - Prós: [vantagens]
104
+ - Contras: [desvantagens]
105
+ 2. **Opção B**: [Descrição]
106
+ - Prós: [vantagens]
107
+ - Contras: [desvantagens]
108
+
109
+ **Decisão**: [Opção escolhida]
110
+
111
+ **Justificativa**: [Por que escolhemos esta opção? Quais critérios foram mais importantes?]
112
+
113
+ **Fontes**:
114
+ - [PRD seção X]
115
+ - [Metaspec Y]
116
+ - [ADR-00Z]
117
+
118
+ **Trade-offs Aceitos**: [Quais desvantagens aceitamos conscientemente?]
119
+
120
+ **Reversibilidade**: Fácil / Média / Difícil
121
+
122
+ **Data**: [data da decisão]
123
+ ```
124
+
125
+ ### 3. Criar Log de Decisões
126
+
127
+ Salve em `./.sessions/<ISSUE-ID>/decisions.md`:
128
+
129
+ ```markdown
130
+ # Log de Decisões - [ISSUE-ID]
131
+
132
+ ## Resumo
133
+ [Breve resumo das principais decisões tomadas nesta feature]
134
+
135
+ ## Decisões de Produto
136
+
137
+ ### [Decisão 1]
138
+ [Conforme template acima]
139
+
140
+ ### [Decisão 2]
141
+ [Conforme template acima]
142
+
143
+ ## Decisões Técnicas
144
+
145
+ ### [Decisão 3]
146
+ [Conforme template acima]
147
+
148
+ ### [Decisão 4]
149
+ [Conforme template acima]
150
+
151
+ ## Decisões de Implementação
152
+
153
+ ### [Decisão 5]
154
+ [Conforme template acima]
155
+
156
+ ## Lições Aprendidas
157
+ - [Lição 1]
158
+ - [Lição 2]
159
+
160
+ ## Decisões Pendentes
161
+ - [Decisão que ainda precisa ser tomada]
162
+ ```
163
+
164
+ ## 📊 Análise de Impacto
165
+
166
+ Para decisões críticas, documente o impacto:
167
+
168
+ ```markdown
169
+ ## Análise de Impacto
170
+
171
+ **Repositórios Afetados**: [lista]
172
+
173
+ **Componentes Impactados**: [lista]
174
+
175
+ **Dependências Criadas**: [lista]
176
+
177
+ **Riscos Introduzidos**: [lista]
178
+
179
+ **Mitigações Aplicadas**: [lista]
180
+ ```
181
+
182
+ ## 🔄 Revisão de Decisões
183
+
184
+ Periodicamente, revise as decisões tomadas:
185
+ - Ainda fazem sentido?
186
+ - Os trade-offs se provaram corretos?
187
+ - Há aprendizados para documentar?
188
+ - Alguma decisão precisa ser revertida?
189
+
190
+ ---
191
+
192
+ **Argumentos fornecidos**:
193
+
194
+ ```
195
+ #$ARGUMENTS
196
+ ```
197
+
198
+ ---
199
+
200
+ ## 🎯 Resultado
201
+
202
+ Após executar este comando, você terá:
203
+ - Log completo de decisões em `./.sessions/<ISSUE-ID>/decisions.md`
204
+ - Rastreabilidade de cada escolha feita
205
+ - Documentação para futuras referências
206
+ - Base para ADRs (se decisões forem de arquitetura)
@@ -0,0 +1,83 @@
1
+ # Aquecimento — Carregamento de Contexto (índices para RAG)
2
+
3
+ Prepara o ambiente carregando os **índices das specs** para um mapa de contexto navegável.
4
+ O objetivo NÃO é despejar as specs no contexto, e sim carregar os **índices** para que
5
+ comandos seguintes saibam **onde buscar** cada informação sob demanda.
6
+
7
+ **Argumentos**: `#$ARGUMENTS`
8
+
9
+ ---
10
+
11
+ ## 1. Carregar configuração
12
+
13
+ Leia do orchestrator:
14
+ - **`context-manifest.json`** — `repositories[]` (id, role, hints), e o bloco
15
+ `orchestration` (especialmente `indexes`).
16
+ - **`ai.properties.md`** — `base_path`, `task_management_system`.
17
+
18
+ Localize o repositório de specs: o de `role: "metaspecs"` (ou `"specs-provider"`).
19
+
20
+ ## 2. Descobrir os índices (dinâmico — não exige nenhum arquivo fixo)
21
+
22
+ Monte a lista de índices a carregar, nesta ordem de prioridade, **pulando o que não existir**:
23
+
24
+ 1. Todos os caminhos em `orchestration.indexes` do manifest (se definidos).
25
+ 2. Se nenhum foi definido, ou para complementar, **descubra** os índices no repo de specs:
26
+ - procure por `index.md` / `INDEX.md` em `{base_path}/{metaspecs-id}/specs/` e subpastas
27
+ (ex.: `specs/index.md`, `specs/technical/index.md`, `specs/business/index.md`,
28
+ `specs/business/features/index.md`).
29
+ 3. Inclua também, **se existirem**, os arquivos de `context[]` de cada repositório do manifest.
30
+
31
+ > Degrade graciosamente: se um índice esperado não existir, **apenas registre e continue**.
32
+ > Nunca falhe o warm-up por falta de um arquivo específico.
33
+
34
+ ## 3. Construir o Mapa de Contexto (o produto do warm-up)
35
+
36
+ Leia SOMENTE os índices descobertos (não os documentos que eles apontam). A partir deles,
37
+ monte e apresente um **mapa de RAG** — a "tabela de roteamento" do projeto:
38
+
39
+ ```
40
+ ## Mapa de Contexto (RAG)
41
+
42
+ ### Índices carregados
43
+ - specs/index.md → raiz da navegação
44
+ - specs/technical/index.md → arquitetura, API, ADRs, convenções
45
+ - specs/business/index.md → personas, jornada, estratégia
46
+ - ...(apenas os que existem)
47
+
48
+ ### Onde buscar sob demanda
49
+ | Necessidade | Consultar (via índice) |
50
+ |---------------------------------|-------------------------------------|
51
+ | Arquitetura / decisões | technical/index.md → ARCHITECTURE / ADRs |
52
+ | Contrato de API | technical/index.md → API_SPECIFICATION |
53
+ | Regras de negócio / feature | business/index.md → features/... |
54
+ | Convenções de código | technical/index.md → guia de código |
55
+
56
+ ### Repositórios (do manifest)
57
+ - <repo-id> [role] — hints: ...
58
+ ```
59
+
60
+ Se um índice referenciar documentos que não existem em disco, marque como
61
+ `(referenciado, ausente)` — isso é sinal de spec incompleta, não um erro do warm-up.
62
+
63
+ ## 4. Verificar repositórios e sessão
64
+
65
+ - Para cada repo do manifest, confirme existência em `{base_path}/{repo-id}/`
66
+ (não leia README nem código agora — isso é sob demanda).
67
+ - Se um ISSUE-ID foi passado, verifique `.sessions/<ISSUE-ID>/`.
68
+
69
+ ## 5. Como comandos seguintes usam isto
70
+
71
+ Comandos como `/spec`, `/orchestrate` e os agentes NÃO devem varrer o repo às cegas.
72
+ Eles devem: consultar o Mapa de Contexto → abrir o índice relevante → seguir o link para
73
+ o documento específico. É o índice que otimiza o RAG: carrega-se pouco, e navega-se com precisão.
74
+
75
+ ## 6. Princípio Jidoka
76
+
77
+ Se detectar um problema estrutural (nenhum índice encontrado, specs-provider ausente):
78
+ **PARE**, descreva o que falta e sugira ao usuário como corrigir (ex.: criar
79
+ `specs/index.md` ou preencher `orchestration.indexes`). Não invente contexto.
80
+
81
+ ---
82
+
83
+ **Status**: Índices carregados e Mapa de Contexto montado. Aguardando o próximo comando.