@maestro-ai/cli 1.0.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 +59 -0
- package/content/guides/Cat/303/241logo de Stacks para Cloud Moderna.md" +119 -0
- package/content/guides/Cat/303/241logo de Stacks para Hospedagem Compartilhada.md" +147 -0
- package/content/guides/Checklist Mestre de Entrega.md +68 -0
- package/content/guides/Gates de Qualidade.md +209 -0
- package/content/guides/Guia de Adi/303/247/303/243o de Novas Funcionalidades.md" +355 -0
- package/content/guides/Guia de Chaos Engineering.md +267 -0
- package/content/guides/Guia de Debugging com IA.md +135 -0
- package/content/guides/Guia de Estrat/303/251gias de Cache.md" +352 -0
- package/content/guides/Guia de Migrations Zero-Downtime.md +311 -0
- package/content/guides/Guia de Multi-tenancy.md +368 -0
- package/content/guides/Guia de Otimiza/303/247/303/243o de Custos Cloud.md" +195 -0
- package/content/guides/Guia de Refatora/303/247/303/243o de C/303/263digo Legado com IA.md" +162 -0
- package/content/guides/Guia de SLOs e Error Budgets.md +315 -0
- package/content/guides/M/303/251tricas de Efici/303/252ncia do Desenvolvimento com IA.md" +93 -0
- package/content/guides/Rules base.md +90 -0
- package/content/prompts/README.md +203 -0
- package/content/prompts/acessibilidade/analise-acessibilidade.md +257 -0
- package/content/prompts/apis/design-api-rest.md +303 -0
- package/content/prompts/apis/idempotencia.md +254 -0
- package/content/prompts/apis/versionamento.md +313 -0
- package/content/prompts/arquitetura/arquitetura-c4-completo.md +190 -0
- package/content/prompts/arquitetura/clean-architecture.md +151 -0
- package/content/prompts/arquitetura/ddd-bounded-contexts.md +183 -0
- package/content/prompts/arquitetura/ddd-cqrs.md +176 -0
- package/content/prompts/arquitetura/modelo-dominio.md +207 -0
- package/content/prompts/arquitetura/multi-tenancy.md +235 -0
- package/content/prompts/database/migrations-zero-downtime.md +192 -0
- package/content/prompts/database/otimizacao-queries.md +296 -0
- package/content/prompts/desenvolvimento/code-review.md +301 -0
- package/content/prompts/desenvolvimento/gerar-servico.md +271 -0
- package/content/prompts/devops/docker-compose.md +336 -0
- package/content/prompts/devops/feature-flags.md +374 -0
- package/content/prompts/devops/kubernetes-deploy.md +460 -0
- package/content/prompts/devops/pipeline-cicd.md +358 -0
- package/content/prompts/devops/terraform-iac.md +502 -0
- package/content/prompts/escalabilidade/analise-performance.md +240 -0
- package/content/prompts/escalabilidade/analise-performance.txt +94 -0
- package/content/prompts/escalabilidade/caching.md +255 -0
- package/content/prompts/observabilidade/chaos-testing.md +237 -0
- package/content/prompts/observabilidade/estrategia-observabilidade.md +263 -0
- package/content/prompts/observabilidade/estrategia-observabilidade.txt +134 -0
- package/content/prompts/observabilidade/slos.md +215 -0
- package/content/prompts/produto/discovery-inicial.md +203 -0
- package/content/prompts/produto/discovery-inicial.txt +33 -0
- package/content/prompts/requisitos/refinar-requisitos.md +232 -0
- package/content/prompts/requisitos/refinar-requisitos.txt +40 -0
- package/content/prompts/seguranca/analise-seguranca.md +243 -0
- package/content/prompts/seguranca/pentest-checklist.md +333 -0
- package/content/prompts/seguranca/rate-limiting.md +356 -0
- package/content/prompts/seguranca/revisao-lgpd.md +227 -0
- package/content/prompts/seguranca/threat-modeling.md +224 -0
- package/content/prompts/testes/contract-testing.md +340 -0
- package/content/prompts/testes/gerar-testes-unitarios.md +474 -0
- package/content/prompts/testes/testes-e2e.md +460 -0
- package/content/prompts/testes/testes-integracao.md +418 -0
- package/content/prompts/testes/testes-performance.md +458 -0
- package/content/prompts/ux/gerar-ui-stitch.md +151 -0
- package/content/skills/api-patterns/SKILL.md +81 -0
- package/content/skills/api-patterns/api-style.md +42 -0
- package/content/skills/api-patterns/auth.md +24 -0
- package/content/skills/api-patterns/documentation.md +26 -0
- package/content/skills/api-patterns/graphql.md +41 -0
- package/content/skills/api-patterns/rate-limiting.md +31 -0
- package/content/skills/api-patterns/response.md +37 -0
- package/content/skills/api-patterns/rest.md +40 -0
- package/content/skills/api-patterns/scripts/api_validator.py +211 -0
- package/content/skills/api-patterns/security-testing.md +122 -0
- package/content/skills/api-patterns/trpc.md +41 -0
- package/content/skills/api-patterns/versioning.md +22 -0
- package/content/skills/app-builder/SKILL.md +75 -0
- package/content/skills/app-builder/agent-coordination.md +71 -0
- package/content/skills/app-builder/feature-building.md +53 -0
- package/content/skills/app-builder/project-detection.md +34 -0
- package/content/skills/app-builder/scaffolding.md +118 -0
- package/content/skills/app-builder/tech-stack.md +40 -0
- package/content/skills/app-builder/templates/SKILL.md +39 -0
- package/content/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -0
- package/content/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
- package/content/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
- package/content/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
- package/content/skills/app-builder/templates/express-api/TEMPLATE.md +83 -0
- package/content/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
- package/content/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
- package/content/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +82 -0
- package/content/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +100 -0
- package/content/skills/app-builder/templates/nextjs-static/TEMPLATE.md +106 -0
- package/content/skills/app-builder/templates/nuxt-app/TEMPLATE.md +101 -0
- package/content/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -0
- package/content/skills/app-builder/templates/react-native-app/TEMPLATE.md +93 -0
- package/content/skills/architecture/SKILL.md +55 -0
- package/content/skills/architecture/context-discovery.md +43 -0
- package/content/skills/architecture/examples.md +94 -0
- package/content/skills/architecture/pattern-selection.md +68 -0
- package/content/skills/architecture/patterns-reference.md +50 -0
- package/content/skills/architecture/trade-off-analysis.md +77 -0
- package/content/skills/bash-linux/SKILL.md +199 -0
- package/content/skills/behavioral-modes/SKILL.md +242 -0
- package/content/skills/brainstorming/SKILL.md +163 -0
- package/content/skills/brainstorming/dynamic-questioning.md +350 -0
- package/content/skills/clean-code/SKILL.md +201 -0
- package/content/skills/code-review-checklist/SKILL.md +109 -0
- package/content/skills/database-design/SKILL.md +52 -0
- package/content/skills/database-design/database-selection.md +43 -0
- package/content/skills/database-design/indexing.md +39 -0
- package/content/skills/database-design/migrations.md +48 -0
- package/content/skills/database-design/optimization.md +36 -0
- package/content/skills/database-design/orm-selection.md +30 -0
- package/content/skills/database-design/schema-design.md +56 -0
- package/content/skills/database-design/scripts/schema_validator.py +172 -0
- package/content/skills/deployment-procedures/SKILL.md +241 -0
- package/content/skills/doc.md +177 -0
- package/content/skills/documentation-templates/SKILL.md +194 -0
- package/content/skills/frontend-design/SKILL.md +396 -0
- package/content/skills/frontend-design/animation-guide.md +331 -0
- package/content/skills/frontend-design/color-system.md +311 -0
- package/content/skills/frontend-design/decision-trees.md +418 -0
- package/content/skills/frontend-design/motion-graphics.md +306 -0
- package/content/skills/frontend-design/scripts/accessibility_checker.py +183 -0
- package/content/skills/frontend-design/scripts/ux_audit.py +722 -0
- package/content/skills/frontend-design/typography-system.md +345 -0
- package/content/skills/frontend-design/ux-psychology.md +541 -0
- package/content/skills/frontend-design/visual-effects.md +383 -0
- package/content/skills/game-development/2d-games/SKILL.md +119 -0
- package/content/skills/game-development/3d-games/SKILL.md +135 -0
- package/content/skills/game-development/SKILL.md +167 -0
- package/content/skills/game-development/game-art/SKILL.md +185 -0
- package/content/skills/game-development/game-audio/SKILL.md +190 -0
- package/content/skills/game-development/game-design/SKILL.md +129 -0
- package/content/skills/game-development/mobile-games/SKILL.md +108 -0
- package/content/skills/game-development/multiplayer/SKILL.md +132 -0
- package/content/skills/game-development/pc-games/SKILL.md +144 -0
- package/content/skills/game-development/vr-ar/SKILL.md +123 -0
- package/content/skills/game-development/web-games/SKILL.md +150 -0
- package/content/skills/geo-fundamentals/SKILL.md +156 -0
- package/content/skills/geo-fundamentals/scripts/geo_checker.py +289 -0
- package/content/skills/i18n-localization/SKILL.md +154 -0
- package/content/skills/i18n-localization/scripts/i18n_checker.py +241 -0
- package/content/skills/intelligent-routing/SKILL.md +334 -0
- package/content/skills/lint-and-validate/SKILL.md +45 -0
- package/content/skills/lint-and-validate/scripts/lint_runner.py +172 -0
- package/content/skills/lint-and-validate/scripts/type_coverage.py +173 -0
- package/content/skills/mcp-builder/SKILL.md +176 -0
- package/content/skills/mobile-design/SKILL.md +394 -0
- package/content/skills/mobile-design/decision-trees.md +516 -0
- package/content/skills/mobile-design/mobile-backend.md +491 -0
- package/content/skills/mobile-design/mobile-color-system.md +420 -0
- package/content/skills/mobile-design/mobile-debugging.md +122 -0
- package/content/skills/mobile-design/mobile-design-thinking.md +357 -0
- package/content/skills/mobile-design/mobile-navigation.md +458 -0
- package/content/skills/mobile-design/mobile-performance.md +767 -0
- package/content/skills/mobile-design/mobile-testing.md +356 -0
- package/content/skills/mobile-design/mobile-typography.md +433 -0
- package/content/skills/mobile-design/platform-android.md +666 -0
- package/content/skills/mobile-design/platform-ios.md +561 -0
- package/content/skills/mobile-design/scripts/mobile_audit.py +670 -0
- package/content/skills/mobile-design/touch-psychology.md +537 -0
- package/content/skills/nextjs-best-practices/SKILL.md +203 -0
- package/content/skills/nodejs-best-practices/SKILL.md +333 -0
- package/content/skills/parallel-agents/SKILL.md +175 -0
- package/content/skills/performance-profiling/SKILL.md +143 -0
- package/content/skills/performance-profiling/scripts/lighthouse_audit.py +76 -0
- package/content/skills/plan-writing/SKILL.md +152 -0
- package/content/skills/powershell-windows/SKILL.md +167 -0
- package/content/skills/python-patterns/SKILL.md +441 -0
- package/content/skills/react-patterns/SKILL.md +198 -0
- package/content/skills/red-team-tactics/SKILL.md +199 -0
- package/content/skills/seo-fundamentals/SKILL.md +129 -0
- package/content/skills/seo-fundamentals/scripts/seo_checker.py +219 -0
- package/content/skills/server-management/SKILL.md +161 -0
- package/content/skills/systematic-debugging/SKILL.md +109 -0
- package/content/skills/tailwind-patterns/SKILL.md +269 -0
- package/content/skills/tdd-workflow/SKILL.md +149 -0
- package/content/skills/testing-patterns/SKILL.md +178 -0
- package/content/skills/testing-patterns/scripts/test_runner.py +219 -0
- package/content/skills/vulnerability-scanner/SKILL.md +276 -0
- package/content/skills/vulnerability-scanner/checklists.md +121 -0
- package/content/skills/vulnerability-scanner/scripts/security_scan.py +458 -0
- package/content/skills/webapp-testing/SKILL.md +187 -0
- package/content/skills/webapp-testing/scripts/playwright_runner.py +173 -0
- package/content/specialists/Especialista em Acessibilidade.md +266 -0
- package/content/specialists/Especialista em An/303/241lise de Testes.md" +434 -0
- package/content/specialists/Especialista em Arquitetura Avan/303/247ada.md" +358 -0
- package/content/specialists/Especialista em Arquitetura de Software.md +177 -0
- package/content/specialists/Especialista em Banco de Dados.md +260 -0
- package/content/specialists/Especialista em Contrato de API.md +172 -0
- package/content/specialists/Especialista em Dados e Analytics com IA.md +246 -0
- package/content/specialists/Especialista em Debugging e Troubleshooting.md +191 -0
- package/content/specialists/Especialista em Desenvolvimento Frontend.md +477 -0
- package/content/specialists/Especialista em Desenvolvimento Mobile.md +241 -0
- package/content/specialists/Especialista em Desenvolvimento e Vibe Coding Estruturado.md +417 -0
- package/content/specialists/Especialista em DevOps e Infraestrutura.md +294 -0
- package/content/specialists/Especialista em Documenta/303/247/303/243o T/303/251cnica.md" +227 -0
- package/content/specialists/Especialista em Engenharia de Requisitos com IA.md +299 -0
- package/content/specialists/Especialista em Explora/303/247/303/243o de Codebase.md" +179 -0
- package/content/specialists/Especialista em Gest/303/243o de Produto.md" +179 -0
- package/content/specialists/Especialista em Migra/303/247/303/243o e Moderniza/303/247/303/243o.md" +410 -0
- package/content/specialists/Especialista em Modelagem e Arquitetura de Dom/303/255nio com IA.md" +248 -0
- package/content/specialists/Especialista em Observabilidade.md +415 -0
- package/content/specialists/Especialista em Performance e Escalabilidade.md +373 -0
- package/content/specialists/Especialista em Plano de Execu/303/247/303/243o com IA.md" +341 -0
- package/content/specialists/Especialista em Prototipagem R/303/241pida com Google Stitch.md" +419 -0
- package/content/specialists/Especialista em Seguran/303/247a da Informa/303/247/303/243o.md" +508 -0
- package/content/specialists/Especialista em UX Design.md +453 -0
- package/content/specialists/INDEX.md +43 -0
- package/content/templates/PRD.md +165 -0
- package/content/templates/README.md +65 -0
- package/content/templates/adr.md +103 -0
- package/content/templates/arquitetura.md +279 -0
- package/content/templates/backlog.md +185 -0
- package/content/templates/checklist-seguranca.md +180 -0
- package/content/templates/contexto.md +120 -0
- package/content/templates/criterios-aceite.md +99 -0
- package/content/templates/design-banco.md +270 -0
- package/content/templates/design-doc.md +240 -0
- package/content/templates/feature.md +88 -0
- package/content/templates/historia-backend.md +84 -0
- package/content/templates/historia-frontend.md +75 -0
- package/content/templates/historia-usuario.md +125 -0
- package/content/templates/mapa-navegacao.md +133 -0
- package/content/templates/matriz-rastreabilidade.md +121 -0
- package/content/templates/modelo-dominio.md +219 -0
- package/content/templates/plano-testes.md +199 -0
- package/content/templates/prototipo-stitch.md +138 -0
- package/content/templates/requisitos.md +162 -0
- package/content/templates/slo-sli.md +197 -0
- package/content/workflows/README-MCP.md +363 -0
- package/content/workflows/brainstorm.md +113 -0
- package/content/workflows/create.md +59 -0
- package/content/workflows/debug.md +103 -0
- package/content/workflows/deploy.md +176 -0
- package/content/workflows/enhance.md +63 -0
- package/content/workflows/mcp-debug.md +506 -0
- package/content/workflows/mcp-feature.md +385 -0
- package/content/workflows/mcp-gate.md +413 -0
- package/content/workflows/mcp-next.md +388 -0
- package/content/workflows/mcp-refactor.md +600 -0
- package/content/workflows/mcp-start.md +304 -0
- package/content/workflows/mcp-status.md +400 -0
- package/content/workflows/orchestrate.md +237 -0
- package/content/workflows/plan.md +89 -0
- package/content/workflows/preview.md +81 -0
- package/content/workflows/status.md +86 -0
- package/content/workflows/test.md +144 -0
- package/content/workflows/ui-ux-pro-max.md +296 -0
- package/dist/commands/init.d.ts +6 -0
- package/dist/commands/init.js +138 -0
- package/dist/commands/update.d.ts +5 -0
- package/dist/commands/update.js +50 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +21 -0
- package/package.json +48 -0
|
@@ -0,0 +1,385 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Adicionar nova feature com fluxo estruturado (Análise → Implementação → Deploy)
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /mcp-feature - Nova Feature MCP
|
|
6
|
+
|
|
7
|
+
$ARGUMENTS
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Objetivo
|
|
12
|
+
|
|
13
|
+
Adicionar nova funcionalidade em projeto existente usando fluxo estruturado de 6 fases do MCP Maestro.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Quando Usar
|
|
18
|
+
|
|
19
|
+
- Adicionar feature em produto já existente
|
|
20
|
+
- Feature que impacta arquitetura, modelo ou API
|
|
21
|
+
- Feature que precisa de análise de impacto
|
|
22
|
+
|
|
23
|
+
**NÃO usar para:**
|
|
24
|
+
- Correção de bugs → Use `/mcp-debug`
|
|
25
|
+
- Melhorias de código → Use `/mcp-refactor`
|
|
26
|
+
- Novo projeto → Use `/mcp-start`
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## Fluxo de 6 Fases
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
1. Análise de Impacto
|
|
34
|
+
↓
|
|
35
|
+
2. Refinamento de Requisitos
|
|
36
|
+
↓
|
|
37
|
+
3. Design/Arquitetura
|
|
38
|
+
↓
|
|
39
|
+
4. Implementação (Contrato → FE/BE paralelo → Integração)
|
|
40
|
+
↓
|
|
41
|
+
5. Testes
|
|
42
|
+
↓
|
|
43
|
+
6. Deploy
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## Execução
|
|
49
|
+
|
|
50
|
+
### Passo 1: Coleta de Informações
|
|
51
|
+
|
|
52
|
+
**Perguntar ao usuário:**
|
|
53
|
+
|
|
54
|
+
```markdown
|
|
55
|
+
🆕 **Nova Feature**
|
|
56
|
+
|
|
57
|
+
1. Descreva a funcionalidade a ser adicionada:
|
|
58
|
+
[Exemplo: Sistema de notificações push para usuários]
|
|
59
|
+
|
|
60
|
+
2. Qual o impacto estimado?
|
|
61
|
+
- **baixo**: Pequena mudança, sem impacto em arquitetura
|
|
62
|
+
- **médio**: Mudança moderada, pode afetar alguns módulos
|
|
63
|
+
- **alto**: Grande mudança, afeta arquitetura core
|
|
64
|
+
|
|
65
|
+
Escolha: [baixo/médio/alto]
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
**Se forneceu argumentos:**
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
/mcp-feature Sistema de notificações push
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
→ Usar como descrição, pedir apenas impacto
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
### Passo 2: Iniciar Fluxo de Feature
|
|
79
|
+
|
|
80
|
+
```typescript
|
|
81
|
+
await mcp_maestro_nova_feature({
|
|
82
|
+
descricao: "[descrição fornecida]",
|
|
83
|
+
impacto_estimado: "[baixo/médio/alto]"
|
|
84
|
+
});
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
**MCP cria contexto separado para a feature e retorna:**
|
|
88
|
+
|
|
89
|
+
```json
|
|
90
|
+
{
|
|
91
|
+
"feature_id": "FEAT-001",
|
|
92
|
+
"fases": [
|
|
93
|
+
"Análise de Impacto",
|
|
94
|
+
"Refinamento",
|
|
95
|
+
"Design",
|
|
96
|
+
"Implementação",
|
|
97
|
+
"Testes",
|
|
98
|
+
"Deploy"
|
|
99
|
+
],
|
|
100
|
+
"fase_atual": 1
|
|
101
|
+
}
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
### Passo 3: Fase 1 - Análise de Impacto
|
|
107
|
+
|
|
108
|
+
**Apresentar:**
|
|
109
|
+
|
|
110
|
+
```markdown
|
|
111
|
+
✅ **Fluxo de Feature Iniciado** (FEAT-001)
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
🎯 **Fase 1/6: Análise de Impacto**
|
|
116
|
+
🤖 **Especialista:** Arquitetura de Software
|
|
117
|
+
|
|
118
|
+
## Análise de Impacto
|
|
119
|
+
|
|
120
|
+
Antes de implementar, vamos analisar:
|
|
121
|
+
|
|
122
|
+
1. **Modelo de Dados** - Novas entidades ou alterações?
|
|
123
|
+
- Tabelas afetadas:
|
|
124
|
+
- Novos campos:
|
|
125
|
+
- Relacionamentos:
|
|
126
|
+
|
|
127
|
+
2. **APIs** - Novos endpoints ou mudanças?
|
|
128
|
+
- Endpoints novos:
|
|
129
|
+
- Endpoints modificados:
|
|
130
|
+
- Breaking changes:
|
|
131
|
+
|
|
132
|
+
3. **Arquitetura** - Novos serviços ou refatorações?
|
|
133
|
+
- Novos módulos:
|
|
134
|
+
- Dependências:
|
|
135
|
+
- Integrações externas:
|
|
136
|
+
|
|
137
|
+
4. **Frontend** - Componentes e páginas?
|
|
138
|
+
- Novos componentes:
|
|
139
|
+
- Páginas afetadas:
|
|
140
|
+
- Mudanças de UX:
|
|
141
|
+
|
|
142
|
+
Vamos começar. Que **entidades** ou **tabelas** serão afetadas?
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
### Passo 4: Avançar Entre Fases (Frontend-First)
|
|
148
|
+
|
|
149
|
+
**Usar `/mcp-next` para cada fase:**
|
|
150
|
+
|
|
151
|
+
```
|
|
152
|
+
Fase 1: Análise ✅
|
|
153
|
+
↓ /mcp-next
|
|
154
|
+
Fase 2: Requisitos ✅
|
|
155
|
+
↓ /mcp-next
|
|
156
|
+
Fase 3: Design ✅
|
|
157
|
+
✓ Gera: Contrato de API (OpenAPI)
|
|
158
|
+
↓ /mcp-next
|
|
159
|
+
Fase 4: Implementação
|
|
160
|
+
├─ US-001-CONT (Contrato) ✅
|
|
161
|
+
├─ US-001-FE (Frontend) 🔄 ← Paralelo
|
|
162
|
+
├─ US-001-BE (Backend) 🔄 ← Paralelo
|
|
163
|
+
└─ INT-001 (Integração) ⏳ ← Após FE+BE
|
|
164
|
+
↓ /mcp-next
|
|
165
|
+
Fase 5: Testes ✅
|
|
166
|
+
↓ /mcp-next
|
|
167
|
+
Fase 6: Deploy ✅
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
**Protocolo Frontend-First:**
|
|
171
|
+
|
|
172
|
+
1. **Contrato primeiro** (CONT-001)
|
|
173
|
+
- Gera OpenAPI YAML
|
|
174
|
+
- Gera types para FE e BE
|
|
175
|
+
- Gera mock server
|
|
176
|
+
|
|
177
|
+
2. **FE e BE em paralelo**
|
|
178
|
+
- Frontend desenvolve contra mock
|
|
179
|
+
- Backend implementa contrato
|
|
180
|
+
- Ambos seguem types gerados
|
|
181
|
+
|
|
182
|
+
3. **Integração no final**
|
|
183
|
+
- Remove mocks
|
|
184
|
+
- Conecta FE com BE real
|
|
185
|
+
- Testes E2E
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
### Passo 5: Implementar História
|
|
190
|
+
|
|
191
|
+
**Na Fase 4 (Implementação):**
|
|
192
|
+
|
|
193
|
+
```typescript
|
|
194
|
+
// Contrato
|
|
195
|
+
await mcp_maestro_implementar_historia({
|
|
196
|
+
historia_id: "US-001-CONT",
|
|
197
|
+
modo: "iniciar"
|
|
198
|
+
});
|
|
199
|
+
|
|
200
|
+
// Frontend (pode iniciar em paralelo após contrato)
|
|
201
|
+
await mcp_maestro_implementar_historia({
|
|
202
|
+
historia_id: "US-001-FE",
|
|
203
|
+
modo: "iniciar"
|
|
204
|
+
});
|
|
205
|
+
|
|
206
|
+
// Backend (pode iniciar em paralelo após contrato)
|
|
207
|
+
await mcp_maestro_implementar_historia({
|
|
208
|
+
historia_id: "US-001-BE",
|
|
209
|
+
modo: "iniciar"
|
|
210
|
+
});
|
|
211
|
+
|
|
212
|
+
// Integração (somente após FE e BE finalizados)
|
|
213
|
+
await mcp_maestro_implementar_historia({
|
|
214
|
+
historia_id: "INT-001",
|
|
215
|
+
modo: "iniciar"
|
|
216
|
+
});
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
---
|
|
220
|
+
|
|
221
|
+
## Exemplos de Uso
|
|
222
|
+
|
|
223
|
+
### Exemplo 1: Feature Simples (Impacto Baixo)
|
|
224
|
+
|
|
225
|
+
```
|
|
226
|
+
User: /mcp-feature Adicionar filtro de data na listagem de pedidos
|
|
227
|
+
|
|
228
|
+
AI: Qual o impacto estimado? (baixo/médio/alto)
|
|
229
|
+
|
|
230
|
+
User: baixo
|
|
231
|
+
|
|
232
|
+
AI: ✅ Fluxo de Feature Iniciado (FEAT-001)
|
|
233
|
+
|
|
234
|
+
🎯 Fase 1/6: Análise de Impacto
|
|
235
|
+
|
|
236
|
+
## Análise Rápida
|
|
237
|
+
|
|
238
|
+
Impacto baixo detectado. Feature simples:
|
|
239
|
+
- Frontend: Adicionar DatePicker component
|
|
240
|
+
- Backend: Adicionar parâmetro `?date_from` e `?date_to` em GET /orders
|
|
241
|
+
- Banco: Sem mudanças (usa índice existente)
|
|
242
|
+
|
|
243
|
+
Correto? Vamos para refinamento?
|
|
244
|
+
|
|
245
|
+
User: Sim
|
|
246
|
+
|
|
247
|
+
AI: [Avança para Fase 2 com /mcp-next]
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
### Exemplo 2: Feature Complexa (Impacto Alto)
|
|
251
|
+
|
|
252
|
+
```
|
|
253
|
+
User: /mcp-feature Sistema de notificações push em tempo real
|
|
254
|
+
|
|
255
|
+
AI: Qual o impacto estimado?
|
|
256
|
+
|
|
257
|
+
User: alto
|
|
258
|
+
|
|
259
|
+
AI: ✅ Fluxo de Feature Iniciado (FEAT-002)
|
|
260
|
+
|
|
261
|
+
🎯 Fase 1/6: Análise de Impacto
|
|
262
|
+
|
|
263
|
+
## Análise Profunda Necessária
|
|
264
|
+
|
|
265
|
+
Impacto alto detectado. Feature complexa:
|
|
266
|
+
|
|
267
|
+
**Modelo de Dados:**
|
|
268
|
+
- Nova tabela: `notifications`
|
|
269
|
+
- Novo relacionamento: `users` ← `notifications`
|
|
270
|
+
|
|
271
|
+
**Arquitetura:**
|
|
272
|
+
- Novo serviço: `NotificationService`
|
|
273
|
+
- Integração: Firebase Cloud Messaging (FCM)
|
|
274
|
+
- Infraestrutura: WebSocket server
|
|
275
|
+
|
|
276
|
+
**Frontend:**
|
|
277
|
+
- Service Worker para push
|
|
278
|
+
- Componente NotificationBell
|
|
279
|
+
- Página de configurações
|
|
280
|
+
|
|
281
|
+
**Backend:**
|
|
282
|
+
- Endpoints: POST /notifications, GET /notifications
|
|
283
|
+
- Job: NotificationDispatcherJob
|
|
284
|
+
|
|
285
|
+
Vamos detalhar cada parte. Começando pelo modelo de dados...
|
|
286
|
+
```
|
|
287
|
+
|
|
288
|
+
---
|
|
289
|
+
|
|
290
|
+
## Comandos Relacionados
|
|
291
|
+
|
|
292
|
+
```
|
|
293
|
+
/mcp-feature [descrição] → Inicia fluxo de feature
|
|
294
|
+
/mcp-next → Avança entre fases
|
|
295
|
+
/mcp-status → Ver status da feature
|
|
296
|
+
/mcp-debug → Se bug aparecer durante feature
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
---
|
|
300
|
+
|
|
301
|
+
## Estrutura de Arquivos Gerados
|
|
302
|
+
|
|
303
|
+
```
|
|
304
|
+
docs/
|
|
305
|
+
├── features/
|
|
306
|
+
│ └── FEAT-001-filtro-data/
|
|
307
|
+
│ ├── 01-impacto.md
|
|
308
|
+
│ ├── 02-requisitos.md
|
|
309
|
+
│ ├── 03-design.md
|
|
310
|
+
│ ├── 04-contrato.yaml
|
|
311
|
+
│ ├── 05-plano-testes.md
|
|
312
|
+
│ └── 06-deploy-plan.md
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
---
|
|
316
|
+
|
|
317
|
+
## Regras Críticas
|
|
318
|
+
|
|
319
|
+
### ✅ SEMPRE:
|
|
320
|
+
|
|
321
|
+
1. Fazer análise de impacto antes de implementar
|
|
322
|
+
2. Gerar contrato de API antes de FE/BE
|
|
323
|
+
3. Testar integração após FE+BE prontos
|
|
324
|
+
4. Documentar mudanças em ADR se impacto alto
|
|
325
|
+
|
|
326
|
+
### ❌ NUNCA:
|
|
327
|
+
|
|
328
|
+
1. Pular análise de impacto (Fase 1)
|
|
329
|
+
2. Implementar FE/BE antes do contrato
|
|
330
|
+
3. Fazer breaking changes sem versionamento de API
|
|
331
|
+
4. Deploy sem testes E2E
|
|
332
|
+
|
|
333
|
+
---
|
|
334
|
+
|
|
335
|
+
## Frontend-First Protocol
|
|
336
|
+
|
|
337
|
+
> [!TIP]
|
|
338
|
+
> **Para features que envolvem Frontend + Backend:**
|
|
339
|
+
>
|
|
340
|
+
> ```
|
|
341
|
+
> 1. CONT (Contrato API)
|
|
342
|
+
> ├── Gera: openapi.yaml
|
|
343
|
+
> ├── Gera: types (FE + BE)
|
|
344
|
+
> └── Gera: Mock Server
|
|
345
|
+
>
|
|
346
|
+
> 2. Paralelo ⚡
|
|
347
|
+
> ├── FE (contra mock)
|
|
348
|
+
> └── BE (implementa contrato)
|
|
349
|
+
>
|
|
350
|
+
> 3. INT (Integração)
|
|
351
|
+
> ├── Remove mocks
|
|
352
|
+
> ├── Conecta FE ↔ BE real
|
|
353
|
+
> └── Testes E2E
|
|
354
|
+
> ```
|
|
355
|
+
|
|
356
|
+
---
|
|
357
|
+
|
|
358
|
+
## Troubleshooting
|
|
359
|
+
|
|
360
|
+
### Feature Muito Grande
|
|
361
|
+
|
|
362
|
+
**Sintoma:** Fase de implementação com 20+ histórias
|
|
363
|
+
|
|
364
|
+
**Solução:** Quebrar em features menores (épicos):
|
|
365
|
+
|
|
366
|
+
```
|
|
367
|
+
FEAT-001: Sistema de Notificações (Épico)
|
|
368
|
+
├─ FEAT-001-A: Backend (API + Jobs)
|
|
369
|
+
├─ FEAT-001-B: Frontend (UI)
|
|
370
|
+
└─ FEAT-001-C: Integração (Push)
|
|
371
|
+
|
|
372
|
+
Implementar um por vez com /mcp-feature
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
### Conflito com Feature em Andamento
|
|
376
|
+
|
|
377
|
+
**Sintoma:** Duas features modificando mesma área
|
|
378
|
+
|
|
379
|
+
**Solução:** Finalizar uma antes de iniciar outra, ou:
|
|
380
|
+
|
|
381
|
+
```
|
|
382
|
+
1. Criar branch separada para cada feature
|
|
383
|
+
2. Definir ordem de merge (feature A → main → feature B merge)
|
|
384
|
+
3. Coordenar com /mcp-status para ver dependências
|
|
385
|
+
```
|