context-first-cli 2.0.3 → 2.0.5
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/templates/commands/en/products/collect.md +64 -40
- package/dist/templates/commands/en/products/refine.md +171 -167
- package/dist/templates/commands/es/products/collect.md +71 -47
- package/dist/templates/commands/es/products/refine.md +171 -167
- package/dist/templates/commands/pt-BR/products/collect.md +27 -3
- package/dist/templates/commands/pt-BR/products/refine.md +171 -167
- package/package.json +1 -1
- package/templates/commands/en/products/collect.md +64 -40
- package/templates/commands/en/products/refine.md +171 -167
- package/templates/commands/es/products/collect.md +71 -47
- package/templates/commands/es/products/refine.md +171 -167
- package/templates/commands/pt-BR/products/collect.md +27 -3
- package/templates/commands/pt-BR/products/refine.md +171 -167
|
@@ -1,209 +1,211 @@
|
|
|
1
1
|
# Refinamento de Requisitos
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Você é um especialista em produto encarregado de ajudar a refinar requisitos para o projeto.
|
|
4
4
|
|
|
5
5
|
## ⚠️ IMPORTANTE: Este Comando NÃO Implementa Código
|
|
6
6
|
|
|
7
|
-
**Este comando é APENAS para
|
|
8
|
-
- ✅
|
|
9
|
-
- ✅
|
|
10
|
-
- ✅
|
|
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
|
|
11
12
|
- ❌ **NÃO implementar código**
|
|
12
13
|
- ❌ **NÃO fazer edits em arquivos de código**
|
|
13
|
-
- ❌ **NÃO
|
|
14
|
-
- ❌ **NÃO fazer commits**
|
|
14
|
+
- ❌ **NÃO executar testes ou deploy**
|
|
15
15
|
|
|
16
|
-
**Próximo passo**: `/spec [ISSUE-ID]` para criar
|
|
16
|
+
**Próximo passo**: `/spec [ISSUE-ID]` para criar PRD completo baseado nos requisitos refinados.
|
|
17
17
|
|
|
18
18
|
---
|
|
19
19
|
|
|
20
|
-
##
|
|
20
|
+
## Objetivo
|
|
21
21
|
|
|
22
|
-
|
|
23
|
-
- Contexto do projeto será carregado automaticamente (veja seção "Carregar MetaSpecs" abaixo)
|
|
22
|
+
Transformar um requisito inicial em especificação refinada e validada, pronta para se tornar PRD completo.
|
|
24
23
|
|
|
25
|
-
##
|
|
24
|
+
## Processo
|
|
26
25
|
|
|
27
|
-
|
|
28
|
-
- Escopo exato (o que entra e o que não entra)
|
|
29
|
-
- Critérios de aceitação claros
|
|
30
|
-
- Impacto em cada repositório
|
|
31
|
-
- Dependências técnicas
|
|
32
|
-
- Riscos e restrições
|
|
26
|
+
### 1. Fase de Esclarecimento
|
|
33
27
|
|
|
34
|
-
|
|
28
|
+
Leia o requisito inicial e faça perguntas para alcançar clareza total sobre:
|
|
29
|
+
- **Objetivo**: Por que construir isso?
|
|
30
|
+
- **Valor de Negócio**: Qual métrica/persona impacta?
|
|
31
|
+
- **Escopo**: O que inclui e o que NÃO inclui?
|
|
32
|
+
- **Interações**: Quais features/componentes existentes são afetados?
|
|
35
33
|
|
|
36
|
-
|
|
34
|
+
Continue fazendo perguntas até ter entendimento completo.
|
|
37
35
|
|
|
38
|
-
|
|
36
|
+
### 2. Validação Contra Metaspecs
|
|
39
37
|
|
|
40
|
-
|
|
41
|
-
- Use o MCP apropriado para buscar a issue:
|
|
42
|
-
- `task_management_system=jira`: Use MCP do Jira
|
|
43
|
-
- `task_management_system=linear`: Use MCP do Linear
|
|
44
|
-
- `task_management_system=github`: Use MCP do GitHub
|
|
45
|
-
- Carregue todos os dados da issue (título, descrição, labels, etc.)
|
|
38
|
+
**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.
|
|
46
39
|
|
|
47
|
-
**
|
|
48
|
-
|
|
49
|
-
- Leia `./.sessions/<ISSUE-ID>/collect.md`
|
|
50
|
-
- Se o arquivo não existir, informe o erro ao usuário
|
|
51
|
-
|
|
52
|
-
### 2. Carregar MetaSpecs
|
|
53
|
-
|
|
54
|
-
**Localizar MetaSpecs automaticamente**:
|
|
55
|
-
1. Leia `context-manifest.json` do orchestrator
|
|
56
|
-
2. Encontre o repositório com `"role": "metaspecs"`
|
|
57
|
-
3. Leia `ai.properties.md` para obter o `base_path`
|
|
58
|
-
4. O metaspecs está em: `{base_path}/{metaspecs-repo-id}/`
|
|
59
|
-
5. Leia os arquivos `index.md` relevantes para entender:
|
|
60
|
-
- Arquitetura do sistema
|
|
61
|
-
- Padrões de design
|
|
62
|
-
- Restrições técnicas
|
|
63
|
-
- Convenções do projeto
|
|
64
|
-
|
|
65
|
-
### 3. Análise de Escopo
|
|
66
|
-
|
|
67
|
-
Defina claramente:
|
|
68
|
-
|
|
69
|
-
**O que ESTÁ no escopo**:
|
|
70
|
-
- Funcionalidades específicas a serem implementadas
|
|
71
|
-
- Repositórios que serão modificados
|
|
72
|
-
- Integrações necessárias
|
|
73
|
-
|
|
74
|
-
**O que NÃO ESTÁ no escopo**:
|
|
75
|
-
- Funcionalidades relacionadas mas que ficam para depois
|
|
76
|
-
- Otimizações futuras
|
|
77
|
-
- Features "nice to have"
|
|
78
|
-
|
|
79
|
-
### 4. Critérios de Aceitação
|
|
80
|
-
|
|
81
|
-
Defina critérios mensuráveis e testáveis:
|
|
82
|
-
|
|
83
|
-
```markdown
|
|
84
|
-
## Critérios de Aceitação
|
|
85
|
-
|
|
86
|
-
### Funcional
|
|
87
|
-
- [ ] [Critério 1 - específico e testável]
|
|
88
|
-
- [ ] [Critério 2 - específico e testável]
|
|
89
|
-
|
|
90
|
-
### Técnico
|
|
91
|
-
- [ ] [Critério técnico 1]
|
|
92
|
-
- [ ] [Critério técnico 2]
|
|
93
|
-
|
|
94
|
-
### Qualidade
|
|
95
|
-
- [ ] Testes unitários implementados
|
|
96
|
-
- [ ] Testes de integração implementados
|
|
97
|
-
- [ ] Documentação atualizada
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
### 5. Análise de Impacto
|
|
101
|
-
|
|
102
|
-
Para cada repositório afetado:
|
|
40
|
+
**Processo de Validação**:
|
|
103
41
|
|
|
42
|
+
1. **Consulte os índices carregados** pelo `/warm-up`:
|
|
43
|
+
- Leia `context-manifest.json` para encontrar o repositório com `role: "metaspecs"`
|
|
44
|
+
- Obtenha o `id` desse repositório (ex: "my-project-metaspecs")
|
|
45
|
+
- Leia `ai.properties.md` para obter o `base_path`
|
|
46
|
+
- O repositório de metaspecs está em: `{base_path}/{metaspecs-id}/`
|
|
47
|
+
- Consulte `{base_path}/{metaspecs-id}/index.md` - Visão geral do projeto
|
|
48
|
+
- Consulte índices específicos (ex: `specs/business/index.md`, `specs/technical/index.md`)
|
|
49
|
+
|
|
50
|
+
2. **Identifique documentos relevantes** para este requisito específico:
|
|
51
|
+
- Em `specs/business/`: Quais documentos de negócio são relevantes?
|
|
52
|
+
- Em `specs/technical/`: Quais documentos técnicos são relevantes?
|
|
53
|
+
|
|
54
|
+
3. **Leia APENAS os documentos relevantes** identificados (não leia tudo!)
|
|
55
|
+
|
|
56
|
+
4. **Valide o requisito** contra as metaspecs lidas:
|
|
57
|
+
- ✅ Alinhamento com estratégia e visão de produto
|
|
58
|
+
- ✅ Atende necessidades das personas corretas
|
|
59
|
+
- ✅ Compatível com stack tecnológica aprovada
|
|
60
|
+
- ✅ Respeita decisões arquiteturais (ADRs)
|
|
61
|
+
- ✅ Segue regras de negócio existentes
|
|
62
|
+
- ⚠️ Identifique conflitos ou violações
|
|
63
|
+
|
|
64
|
+
**Se identificar violações**: 🛑 **PARE** e peça esclarecimento ao usuário antes de prosseguir (Princípio Jidoka).
|
|
65
|
+
|
|
66
|
+
### 3. Fase de Resumo e Aprovação
|
|
67
|
+
|
|
68
|
+
Uma vez que tenha coletado informações suficientes e validado contra metaspecs, apresente um resumo estruturado com:
|
|
69
|
+
- **Feature**: Nome da funcionalidade
|
|
70
|
+
- **Objetivo**: Por que construir (1-2 frases)
|
|
71
|
+
- **Valor de Negócio**: Métrica, persona, fase do roadmap (consulte metaspecs)
|
|
72
|
+
- **Escopo**: O que INCLUI e o que NÃO INCLUI
|
|
73
|
+
- **Componentes Afetados**: Lista baseada na arquitetura atual (consulte metaspecs técnicas)
|
|
74
|
+
- **Validação contra Metaspecs**: ✅ Aprovado / ⚠️ Atenção necessária
|
|
75
|
+
- **Estimativa de Esforço**: Pequeno (< 1 dia) / Médio (1-3 dias) / Grande (3-5 dias) / Muito Grande (> 5 dias)
|
|
76
|
+
|
|
77
|
+
**Avaliação de Complexidade e Sugestão de Quebra**:
|
|
78
|
+
|
|
79
|
+
**Se a implementação parecer grande** (> 5 dias de esforço estimado):
|
|
80
|
+
- 🚨 **Sugira quebrar em múltiplas issues menores**
|
|
81
|
+
- Explique o racional da quebra (ex: "Esta feature envolve 3 áreas distintas que podem ser implementadas independentemente")
|
|
82
|
+
- Proponha uma quebra **lógica** baseada em:
|
|
83
|
+
- Funcionalidades independentes
|
|
84
|
+
- Repositórios diferentes
|
|
85
|
+
- Camadas da aplicação (backend, frontend, infra)
|
|
86
|
+
- Fases de implementação (MVP, melhorias, otimizações)
|
|
87
|
+
- Exemplo de quebra:
|
|
88
|
+
```
|
|
89
|
+
Issue Original: "Sistema de notificações multi-canal"
|
|
90
|
+
|
|
91
|
+
Quebra Sugerida:
|
|
92
|
+
- FIN-201: Infraestrutura de filas e workers (backend)
|
|
93
|
+
- FIN-202: Notificações por email (backend + templates)
|
|
94
|
+
- FIN-203: Notificações push (backend + mobile)
|
|
95
|
+
- FIN-204: Preferências de notificação (frontend + backend)
|
|
96
|
+
```
|
|
97
|
+
- **Importante**: A decisão final é do usuário - ele pode aceitar a quebra ou manter como issue única
|
|
98
|
+
|
|
99
|
+
**Se o usuário aceitar a quebra**:
|
|
100
|
+
- Documente cada issue separadamente
|
|
101
|
+
- Adicione referências cruzadas entre as issues relacionadas
|
|
102
|
+
- Sugira ordem de implementação se houver dependências
|
|
103
|
+
- Cada issue quebrada deve passar pelo mesmo processo de refinamento
|
|
104
|
+
|
|
105
|
+
Peça aprovação do usuário e incorpore feedback se necessário.
|
|
106
|
+
|
|
107
|
+
**Dica**: Você pode pesquisar no código-base ou internet antes de finalizar, se necessário.
|
|
108
|
+
|
|
109
|
+
### 4. Salvamento dos Requisitos Refinados
|
|
110
|
+
|
|
111
|
+
Uma vez que o usuário aprove, salve os requisitos:
|
|
112
|
+
|
|
113
|
+
**IMPORTANTE**: Sempre crie backup local E atualize o task manager (se configurado).
|
|
114
|
+
|
|
115
|
+
**Processo de Salvamento**:
|
|
116
|
+
|
|
117
|
+
1. **SEMPRE criar backup local primeiro**:
|
|
118
|
+
- Crie arquivo completo em `./.sessions/<ISSUE-ID>/refined.md` (ex: `./.sessions/FIN-5/refined.md`)
|
|
119
|
+
- Onde `<ISSUE-ID>` é o ID da issue (ex: FIN-5, FIN-123)
|
|
120
|
+
- Inclua TODOS os detalhes do refinamento (backup completo)
|
|
121
|
+
|
|
122
|
+
2. **Se task manager estiver configurado** (leia `ai.properties.md` para identificar `task_management_system`):
|
|
123
|
+
- Identifique a ferramenta MCP do task manager
|
|
124
|
+
- **Atualize o BODY (description) da issue** com versão CONCISA dos requisitos refinados
|
|
125
|
+
- Para Jira: Use MCP do Jira com campo `description`
|
|
126
|
+
- Para Linear: Use MCP do Linear com campo `description`
|
|
127
|
+
- Para GitHub: Use MCP do GitHub com campo `body`
|
|
128
|
+
- Inclua todo o conteúdo refinado no campo description/body da issue
|
|
129
|
+
- Se o conteúdo for muito extenso e houver erro de API, considere criar versão resumida
|
|
130
|
+
- **SEMPRE sobrescrever** o body existente (não adicionar ao final)
|
|
131
|
+
|
|
132
|
+
**Observação**:
|
|
133
|
+
- O backup local SEMPRE está salvo e completo
|
|
134
|
+
- Se houver erro de API, verifique manualmente se a issue foi atualizada no task manager
|
|
135
|
+
|
|
136
|
+
**Template de Saída**:
|
|
137
|
+
|
|
138
|
+
**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.
|
|
139
|
+
|
|
140
|
+
**Template COMPLETO** (para backup local `.sessions/<ISSUE-ID>/refined.md`):
|
|
141
|
+
- **Metadados**: Issue, ID, Task Manager, Projeto, Data, Sprint, Prioridade
|
|
142
|
+
- **🎯 POR QUE**: Razões, valor de negócio, métrica, persona, alinhamento estratégico
|
|
143
|
+
- **📦 O QUE**: Funcionalidades detalhadas, componentes afetados, integrações, escopo negativo completo
|
|
144
|
+
- **🔧 COMO**: Stack, padrões de código, estrutura de arquivos, dependências, ordem de implementação, failure modes, considerações de performance/custo/UX
|
|
145
|
+
- **✅ Validação contra Metaspecs**: Documentos consultados (business e technical), ADRs verificados, resultado da validação
|
|
146
|
+
- **📊 Métricas de Sucesso**: Técnicas, produto/UX, critérios de aceitação
|
|
147
|
+
- **🔄 Impacto no Produto**: Alinhamento com objetivos, habilitadores, riscos mitigados
|
|
148
|
+
- **⚠️ Limitações Conhecidas**: Limitações do MVP
|
|
149
|
+
- **📝 Checklist de Implementação**: Tarefas por área (backend, frontend, testes, segurança, etc.)
|
|
150
|
+
|
|
151
|
+
**Template para Task Manager**:
|
|
104
152
|
```markdown
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
### <repo-1>
|
|
108
|
-
- **Componentes afetados**: [lista]
|
|
109
|
-
- **Tipo de mudança**: Nova feature / Modificação / Refatoração
|
|
110
|
-
- **Complexidade estimada**: Baixa / Média / Alta
|
|
111
|
-
- **Riscos**: [riscos específicos]
|
|
112
|
-
|
|
113
|
-
### <repo-2>
|
|
114
|
-
- **Componentes afetados**: [lista]
|
|
115
|
-
- **Tipo de mudança**: Nova feature / Modificação / Refatoração
|
|
116
|
-
- **Complexidade estimada**: Baixa / Média / Alta
|
|
117
|
-
- **Riscos**: [riscos específicos]
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
### 6. Dependências e Restrições
|
|
121
|
-
|
|
122
|
-
Identifique:
|
|
123
|
-
- Dependências entre repositórios
|
|
124
|
-
- Dependências de outras features/issues
|
|
125
|
-
- Restrições técnicas
|
|
126
|
-
- Restrições de negócio
|
|
127
|
-
- Bloqueadores conhecidos
|
|
128
|
-
|
|
129
|
-
### 7. Estimativa Inicial
|
|
153
|
+
# [Nome Feature] - Requisitos Refinados
|
|
130
154
|
|
|
131
|
-
|
|
132
|
-
- **Pequeno**: < 1 dia
|
|
133
|
-
- **Médio**: 1-3 dias
|
|
134
|
-
- **Grande**: 3-5 dias
|
|
135
|
-
- **Muito Grande**: > 5 dias (considere quebrar em issues menores)
|
|
155
|
+
**Sprint X** | **Y dias** | **Prioridade**
|
|
136
156
|
|
|
137
|
-
|
|
157
|
+
## Objetivo
|
|
158
|
+
[1-2 parágrafos: o que é e por que fazer]
|
|
138
159
|
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
## 📄 Salvamento do Refinamento
|
|
160
|
+
## Escopo
|
|
142
161
|
|
|
143
|
-
|
|
162
|
+
### Principais Funcionalidades
|
|
163
|
+
- Funcionalidade 1: [resumo]
|
|
164
|
+
- Funcionalidade 2: [resumo]
|
|
165
|
+
- Validações/Guards: [resumo]
|
|
144
166
|
|
|
145
|
-
|
|
146
|
-
-
|
|
147
|
-
-
|
|
148
|
-
- Adicione estimativa se o task manager suportar
|
|
149
|
-
- Informe ao usuário: "✅ Issue [ID] atualizada com refinamento"
|
|
167
|
+
### Componentes Afetados
|
|
168
|
+
- Componente 1: [tipo de mudança]
|
|
169
|
+
- Componente 2: [tipo de mudança]
|
|
150
170
|
|
|
151
|
-
|
|
171
|
+
### Segurança
|
|
172
|
+
✅ [item 1] ✅ [item 2] ✅ [item 3]
|
|
152
173
|
|
|
153
|
-
|
|
174
|
+
## Escopo Negativo
|
|
175
|
+
❌ [item 1] ❌ [item 2] ❌ [item 3]
|
|
154
176
|
|
|
155
|
-
|
|
156
|
-
|
|
177
|
+
## Stack
|
|
178
|
+
[Tech stack resumida por área]
|
|
157
179
|
|
|
158
|
-
##
|
|
180
|
+
## Estrutura
|
|
181
|
+
[Árvore de arquivos RESUMIDA - principais módulos apenas]
|
|
159
182
|
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
### Excluído
|
|
165
|
-
- [Item 1]
|
|
166
|
-
- [Item 2]
|
|
183
|
+
## Failure Modes (Evitar)
|
|
184
|
+
🔴 [crítico 1] 🔴 [crítico 2]
|
|
185
|
+
🟡 [médio 1] 🟡 [médio 2]
|
|
167
186
|
|
|
168
187
|
## Critérios de Aceitação
|
|
169
|
-
[
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
[Conforme seção 4 acima]
|
|
173
|
-
|
|
174
|
-
## Dependências
|
|
175
|
-
- [Dependência 1]
|
|
176
|
-
- [Dependência 2]
|
|
177
|
-
|
|
178
|
-
## Restrições
|
|
179
|
-
- [Restrição 1]
|
|
180
|
-
- [Restrição 2]
|
|
188
|
+
- [ ] [item 1]
|
|
189
|
+
- [ ] [item 2]
|
|
190
|
+
- [ ] [item 3]
|
|
181
191
|
|
|
182
|
-
##
|
|
183
|
-
|
|
192
|
+
## Validação
|
|
193
|
+
**ADRs**: [lista]
|
|
194
|
+
**Specs**: [principais]
|
|
195
|
+
**Status**: ✅ Aprovado
|
|
184
196
|
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
2. [Pergunta 2]
|
|
197
|
+
**Impacto**: [resumo]
|
|
198
|
+
**Limitações**: [resumo]
|
|
188
199
|
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
- [Risco 2 e mitigação]
|
|
200
|
+
---
|
|
201
|
+
📄 **Documento completo**: `.sessions/<ISSUE-ID>/refined.md`
|
|
192
202
|
```
|
|
193
203
|
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
## 🔍 Validação
|
|
197
|
-
|
|
198
|
-
Valide o refinamento contra:
|
|
199
|
-
- Estratégia do produto (se documentada)
|
|
200
|
-
- Arquitetura técnica (se documentada)
|
|
201
|
-
- Capacidade do time
|
|
202
|
-
- Prioridades do roadmap
|
|
204
|
+
**Audiência**: Desenvolvedor IA com capacidades similares às suas. Seja conciso mas completo.
|
|
203
205
|
|
|
204
206
|
---
|
|
205
207
|
|
|
206
|
-
**
|
|
208
|
+
**Requisito para Refinar**:
|
|
207
209
|
|
|
208
210
|
```
|
|
209
211
|
#$ARGUMENTS
|
|
@@ -213,10 +215,12 @@ Valide o refinamento contra:
|
|
|
213
215
|
|
|
214
216
|
## 🎯 Próximo Passo
|
|
215
217
|
|
|
216
|
-
Após
|
|
218
|
+
**Após aprovação do usuário e salvamento dos requisitos refinados**, o fluxo natural é:
|
|
217
219
|
|
|
218
220
|
```bash
|
|
219
221
|
/spec [ISSUE-ID]
|
|
220
222
|
```
|
|
221
223
|
|
|
222
|
-
|
|
224
|
+
**Exemplo**: `/spec FIN-3`
|
|
225
|
+
|
|
226
|
+
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.
|
package/package.json
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
# Idea and Requirements
|
|
1
|
+
# Idea and Requirements Gathering
|
|
2
2
|
|
|
3
|
-
You are a product
|
|
3
|
+
You are a product specialist responsible for collecting and documenting new ideas, features, or bugs.
|
|
4
4
|
|
|
5
|
-
## ⚠️ IMPORTANT: This Command
|
|
5
|
+
## ⚠️ IMPORTANT: This Command DOES NOT Implement Code
|
|
6
6
|
|
|
7
7
|
**This command is ONLY for planning and documentation:**
|
|
8
8
|
- ✅ Collect and understand requirements
|
|
9
|
-
- ✅ Create issue in task manager via MCP
|
|
10
|
-
- ✅ Ask
|
|
9
|
+
- ✅ Create issue in the task manager via MCP
|
|
10
|
+
- ✅ Ask clarification questions
|
|
11
11
|
- ✅ **READ** files from main repositories (read-only)
|
|
12
12
|
- ❌ **DO NOT implement code**
|
|
13
13
|
- ❌ **DO NOT edit code files**
|
|
14
14
|
- ❌ **DO NOT checkout branches in main repositories**
|
|
15
|
-
- ❌ **DO NOT
|
|
15
|
+
- ❌ **DO NOT commit**
|
|
16
16
|
|
|
17
17
|
**Next step**: `/refine [ISSUE-ID]` to refine the collected requirements.
|
|
18
18
|
|
|
@@ -22,27 +22,27 @@ You are a product expert responsible for collecting and documenting new ideas, f
|
|
|
22
22
|
|
|
23
23
|
Before starting, load the context by consulting:
|
|
24
24
|
|
|
25
|
-
1. **Locate MetaSpecs
|
|
26
|
-
- Read `context-manifest.json` from orchestrator
|
|
25
|
+
1. **Automatically Locate MetaSpecs**:
|
|
26
|
+
- Read `context-manifest.json` from the orchestrator
|
|
27
27
|
- Find the repository with `"role": "metaspecs"`
|
|
28
28
|
- Read `ai.properties.md` to get the `base_path`
|
|
29
|
-
-
|
|
30
|
-
- Read `index.md` files as reference
|
|
29
|
+
- The metaspecs are at: `{base_path}/{metaspecs-repo-id}/`
|
|
30
|
+
- Read the `index.md` files as reference
|
|
31
31
|
|
|
32
|
-
2. **Project
|
|
33
|
-
- `context-manifest.json` - List of repositories and their
|
|
34
|
-
- `README.md` of involved repositories
|
|
32
|
+
2. **Project Structure**:
|
|
33
|
+
- `context-manifest.json` - List of repositories and their roles
|
|
34
|
+
- `README.md` of the involved repositories
|
|
35
35
|
|
|
36
|
-
## Your
|
|
36
|
+
## Your Goal
|
|
37
37
|
|
|
38
38
|
Understand the user's request and capture it as an issue in the task manager (via MCP).
|
|
39
39
|
|
|
40
40
|
**At this stage, you DO NOT need to:**
|
|
41
|
-
- ❌ Write complete specification
|
|
41
|
+
- ❌ Write a complete specification
|
|
42
42
|
- ❌ Validate against metaspecs (this is done in `/refine` or `/spec`)
|
|
43
43
|
- ❌ Detail technical implementation
|
|
44
44
|
|
|
45
|
-
Just
|
|
45
|
+
Just ensure the idea is **adequately understood**.
|
|
46
46
|
|
|
47
47
|
## Issue Format
|
|
48
48
|
|
|
@@ -50,7 +50,7 @@ Just make sure the idea is **adequately understood**.
|
|
|
50
50
|
# [Clear and Descriptive Title]
|
|
51
51
|
|
|
52
52
|
## Description
|
|
53
|
-
[2-3 paragraphs explaining what the feature/bug is and why it
|
|
53
|
+
[2-3 paragraphs explaining what the feature/bug is and why it is important]
|
|
54
54
|
|
|
55
55
|
## Type
|
|
56
56
|
- [ ] New Feature
|
|
@@ -60,7 +60,7 @@ Just make sure the idea is **adequately understood**.
|
|
|
60
60
|
- [ ] Documentation
|
|
61
61
|
|
|
62
62
|
## Additional Context
|
|
63
|
-
[Relevant information: where the bug occurs, feature
|
|
63
|
+
[Relevant information: where the bug occurs, inspiration for the feature, etc.]
|
|
64
64
|
|
|
65
65
|
## Affected Repositories
|
|
66
66
|
[List which project repositories will be impacted]
|
|
@@ -75,65 +75,89 @@ Just make sure the idea is **adequately understood**.
|
|
|
75
75
|
## Collection Process
|
|
76
76
|
|
|
77
77
|
1. **Initial Understanding**
|
|
78
|
-
- Ask
|
|
78
|
+
- Ask clarification questions if needed
|
|
79
79
|
- Identify: Is it a new feature? Improvement? Bug?
|
|
80
80
|
- Identify which repositories will be affected
|
|
81
81
|
|
|
82
82
|
2. **Issue Draft**
|
|
83
|
-
- Clear title (
|
|
83
|
+
- Clear title (max 10 words)
|
|
84
84
|
- Objective description (2-3 paragraphs)
|
|
85
85
|
- Relevant additional context
|
|
86
86
|
- Affected repositories
|
|
87
87
|
- Suggested priority
|
|
88
88
|
|
|
89
|
-
3. **
|
|
90
|
-
|
|
89
|
+
3. **Complexity Assessment and Suggestion to Split**
|
|
90
|
+
|
|
91
|
+
Before finalizing, assess the issue complexity:
|
|
92
|
+
|
|
93
|
+
**If the implementation seems large** (> 5 days estimated effort):
|
|
94
|
+
- 🚨 **Suggest splitting into multiple smaller issues**
|
|
95
|
+
- Explain the rationale for splitting (e.g., "This feature involves 3 distinct areas: authentication, processing, and notification")
|
|
96
|
+
- Propose a **logical** split (by functionality, repository, layer, etc.)
|
|
97
|
+
- Example of splitting:
|
|
98
|
+
```
|
|
99
|
+
Original Issue: "Complete payment system"
|
|
100
|
+
|
|
101
|
+
Suggested Split:
|
|
102
|
+
- FIN-101: Payment gateway integration (backend)
|
|
103
|
+
- FIN-102: Checkout interface (frontend)
|
|
104
|
+
- FIN-103: Confirmation webhook and notifications (backend + jobs)
|
|
105
|
+
```
|
|
106
|
+
- **Important**: The final decision is the user's - they can accept the split or keep it as a single issue
|
|
107
|
+
|
|
108
|
+
**If the user accepts the split**:
|
|
109
|
+
- Create each issue separately using the same process
|
|
110
|
+
- Add cross-references between related issues
|
|
111
|
+
- Suggest implementation order if dependencies exist
|
|
112
|
+
|
|
113
|
+
4. **User Approval**
|
|
114
|
+
- Present the draft (or drafts, if split)
|
|
91
115
|
- Make adjustments based on feedback
|
|
92
116
|
- Obtain final approval
|
|
93
117
|
|
|
94
|
-
|
|
118
|
+
5. **Saving the Issue**
|
|
95
119
|
|
|
96
120
|
**PRIORITY 1: Use MCP (Model Context Protocol)**
|
|
97
121
|
|
|
98
|
-
Check if
|
|
99
|
-
- Read `ai.properties.md` from orchestrator to identify the `task_management_system`
|
|
122
|
+
Check if MCP is configured for the task manager:
|
|
123
|
+
- Read `ai.properties.md` from the orchestrator to identify the `task_management_system`
|
|
100
124
|
- If `task_management_system=jira`: Use Jira MCP to create the issue
|
|
101
125
|
- If `task_management_system=linear`: Use Linear MCP to create the issue
|
|
102
126
|
- If `task_management_system=github`: Use GitHub MCP to create the issue
|
|
103
127
|
|
|
104
128
|
**When using MCP:**
|
|
105
129
|
- Create the issue directly in the task manager
|
|
106
|
-
-
|
|
130
|
+
- Obtain the created issue ID (e.g., FIN-123, LIN-456)
|
|
107
131
|
- Inform the user: "✅ Issue [ID] created in [task manager]"
|
|
108
|
-
- **DO NOT create .md file**
|
|
132
|
+
- **DO NOT create a .md file**
|
|
109
133
|
|
|
110
134
|
**FALLBACK: Create .md file only if MCP fails**
|
|
111
135
|
|
|
112
|
-
If MCP is
|
|
113
|
-
- Create file at `./.sessions/<ISSUE-ID>/collect.md`
|
|
136
|
+
If MCP is unavailable or fails:
|
|
137
|
+
- Create a file at `./.sessions/<ISSUE-ID>/collect.md`
|
|
114
138
|
- Use manual ID format: `LOCAL-001`, `LOCAL-002`, etc.
|
|
115
|
-
- Include date, type, and
|
|
139
|
+
- Include date, type, and full content
|
|
116
140
|
- Inform the user: "⚠️ Issue saved locally in .sessions/ (task manager not available)"
|
|
117
141
|
|
|
118
|
-
##
|
|
142
|
+
## Clarification Questions
|
|
119
143
|
|
|
120
144
|
**For Features**:
|
|
121
145
|
- What problem does it solve?
|
|
122
146
|
- Who benefits?
|
|
123
|
-
- Is it visible functionality or infrastructure?
|
|
147
|
+
- Is it a visible functionality or infrastructure?
|
|
124
148
|
- Is it related to any existing feature?
|
|
125
|
-
- Which repositories need
|
|
149
|
+
- Which repositories need modification?
|
|
126
150
|
|
|
127
151
|
**For Bugs**:
|
|
128
152
|
- Where does the bug occur? (repository, component, flow)
|
|
129
153
|
- How to reproduce?
|
|
130
|
-
-
|
|
131
|
-
-
|
|
154
|
+
- Expected vs current behavior?
|
|
155
|
+
- Severity of impact?
|
|
132
156
|
|
|
133
157
|
**For Improvements**:
|
|
134
|
-
- What is working but can
|
|
135
|
-
-
|
|
136
|
-
- Is it technical or business optimization?
|
|
158
|
+
- What is working but can be improved?
|
|
159
|
+
- What metric do we want to impact?
|
|
160
|
+
- Is it a technical or business optimization?
|
|
137
161
|
|
|
138
162
|
---
|
|
139
163
|
|
|
@@ -147,10 +171,10 @@ Just make sure the idea is **adequately understood**.
|
|
|
147
171
|
|
|
148
172
|
## 🎯 Next Step
|
|
149
173
|
|
|
150
|
-
After approval and issue
|
|
174
|
+
After approval and saving the issue:
|
|
151
175
|
|
|
152
176
|
```bash
|
|
153
177
|
/refine [ISSUE-ID]
|
|
154
178
|
```
|
|
155
179
|
|
|
156
|
-
This command will transform the collected issue into refined and validated requirements.
|
|
180
|
+
This command will transform the collected issue into refined and validated requirements.
|