@thatix.io/context-first-agents-cli 0.1.0 → 0.2.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 +189 -7
- package/dist/commands/create-orchestrator.js +4 -1
- package/dist/commands/doctor.js +21 -5
- package/dist/commands/init.js +3 -1
- package/dist/templates/commands/en/engineer/plan.md +301 -0
- package/dist/templates/commands/en/engineer/pr.md +194 -0
- package/dist/templates/commands/en/engineer/pre-pr.md +325 -0
- package/dist/templates/commands/en/engineer/start.md +285 -0
- package/dist/templates/commands/en/engineer/work.md +256 -0
- package/dist/templates/commands/en/products/check.md +237 -0
- package/dist/templates/commands/en/products/collect.md +170 -0
- package/dist/templates/commands/en/products/refine.md +231 -0
- package/dist/templates/commands/en/products/spec.md +273 -0
- package/dist/templates/commands/en/quality/metrics.md +266 -0
- package/dist/templates/commands/en/quality/observe.md +172 -0
- package/dist/templates/commands/en/warm-up.md +59 -0
- package/dist/templates/commands/es/agents/CONTEXT-CONTRACT.md +63 -0
- package/dist/templates/commands/es/agents/implementer.md +27 -0
- package/dist/templates/commands/es/agents/integrator.md +24 -0
- package/dist/templates/commands/es/agents/reviewer.md +31 -0
- package/dist/templates/commands/es/agents/tester.md +22 -0
- package/dist/templates/commands/es/engineer/plan.md +335 -0
- package/dist/templates/commands/es/engineer/pr.md +228 -0
- package/dist/templates/commands/es/engineer/pre-pr.md +359 -0
- package/dist/templates/commands/es/engineer/start.md +318 -0
- package/dist/templates/commands/es/engineer/work.md +290 -0
- package/dist/templates/commands/es/orchestrate.md +125 -0
- package/dist/templates/commands/es/products/check.md +271 -0
- package/dist/templates/commands/es/products/collect.md +218 -0
- package/dist/templates/commands/es/products/refine.md +265 -0
- package/dist/templates/commands/es/products/spec.md +306 -0
- package/dist/templates/commands/es/quality/metrics.md +300 -0
- package/dist/templates/commands/es/quality/observe.md +205 -0
- package/dist/templates/commands/es/warm-up.md +59 -0
- package/dist/templates/commands/pt-BR/engineer/plan.md +335 -0
- package/dist/templates/commands/pt-BR/engineer/pr.md +228 -0
- package/dist/templates/commands/pt-BR/engineer/pre-pr.md +359 -0
- package/dist/templates/commands/pt-BR/engineer/start.md +319 -0
- package/dist/templates/commands/pt-BR/engineer/work.md +290 -0
- package/dist/templates/commands/pt-BR/products/check.md +271 -0
- package/dist/templates/commands/pt-BR/products/collect.md +219 -0
- package/dist/templates/commands/pt-BR/products/refine.md +265 -0
- package/dist/templates/commands/pt-BR/products/spec.md +307 -0
- package/dist/templates/commands/pt-BR/quality/metrics.md +300 -0
- package/dist/templates/commands/pt-BR/quality/observe.md +206 -0
- package/dist/templates/commands/pt-BR/warm-up.md +59 -0
- package/package.json +7 -3
- package/templates/commands/en/engineer/plan.md +301 -0
- package/templates/commands/en/engineer/pr.md +194 -0
- package/templates/commands/en/engineer/pre-pr.md +325 -0
- package/templates/commands/en/engineer/start.md +285 -0
- package/templates/commands/en/engineer/work.md +256 -0
- package/templates/commands/en/products/check.md +237 -0
- package/templates/commands/en/products/collect.md +170 -0
- package/templates/commands/en/products/refine.md +231 -0
- package/templates/commands/en/products/spec.md +273 -0
- package/templates/commands/en/quality/metrics.md +266 -0
- package/templates/commands/en/quality/observe.md +172 -0
- package/templates/commands/en/warm-up.md +59 -0
- package/templates/commands/es/agents/CONTEXT-CONTRACT.md +63 -0
- package/templates/commands/es/agents/implementer.md +27 -0
- package/templates/commands/es/agents/integrator.md +24 -0
- package/templates/commands/es/agents/reviewer.md +31 -0
- package/templates/commands/es/agents/tester.md +22 -0
- package/templates/commands/es/engineer/plan.md +335 -0
- package/templates/commands/es/engineer/pr.md +228 -0
- package/templates/commands/es/engineer/pre-pr.md +359 -0
- package/templates/commands/es/engineer/start.md +318 -0
- package/templates/commands/es/engineer/work.md +290 -0
- package/templates/commands/es/orchestrate.md +125 -0
- package/templates/commands/es/products/check.md +271 -0
- package/templates/commands/es/products/collect.md +218 -0
- package/templates/commands/es/products/refine.md +265 -0
- package/templates/commands/es/products/spec.md +306 -0
- package/templates/commands/es/quality/metrics.md +300 -0
- package/templates/commands/es/quality/observe.md +205 -0
- package/templates/commands/es/warm-up.md +59 -0
- package/templates/commands/pt-BR/engineer/plan.md +335 -0
- package/templates/commands/pt-BR/engineer/pr.md +228 -0
- package/templates/commands/pt-BR/engineer/pre-pr.md +359 -0
- package/templates/commands/pt-BR/engineer/start.md +319 -0
- package/templates/commands/pt-BR/engineer/work.md +290 -0
- package/templates/commands/pt-BR/products/check.md +271 -0
- package/templates/commands/pt-BR/products/collect.md +219 -0
- package/templates/commands/pt-BR/products/refine.md +265 -0
- package/templates/commands/pt-BR/products/spec.md +307 -0
- package/templates/commands/pt-BR/quality/metrics.md +300 -0
- package/templates/commands/pt-BR/quality/observe.md +206 -0
- package/templates/commands/pt-BR/warm-up.md +59 -0
|
@@ -0,0 +1,219 @@
|
|
|
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 do Projeto
|
|
22
|
+
|
|
23
|
+
**⚠️ IMPORTANTE: Sempre leia os arquivos de configuração do projeto ANTES de executar este comando!**
|
|
24
|
+
|
|
25
|
+
### Arquivos Obrigatórios
|
|
26
|
+
|
|
27
|
+
1. **`context-manifest.json`** (raiz do orchestrator)
|
|
28
|
+
- Lista de repositórios do projeto
|
|
29
|
+
- Roles de cada repositório (metaspecs, application, etc.)
|
|
30
|
+
- URLs e dependências entre repositórios
|
|
31
|
+
|
|
32
|
+
2. **`ai.properties.md`** (raiz do orchestrator)
|
|
33
|
+
- Configurações do projeto (`project_name`, `base_path`)
|
|
34
|
+
- Sistema de gerenciamento de tarefas (`task_management_system`)
|
|
35
|
+
- Credenciais e configurações específicas
|
|
36
|
+
|
|
37
|
+
### Como Ler
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
# 1. Ler context-manifest.json
|
|
41
|
+
cat context-manifest.json
|
|
42
|
+
|
|
43
|
+
# 2. Ler ai.properties.md
|
|
44
|
+
cat ai.properties.md
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### Informações Essenciais
|
|
48
|
+
|
|
49
|
+
Após ler os arquivos, você terá:
|
|
50
|
+
- ✅ Lista completa de repositórios do projeto
|
|
51
|
+
- ✅ Localização do repositório de metaspecs
|
|
52
|
+
- ✅ Base path para localizar repositórios
|
|
53
|
+
- ✅ Sistema de task management configurado
|
|
54
|
+
- ✅ Configurações específicas do projeto
|
|
55
|
+
|
|
56
|
+
**🛑 NÃO prossiga sem ler estes arquivos!** Eles contêm informações críticas para a execução correta do comando.
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
## Contexto do Projeto
|
|
60
|
+
|
|
61
|
+
Antes de iniciar, carregue o contexto consultando:
|
|
62
|
+
|
|
63
|
+
1. **Localizar MetaSpecs automaticamente**:
|
|
64
|
+
- Leia `context-manifest.json` do orchestrator
|
|
65
|
+
- Encontre o repositório com `"role": "metaspecs"`
|
|
66
|
+
- Leia `ai.properties.md` para obter o `base_path`
|
|
67
|
+
- O metaspecs está em: `{base_path}/{metaspecs-repo-id}/`
|
|
68
|
+
- Leia os arquivos `index.md` como referência
|
|
69
|
+
|
|
70
|
+
2. **Estrutura do projeto**:
|
|
71
|
+
- `context-manifest.json` - Lista de repositórios e suas funções
|
|
72
|
+
- `README.md` dos repositórios envolvidos
|
|
73
|
+
|
|
74
|
+
## Seu Objetivo
|
|
75
|
+
|
|
76
|
+
Entender a solicitação do usuário e capturá-la como issue no task manager (via MCP).
|
|
77
|
+
|
|
78
|
+
**Nesta fase, você NÃO precisa:**
|
|
79
|
+
- ❌ Escrever especificação completa
|
|
80
|
+
- ❌ Validar contra metaspecs (isso é feito no `/refine` ou `/spec`)
|
|
81
|
+
- ❌ Detalhar implementação técnica
|
|
82
|
+
|
|
83
|
+
Apenas certifique-se de que a ideia esteja **adequadamente compreendida**.
|
|
84
|
+
|
|
85
|
+
## Formato da Issue
|
|
86
|
+
|
|
87
|
+
```markdown
|
|
88
|
+
# [Título Claro e Descritivo]
|
|
89
|
+
|
|
90
|
+
## Descrição
|
|
91
|
+
[2-3 parágrafos explicando o que é a feature/bug e por que é importante]
|
|
92
|
+
|
|
93
|
+
## Tipo
|
|
94
|
+
- [ ] Nova Feature
|
|
95
|
+
- [ ] Melhoria de Feature Existente
|
|
96
|
+
- [ ] Bug
|
|
97
|
+
- [ ] Tech Debt
|
|
98
|
+
- [ ] Documentação
|
|
99
|
+
|
|
100
|
+
## Contexto Adicional
|
|
101
|
+
[Informações relevantes: onde o bug ocorre, inspiração para a feature, etc.]
|
|
102
|
+
|
|
103
|
+
## Repositórios Afetados
|
|
104
|
+
[Liste quais repositórios do projeto serão impactados]
|
|
105
|
+
|
|
106
|
+
## Prioridade Sugerida
|
|
107
|
+
- [ ] 🔴 Crítica
|
|
108
|
+
- [ ] 🟡 Alta
|
|
109
|
+
- [ ] 🟢 Média
|
|
110
|
+
- [ ] ⚪ Baixa (Backlog)
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
## Processo de Coleta
|
|
114
|
+
|
|
115
|
+
1. **Entendimento Inicial**
|
|
116
|
+
- Faça perguntas de esclarecimento se necessário
|
|
117
|
+
- Identifique: É feature nova? Melhoria? Bug?
|
|
118
|
+
- Identifique quais repositórios serão afetados
|
|
119
|
+
|
|
120
|
+
2. **Rascunho da Issue**
|
|
121
|
+
- Título claro (máximo 10 palavras)
|
|
122
|
+
- Descrição objetiva (2-3 parágrafos)
|
|
123
|
+
- Contexto adicional relevante
|
|
124
|
+
- Repositórios afetados
|
|
125
|
+
- Prioridade sugerida
|
|
126
|
+
|
|
127
|
+
3. **Avaliação de Complexidade e Sugestão de Quebra**
|
|
128
|
+
|
|
129
|
+
Antes de finalizar, avalie a complexidade da issue:
|
|
130
|
+
|
|
131
|
+
**Se a implementação parecer grande** (> 5 dias de esforço estimado):
|
|
132
|
+
- 🚨 **Sugira quebrar em múltiplas issues menores**
|
|
133
|
+
- Explique o racional da quebra (ex: "Esta feature envolve 3 áreas distintas: autenticação, processamento e notificação")
|
|
134
|
+
- Proponha uma quebra **lógica** (por funcionalidade, por repositório, por camada, etc.)
|
|
135
|
+
- Exemplo de quebra:
|
|
136
|
+
```
|
|
137
|
+
Issue Original: "Sistema de pagamentos completo"
|
|
138
|
+
|
|
139
|
+
Quebra Sugerida:
|
|
140
|
+
- FIN-101: Integração com gateway de pagamento (backend)
|
|
141
|
+
- FIN-102: Interface de checkout (frontend)
|
|
142
|
+
- FIN-103: Webhook de confirmação e notificações (backend + jobs)
|
|
143
|
+
```
|
|
144
|
+
- **Importante**: A decisão final é do usuário - ele pode aceitar a quebra ou manter como issue única
|
|
145
|
+
|
|
146
|
+
**Se o usuário aceitar a quebra**:
|
|
147
|
+
- Crie cada issue separadamente usando o mesmo processo
|
|
148
|
+
- Adicione referências cruzadas entre as issues relacionadas
|
|
149
|
+
- Sugira ordem de implementação se houver dependências
|
|
150
|
+
|
|
151
|
+
4. **Aprovação do Usuário**
|
|
152
|
+
- Apresente o rascunho (ou rascunhos, se houver quebra)
|
|
153
|
+
- Faça ajustes conforme feedback
|
|
154
|
+
- Obtenha aprovação final
|
|
155
|
+
|
|
156
|
+
5. **Salvamento da Issue**
|
|
157
|
+
|
|
158
|
+
**PRIORIDADE 1: Usar MCP (Model Context Protocol)**
|
|
159
|
+
|
|
160
|
+
Verifique se há MCP configurado para task manager:
|
|
161
|
+
- Leia `ai.properties.md` do orchestrator para identificar o `task_management_system`
|
|
162
|
+
- Se `task_management_system=jira`: Use MCP do Jira para criar a issue
|
|
163
|
+
- Se `task_management_system=linear`: Use MCP do Linear para criar a issue
|
|
164
|
+
- Se `task_management_system=github`: Use MCP do GitHub para criar a issue
|
|
165
|
+
- Se `task_management_system=azure`: Use MCP do Azure Boards para criar a issue
|
|
166
|
+
|
|
167
|
+
**Ao usar MCP:**
|
|
168
|
+
- Crie a issue diretamente no task manager
|
|
169
|
+
- Obtenha o ID da issue criada (ex: FIN-123, LIN-456)
|
|
170
|
+
- Informe ao usuário: "✅ Issue [ID] criada no [task manager]"
|
|
171
|
+
- **NÃO crie arquivo .md**
|
|
172
|
+
|
|
173
|
+
**FALLBACK: Criar arquivo .md apenas se MCP falhar**
|
|
174
|
+
|
|
175
|
+
Se o MCP não estiver disponível ou falhar:
|
|
176
|
+
- Crie arquivo em `./.sessions/<ISSUE-ID>/collect.md`
|
|
177
|
+
- Use formato de ID manual: `LOCAL-001`, `LOCAL-002`, etc.
|
|
178
|
+
- Inclua data, tipo e conteúdo completo
|
|
179
|
+
- Informe ao usuário: "⚠️ Issue salva localmente em .sessions/ (task manager não disponível)"
|
|
180
|
+
|
|
181
|
+
## Perguntas de Esclarecimento
|
|
182
|
+
|
|
183
|
+
**Para Features**:
|
|
184
|
+
- Que problema resolve?
|
|
185
|
+
- Quem se beneficia?
|
|
186
|
+
- É funcionalidade visível ou infraestrutura?
|
|
187
|
+
- Tem relação com alguma feature existente?
|
|
188
|
+
- Quais repositórios precisam ser modificados?
|
|
189
|
+
|
|
190
|
+
**Para Bugs**:
|
|
191
|
+
- Onde o bug ocorre? (repositório, componente, fluxo)
|
|
192
|
+
- Como reproduzir?
|
|
193
|
+
- Qual comportamento esperado vs atual?
|
|
194
|
+
- Severidade do impacto?
|
|
195
|
+
|
|
196
|
+
**Para Melhorias**:
|
|
197
|
+
- O que está funcionando mas pode melhorar?
|
|
198
|
+
- Qual métrica queremos impactar?
|
|
199
|
+
- É otimização técnica ou de negócio?
|
|
200
|
+
|
|
201
|
+
---
|
|
202
|
+
|
|
203
|
+
**Argumentos fornecidos**:
|
|
204
|
+
|
|
205
|
+
```
|
|
206
|
+
#$ARGUMENTS
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
|
|
211
|
+
## 🎯 Próximo Passo
|
|
212
|
+
|
|
213
|
+
Após aprovação e salvamento da issue:
|
|
214
|
+
|
|
215
|
+
```bash
|
|
216
|
+
/refine [ISSUE-ID]
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
Este comando irá transformar a issue coletada em requisitos refinados e validados.
|
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
# Refinamento de Requisitos
|
|
2
|
+
|
|
3
|
+
Você é um especialista em produto encarregado de ajudar a refinar requisitos para o projeto.
|
|
4
|
+
|
|
5
|
+
## ⚠️ IMPORTANTE: Este Comando NÃO Implementa Código
|
|
6
|
+
|
|
7
|
+
**Este comando é APENAS para planejamento e documentação:**
|
|
8
|
+
- ✅ Validar requisitos contra metaspecs
|
|
9
|
+
- ✅ Criar especificação refinada
|
|
10
|
+
- ✅ Salvar documentação em `.sessions/`
|
|
11
|
+
- ✅ Atualizar issue no task manager
|
|
12
|
+
- ❌ **NÃO implementar código**
|
|
13
|
+
- ❌ **NÃO fazer edits em arquivos de código**
|
|
14
|
+
- ❌ **NÃO executar testes ou deploy**
|
|
15
|
+
|
|
16
|
+
**Próximo passo**: `/spec [ISSUE-ID]` para criar PRD completo baseado nos requisitos refinados.
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## 📋 Configuração do Projeto
|
|
21
|
+
|
|
22
|
+
**⚠️ IMPORTANTE: Sempre leia os arquivos de configuração do projeto ANTES de executar este comando!**
|
|
23
|
+
|
|
24
|
+
### Arquivos Obrigatórios
|
|
25
|
+
|
|
26
|
+
1. **`context-manifest.json`** (raiz do orchestrator)
|
|
27
|
+
- Lista de repositórios do projeto
|
|
28
|
+
- Roles de cada repositório (metaspecs, application, etc.)
|
|
29
|
+
- URLs e dependências entre repositórios
|
|
30
|
+
|
|
31
|
+
2. **`ai.properties.md`** (raiz do orchestrator)
|
|
32
|
+
- Configurações do projeto (`project_name`, `base_path`)
|
|
33
|
+
- Sistema de gerenciamento de tarefas (`task_management_system`)
|
|
34
|
+
- Credenciais e configurações específicas
|
|
35
|
+
|
|
36
|
+
### Como Ler
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# 1. Ler context-manifest.json
|
|
40
|
+
cat context-manifest.json
|
|
41
|
+
|
|
42
|
+
# 2. Ler ai.properties.md
|
|
43
|
+
cat ai.properties.md
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### Informações Essenciais
|
|
47
|
+
|
|
48
|
+
Após ler os arquivos, você terá:
|
|
49
|
+
- ✅ Lista completa de repositórios do projeto
|
|
50
|
+
- ✅ Localização do repositório de metaspecs
|
|
51
|
+
- ✅ Base path para localizar repositórios
|
|
52
|
+
- ✅ Sistema de task management configurado
|
|
53
|
+
- ✅ Configurações específicas do projeto
|
|
54
|
+
|
|
55
|
+
**🛑 NÃO prossiga sem ler estes arquivos!** Eles contêm informações críticas para a execução correta do comando.
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
## Objetivo
|
|
59
|
+
|
|
60
|
+
Transformar um requisito inicial em especificação refinada e validada, pronta para se tornar PRD completo.
|
|
61
|
+
|
|
62
|
+
## Processo
|
|
63
|
+
|
|
64
|
+
### 1. Fase de Esclarecimento
|
|
65
|
+
|
|
66
|
+
Leia o requisito inicial e faça perguntas para alcançar clareza total sobre:
|
|
67
|
+
- **Objetivo**: Por que construir isso?
|
|
68
|
+
- **Valor de Negócio**: Qual métrica/persona impacta?
|
|
69
|
+
- **Escopo**: O que inclui e o que NÃO inclui?
|
|
70
|
+
- **Interações**: Quais features/componentes existentes são afetados?
|
|
71
|
+
|
|
72
|
+
Continue fazendo perguntas até ter entendimento completo.
|
|
73
|
+
|
|
74
|
+
### 2. Validação Contra Metaspecs
|
|
75
|
+
|
|
76
|
+
**IMPORTANTE**: Primeiro leia `ai.properties.md` para obter o `base_path`. Os índices JÁ devem estar em contexto (você rodou `/warm-up`). Consulte os índices e leia APENAS os documentos relevantes para validar o requisito.
|
|
77
|
+
|
|
78
|
+
**Processo de Validação**:
|
|
79
|
+
|
|
80
|
+
1. **Consulte os índices carregados** pelo `/warm-up`:
|
|
81
|
+
- Leia `context-manifest.json` para encontrar o repositório com `role: "metaspecs"`
|
|
82
|
+
- Obtenha o `id` desse repositório (ex: "my-project-metaspecs")
|
|
83
|
+
- Leia `ai.properties.md` para obter o `base_path`
|
|
84
|
+
- O repositório de metaspecs está em: `{base_path}/{metaspecs-id}/`
|
|
85
|
+
- Consulte `{base_path}/{metaspecs-id}/index.md` - Visão geral do projeto
|
|
86
|
+
- Consulte índices específicos (ex: `specs/business/index.md`, `specs/technical/index.md`)
|
|
87
|
+
|
|
88
|
+
2. **Identifique documentos relevantes** para este requisito específico:
|
|
89
|
+
- Em `specs/business/`: Quais documentos de negócio são relevantes?
|
|
90
|
+
- Em `specs/technical/`: Quais documentos técnicos são relevantes?
|
|
91
|
+
|
|
92
|
+
3. **Leia APENAS os documentos relevantes** identificados (não leia tudo!)
|
|
93
|
+
|
|
94
|
+
4. **Valide o requisito** contra as metaspecs lidas:
|
|
95
|
+
- ✅ Alinhamento com estratégia e visão de produto
|
|
96
|
+
- ✅ Atende necessidades das personas corretas
|
|
97
|
+
- ✅ Compatível com stack tecnológica aprovada
|
|
98
|
+
- ✅ Respeita decisões arquiteturais (ADRs)
|
|
99
|
+
- ✅ Segue regras de negócio existentes
|
|
100
|
+
- ⚠️ Identifique conflitos ou violações
|
|
101
|
+
|
|
102
|
+
**Se identificar violações**: 🛑 **PARE** e peça esclarecimento ao usuário antes de prosseguir (Princípio Jidoka).
|
|
103
|
+
|
|
104
|
+
### 3. Fase de Resumo e Aprovação
|
|
105
|
+
|
|
106
|
+
Uma vez que tenha coletado informações suficientes e validado contra metaspecs, apresente um resumo estruturado com:
|
|
107
|
+
- **Feature**: Nome da funcionalidade
|
|
108
|
+
- **Objetivo**: Por que construir (1-2 frases)
|
|
109
|
+
- **Valor de Negócio**: Métrica, persona, fase do roadmap (consulte metaspecs)
|
|
110
|
+
- **Escopo**: O que INCLUI e o que NÃO INCLUI
|
|
111
|
+
- **Componentes Afetados**: Lista baseada na arquitetura atual (consulte metaspecs técnicas)
|
|
112
|
+
- **Validação contra Metaspecs**: ✅ Aprovado / ⚠️ Atenção necessária
|
|
113
|
+
- **Estimativa de Esforço**: Pequeno (< 1 dia) / Médio (1-3 dias) / Grande (3-5 dias) / Muito Grande (> 5 dias)
|
|
114
|
+
|
|
115
|
+
**Avaliação de Complexidade e Sugestão de Quebra**:
|
|
116
|
+
|
|
117
|
+
**Se a implementação parecer grande** (> 5 dias de esforço estimado):
|
|
118
|
+
- 🚨 **Sugira quebrar em múltiplas issues menores**
|
|
119
|
+
- Explique o racional da quebra (ex: "Esta feature envolve 3 áreas distintas que podem ser implementadas independentemente")
|
|
120
|
+
- Proponha uma quebra **lógica** baseada em:
|
|
121
|
+
- Funcionalidades independentes
|
|
122
|
+
- Repositórios diferentes
|
|
123
|
+
- Camadas da aplicação (backend, frontend, infra)
|
|
124
|
+
- Fases de implementação (MVP, melhorias, otimizações)
|
|
125
|
+
- Exemplo de quebra:
|
|
126
|
+
```
|
|
127
|
+
Issue Original: "Sistema de notificações multi-canal"
|
|
128
|
+
|
|
129
|
+
Quebra Sugerida:
|
|
130
|
+
- FIN-201: Infraestrutura de filas e workers (backend)
|
|
131
|
+
- FIN-202: Notificações por email (backend + templates)
|
|
132
|
+
- FIN-203: Notificações push (backend + mobile)
|
|
133
|
+
- FIN-204: Preferências de notificação (frontend + backend)
|
|
134
|
+
```
|
|
135
|
+
- **Importante**: A decisão final é do usuário - ele pode aceitar a quebra ou manter como issue única
|
|
136
|
+
|
|
137
|
+
**Se o usuário aceitar a quebra**:
|
|
138
|
+
- Documente cada issue separadamente
|
|
139
|
+
- Adicione referências cruzadas entre as issues relacionadas
|
|
140
|
+
- Sugira ordem de implementação se houver dependências
|
|
141
|
+
- Cada issue quebrada deve passar pelo mesmo processo de refinamento
|
|
142
|
+
|
|
143
|
+
Peça aprovação do usuário e incorpore feedback se necessário.
|
|
144
|
+
|
|
145
|
+
**Dica**: Você pode pesquisar no código-base ou internet antes de finalizar, se necessário.
|
|
146
|
+
|
|
147
|
+
### 4. Salvamento dos Requisitos Refinados
|
|
148
|
+
|
|
149
|
+
Uma vez que o usuário aprove, salve os requisitos:
|
|
150
|
+
|
|
151
|
+
**IMPORTANTE**: Sempre crie backup local E atualize o task manager (se configurado).
|
|
152
|
+
|
|
153
|
+
**Processo de Salvamento**:
|
|
154
|
+
|
|
155
|
+
1. **SEMPRE criar backup local primeiro**:
|
|
156
|
+
- Crie arquivo completo em `./.sessions/<ISSUE-ID>/refined.md` (ex: `./.sessions/FIN-5/refined.md`)
|
|
157
|
+
- Onde `<ISSUE-ID>` é o ID da issue (ex: FIN-5, FIN-123)
|
|
158
|
+
- Inclua TODOS os detalhes do refinamento (backup completo)
|
|
159
|
+
|
|
160
|
+
2. **Se task manager estiver configurado** (leia `ai.properties.md` para identificar `task_management_system`):
|
|
161
|
+
- Identifique a ferramenta MCP do task manager
|
|
162
|
+
- **Atualize o BODY (description) da issue** com versão CONCISA dos requisitos refinados
|
|
163
|
+
- Para Jira: Use MCP do Jira com campo `description`
|
|
164
|
+
- Para Linear: Use MCP do Linear com campo `description`
|
|
165
|
+
- Para GitHub: Use MCP do GitHub com campo `body`
|
|
166
|
+
- Para Azure Boards: Use MCP do Azure Boards com campo `description`
|
|
167
|
+
- Inclua todo o conteúdo refinado no campo description/body da issue
|
|
168
|
+
- Se o conteúdo for muito extenso e houver erro de API, considere criar versão resumida
|
|
169
|
+
- **SEMPRE sobrescrever** o body existente (não adicionar ao final)
|
|
170
|
+
|
|
171
|
+
**Observação**:
|
|
172
|
+
- O backup local SEMPRE está salvo e completo
|
|
173
|
+
- Se houver erro de API, verifique manualmente se a issue foi atualizada no task manager
|
|
174
|
+
|
|
175
|
+
**Template de Saída**:
|
|
176
|
+
|
|
177
|
+
**IMPORTANTE**: O template padrão para requisitos refinados pode estar documentado no repositório de metaspecs. Consulte `{base_path}/{metaspecs-id}/specs/refined/` ou similar.
|
|
178
|
+
|
|
179
|
+
**Template COMPLETO** (para backup local `.sessions/<ISSUE-ID>/refined.md`):
|
|
180
|
+
- **Metadados**: Issue, ID, Task Manager, Projeto, Data, Sprint, Prioridade
|
|
181
|
+
- **🎯 POR QUE**: Razões, valor de negócio, métrica, persona, alinhamento estratégico
|
|
182
|
+
- **📦 O QUE**: Funcionalidades detalhadas, componentes afetados, integrações, escopo negativo completo
|
|
183
|
+
- **🔧 COMO**: Stack, padrões de código, estrutura de arquivos, dependências, ordem de implementação, failure modes, considerações de performance/custo/UX
|
|
184
|
+
- **✅ Validação contra Metaspecs**: Documentos consultados (business e technical), ADRs verificados, resultado da validação
|
|
185
|
+
- **📊 Métricas de Sucesso**: Técnicas, produto/UX, critérios de aceitação
|
|
186
|
+
- **🔄 Impacto no Produto**: Alinhamento com objetivos, habilitadores, riscos mitigados
|
|
187
|
+
- **⚠️ Limitações Conhecidas**: Limitações do MVP
|
|
188
|
+
- **📝 Checklist de Implementação**: Tarefas por área (backend, frontend, testes, segurança, etc.)
|
|
189
|
+
|
|
190
|
+
**Template para Task Manager**:
|
|
191
|
+
```markdown
|
|
192
|
+
# [Nome Feature] - Requisitos Refinados
|
|
193
|
+
|
|
194
|
+
**Sprint X** | **Y dias** | **Prioridade**
|
|
195
|
+
|
|
196
|
+
## Objetivo
|
|
197
|
+
[1-2 parágrafos: o que é e por que fazer]
|
|
198
|
+
|
|
199
|
+
## Escopo
|
|
200
|
+
|
|
201
|
+
### Principais Funcionalidades
|
|
202
|
+
- Funcionalidade 1: [resumo]
|
|
203
|
+
- Funcionalidade 2: [resumo]
|
|
204
|
+
- Validações/Guards: [resumo]
|
|
205
|
+
|
|
206
|
+
### Componentes Afetados
|
|
207
|
+
- Componente 1: [tipo de mudança]
|
|
208
|
+
- Componente 2: [tipo de mudança]
|
|
209
|
+
|
|
210
|
+
### Segurança
|
|
211
|
+
✅ [item 1] ✅ [item 2] ✅ [item 3]
|
|
212
|
+
|
|
213
|
+
## Escopo Negativo
|
|
214
|
+
❌ [item 1] ❌ [item 2] ❌ [item 3]
|
|
215
|
+
|
|
216
|
+
## Stack
|
|
217
|
+
[Tech stack resumida por área]
|
|
218
|
+
|
|
219
|
+
## Estrutura
|
|
220
|
+
[Árvore de arquivos RESUMIDA - principais módulos apenas]
|
|
221
|
+
|
|
222
|
+
## Failure Modes (Evitar)
|
|
223
|
+
🔴 [crítico 1] 🔴 [crítico 2]
|
|
224
|
+
🟡 [médio 1] 🟡 [médio 2]
|
|
225
|
+
|
|
226
|
+
## Critérios de Aceitação
|
|
227
|
+
- [ ] [item 1]
|
|
228
|
+
- [ ] [item 2]
|
|
229
|
+
- [ ] [item 3]
|
|
230
|
+
|
|
231
|
+
## Validação
|
|
232
|
+
**ADRs**: [lista]
|
|
233
|
+
**Specs**: [principais]
|
|
234
|
+
**Status**: ✅ Aprovado
|
|
235
|
+
|
|
236
|
+
**Impacto**: [resumo]
|
|
237
|
+
**Limitações**: [resumo]
|
|
238
|
+
|
|
239
|
+
---
|
|
240
|
+
📄 **Documento completo**: `.sessions/<ISSUE-ID>/refined.md`
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
**Audiência**: Desenvolvedor IA com capacidades similares às suas. Seja conciso mas completo.
|
|
244
|
+
|
|
245
|
+
---
|
|
246
|
+
|
|
247
|
+
**Requisito para Refinar**:
|
|
248
|
+
|
|
249
|
+
```
|
|
250
|
+
#$ARGUMENTS
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
---
|
|
254
|
+
|
|
255
|
+
## 🎯 Próximo Passo
|
|
256
|
+
|
|
257
|
+
**Após aprovação do usuário e salvamento dos requisitos refinados**, o fluxo natural é:
|
|
258
|
+
|
|
259
|
+
```bash
|
|
260
|
+
/spec [ISSUE-ID]
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
**Exemplo**: `/spec FIN-3`
|
|
264
|
+
|
|
265
|
+
Este comando irá criar um PRD (Product Requirements Document) completo baseado nos requisitos refinados, detalhando funcionalidades, user stories, critérios de aceitação e validações finais.
|