context-first-cli 2.3.0 → 2.3.2
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/dist/commands/add-repo.js +2 -2
- package/dist/commands/add-repo.js.map +1 -1
- package/dist/commands/create-orchestrator.js +2 -2
- package/dist/commands/create-orchestrator.js.map +1 -1
- package/dist/commands/feature.d.ts.map +1 -1
- package/dist/commands/feature.js +3 -12
- package/dist/commands/feature.js.map +1 -1
- package/dist/commands/update-commands.d.ts.map +1 -1
- package/dist/commands/update-commands.js +10 -4
- package/dist/commands/update-commands.js.map +1 -1
- package/dist/templates/commands/en/engineer/plan.md +3 -37
- package/dist/templates/commands/en/engineer/pr.md +4 -38
- package/dist/templates/commands/en/engineer/pre-pr.md +4 -38
- package/dist/templates/commands/en/engineer/start.md +4 -37
- package/dist/templates/commands/en/engineer/work.md +4 -38
- package/dist/templates/commands/en/products/check.md +3 -36
- package/dist/templates/commands/en/products/collect.md +9 -57
- package/dist/templates/commands/en/products/refine.md +4 -38
- package/dist/templates/commands/en/products/spec.md +3 -36
- package/dist/templates/commands/en/quality/metrics.md +3 -36
- package/dist/templates/commands/en/quality/observe.md +3 -37
- package/dist/templates/commands/en/warm-up.md +33 -96
- package/dist/templates/commands/es/warm-up.md +33 -97
- package/dist/templates/commands/pt-BR/commands/engineer/plan.md +301 -0
- package/dist/templates/commands/pt-BR/commands/engineer/pr.md +194 -0
- package/dist/templates/commands/pt-BR/commands/engineer/pre-pr.md +325 -0
- package/dist/templates/commands/pt-BR/commands/engineer/start.md +285 -0
- package/dist/templates/commands/pt-BR/commands/engineer/work.md +256 -0
- package/dist/templates/commands/pt-BR/commands/products/check.md +237 -0
- package/dist/templates/commands/pt-BR/commands/products/collect.md +170 -0
- package/dist/templates/commands/pt-BR/commands/products/refine.md +231 -0
- package/dist/templates/commands/pt-BR/commands/products/spec.md +271 -0
- package/dist/templates/commands/pt-BR/commands/quality/metrics.md +266 -0
- package/dist/templates/commands/pt-BR/commands/quality/observe.md +172 -0
- package/dist/templates/commands/pt-BR/commands/warm-up.md +59 -0
- package/dist/templates/commands/pt-BR/warm-up.md +32 -96
- package/package.json +1 -1
- package/templates/commands/en/engineer/plan.md +3 -37
- package/templates/commands/en/engineer/pr.md +4 -38
- package/templates/commands/en/engineer/pre-pr.md +4 -38
- package/templates/commands/en/engineer/start.md +4 -37
- package/templates/commands/en/engineer/work.md +4 -38
- package/templates/commands/en/products/check.md +3 -36
- package/templates/commands/en/products/collect.md +9 -57
- package/templates/commands/en/products/refine.md +4 -38
- package/templates/commands/en/products/spec.md +3 -36
- package/templates/commands/en/quality/metrics.md +3 -36
- package/templates/commands/en/quality/observe.md +3 -37
- package/templates/commands/en/warm-up.md +33 -96
- package/templates/commands/es/warm-up.md +33 -97
- package/templates/commands/pt-BR/warm-up.md +32 -96
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
# Execução do Trabalho
|
|
2
|
+
|
|
3
|
+
Este comando executa uma unidade de trabalho no workspace atual, implementando parte do plano técnico.
|
|
4
|
+
|
|
5
|
+
## 📋 Pré-requisitos
|
|
6
|
+
|
|
7
|
+
Antes de executar, certifique-se de que:
|
|
8
|
+
- Executou `/start` e `/plan` para ter o planejamento técnico
|
|
9
|
+
- Está no workspace correto: `<orchestrator>/.sessions/<ISSUE-ID>/`
|
|
10
|
+
- Tem os arquivos `.sessions/<ISSUE-ID>/` disponíveis:
|
|
11
|
+
- `context.md` (imutável)
|
|
12
|
+
- `architecture.md` (imutável)
|
|
13
|
+
- `plan.md` (mutável)
|
|
14
|
+
|
|
15
|
+
## Configuração
|
|
16
|
+
|
|
17
|
+
Leia `context-manifest.json` e `ai.properties.md` do orchestrator para obter repositórios, base_path e task_management_system.
|
|
18
|
+
|
|
19
|
+
## 📍 IMPORTANTE: Entenda a Estrutura
|
|
20
|
+
|
|
21
|
+
**Workspace** (onde você trabalha):
|
|
22
|
+
```
|
|
23
|
+
<orchestrator>/.sessions/<ISSUE-ID>/
|
|
24
|
+
├── repo-1/ # worktree com branch feature/<ISSUE-ID>
|
|
25
|
+
├── repo-2/ # worktree com branch feature/<ISSUE-ID>
|
|
26
|
+
├── context.md # contexto (imutável)
|
|
27
|
+
├── architecture.md # arquitetura (imutável)
|
|
28
|
+
└── plan.md # plano (mutável)
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
**Repositórios principais** (NÃO tocar):
|
|
32
|
+
```
|
|
33
|
+
{base_path}/repo-1/ # repo principal (branch main/master)
|
|
34
|
+
{base_path}/repo-2/ # repo principal (branch main/master)
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
**REGRA DE OURO**:
|
|
38
|
+
- ✅ Trabalhe APENAS dentro de `<orchestrator>/.sessions/<ISSUE-ID>/`
|
|
39
|
+
- ✅ Faça commits nos worktrees dentro do workspace
|
|
40
|
+
- ❌ NUNCA faça checkout nos repositórios principais
|
|
41
|
+
- ❌ NUNCA navegue para `{base_path}/{repo-id}/`
|
|
42
|
+
|
|
43
|
+
## 🛑 CRÍTICO: ONDE CRIAR CÓDIGO
|
|
44
|
+
|
|
45
|
+
**⚠️ ATENÇÃO: TODO CÓDIGO DEVE SER CRIADO DENTRO DO WORKTREE DO REPOSITÓRIO!**
|
|
46
|
+
|
|
47
|
+
**✅ CORRETO** - Criar código dentro do worktree:
|
|
48
|
+
```
|
|
49
|
+
<orchestrator>/.sessions/<ISSUE-ID>/<repo-name>/src/file.ts ✅
|
|
50
|
+
<orchestrator>/.sessions/<ISSUE-ID>/<repo-name>/tests/test.ts ✅
|
|
51
|
+
<orchestrator>/.sessions/<ISSUE-ID>/<repo-name>/package.json ✅
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
**❌ ERRADO** - NUNCA criar código diretamente em .sessions:
|
|
55
|
+
```
|
|
56
|
+
<orchestrator>/.sessions/src/file.ts ❌
|
|
57
|
+
<orchestrator>/.sessions/<ISSUE-ID>/src/file.ts ❌
|
|
58
|
+
<orchestrator>/.sessions/<ISSUE-ID>/file.ts ❌
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
**REGRA ABSOLUTA**:
|
|
62
|
+
- 🛑 **TODO arquivo de código** (`.ts`, `.js`, `.py`, `.java`, etc.) **DEVE estar dentro de** `<orchestrator>/.sessions/<ISSUE-ID>/<repo-name>/`
|
|
63
|
+
- 🛑 **NUNCA crie código** diretamente em `<orchestrator>/.sessions/` ou `<orchestrator>/.sessions/<ISSUE-ID>/`
|
|
64
|
+
- ✅ **Único lugar válido**: Dentro do worktree do repositório específico
|
|
65
|
+
|
|
66
|
+
## ⚠️ IMPORTANTE: Arquivos Imutáveis
|
|
67
|
+
|
|
68
|
+
**Este comando deve LER mas NÃO MODIFICAR:**
|
|
69
|
+
- ✅ **LER** `.sessions/<ISSUE-ID>/context.md` (imutável)
|
|
70
|
+
- ✅ **LER** `.sessions/<ISSUE-ID>/architecture.md` (imutável)
|
|
71
|
+
- ✅ **ATUALIZAR** `.sessions/<ISSUE-ID>/plan.md` (marcar progresso)
|
|
72
|
+
- ✅ **IMPLEMENTAR** código **DENTRO DO WORKTREE**: `.sessions/<ISSUE-ID>/<repo-name>/`
|
|
73
|
+
- ✅ **FAZER COMMITS** nos worktrees: `.sessions/<ISSUE-ID>/<repo-name>/`
|
|
74
|
+
- ❌ **NÃO modificar `context.md` ou `architecture.md`**
|
|
75
|
+
- ❌ **NÃO fazer checkout de branches nos repositórios principais (fora do workspace)**
|
|
76
|
+
- 🛑 **NUNCA criar código em `.sessions/` ou `.sessions/<ISSUE-ID>/` diretamente**
|
|
77
|
+
|
|
78
|
+
## 📚 Carregar MetaSpecs
|
|
79
|
+
|
|
80
|
+
**Localizar MetaSpecs automaticamente**:
|
|
81
|
+
1. Leia `context-manifest.json` do orchestrator
|
|
82
|
+
2. Encontre o repositório com `"role": "metaspecs"`
|
|
83
|
+
3. Leia `ai.properties.md` para obter o `base_path`
|
|
84
|
+
4. O metaspecs está em: `{base_path}/{metaspecs-repo-id}/`
|
|
85
|
+
5. Leia os arquivos `index.md` relevantes durante a implementação para:
|
|
86
|
+
- Seguir padrões de código
|
|
87
|
+
- Respeitar arquitetura definida
|
|
88
|
+
- Usar convenções corretas
|
|
89
|
+
|
|
90
|
+
## 🎯 Objetivo
|
|
91
|
+
|
|
92
|
+
Implementar uma unidade de trabalho específica do plano, que pode envolver:
|
|
93
|
+
- Criar novos arquivos/componentes
|
|
94
|
+
- Modificar arquivos existentes
|
|
95
|
+
- Adicionar testes
|
|
96
|
+
- Atualizar documentação
|
|
97
|
+
|
|
98
|
+
## 📝 Processo de Trabalho
|
|
99
|
+
|
|
100
|
+
**⚠️ IMPORTANTE: CONTROLE DE PROGRESSO**
|
|
101
|
+
|
|
102
|
+
Este comando executa o trabalho em **fases incrementais**. Após completar cada **FASE PRINCIPAL** (ex: Fase 1 → Fase 2):
|
|
103
|
+
|
|
104
|
+
1. 🛑 **PARE** a execução
|
|
105
|
+
2. 📊 **APRESENTE** um resumo do que foi feito
|
|
106
|
+
3. ❓ **PERGUNTE** ao desenvolvedor se ele quer:
|
|
107
|
+
- Revisar o código implementado
|
|
108
|
+
- Fazer ajustes antes de continuar
|
|
109
|
+
- Prosseguir para a próxima fase
|
|
110
|
+
|
|
111
|
+
**IMPORTANTE**:
|
|
112
|
+
- ✅ **PAUSE** entre fases principais (Fase 1 → Fase 2 → Fase 3)
|
|
113
|
+
- ❌ **NÃO pause** entre subfases (Fase 1.1 → Fase 1.2 → Fase 1.3)
|
|
114
|
+
|
|
115
|
+
**NÃO implemente tudo de uma vez**. Trabalhe fase principal por fase principal, aguardando confirmação do desenvolvedor.
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
### 1. Identificar Unidade de Trabalho
|
|
120
|
+
|
|
121
|
+
Com base no plano técnico (`./.sessions/<ISSUE-ID>/plan.md`), identifique:
|
|
122
|
+
- Qual tarefa específica será implementada agora
|
|
123
|
+
- Em qual(is) repositório(s) do workspace
|
|
124
|
+
- Quais arquivos serão criados/modificados
|
|
125
|
+
- Dependências com outras tarefas
|
|
126
|
+
|
|
127
|
+
### 2. Implementação
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
**IMPORTANTE**: Trabalhe APENAS dentro do workspace em `.sessions/<ISSUE-ID>/`
|
|
132
|
+
|
|
133
|
+
Para cada repositório no workspace:
|
|
134
|
+
|
|
135
|
+
```bash
|
|
136
|
+
# Navegue para o worktree dentro do workspace
|
|
137
|
+
cd <orchestrator>/.sessions/<ISSUE-ID>/<repo-name>/
|
|
138
|
+
|
|
139
|
+
# Verifique que está na branch correta
|
|
140
|
+
git branch # deve mostrar * feature/<ISSUE-ID>
|
|
141
|
+
|
|
142
|
+
# Implemente o código aqui
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
Execute a implementação seguindo:
|
|
146
|
+
- **Padrões do projeto**: Consulte guias de estilo e arquitetura
|
|
147
|
+
- **Stack aprovada**: Use apenas tecnologias documentadas nas metaspecs
|
|
148
|
+
- **Testes**: Implemente testes conforme padrões do projeto
|
|
149
|
+
- **Documentação**: Atualize comentários e docs quando necessário
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
### 3. Validação Local
|
|
154
|
+
|
|
155
|
+
Antes de commitar:
|
|
156
|
+
- Execute testes unitários/integração
|
|
157
|
+
- Verifique linting e formatação
|
|
158
|
+
- Confirme que não quebrou funcionalidades existentes
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
### 4. Commit
|
|
163
|
+
|
|
164
|
+
Para cada repositório modificado **dentro do workspace**:
|
|
165
|
+
|
|
166
|
+
```bash
|
|
167
|
+
# Navegue para o worktree dentro do workspace
|
|
168
|
+
cd <orchestrator>/.sessions/<ISSUE-ID>/<repo-name>/
|
|
169
|
+
|
|
170
|
+
# Adicione as mudanças
|
|
171
|
+
git add .
|
|
172
|
+
|
|
173
|
+
# Commit
|
|
174
|
+
git commit -m "tipo: descrição concisa
|
|
175
|
+
|
|
176
|
+
- Detalhe 1
|
|
177
|
+
- Detalhe 2
|
|
178
|
+
|
|
179
|
+
Refs: <ISSUE-ID>"
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
**Tipos de commit**: `feat`, `fix`, `refactor`, `test`, `docs`, `chore`
|
|
183
|
+
|
|
184
|
+
**⚠️ PAUSA OBRIGATÓRIA**: Após completar TODA a fase principal (identificação + implementação + validação + commit + atualização do plan.md), **PARE** e mostre ao desenvolvedor:
|
|
185
|
+
- Resumo completo da fase
|
|
186
|
+
- Arquivos criados/modificados
|
|
187
|
+
- Commits realizados
|
|
188
|
+
- Pergunte se ele quer revisar ou prosseguir para a próxima fase
|
|
189
|
+
|
|
190
|
+
### 5. Atualização do Plan.md
|
|
191
|
+
|
|
192
|
+
**A CADA tarefa completada**, atualize `./.sessions/<ISSUE-ID>/plan.md`:
|
|
193
|
+
|
|
194
|
+
```markdown
|
|
195
|
+
#### 1.1 - [Nome da Tarefa] [Completada ✅]
|
|
196
|
+
- [Detalhe 1]
|
|
197
|
+
- [Detalhe 2]
|
|
198
|
+
- [Detalhe 3]
|
|
199
|
+
|
|
200
|
+
**Arquivos**:
|
|
201
|
+
- `path/to/file1.ts` ✅
|
|
202
|
+
- `path/to/file2.vue` ✅
|
|
203
|
+
|
|
204
|
+
**Testes**:
|
|
205
|
+
- Unit test: [Descrição] ✅
|
|
206
|
+
- Integration test: [Descrição] ✅
|
|
207
|
+
|
|
208
|
+
**Comentários**:
|
|
209
|
+
- Decisão: [Explicação de decisão técnica importante]
|
|
210
|
+
- Aprendizado: [Algo aprendido durante implementação]
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
**Marque status das tarefas**:
|
|
214
|
+
- `[Não Iniciada ⏳]` - Tarefa ainda não começou
|
|
215
|
+
- `[Em Progresso ⏰]` - Tarefa sendo trabalhada agora
|
|
216
|
+
- `[Completada ✅]` - Tarefa finalizada e validada
|
|
217
|
+
|
|
218
|
+
## 🔍 Checklist de Qualidade
|
|
219
|
+
|
|
220
|
+
Antes de considerar a unidade completa:
|
|
221
|
+
- [ ] Código implementado e testado
|
|
222
|
+
- [ ] Testes passando
|
|
223
|
+
- [ ] Linting/formatação OK
|
|
224
|
+
- [ ] Documentação atualizada (se necessário)
|
|
225
|
+
- [ ] Commit realizado em todos os repos afetados
|
|
226
|
+
- [ ] `plan.md` atualizado com progresso e comentários
|
|
227
|
+
|
|
228
|
+
## ⚠️ Princípio Jidoka
|
|
229
|
+
|
|
230
|
+
Se encontrar problemas durante a implementação:
|
|
231
|
+
1. 🛑 **PARE** a implementação
|
|
232
|
+
2. 📝 **DOCUMENTE** o problema encontrado
|
|
233
|
+
3. 💬 **ALERTE** o usuário e discuta soluções
|
|
234
|
+
4. 🔄 **AJUSTE** o plano se necessário
|
|
235
|
+
|
|
236
|
+
---
|
|
237
|
+
|
|
238
|
+
**Argumentos fornecidos**:
|
|
239
|
+
|
|
240
|
+
```
|
|
241
|
+
#$ARGUMENTS
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
---
|
|
245
|
+
|
|
246
|
+
## 🎯 Próximos Passos
|
|
247
|
+
|
|
248
|
+
- **Continuar implementação**: Execute `/work` novamente para próxima unidade
|
|
249
|
+
- **Finalizar feature**: Quando tudo estiver implementado, execute `/pre-pr`
|
|
250
|
+
|
|
251
|
+
## 💡 Dicas
|
|
252
|
+
|
|
253
|
+
- Trabalhe em unidades pequenas e incrementais
|
|
254
|
+
- Commit frequentemente (atomic commits)
|
|
255
|
+
- Documente decisões importantes na sessão
|
|
256
|
+
- Mantenha os repositórios sincronizados entre si
|
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
# Validação contra Metaspecs
|
|
2
|
+
|
|
3
|
+
Este comando valida requisitos, decisões ou implementações contra as metaspecs do projeto.
|
|
4
|
+
|
|
5
|
+
## ⚠️ IMPORTANTE: Modo de Operação
|
|
6
|
+
|
|
7
|
+
**Este comando é para VALIDAÇÃO:**
|
|
8
|
+
- ✅ Validar contra metaspecs
|
|
9
|
+
- ✅ **LER** arquivos dos repositórios (read-only)
|
|
10
|
+
- ✅ Gerar relatório de validação
|
|
11
|
+
- ❌ **NÃO fazer checkout de branches nos repositórios principais**
|
|
12
|
+
- ❌ **NÃO modificar código**
|
|
13
|
+
- ❌ **NÃO modificar `context.md` ou `architecture.md`**
|
|
14
|
+
|
|
15
|
+
## Configuração
|
|
16
|
+
|
|
17
|
+
Leia `context-manifest.json` e `ai.properties.md` do orchestrator para obter repositórios, base_path e task_management_system.
|
|
18
|
+
|
|
19
|
+
## Objetivo
|
|
20
|
+
|
|
21
|
+
Garantir alinhamento com:
|
|
22
|
+
- Estratégia de produto
|
|
23
|
+
- Arquitetura técnica
|
|
24
|
+
- Padrões e convenções
|
|
25
|
+
- ADRs (Architecture Decision Records)
|
|
26
|
+
|
|
27
|
+
## 📋 Quando Usar
|
|
28
|
+
|
|
29
|
+
Execute este comando:
|
|
30
|
+
- Após `/spec` - validar PRD
|
|
31
|
+
- Após `/plan` - validar plano técnico
|
|
32
|
+
- Durante `/work` - validar decisões de implementação
|
|
33
|
+
- Antes de `/pr` - validação final
|
|
34
|
+
|
|
35
|
+
## 📚 Carregar MetaSpecs
|
|
36
|
+
|
|
37
|
+
**Localizar MetaSpecs automaticamente**:
|
|
38
|
+
1. Leia `context-manifest.json` do orchestrator
|
|
39
|
+
2. Encontre o repositório com `"role": "metaspecs"`
|
|
40
|
+
3. Leia `ai.properties.md` para obter o `base_path`
|
|
41
|
+
4. O metaspecs está em: `{base_path}/{metaspecs-repo-id}/`
|
|
42
|
+
|
|
43
|
+
## 🔍 Processo de Validação
|
|
44
|
+
|
|
45
|
+
### 1. Identificar Metaspecs Disponíveis
|
|
46
|
+
|
|
47
|
+
Navegue até o diretório de metaspecs e identifique quais metaspecs existem:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
ls -la {base_path}/{metaspecs-repo-id}/
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### 2. Validação de Negócio
|
|
54
|
+
|
|
55
|
+
Se existirem metaspecs de negócio (`repositório de MetaSpecs (seção de negócio)`):
|
|
56
|
+
|
|
57
|
+
```markdown
|
|
58
|
+
## Validação de Negócio
|
|
59
|
+
|
|
60
|
+
### Estratégia de Produto
|
|
61
|
+
- **Arquivo**: `repositório de MetaSpecs (seção de negócio)PRODUCT_STRATEGY.md`
|
|
62
|
+
- **Validação**: [Esta feature está alinhada com a estratégia?]
|
|
63
|
+
- **Status**: ✅ Alinhado / ⚠️ Parcialmente / ❌ Desalinhado
|
|
64
|
+
- **Notas**: [Observações]
|
|
65
|
+
|
|
66
|
+
### Personas
|
|
67
|
+
- **Arquivo**: `repositório de MetaSpecs (seção de negócio)CUSTOMER_PERSONAS.md`
|
|
68
|
+
- **Validação**: [Atende a persona correta?]
|
|
69
|
+
- **Status**: ✅ Alinhado / ⚠️ Parcialmente / ❌ Desalinhado
|
|
70
|
+
- **Notas**: [Observações]
|
|
71
|
+
|
|
72
|
+
### Métricas
|
|
73
|
+
- **Arquivo**: `repositório de MetaSpecs (seção de negócio)PRODUCT_METRICS.md`
|
|
74
|
+
- **Validação**: [Métrica de sucesso está documentada?]
|
|
75
|
+
- **Status**: ✅ Alinhado / ⚠️ Parcialmente / ❌ Desalinhado
|
|
76
|
+
- **Notas**: [Observações]
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### 3. Validação Técnica
|
|
80
|
+
|
|
81
|
+
Se existirem metaspecs técnicas (`repositório de MetaSpecs (seção técnica)`):
|
|
82
|
+
|
|
83
|
+
```markdown
|
|
84
|
+
## Validação Técnica
|
|
85
|
+
|
|
86
|
+
### Stack Tecnológica
|
|
87
|
+
- **Arquivo**: `repositório de MetaSpecs (seção técnica)meta/stack.md`
|
|
88
|
+
- **Validação**: [Usa apenas tecnologias aprovadas?]
|
|
89
|
+
- **Status**: ✅ Conforme / ⚠️ Exceção justificada / ❌ Não conforme
|
|
90
|
+
- **Notas**: [Tecnologias usadas e justificativas]
|
|
91
|
+
|
|
92
|
+
### Arquitetura
|
|
93
|
+
- **Arquivo**: `repositório de MetaSpecs (seção técnica)ARCHITECTURE.md`
|
|
94
|
+
- **Validação**: [Segue padrões arquiteturais?]
|
|
95
|
+
- **Status**: ✅ Conforme / ⚠️ Parcialmente / ❌ Não conforme
|
|
96
|
+
- **Notas**: [Observações]
|
|
97
|
+
|
|
98
|
+
### ADRs (Architecture Decision Records)
|
|
99
|
+
- **Diretório**: `repositório de MetaSpecs (seção técnica)adr/`
|
|
100
|
+
- **Validação**: [Respeita decisões arquiteturais documentadas?]
|
|
101
|
+
- **ADRs Relevantes**: [Lista de ADRs verificados]
|
|
102
|
+
- **Status**: ✅ Conforme / ⚠️ Conflito menor / ❌ Conflito crítico
|
|
103
|
+
- **Notas**: [Observações]
|
|
104
|
+
|
|
105
|
+
### Regras de Negócio
|
|
106
|
+
- **Arquivo**: `repositório de MetaSpecs (seção técnica)BUSINESS_LOGIC.md`
|
|
107
|
+
- **Validação**: [Implementa regras de negócio corretamente?]
|
|
108
|
+
- **Status**: ✅ Conforme / ⚠️ Parcialmente / ❌ Não conforme
|
|
109
|
+
- **Notas**: [Observações]
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### 4. Validação de Padrões
|
|
113
|
+
|
|
114
|
+
```markdown
|
|
115
|
+
## Validação de Padrões
|
|
116
|
+
|
|
117
|
+
### Código
|
|
118
|
+
- **Arquivo**: `repositório de MetaSpecs (seção técnica)CODE_STANDARDS.md`
|
|
119
|
+
- **Validação**: [Segue padrões de código?]
|
|
120
|
+
- **Status**: ✅ Conforme / ⚠️ Pequenos desvios / ❌ Não conforme
|
|
121
|
+
|
|
122
|
+
### Testes
|
|
123
|
+
- **Arquivo**: `repositório de MetaSpecs (seção técnica)TEST_STANDARDS.md`
|
|
124
|
+
- **Validação**: [Estratégia de testes adequada?]
|
|
125
|
+
- **Status**: ✅ Conforme / ⚠️ Parcialmente / ❌ Não conforme
|
|
126
|
+
|
|
127
|
+
### Documentação
|
|
128
|
+
- **Arquivo**: `repositório de MetaSpecs (seção técnica)DOC_STANDARDS.md`
|
|
129
|
+
- **Validação**: [Documentação adequada?]
|
|
130
|
+
- **Status**: ✅ Conforme / ⚠️ Parcialmente / ❌ Não conforme
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
### 5. Identificação de Conflitos
|
|
134
|
+
|
|
135
|
+
Se houver conflitos ou desalinhamentos:
|
|
136
|
+
|
|
137
|
+
```markdown
|
|
138
|
+
## Conflitos Identificados
|
|
139
|
+
|
|
140
|
+
### Conflito 1: [Descrição]
|
|
141
|
+
- **Severidade**: Crítico / Alto / Médio / Baixo
|
|
142
|
+
- **Metaspec**: [Arquivo que está sendo violado]
|
|
143
|
+
- **Descrição**: [Detalhe do conflito]
|
|
144
|
+
- **Recomendação**: [Como resolver]
|
|
145
|
+
|
|
146
|
+
### Conflito 2: [Descrição]
|
|
147
|
+
[Mesmo formato acima]
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
### 6. Exceções Justificadas
|
|
151
|
+
|
|
152
|
+
Se houver desvios justificados:
|
|
153
|
+
|
|
154
|
+
```markdown
|
|
155
|
+
## Exceções Justificadas
|
|
156
|
+
|
|
157
|
+
### Exceção 1: [Descrição]
|
|
158
|
+
- **Metaspec**: [Arquivo que está sendo desviado]
|
|
159
|
+
- **Desvio**: [O que está diferente]
|
|
160
|
+
- **Justificativa**: [Por que é necessário]
|
|
161
|
+
- **Aprovação**: [Quem aprovou]
|
|
162
|
+
- **Documentação**: [Onde foi documentado]
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
## 📄 Salvamento do Relatório de Validação
|
|
166
|
+
|
|
167
|
+
**PRIORIDADE 1: Usar MCP (Model Context Protocol)**
|
|
168
|
+
|
|
169
|
+
- Leia `ai.properties.md` do orchestrator para identificar o `task_management_system`
|
|
170
|
+
- Use o MCP apropriado para adicionar o relatório à issue:
|
|
171
|
+
- Adicione como comentário na issue
|
|
172
|
+
- Atualize labels/tags conforme resultado (ex: "validated", "needs-adjustment", "blocked")
|
|
173
|
+
- Se houver conflitos críticos, atualize status da issue
|
|
174
|
+
- Informe ao usuário: "✅ Relatório de validação adicionado à issue [ID]"
|
|
175
|
+
|
|
176
|
+
**FALLBACK: Criar arquivo .md apenas se MCP falhar**
|
|
177
|
+
|
|
178
|
+
Se o MCP não estiver disponível ou falhar, crie `./.sessions/<ISSUE-ID>/check-report.md`:
|
|
179
|
+
|
|
180
|
+
```markdown
|
|
181
|
+
# Relatório de Validação - [ISSUE-ID]
|
|
182
|
+
|
|
183
|
+
**Data**: [data/hora]
|
|
184
|
+
**Fase**: [spec/plan/work/pre-pr]
|
|
185
|
+
|
|
186
|
+
## Status Geral
|
|
187
|
+
✅ Validado / ⚠️ Validado com ressalvas / ❌ Não validado
|
|
188
|
+
|
|
189
|
+
## Validações Realizadas
|
|
190
|
+
- Negócio: ✅ / ⚠️ / ❌
|
|
191
|
+
- Técnica: ✅ / ⚠️ / ❌
|
|
192
|
+
- Padrões: ✅ / ⚠️ / ❌
|
|
193
|
+
|
|
194
|
+
## Conflitos
|
|
195
|
+
[Lista de conflitos, se houver]
|
|
196
|
+
|
|
197
|
+
## Exceções
|
|
198
|
+
[Lista de exceções justificadas, se houver]
|
|
199
|
+
|
|
200
|
+
## Recomendações
|
|
201
|
+
1. [Recomendação 1]
|
|
202
|
+
2. [Recomendação 2]
|
|
203
|
+
|
|
204
|
+
## Aprovação
|
|
205
|
+
- [ ] Aprovado para prosseguir
|
|
206
|
+
- [ ] Requer ajustes
|
|
207
|
+
- [ ] Bloqueado
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
Informe ao usuário: "⚠️ Relatório salvo localmente em .sessions/ (task manager não disponível)"
|
|
211
|
+
|
|
212
|
+
## 🚨 Ação em Caso de Conflitos
|
|
213
|
+
|
|
214
|
+
Se conflitos críticos forem encontrados:
|
|
215
|
+
1. 🛑 **PARE** o processo atual
|
|
216
|
+
2. 📝 **DOCUMENTE** todos os conflitos
|
|
217
|
+
3. 💬 **ALERTE** o usuário e stakeholders
|
|
218
|
+
4. **Via MCP**: Atualize status da issue para "Bloqueado" ou "Requer Ajustes"
|
|
219
|
+
5. 🔄 **AJUSTE** o plano/implementação conforme necessário
|
|
220
|
+
6. ✅ **REVALIDE** após ajustes
|
|
221
|
+
|
|
222
|
+
---
|
|
223
|
+
|
|
224
|
+
**Argumentos fornecidos**:
|
|
225
|
+
|
|
226
|
+
```
|
|
227
|
+
#$ARGUMENTS
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
---
|
|
231
|
+
|
|
232
|
+
## 🎯 Resultado
|
|
233
|
+
|
|
234
|
+
Após validação:
|
|
235
|
+
- Se ✅: Prossiga para próxima fase
|
|
236
|
+
- Se ⚠️: Documente ressalvas e prossiga com aprovação
|
|
237
|
+
- Se ❌: Corrija conflitos antes de prosseguir
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
# Coleta de Ideias e Requisitos
|
|
2
|
+
|
|
3
|
+
Você é um especialista em produto responsável por coletar e documentar novas ideias, features ou bugs.
|
|
4
|
+
|
|
5
|
+
## ⚠️ IMPORTANTE: Este Comando NÃO Implementa Código
|
|
6
|
+
|
|
7
|
+
**Este comando é APENAS para planejamento e documentação:**
|
|
8
|
+
- ✅ Coletar e entender requisitos
|
|
9
|
+
- ✅ Criar issue no task manager via MCP
|
|
10
|
+
- ✅ Fazer perguntas de esclarecimento
|
|
11
|
+
- ✅ **LER** arquivos dos repositórios principais (read-only)
|
|
12
|
+
- ❌ **NÃO implementar código**
|
|
13
|
+
- ❌ **NÃO fazer edits em arquivos de código**
|
|
14
|
+
- ❌ **NÃO fazer checkout de branches nos repositórios principais**
|
|
15
|
+
- ❌ **NÃO fazer commits**
|
|
16
|
+
|
|
17
|
+
**Próximo passo**: `/refine [ISSUE-ID]` para refinar os requisitos coletados.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Configuração
|
|
22
|
+
|
|
23
|
+
Leia `context-manifest.json` e `ai.properties.md` do orchestrator para obter repositórios, base_path e task_management_system.
|
|
24
|
+
|
|
25
|
+
## Objetivo
|
|
26
|
+
|
|
27
|
+
Entender a solicitação do usuário e capturá-la como issue no task manager (via MCP).
|
|
28
|
+
|
|
29
|
+
**Nesta fase, você NÃO precisa:**
|
|
30
|
+
- ❌ Escrever especificação completa
|
|
31
|
+
- ❌ Validar contra metaspecs (isso é feito no `/refine` ou `/spec`)
|
|
32
|
+
- ❌ Detalhar implementação técnica
|
|
33
|
+
|
|
34
|
+
Apenas certifique-se de que a ideia esteja **adequadamente compreendida**.
|
|
35
|
+
|
|
36
|
+
## Formato da Issue
|
|
37
|
+
|
|
38
|
+
```markdown
|
|
39
|
+
# [Título Claro e Descritivo]
|
|
40
|
+
|
|
41
|
+
## Descrição
|
|
42
|
+
[2-3 parágrafos explicando o que é a feature/bug e por que é importante]
|
|
43
|
+
|
|
44
|
+
## Tipo
|
|
45
|
+
- [ ] Nova Feature
|
|
46
|
+
- [ ] Melhoria de Feature Existente
|
|
47
|
+
- [ ] Bug
|
|
48
|
+
- [ ] Tech Debt
|
|
49
|
+
- [ ] Documentação
|
|
50
|
+
|
|
51
|
+
## Contexto Adicional
|
|
52
|
+
[Informações relevantes: onde o bug ocorre, inspiração para a feature, etc.]
|
|
53
|
+
|
|
54
|
+
## Repositórios Afetados
|
|
55
|
+
[Liste quais repositórios do projeto serão impactados]
|
|
56
|
+
|
|
57
|
+
## Prioridade Sugerida
|
|
58
|
+
- [ ] 🔴 Crítica
|
|
59
|
+
- [ ] 🟡 Alta
|
|
60
|
+
- [ ] 🟢 Média
|
|
61
|
+
- [ ] ⚪ Baixa (Backlog)
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Processo de Coleta
|
|
65
|
+
|
|
66
|
+
1. **Entendimento Inicial**
|
|
67
|
+
- Faça perguntas de esclarecimento se necessário
|
|
68
|
+
- Identifique: É feature nova? Melhoria? Bug?
|
|
69
|
+
- Identifique quais repositórios serão afetados
|
|
70
|
+
|
|
71
|
+
2. **Rascunho da Issue**
|
|
72
|
+
- Título claro (máximo 10 palavras)
|
|
73
|
+
- Descrição objetiva (2-3 parágrafos)
|
|
74
|
+
- Contexto adicional relevante
|
|
75
|
+
- Repositórios afetados
|
|
76
|
+
- Prioridade sugerida
|
|
77
|
+
|
|
78
|
+
3. **Avaliação de Complexidade e Sugestão de Quebra**
|
|
79
|
+
|
|
80
|
+
Antes de finalizar, avalie a complexidade da issue:
|
|
81
|
+
|
|
82
|
+
**Se a implementação parecer grande** (> 5 dias de esforço estimado):
|
|
83
|
+
- 🚨 **Sugira quebrar em múltiplas issues menores**
|
|
84
|
+
- Explique o racional da quebra (ex: "Esta feature envolve 3 áreas distintas: autenticação, processamento e notificação")
|
|
85
|
+
- Proponha uma quebra **lógica** (por funcionalidade, por repositório, por camada, etc.)
|
|
86
|
+
- Exemplo de quebra:
|
|
87
|
+
```
|
|
88
|
+
Issue Original: "Sistema de pagamentos completo"
|
|
89
|
+
|
|
90
|
+
Quebra Sugerida:
|
|
91
|
+
- FIN-101: Integração com gateway de pagamento (backend)
|
|
92
|
+
- FIN-102: Interface de checkout (frontend)
|
|
93
|
+
- FIN-103: Webhook de confirmação e notificações (backend + jobs)
|
|
94
|
+
```
|
|
95
|
+
- **Importante**: A decisão final é do usuário - ele pode aceitar a quebra ou manter como issue única
|
|
96
|
+
|
|
97
|
+
**Se o usuário aceitar a quebra**:
|
|
98
|
+
- Crie cada issue separadamente usando o mesmo processo
|
|
99
|
+
- Adicione referências cruzadas entre as issues relacionadas
|
|
100
|
+
- Sugira ordem de implementação se houver dependências
|
|
101
|
+
|
|
102
|
+
4. **Aprovação do Usuário**
|
|
103
|
+
- Apresente o rascunho (ou rascunhos, se houver quebra)
|
|
104
|
+
- Faça ajustes conforme feedback
|
|
105
|
+
- Obtenha aprovação final
|
|
106
|
+
|
|
107
|
+
5. **Salvamento da Issue**
|
|
108
|
+
|
|
109
|
+
**PRIORIDADE 1: Usar MCP (Model Context Protocol)**
|
|
110
|
+
|
|
111
|
+
Verifique se há MCP configurado para task manager:
|
|
112
|
+
- Leia `ai.properties.md` do orchestrator para identificar o `task_management_system`
|
|
113
|
+
- Se `task_management_system=jira`: Use MCP do Jira para criar a issue
|
|
114
|
+
- Se `task_management_system=linear`: Use MCP do Linear para criar a issue
|
|
115
|
+
- Se `task_management_system=github`: Use MCP do GitHub para criar a issue
|
|
116
|
+
- Se `task_management_system=azure`: Use MCP do Azure Boards para criar a issue
|
|
117
|
+
|
|
118
|
+
**Ao usar MCP:**
|
|
119
|
+
- Crie a issue diretamente no task manager
|
|
120
|
+
- Obtenha o ID da issue criada (ex: FIN-123, LIN-456)
|
|
121
|
+
- Informe ao usuário: "✅ Issue [ID] criada no [task manager]"
|
|
122
|
+
- **NÃO crie arquivo .md**
|
|
123
|
+
|
|
124
|
+
**FALLBACK: Criar arquivo .md apenas se MCP falhar**
|
|
125
|
+
|
|
126
|
+
Se o MCP não estiver disponível ou falhar:
|
|
127
|
+
- Crie arquivo em `./.sessions/<ISSUE-ID>/collect.md`
|
|
128
|
+
- Use formato de ID manual: `LOCAL-001`, `LOCAL-002`, etc.
|
|
129
|
+
- Inclua data, tipo e conteúdo completo
|
|
130
|
+
- Informe ao usuário: "⚠️ Issue salva localmente em .sessions/ (task manager não disponível)"
|
|
131
|
+
|
|
132
|
+
## Perguntas de Esclarecimento
|
|
133
|
+
|
|
134
|
+
**Para Features**:
|
|
135
|
+
- Que problema resolve?
|
|
136
|
+
- Quem se beneficia?
|
|
137
|
+
- É funcionalidade visível ou infraestrutura?
|
|
138
|
+
- Tem relação com alguma feature existente?
|
|
139
|
+
- Quais repositórios precisam ser modificados?
|
|
140
|
+
|
|
141
|
+
**Para Bugs**:
|
|
142
|
+
- Onde o bug ocorre? (repositório, componente, fluxo)
|
|
143
|
+
- Como reproduzir?
|
|
144
|
+
- Qual comportamento esperado vs atual?
|
|
145
|
+
- Severidade do impacto?
|
|
146
|
+
|
|
147
|
+
**Para Melhorias**:
|
|
148
|
+
- O que está funcionando mas pode melhorar?
|
|
149
|
+
- Qual métrica queremos impactar?
|
|
150
|
+
- É otimização técnica ou de negócio?
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
**Argumentos fornecidos**:
|
|
155
|
+
|
|
156
|
+
```
|
|
157
|
+
#$ARGUMENTS
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
## 🎯 Próximo Passo
|
|
163
|
+
|
|
164
|
+
Após aprovação e salvamento da issue:
|
|
165
|
+
|
|
166
|
+
```bash
|
|
167
|
+
/refine [ISSUE-ID]
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
Este comando irá transformar a issue coletada em requisitos refinados e validados.
|