spec-first-copilot 0.1.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.
Files changed (45) hide show
  1. package/bin/cli.js +52 -0
  2. package/package.json +25 -0
  3. package/templates/.ai/memory/napkin.md +68 -0
  4. package/templates/.github/agents/backend-coder.md +215 -0
  5. package/templates/.github/agents/db-coder.md +165 -0
  6. package/templates/.github/agents/doc-writer.md +51 -0
  7. package/templates/.github/agents/frontend-coder.md +222 -0
  8. package/templates/.github/agents/infra-coder.md +341 -0
  9. package/templates/.github/agents/reviewer.md +99 -0
  10. package/templates/.github/agents/security-reviewer.md +153 -0
  11. package/templates/.github/copilot-instructions.md +176 -0
  12. package/templates/.github/instructions/docs.instructions.md +123 -0
  13. package/templates/.github/instructions/sensitive-files.instructions.md +32 -0
  14. package/templates/.github/skills/sf-design/SKILL.md +181 -0
  15. package/templates/.github/skills/sf-dev/SKILL.md +326 -0
  16. package/templates/.github/skills/sf-discovery/SKILL.md +405 -0
  17. package/templates/.github/skills/sf-extract/SKILL.md +284 -0
  18. package/templates/.github/skills/sf-feature/SKILL.md +130 -0
  19. package/templates/.github/skills/sf-merge-delta/SKILL.md +142 -0
  20. package/templates/.github/skills/sf-pausar/SKILL.md +120 -0
  21. package/templates/.github/skills/sf-plan/SKILL.md +178 -0
  22. package/templates/.github/skills/sf-setup-projeto/SKILL.md +123 -0
  23. package/templates/docs/Desenvolvimento/.gitkeep +0 -0
  24. package/templates/docs/Desenvolvimento/rules.md +229 -0
  25. package/templates/docs/Estrutura/.gitkeep +0 -0
  26. package/templates/docs/PM/.gitkeep +0 -0
  27. package/templates/docs/PM/setup_projeto/.gitkeep +0 -0
  28. package/templates/docs/_templates/estrutura/ADRs.template.md +91 -0
  29. package/templates/docs/_templates/estrutura/API.template.md +144 -0
  30. package/templates/docs/_templates/estrutura/Arquitetura.template.md +82 -0
  31. package/templates/docs/_templates/estrutura/Infraestrutura.template.md +104 -0
  32. package/templates/docs/_templates/estrutura/Modelo_Dados.template.md +99 -0
  33. package/templates/docs/_templates/estrutura/Seguranca.template.md +138 -0
  34. package/templates/docs/_templates/estrutura/Stack.template.md +78 -0
  35. package/templates/docs/_templates/estrutura/Visao.template.md +82 -0
  36. package/templates/docs/_templates/feature/PRD.template.md +256 -0
  37. package/templates/docs/_templates/feature/Progresso.template.md +136 -0
  38. package/templates/docs/_templates/feature/TRD.template.md +200 -0
  39. package/templates/docs/_templates/feature/backlog-extraido.template.md +154 -0
  40. package/templates/docs/_templates/feature/context.template.md +42 -0
  41. package/templates/docs/_templates/feature/extract-log.template.md +38 -0
  42. package/templates/docs/_templates/feature/projetos.template.yaml +73 -0
  43. package/templates/docs/_templates/feature/sdd.template.md +372 -0
  44. package/templates/docs/_templates/feature/tasks.template.md +115 -0
  45. package/templates/docs/_templates/global/progresso_global.template.md +57 -0
@@ -0,0 +1,372 @@
1
+ # SDD — {{NOME}}
2
+
3
+ > **Software Design Document** — Fonte de verdade para implementação.
4
+ > Gerado a partir do PRD.md (features) ou TRD.md (setup).
5
+ > O Coder lê APENAS este documento + task específica.
6
+ > Se não está no SDD, não será implementado.
7
+
8
+ ---
9
+
10
+ ## Meta
11
+
12
+ | Campo | Valor |
13
+ |-------|-------|
14
+ | Nome | `{{NOME}}` |
15
+ | Tipo | `{{feature|setup}}` |
16
+ | Documento de origem | `docs/Desenvolvimento/{{NOME}}/{{PRD|TRD}}.md` |
17
+ | Status | `rascunho` → `em revisão` → `aprovado` → `em dev` → `concluído` |
18
+ | Autor | /design |
19
+ | Criado em | |
20
+
21
+ ---
22
+
23
+ <!--
24
+ =============================================================================
25
+ INSTRUÇÕES PARA O AGENTE (não incluir no arquivo gerado)
26
+ =============================================================================
27
+
28
+ QUANDO USAR: Gerado pelo /design após PRD (features) ou TRD (setup) aprovado.
29
+ QUEM GERA: Agent Architect (Opus).
30
+
31
+ COMO GERAR:
32
+ 1. Ler APENAS o PRD.md ou TRD.md aprovado — NUNCA ler PM diretamente
33
+ 2. Ler docs/Estrutura/ para contexto de stack, API, modelo de dados
34
+ 3. Traduzir requisitos (O QUE) em design técnico (COMO)
35
+ 4. Manter rastreabilidade: cada item referencia o PRD/TRD (§X, RN-xxx)
36
+ 5. Ser AUTOCONTIDO: o Coder não consulta PRD, TRD, PM, ou qualquer outro doc
37
+
38
+ PRINCÍPIOS:
39
+ - Conciso mas completo — se o Coder precisar de algo que não está aqui, o SDD está incompleto
40
+ - Contratos detalhados (request/response com schemas reais)
41
+ - Fluxos de dados como sequências textuais (não diagramas)
42
+ - Critérios de aceite em Given/When/Then (testáveis)
43
+ - Delta Specs obrigatório (o que muda no sistema global)
44
+
45
+ SEÇÕES: 11 seções fixas + Rastreabilidade. Não pular nenhuma.
46
+ Se uma seção não se aplica, escrever "N/A — [motivo]"
47
+
48
+ AUTENTICAÇÃO E AUTORIZAÇÃO (OBRIGATÓRIO):
49
+ - Em features: §5 (Endpoints) DEVE definir auth/authz para CADA endpoint:
50
+ - Autenticação: Bearer token, API Key, ou "público" (explícito)
51
+ - Autorização: quais roles/permissões acessam (ex: admin, user, owner)
52
+ - Se o PRD não definiu auth → usar o padrão de docs/Estrutura/Seguranca.md
53
+ - Se não há padrão definido → PARAR e perguntar ao usuário
54
+ - Em setup: §7 Segurança do TRD define o mecanismo global (JWT, OAuth, etc.)
55
+ O SDD deve refletir isso em §2 Decisões de Design
56
+
57
+ SETUP vs FEATURE:
58
+ - Em setup (tipo=setup), várias seções serão N/A (§4 Regras, §5 Endpoints, §6 Telas, §7 Fluxos, §8 Integrações)
59
+ Isso é NORMAL — setup foca em §1 Visão, §2 Decisões, §3 Modelo, §9 Aceite, §11 Delta
60
+ - Em features (tipo=feature), todas seções devem ser preenchidas quando aplicáveis
61
+ - A tabela de Rastreabilidade muda: "PRD Seção → SDD Seção" para features, "TRD Seção → SDD Seção" para setup
62
+
63
+ =============================================================================
64
+ -->
65
+
66
+ ## 1. Visão Geral
67
+
68
+ ### O que é
69
+ <!-- 2-3 frases: feature, público-alvo, problema que resolve -->
70
+
71
+ ### Escopo
72
+ <!-- Limites claros: o que ENTRA e o que FICA DE FORA -->
73
+
74
+ ### Premissas
75
+ - [ ] <!-- Ex: Usuário já está autenticado ao acessar esta feature -->
76
+
77
+ ---
78
+
79
+ ## 2. Decisões de Design
80
+
81
+ > Mini-ADRs inline — cada decisão técnica relevante com justificativa.
82
+ > Referência: [ADRs.md](../../Estrutura/ADRs.md) para decisões globais.
83
+
84
+ | # | Decisão | Justificativa | Alternativa descartada |
85
+ |---|---------|---------------|------------------------|
86
+ | 1 | | | |
87
+
88
+ ---
89
+
90
+ ## 3. Modelo de Dados
91
+
92
+ > Modelo completo para implementação. Tipos e constraints são obrigatórios.
93
+
94
+ ### 3.1 Entidades
95
+
96
+ #### `{{nome_tabela}}`
97
+
98
+ | Campo | Tipo | Null? | Default | Constraint | Descrição |
99
+ |-------|------|-------|---------|------------|-----------|
100
+ | `id` | `UUID` | NOT NULL | `gen_random_uuid()` | PK | |
101
+ | `created_at` | `TIMESTAMPTZ` | NOT NULL | `NOW()` | | |
102
+
103
+ **Relações**:
104
+ - `tabela.campo` → `outra_tabela.campo` (FK, ON DELETE CASCADE)
105
+
106
+ **Índices**:
107
+ - `idx_tabela_campo` — tipo (btree/gin/gist) — justificativa
108
+
109
+ ### 3.2 Migrations necessárias
110
+
111
+ | Ordem | Descrição | Dependência |
112
+ |-------|-----------|-------------|
113
+ | 1 | | nenhuma |
114
+
115
+ ---
116
+
117
+ ## 4. Regras de Negócio e Validações
118
+
119
+ > Cada regra rastreável ao PRD (coluna Ref). Cada validação com mensagem de erro.
120
+ > O Coder implementa EXATAMENTE o que está aqui — sem inferir regras extras.
121
+
122
+ ### 4.1 Regras de Negócio
123
+
124
+ | ID | Regra | Onde aplica | Ref PRD |
125
+ |----|-------|-------------|---------|
126
+ | RN-001 | | back / front / banco | PRD §5 RN-001 |
127
+
128
+ ### 4.2 Validações de Campos
129
+
130
+ | Campo | Validação | Obrigatório | Mensagem de erro |
131
+ |-------|-----------|-------------|-----------------|
132
+ | | | | |
133
+
134
+ ---
135
+
136
+ ## 5. API — Endpoints
137
+
138
+ > Contratos completos. O Coder implementa exatamente estes schemas.
139
+
140
+ ### `{{METHOD}} {{/api/v1/recurso}}` — {{Descrição}}
141
+
142
+ **Descrição**: {{o que faz}}
143
+ **Regras**: {{RN-xxx, RN-xxx}}
144
+ **Autenticação**: {{público | Bearer token | API Key}} — se não público, justificar
145
+ **Autorização**: {{roles permitidos: admin, user, owner}} — OBRIGATÓRIO se autenticado
146
+ **Rate Limit**: {{N req/min ou N/A}} — considerar para endpoints públicos/sensíveis
147
+
148
+ **Request Body**:
149
+ ```json
150
+ {
151
+ "campo": "tipo (required|optional, validações)"
152
+ }
153
+ ```
154
+
155
+ **Response {{STATUS}}**:
156
+ ```json
157
+ {
158
+ "campo": "tipo"
159
+ }
160
+ ```
161
+
162
+ **Erros**:
163
+ | Status | Código | Quando |
164
+ |--------|--------|--------|
165
+ | 401 | `UNAUTHORIZED` | Token ausente ou inválido |
166
+ | 403 | `FORBIDDEN` | Sem permissão para este recurso |
167
+ | 400 | `VALIDATION_ERROR` | Campos inválidos |
168
+
169
+ <!-- Repetir bloco para cada endpoint -->
170
+
171
+ > **Regra de Auth**: Todo endpoint DEVE ter Autenticação e Autorização definidos explicitamente.
172
+ > Se público, escrever "público" — nunca omitir. Erros 401/403 são obrigatórios em endpoints autenticados.
173
+
174
+ ---
175
+
176
+ ## 6. Componentes e Telas
177
+
178
+ > Cada tela com seus componentes, estados e comportamentos.
179
+
180
+ ### Tela: {{Nome}}
181
+
182
+ | Propriedade | Valor |
183
+ |-------------|-------|
184
+ | **Rota** | `{{/rota}}` |
185
+ | **Permissão** | {{roles}} |
186
+ | **Estado inicial** | {{descrição}} |
187
+
188
+ **Componentes**:
189
+ | Componente | Tipo | Comportamento |
190
+ |------------|------|---------------|
191
+ | | | |
192
+
193
+ **Estados**:
194
+ | Estado | Gatilho | Efeito visual |
195
+ |--------|---------|---------------|
196
+ | loading | requisição em andamento | skeleton/spinner |
197
+ | empty | lista vazia | mensagem |
198
+ | error | falha na API | toast + retry |
199
+
200
+ <!-- Repetir bloco para cada tela -->
201
+
202
+ ---
203
+
204
+ ## 7. Fluxos de Dados
205
+
206
+ > Sequências de operações para cada funcionalidade principal.
207
+ > O Coder segue estes fluxos como guia de implementação.
208
+
209
+ ### Fluxo: {{Nome}} (fluxo principal)
210
+
211
+ ```
212
+ Usuário {{ação}} → [front] {{passo}} → [back] {{passo}}
213
+ → [back] {{passo}}
214
+ → [back] retorna {{response}}
215
+ → [front] {{feedback}}
216
+ ```
217
+
218
+ ### Fluxo: {{Nome}} (fluxo de erro)
219
+
220
+ ```
221
+ {{sequência do erro}}
222
+ ```
223
+
224
+ <!-- Adicionar fluxos para cada funcionalidade -->
225
+
226
+ ---
227
+
228
+ ## 8. Integrações Externas
229
+
230
+ > Serviços de terceiros ou outros módulos do sistema.
231
+
232
+ | Serviço | Protocolo | Quando | Timeout | Retry | Fallback |
233
+ |---------|-----------|--------|---------|-------|----------|
234
+ | | | | | | |
235
+
236
+ ### Contrato: {{Nome do Serviço}}
237
+
238
+ **Request**: `{{METHOD}} {{URL}}`
239
+ ```json
240
+ { }
241
+ ```
242
+ **Response esperada**:
243
+ ```json
244
+ { }
245
+ ```
246
+ **Tratamento de falha**: <!-- O que acontece se o serviço estiver fora -->
247
+
248
+ ---
249
+
250
+ ## 9. Estratégia de Testes
251
+
252
+ > Define O QUE testar, COMO testar, ONDE ficam os testes e QUANDO rodar.
253
+ > O Coder implementa testes junto com o código — não é etapa separada.
254
+
255
+ ### 9.1 Testes por área
256
+
257
+ | Área | Tipo | Framework | Comando | O que cobre |
258
+ |------|------|-----------|---------|-------------|
259
+ | BACK | Unit | <!-- xUnit/Jest/pytest --> | <!-- dotnet test --> | Services, validações RN-*, regras de negócio |
260
+ | BACK | Integration | <!-- WebApplicationFactory/Supertest --> | <!-- dotnet test --filter Integration --> | Endpoints completos (request → response) |
261
+ | FRONT | Unit | <!-- React Testing Library --> | <!-- npm test --> | Componentes com lógica, hooks customizados |
262
+ | FRONT | E2E | <!-- Playwright --> | <!-- npx playwright test --> | Jornadas do §4 / fluxos do §7 |
263
+ | BANCO | Migration | <!-- EF migrations/Knex --> | <!-- dotnet ef database update --> | Migration roda + rollback sem erro |
264
+
265
+ ### 9.2 Estrutura de testes
266
+
267
+ ```
268
+ <!-- Adaptar à stack do projeto. Exemplo: -->
269
+ backend/
270
+ ├── tests/
271
+ │ ├── Unit/ ← services, validações
272
+ │ ├── Integration/ ← endpoints (in-memory ou testcontainers)
273
+ │ └── Fixtures/ ← dados de teste
274
+ frontend/
275
+ ├── tests/
276
+ │ ├── components/ ← unit (testing library)
277
+ │ └── e2e/ ← playwright (jornadas completas)
278
+ ```
279
+
280
+ ### 9.3 Critérios de Aceite
281
+
282
+ > Cenários testáveis em formato Given/When/Then.
283
+ > Cada CA mapeia para pelo menos 1 teste automatizado.
284
+
285
+ #### CA-001: {{Título do cenário}}
286
+
287
+ ```gherkin
288
+ Given {{pré-condição}}
289
+ When {{ação do usuário}}
290
+ Then {{resultado esperado}}
291
+ ```
292
+
293
+ <!-- Adicionar CA-NNN para cada cenário relevante -->
294
+
295
+ | CA | Tipo de teste | Arquivo de teste |
296
+ |----|--------------|-----------------|
297
+ | CA-001 | integration | `tests/Integration/{{Teste}}.cs` |
298
+ | CA-002 | e2e | `tests/e2e/{{teste}}.spec.ts` |
299
+
300
+ ### 9.4 Métricas de Sucesso
301
+
302
+ | Métrica | Threshold | Como medir |
303
+ |---------|-----------|------------|
304
+ | | | |
305
+
306
+ ---
307
+
308
+ ## 10. Fora de Escopo
309
+
310
+ > Lista explícita — evita scope creep durante implementação.
311
+
312
+ | # | Item | Motivo | Quando entra |
313
+ |---|------|--------|--------------|
314
+ | 1 | | | |
315
+
316
+ ---
317
+
318
+ ## 11. Delta Specs
319
+
320
+ > O que muda no sistema global com esta feature.
321
+ > Pós `/dev`: estas deltas são mergeadas nos docs de `docs/Estrutura/`.
322
+
323
+ ### ADDED
324
+ <!-- Novos: tabelas, endpoints, componentes, regras, permissões -->
325
+ -
326
+
327
+ ### MODIFIED
328
+ <!-- Alterações em funcionalidades/docs existentes -->
329
+ -
330
+
331
+ ### REMOVED
332
+ <!-- Funcionalidades ou comportamentos que deixam de existir -->
333
+ -
334
+
335
+ ---
336
+
337
+ ## Rastreabilidade Origem → SDD
338
+
339
+ > Mapa rápido de referência cruzada. Garante que nenhum requisito foi perdido.
340
+
341
+ ### Para features (PRD → SDD):
342
+
343
+ | PRD Seção | SDD Seção | Notas |
344
+ |-----------|-----------|-------|
345
+ | §3 Entidades | §3 Modelo de Dados | Tipos e constraints detalhados |
346
+ | §4 Jornadas | §7 Fluxos de Dados | Traduzidas em sequências técnicas |
347
+ | §5 Regras (RN-xxx) | §4 Regras e Validações | Mantém mesmos IDs |
348
+ | §6 Validações | §4.2 Validações de Campos | Com mensagens de erro |
349
+ | §7 Telas | §6 Componentes e Telas | Com estados e comportamentos |
350
+ | §8 Integrações | §8 Integrações Externas | Com contratos detalhados |
351
+ | §9 Erros | §5 Endpoints (Erros) | Mapeados por endpoint |
352
+ | §10 Não-Funcionais | §9 Métricas de Sucesso | Thresholds mensuráveis |
353
+ | §12 Fora de Escopo | §10 Fora de Escopo | Mantido igual |
354
+
355
+ ### Para setup (TRD → SDD):
356
+
357
+ | TRD Seção | SDD Seção | Notas |
358
+ |-----------|-----------|-------|
359
+ | §1 Visão | §1 Visão Geral | Escopo do setup |
360
+ | §2 Stack | §2 Decisões de Design | Justificativas expandidas |
361
+ | §3 Arquitetura | §2 Decisões de Design | Padrões arquiteturais |
362
+ | §4 Modelo de Dados | §3 Modelo de Dados | Tipos exatos, constraints, índices |
363
+ | §5 API | §5 (N/A em setup) | Convenções no TRD, endpoints nas features |
364
+ | §6 Infra | §1 Escopo | Infra base |
365
+ | §7 Segurança | §2 Decisões + §3 | JWT, tabela usuarios |
366
+ | §8 Módulos | §10 Fora de Escopo | Módulos futuros |
367
+
368
+ ---
369
+
370
+ > **Regra**: Este SDD é a **única fonte de verdade** para implementação.
371
+ > O Coder não consulta PRD, TRD, PM, ou qualquer outro documento.
372
+ > Qualquer alteração pós-aprovação deve ser refletida aqui primeiro.
@@ -0,0 +1,115 @@
1
+ # Tasks — {{AREA}} — {{FEATURE}}
2
+
3
+ > Checklist de implementação organizado por **fases** e **prioridade**.
4
+ > O Coder consulta o `sdd.md` para detalhes técnicos.
5
+ > Este arquivo define O QUE fazer, EM QUE ORDEM, e ONDE.
6
+
7
+ ---
8
+
9
+ ## Meta
10
+
11
+ | Campo | Valor |
12
+ |-------|-------|
13
+ | Feature | `{{FEATURE}}` |
14
+ | Área | {{AREA}} |
15
+ | SDD | [`sdd.md`](./sdd.md) {{SDD_SECTIONS}} |
16
+ | Total de tasks | {{TOTAL}} |
17
+ | Depende de | {{AREA_DEPENDENCIES}} |
18
+
19
+ ---
20
+
21
+ <!--
22
+ =============================================================================
23
+ INSTRUÇÕES PARA O AGENTE (não incluir no arquivo gerado)
24
+ =============================================================================
25
+
26
+ COMO GERAR ESTE ARQUIVO:
27
+
28
+ 1. Ler o SDD completo da feature
29
+ 2. Identificar TODAS as áreas afetadas (banco, back, front, mobile, infra...)
30
+ 3. Para CADA área, gerar um arquivo `{area}_tasks.md` usando este template
31
+ 4. Áreas são DINÂMICAS — determinadas pelo SDD, não pré-definidas
32
+
33
+ COMO DEFINIR FASES:
34
+
35
+ - Agrupar tasks por etapa lógica de implementação
36
+ - Fases são SEQUENCIAIS dentro da área (Fase 2 depende de Fase 1)
37
+ - Usar prioridade P1/P2/P3 por fase
38
+ - Nomear fases de forma descritiva (não só "Fase 1")
39
+ - Exemplos de fases por área:
40
+
41
+ BANCO: Setup → Schema → Índices → Seeds
42
+ BACKEND: Setup → DTOs/Validações → Repository/Service → Controller → Testes
43
+ FRONTEND: Setup/Rotas → Componentes → Telas → Polish
44
+ MOBILE: Setup → Navegação → Telas → Offline → Push
45
+ INFRA: Provisão → Config → Deploy → Monitoramento
46
+
47
+ COMO ESCREVER CADA TASK:
48
+
49
+ - Formato checklist: `- [ ] **ID**: Título [Tamanho]`
50
+ - ID: {PREFIXO}-{NNN} sequencial (BANCO-001, BACK-001, FRONT-001, MOBILE-001...)
51
+ - Título: verbo no infinitivo + o que fazer
52
+ - Tamanho: S (< 30min), M (30min-2h), L (2h+)
53
+ - Fase: número da fase de entrega (do PRD §11) — OBRIGATÓRIO
54
+ - Repo: nome do repo (de projetos.yaml) — OBRIGATÓRIO
55
+ - Arquivos: EXATAMENTE quais files criar ou alterar (caminhos RELATIVOS ao repo)
56
+ - SDD: seção específica (§3.1, §5 POST /rota, §6 Tela X)
57
+ - Depende: IDs de tasks (mesma área ou cross-area)
58
+
59
+ REGRAS:
60
+
61
+ - Task deve ser AUTOCONTIDA: Coder lê SDD + esta task, nada mais
62
+ - NÃO duplicar conteúdo do SDD — apenas referenciar seções
63
+ - NÃO incluir status — vive só no Progresso.md
64
+ - Depende cross-area é permitido (FRONT-004 depende de BACK-009)
65
+ - "Regras desta área" = convenções específicas extraídas do SDD e docs/Estrutura
66
+
67
+ =============================================================================
68
+ -->
69
+
70
+ ## Fase 1 — {{FASE_NOME}} [{{PRIORIDADE}}]
71
+
72
+ > {{FASE_CONTEXTO — 1 linha explicando o propósito da fase}}
73
+ <!-- Opcional: "Depende de: Área X Fase Y concluída" -->
74
+
75
+ - [ ] **{{PREFIXO}}-001**: {{Título descritivo}} [{{S|M|L}}]
76
+ - Fase: {{N}} — {{Nome fase de entrega}}
77
+ - Repo: `{{repo_name}}`
78
+ - Arquivos: `{{caminho/arquivo.ext}}`
79
+ - SDD: {{§N seção específica}}
80
+ - Depende: {{ID ou —}}
81
+
82
+ - [ ] **{{PREFIXO}}-002**: {{Título descritivo}} [{{S|M|L}}]
83
+ - Fase: {{N}} — {{Nome fase de entrega}}
84
+ - Repo: `{{repo_name}}`
85
+ - Arquivos: `{{caminho/arquivo1.ext}}`, `{{caminho/arquivo2.ext}}`
86
+ - SDD: {{§N.M subseção}}
87
+ - Depende: {{PREFIXO}}-001
88
+
89
+ ---
90
+
91
+ ## Fase 2 — {{FASE_NOME}} [{{PRIORIDADE}}]
92
+
93
+ > {{FASE_CONTEXTO}}
94
+
95
+ - [ ] **{{PREFIXO}}-003**: {{Título}} [{{S|M|L}}]
96
+ - Fase: {{N}} — {{Nome fase de entrega}}
97
+ - Repo: `{{repo_name}}`
98
+ - Arquivos: `{{caminho/}}`
99
+ - SDD: {{§N}}
100
+ - Depende: {{PREFIXO}}-001, {{OUTRA_AREA}}-001
101
+
102
+ <!-- Repetir fases conforme necessário -->
103
+
104
+ ---
105
+
106
+ ## Regras desta área
107
+
108
+ <!-- Extraídas do SDD e docs/Estrutura/ — específicas para esta área -->
109
+ 1. {{Regra 1}}
110
+ 2. {{Regra 2}}
111
+
112
+ ---
113
+
114
+ > **Legenda tamanho**: S = < 30min · M = 30min-2h · L = 2h+
115
+ > **Legenda prioridade**: P1 = bloqueia outras áreas · P2 = importante · P3 = nice-to-have
@@ -0,0 +1,57 @@
1
+ # Progresso Geral
2
+
3
+ > Visão consolidada de todas as features, bugs e tarefas do projeto.
4
+ > Atualizado automaticamente ao final de cada `/plan` e `/dev`.
5
+
6
+ ---
7
+
8
+ <!--
9
+ =============================================================================
10
+ INSTRUÇÕES PARA O AGENTE (não incluir no arquivo gerado na primeira vez)
11
+ =============================================================================
12
+
13
+ QUANDO USAR: Criado pelo /plan do primeiro setup ou feature. Atualizado por cada /plan e /dev.
14
+
15
+ COMO ATUALIZAR:
16
+ - Ao criar nova feature (/plan) → adicionar linha na tabela com contadores zerados
17
+ - Ao concluir tasks (/dev) → atualizar contadores
18
+ - Ao concluir feature (/merge-delta) → status "concluído" ou "done"
19
+
20
+ ÁREAS SÃO DINÂMICAS:
21
+ - Colunas de área mudam conforme o projeto (BANCO, BACK, FRONT, DOC, INFRA, MOBILE...)
22
+ - Cada feature pode ter áreas diferentes
23
+ - Usar "—" quando uma feature não tem tasks naquela área
24
+
25
+ STATUS USA O VALOR DO .context.md:
26
+ - not_started, extract_done, approved, design_done, plan_done, dev_in_progress, dev_done, done
27
+
28
+ =============================================================================
29
+ -->
30
+
31
+ ## Resumo
32
+
33
+ | # | Feature | Status | {{AREA_1}} | {{AREA_2}} | {{AREA_N}} | Última atualização |
34
+ |---|---------|--------|------------|------------|------------|-------------------|
35
+ | 1 | {{NOME}} | {{status}} | 0/N | 0/N | 0/N | {{data}} |
36
+
37
+ <!-- Exemplo preenchido:
38
+ | 1 | setup_projeto | plan_done | BANCO: 0/7 | BACK: 0/10 | FRONT: 0/3 | DOC: 0/8 | 2026-04-08 |
39
+ | 2 | feat_cadastro_cliente | extract_done | — | — | — | — | 2026-04-09 |
40
+ -->
41
+
42
+ ## Legenda de Status
43
+
44
+ | Status | Significado |
45
+ |--------|-------------|
46
+ | `not_started` | Pipeline iniciado, aguardando extração |
47
+ | `extract_done` | PRD/TRD gerado, aguardando aprovação |
48
+ | `approved` | Documento aprovado |
49
+ | `design_done` | SDD gerado |
50
+ | `plan_done` | Tasks geradas, pronto para /dev |
51
+ | `dev_in_progress` | /dev em execução |
52
+ | `dev_done` | Todas tasks concluídas |
53
+ | `done` | Delta specs mergeadas (features) ou docs gerados (setup) |
54
+
55
+ ---
56
+
57
+ > **Atualização**: Cada skill atualiza este arquivo ao criar ou concluir features.