create-genia-os 2.1.0 → 2.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 +154 -106
- package/bin/index.js +240 -240
- package/package.json +42 -37
- package/template/.claude/CLAUDE.md +215 -215
- package/template/.claude/agent-memory/analyst/MEMORY.md +20 -20
- package/template/.claude/agent-memory/architect/MEMORY.md +20 -20
- package/template/.claude/agent-memory/dev/MEMORY.md +20 -20
- package/template/.claude/agent-memory/devops/MEMORY.md +20 -20
- package/template/.claude/agent-memory/pm/MEMORY.md +20 -20
- package/template/.claude/agent-memory/po/MEMORY.md +20 -20
- package/template/.claude/agent-memory/qa/MEMORY.md +20 -20
- package/template/.claude/agent-memory/reviewer/MEMORY.md +20 -20
- package/template/.claude/agent-memory/sm/MEMORY.md +20 -20
- package/template/.claude/hooks/enforce-git-push-authority.py +70 -70
- package/template/.claude/hooks/metrics-tracker.cjs +65 -0
- package/template/.claude/hooks/precompact-session-digest.cjs +87 -87
- package/template/.claude/hooks/sql-governance.py +65 -65
- package/template/.claude/hooks/synapse-engine.cjs +122 -122
- package/template/.claude/hooks/write-path-validation.py +59 -59
- package/template/.claude/rules/agent-authority.md +39 -39
- package/template/.claude/rules/agent-handoff.md +71 -71
- package/template/.claude/rules/agent-memory.md +61 -61
- package/template/.claude/rules/ids-principles.md +52 -52
- package/template/.claude/rules/mcp-usage.md +49 -49
- package/template/.claude/rules/new-project.md +157 -0
- package/template/.claude/rules/story-lifecycle.md +87 -87
- package/template/.claude/rules/workflow-execution.md +68 -68
- package/template/.claude/settings.json +58 -58
- package/template/.claude/settings.local.json +14 -14
- package/template/.genia/CONSTITUTION.md +129 -129
- package/template/.genia/contexts/api-patterns.md +134 -134
- package/template/.genia/contexts/nextjs-react.md +210 -210
- package/template/.genia/contexts/projeto.md +18 -18
- package/template/.genia/contexts/supabase.md +152 -152
- package/template/.genia/contexts/whatsapp-cloud.md +176 -176
- package/template/.genia/core-config.yaml +192 -192
- package/template/.genia/development/agents/analyst.md +138 -138
- package/template/.genia/development/agents/architect.md +171 -171
- package/template/.genia/development/agents/dev.md +160 -160
- package/template/.genia/development/agents/devops.md +200 -200
- package/template/.genia/development/agents/pm.md +142 -142
- package/template/.genia/development/agents/po.md +165 -165
- package/template/.genia/development/agents/qa.md +183 -183
- package/template/.genia/development/agents/reviewer.md +198 -198
- package/template/.genia/development/agents/sm.md +230 -230
- package/template/.genia/development/checklists/architecture-review.md +189 -189
- package/template/.genia/development/checklists/pre-commit.md +205 -205
- package/template/.genia/development/checklists/pre-deploy.md +230 -230
- package/template/.genia/development/checklists/qa-gate.md +216 -216
- package/template/.genia/development/checklists/story-dod.md +155 -155
- package/template/.genia/development/tasks/code-review.md +197 -197
- package/template/.genia/development/tasks/criar-prd.md +170 -170
- package/template/.genia/development/tasks/criar-spec.md +188 -188
- package/template/.genia/development/tasks/criar-story.md +185 -185
- package/template/.genia/development/tasks/debug-sistematico.md +230 -230
- package/template/.genia/development/tasks/dev-implement.md +199 -199
- package/template/.genia/development/tasks/qa-review.md +224 -224
- package/template/.genia/development/workflows/brownfield.md +178 -178
- package/template/.genia/development/workflows/delivery.md +208 -208
- package/template/.genia/development/workflows/development.md +189 -189
- package/template/.genia/development/workflows/greenfield.md +166 -166
- package/template/.genia/development/workflows/planning.md +167 -167
- package/template/.genia/development/workflows/qa-loop.md +179 -179
- package/template/.genia/development/workflows/spec-pipeline.md +192 -192
- package/template/.genia/development/workflows/story-development-cycle.md +252 -252
- package/template/.genia/guidelines/clean-code.md +98 -98
- package/template/.genia/guidelines/testing.md +176 -176
- package/template/.genia/skills/design/canvas-design.md +109 -109
- package/template/.genia/skills/design/frontend-design.md +140 -140
- package/template/.genia/skills/dev/mcp-builder.md +172 -172
- package/template/.genia/skills/dev/webapp-testing.md +150 -150
- package/template/.genia/skills/documents/docx.md +153 -153
- package/template/.genia/skills/documents/pdf.md +134 -134
- package/template/.genia/skills/documents/pptx.md +118 -118
- package/template/.genia/skills/documents/xlsx.md +140 -140
- package/template/.synapse/agent-analyst +8 -8
- package/template/.synapse/agent-architect +8 -8
- package/template/.synapse/agent-dev +8 -8
- package/template/.synapse/agent-devops +8 -8
- package/template/.synapse/agent-pm +8 -8
- package/template/.synapse/agent-po +7 -7
- package/template/.synapse/agent-qa +8 -8
- package/template/.synapse/agent-reviewer +7 -7
- package/template/.synapse/agent-sm +7 -7
- package/template/.synapse/constitution +7 -7
- package/template/.synapse/context +8 -8
- package/template/.synapse/global +8 -8
- package/template/.synapse/manifest +14 -14
- package/template/README.md +53 -53
|
@@ -1,188 +1,188 @@
|
|
|
1
|
-
# Task: Criar SPEC-TECNICO
|
|
2
|
-
|
|
3
|
-
> Tarefa executada por @architect após PRD aprovado por @pm e @po.
|
|
4
|
-
> Output: `docs/[projeto]/SPEC-TECNICO.md` + ADRs iniciais
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## Objetivo
|
|
9
|
-
|
|
10
|
-
Criar a especificação técnica completa que traduz os requisitos de negócio do PRD em decisões de arquitetura, tecnologia, estrutura de código e padrões de desenvolvimento. O SPEC-TECNICO é o guia técnico definitivo — qualquer decisão de implementação que não esteja aqui deve ser escalada para @architect antes de ser tomada.
|
|
11
|
-
|
|
12
|
-
---
|
|
13
|
-
|
|
14
|
-
## Pré-requisitos
|
|
15
|
-
|
|
16
|
-
Antes de iniciar, confirme:
|
|
17
|
-
|
|
18
|
-
- [ ] `docs/[projeto]/PRD.md` existe e está aprovado por @pm e @po
|
|
19
|
-
- [ ] @architect leu o PRD completamente
|
|
20
|
-
- [ ] Acesso ao repositório (se brownfield) ou liberdade para definir stack (se greenfield)
|
|
21
|
-
- [ ] Clareza sobre restrições de tecnologia (se houver imposições do cliente)
|
|
22
|
-
|
|
23
|
-
---
|
|
24
|
-
|
|
25
|
-
## Passos de Execução
|
|
26
|
-
|
|
27
|
-
### Passo 1 — Análise do PRD
|
|
28
|
-
1. Leia o PRD completamente e anote:
|
|
29
|
-
- Requisitos funcionais por épico
|
|
30
|
-
- Requisitos não-funcionais (desempenho, segurança, disponibilidade)
|
|
31
|
-
- Integrações necessárias com sistemas externos
|
|
32
|
-
- Restrições tecnológicas declaradas
|
|
33
|
-
2. Identifique perguntas técnicas abertas e resolva com @pm antes de continuar
|
|
34
|
-
|
|
35
|
-
### Passo 2 — Definição de Stack
|
|
36
|
-
1. Para cada camada da stack, avalie opções e registre decisão:
|
|
37
|
-
- **Frontend:** React, Next.js, Vue, etc.
|
|
38
|
-
- **Backend:** Node.js, Python, Go, etc.
|
|
39
|
-
- **Banco de dados:** PostgreSQL, MongoDB, Supabase, etc.
|
|
40
|
-
- **Autenticação:** NextAuth, Clerk, Auth0, etc.
|
|
41
|
-
- **Infraestrutura:** Vercel, Railway, AWS, etc.
|
|
42
|
-
- **Cache:** Redis, memória, etc. (se necessário)
|
|
43
|
-
2. Para cada escolha, justifique explicitamente (não apenas "é popular")
|
|
44
|
-
3. Registre alternativas consideradas e por que foram descartadas
|
|
45
|
-
4. Crie ADRs para as decisões mais relevantes
|
|
46
|
-
|
|
47
|
-
### Passo 3 — Arquitetura de Alto Nível
|
|
48
|
-
1. Defina os componentes principais do sistema
|
|
49
|
-
2. Descreva como cada componente se comunica (REST, GraphQL, WebSocket, etc.)
|
|
50
|
-
3. Identifique boundaries de domínio (onde uma responsabilidade termina e outra começa)
|
|
51
|
-
4. Documente o fluxo dos dados principais
|
|
52
|
-
5. Escreva um diagrama textual (ou ASCII) da arquitetura
|
|
53
|
-
|
|
54
|
-
### Passo 4 — Estrutura de Pastas
|
|
55
|
-
1. Defina a estrutura completa de pastas do projeto:
|
|
56
|
-
```
|
|
57
|
-
src/
|
|
58
|
-
├── app/ # pages e rotas (Next.js)
|
|
59
|
-
├── components/ # componentes reutilizáveis
|
|
60
|
-
│ ├── ui/ # componentes base (Button, Input, etc.)
|
|
61
|
-
│ └── [domain]/ # componentes de domínio
|
|
62
|
-
├── lib/ # utilitários e helpers
|
|
63
|
-
├── hooks/ # React hooks customizados
|
|
64
|
-
├── services/ # chamadas a APIs externas
|
|
65
|
-
├── types/ # tipagens TypeScript
|
|
66
|
-
├── contexts/ # React Contexts
|
|
67
|
-
└── schemas/ # validação com Zod
|
|
68
|
-
```
|
|
69
|
-
2. Justifique escolhas não-óbvias
|
|
70
|
-
3. Configure `tsconfig.json` com paths absolutos (`@/`)
|
|
71
|
-
|
|
72
|
-
### Passo 5 — Modelagem de Dados
|
|
73
|
-
1. Defina as entidades principais do domínio
|
|
74
|
-
2. Para cada entidade: campos, tipos, relacionamentos, constraints
|
|
75
|
-
3. Defina estratégia de migração de banco (ferramentas, convenções)
|
|
76
|
-
4. Documente índices importantes para performance
|
|
77
|
-
5. Identifique dados sensíveis e como serão protegidos (LGPD/GDPR)
|
|
78
|
-
|
|
79
|
-
### Passo 6 — APIs e Contratos
|
|
80
|
-
1. Para cada endpoint/operação relevante, defina:
|
|
81
|
-
- Método HTTP e path
|
|
82
|
-
- Request body (campos, tipos, validações)
|
|
83
|
-
- Response body (campos, tipos)
|
|
84
|
-
- Códigos de status e cenários de erro
|
|
85
|
-
2. Defina convenções de nomenclatura de API
|
|
86
|
-
3. Documente integrações com APIs externas (webhook, polling, SDK)
|
|
87
|
-
|
|
88
|
-
### Passo 7 — Autenticação e Autorização
|
|
89
|
-
1. Defina o mecanismo de autenticação escolhido
|
|
90
|
-
2. Mapeie os perfis/roles de usuário
|
|
91
|
-
3. Defina regras de autorização por role
|
|
92
|
-
4. Documente estratégia de sessão (JWT, cookie, etc.)
|
|
93
|
-
|
|
94
|
-
### Passo 8 — Estratégia de Testes
|
|
95
|
-
1. Defina a pirâmide de testes:
|
|
96
|
-
- Unitários: ferramentas, o que testar, cobertura mínima
|
|
97
|
-
- Integração: quais fluxos, ferramentas
|
|
98
|
-
- E2E: ferramentas (Cypress, Playwright), fluxos críticos
|
|
99
|
-
2. Configure as ferramentas de teste no projeto
|
|
100
|
-
3. Defina cobertura mínima aceitável (GEN.IA OS default: 80%)
|
|
101
|
-
|
|
102
|
-
### Passo 9 — Segurança e Boas Práticas
|
|
103
|
-
1. Defina como secrets são gerenciados (variáveis de ambiente, Vault)
|
|
104
|
-
2. Liste as vulnerabilidades OWASP Top 10 relevantes e como serão mitigadas
|
|
105
|
-
3. Defina política de rate limiting se aplicável
|
|
106
|
-
4. Documente estratégia de logging (sem dados sensíveis nos logs)
|
|
107
|
-
|
|
108
|
-
### Passo 10 — ADRs de Fundação
|
|
109
|
-
Para cada decisão arquitetural importante, crie um ADR:
|
|
110
|
-
- `docs/adr/ADR-001-escolha-de-stack.md`
|
|
111
|
-
- `docs/adr/ADR-002-estrategia-autenticacao.md`
|
|
112
|
-
- `docs/adr/ADR-003-modelagem-de-dados.md`
|
|
113
|
-
- [etc.]
|
|
114
|
-
|
|
115
|
-
---
|
|
116
|
-
|
|
117
|
-
## Critérios de Saída
|
|
118
|
-
|
|
119
|
-
O SPEC-TECNICO está pronto quando:
|
|
120
|
-
|
|
121
|
-
- [ ] Stack definida e justificada para cada camada
|
|
122
|
-
- [ ] Arquitetura de alto nível documentada
|
|
123
|
-
- [ ] Estrutura de pastas definida
|
|
124
|
-
- [ ] `tsconfig.json` com paths absolutos configurado
|
|
125
|
-
- [ ] Modelagem de dados completa
|
|
126
|
-
- [ ] APIs e contratos documentados (ao menos os principais)
|
|
127
|
-
- [ ] Autenticação e autorização especificadas
|
|
128
|
-
- [ ] Estratégia de testes definida com cobertura mínima
|
|
129
|
-
- [ ] Considerações de segurança documentadas
|
|
130
|
-
- [ ] ADRs iniciais criados (mínimo 3)
|
|
131
|
-
- [ ] @qa revisou criticamente o spec (Fase 5 do Spec Pipeline)
|
|
132
|
-
- [ ] Documento salvo em `docs/[projeto]/SPEC-TECNICO.md`
|
|
133
|
-
|
|
134
|
-
---
|
|
135
|
-
|
|
136
|
-
## Output — Estrutura do SPEC-TECNICO.md
|
|
137
|
-
|
|
138
|
-
```markdown
|
|
139
|
-
# Especificação Técnica — [Nome do Projeto]
|
|
140
|
-
Versão: 1.0 | Arquiteta: Arqui (@architect) | Data: YYYY-MM-DD
|
|
141
|
-
Status: Rascunho | Em Revisão | Aprovado
|
|
142
|
-
|
|
143
|
-
## 1. Visão Técnica
|
|
144
|
-
### Objetivos Técnicos
|
|
145
|
-
### Princípios Guias de Arquitetura
|
|
146
|
-
|
|
147
|
-
## 2. Stack Tecnológica
|
|
148
|
-
| Camada | Tecnologia | Versão | Justificativa |
|
|
149
|
-
|--------|-----------|--------|--------------|
|
|
150
|
-
|
|
151
|
-
## 3. Arquitetura de Alto Nível
|
|
152
|
-
[Diagrama textual/ASCII]
|
|
153
|
-
[Descrição dos componentes e comunicações]
|
|
154
|
-
|
|
155
|
-
## 4. Estrutura de Pastas
|
|
156
|
-
[Árvore de pastas comentada]
|
|
157
|
-
|
|
158
|
-
## 5. Modelagem de Dados
|
|
159
|
-
[Entidades, campos e relacionamentos]
|
|
160
|
-
|
|
161
|
-
## 6. APIs e Contratos
|
|
162
|
-
[Endpoints, request/response, erros]
|
|
163
|
-
|
|
164
|
-
## 7. Autenticação e Autorização
|
|
165
|
-
[Mecanismo, roles, regras]
|
|
166
|
-
|
|
167
|
-
## 8. Integrações Externas
|
|
168
|
-
[APIs de terceiros, webhooks, SDKs]
|
|
169
|
-
|
|
170
|
-
## 9. Estratégia de Testes
|
|
171
|
-
[Pirâmide, ferramentas, cobertura]
|
|
172
|
-
|
|
173
|
-
## 10. Segurança
|
|
174
|
-
[Gestão de secrets, OWASP, logging]
|
|
175
|
-
|
|
176
|
-
## 11. Requisitos Não-Funcionais
|
|
177
|
-
| RNF | Requisito | Como Medir |
|
|
178
|
-
|-----|----------|-----------|
|
|
179
|
-
|
|
180
|
-
## 12. ADRs
|
|
181
|
-
[Links para os ADRs criados]
|
|
182
|
-
|
|
183
|
-
## 13. Histórico de Versões
|
|
184
|
-
```
|
|
185
|
-
|
|
186
|
-
---
|
|
187
|
-
|
|
188
|
-
*GEN.IA OS v1.0 — {{TEAM_NAME}} — {{CREATOR_NAME}}*
|
|
1
|
+
# Task: Criar SPEC-TECNICO
|
|
2
|
+
|
|
3
|
+
> Tarefa executada por @architect após PRD aprovado por @pm e @po.
|
|
4
|
+
> Output: `docs/[projeto]/SPEC-TECNICO.md` + ADRs iniciais
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Objetivo
|
|
9
|
+
|
|
10
|
+
Criar a especificação técnica completa que traduz os requisitos de negócio do PRD em decisões de arquitetura, tecnologia, estrutura de código e padrões de desenvolvimento. O SPEC-TECNICO é o guia técnico definitivo — qualquer decisão de implementação que não esteja aqui deve ser escalada para @architect antes de ser tomada.
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## Pré-requisitos
|
|
15
|
+
|
|
16
|
+
Antes de iniciar, confirme:
|
|
17
|
+
|
|
18
|
+
- [ ] `docs/[projeto]/PRD.md` existe e está aprovado por @pm e @po
|
|
19
|
+
- [ ] @architect leu o PRD completamente
|
|
20
|
+
- [ ] Acesso ao repositório (se brownfield) ou liberdade para definir stack (se greenfield)
|
|
21
|
+
- [ ] Clareza sobre restrições de tecnologia (se houver imposições do cliente)
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## Passos de Execução
|
|
26
|
+
|
|
27
|
+
### Passo 1 — Análise do PRD
|
|
28
|
+
1. Leia o PRD completamente e anote:
|
|
29
|
+
- Requisitos funcionais por épico
|
|
30
|
+
- Requisitos não-funcionais (desempenho, segurança, disponibilidade)
|
|
31
|
+
- Integrações necessárias com sistemas externos
|
|
32
|
+
- Restrições tecnológicas declaradas
|
|
33
|
+
2. Identifique perguntas técnicas abertas e resolva com @pm antes de continuar
|
|
34
|
+
|
|
35
|
+
### Passo 2 — Definição de Stack
|
|
36
|
+
1. Para cada camada da stack, avalie opções e registre decisão:
|
|
37
|
+
- **Frontend:** React, Next.js, Vue, etc.
|
|
38
|
+
- **Backend:** Node.js, Python, Go, etc.
|
|
39
|
+
- **Banco de dados:** PostgreSQL, MongoDB, Supabase, etc.
|
|
40
|
+
- **Autenticação:** NextAuth, Clerk, Auth0, etc.
|
|
41
|
+
- **Infraestrutura:** Vercel, Railway, AWS, etc.
|
|
42
|
+
- **Cache:** Redis, memória, etc. (se necessário)
|
|
43
|
+
2. Para cada escolha, justifique explicitamente (não apenas "é popular")
|
|
44
|
+
3. Registre alternativas consideradas e por que foram descartadas
|
|
45
|
+
4. Crie ADRs para as decisões mais relevantes
|
|
46
|
+
|
|
47
|
+
### Passo 3 — Arquitetura de Alto Nível
|
|
48
|
+
1. Defina os componentes principais do sistema
|
|
49
|
+
2. Descreva como cada componente se comunica (REST, GraphQL, WebSocket, etc.)
|
|
50
|
+
3. Identifique boundaries de domínio (onde uma responsabilidade termina e outra começa)
|
|
51
|
+
4. Documente o fluxo dos dados principais
|
|
52
|
+
5. Escreva um diagrama textual (ou ASCII) da arquitetura
|
|
53
|
+
|
|
54
|
+
### Passo 4 — Estrutura de Pastas
|
|
55
|
+
1. Defina a estrutura completa de pastas do projeto:
|
|
56
|
+
```
|
|
57
|
+
src/
|
|
58
|
+
├── app/ # pages e rotas (Next.js)
|
|
59
|
+
├── components/ # componentes reutilizáveis
|
|
60
|
+
│ ├── ui/ # componentes base (Button, Input, etc.)
|
|
61
|
+
│ └── [domain]/ # componentes de domínio
|
|
62
|
+
├── lib/ # utilitários e helpers
|
|
63
|
+
├── hooks/ # React hooks customizados
|
|
64
|
+
├── services/ # chamadas a APIs externas
|
|
65
|
+
├── types/ # tipagens TypeScript
|
|
66
|
+
├── contexts/ # React Contexts
|
|
67
|
+
└── schemas/ # validação com Zod
|
|
68
|
+
```
|
|
69
|
+
2. Justifique escolhas não-óbvias
|
|
70
|
+
3. Configure `tsconfig.json` com paths absolutos (`@/`)
|
|
71
|
+
|
|
72
|
+
### Passo 5 — Modelagem de Dados
|
|
73
|
+
1. Defina as entidades principais do domínio
|
|
74
|
+
2. Para cada entidade: campos, tipos, relacionamentos, constraints
|
|
75
|
+
3. Defina estratégia de migração de banco (ferramentas, convenções)
|
|
76
|
+
4. Documente índices importantes para performance
|
|
77
|
+
5. Identifique dados sensíveis e como serão protegidos (LGPD/GDPR)
|
|
78
|
+
|
|
79
|
+
### Passo 6 — APIs e Contratos
|
|
80
|
+
1. Para cada endpoint/operação relevante, defina:
|
|
81
|
+
- Método HTTP e path
|
|
82
|
+
- Request body (campos, tipos, validações)
|
|
83
|
+
- Response body (campos, tipos)
|
|
84
|
+
- Códigos de status e cenários de erro
|
|
85
|
+
2. Defina convenções de nomenclatura de API
|
|
86
|
+
3. Documente integrações com APIs externas (webhook, polling, SDK)
|
|
87
|
+
|
|
88
|
+
### Passo 7 — Autenticação e Autorização
|
|
89
|
+
1. Defina o mecanismo de autenticação escolhido
|
|
90
|
+
2. Mapeie os perfis/roles de usuário
|
|
91
|
+
3. Defina regras de autorização por role
|
|
92
|
+
4. Documente estratégia de sessão (JWT, cookie, etc.)
|
|
93
|
+
|
|
94
|
+
### Passo 8 — Estratégia de Testes
|
|
95
|
+
1. Defina a pirâmide de testes:
|
|
96
|
+
- Unitários: ferramentas, o que testar, cobertura mínima
|
|
97
|
+
- Integração: quais fluxos, ferramentas
|
|
98
|
+
- E2E: ferramentas (Cypress, Playwright), fluxos críticos
|
|
99
|
+
2. Configure as ferramentas de teste no projeto
|
|
100
|
+
3. Defina cobertura mínima aceitável (GEN.IA OS default: 80%)
|
|
101
|
+
|
|
102
|
+
### Passo 9 — Segurança e Boas Práticas
|
|
103
|
+
1. Defina como secrets são gerenciados (variáveis de ambiente, Vault)
|
|
104
|
+
2. Liste as vulnerabilidades OWASP Top 10 relevantes e como serão mitigadas
|
|
105
|
+
3. Defina política de rate limiting se aplicável
|
|
106
|
+
4. Documente estratégia de logging (sem dados sensíveis nos logs)
|
|
107
|
+
|
|
108
|
+
### Passo 10 — ADRs de Fundação
|
|
109
|
+
Para cada decisão arquitetural importante, crie um ADR:
|
|
110
|
+
- `docs/adr/ADR-001-escolha-de-stack.md`
|
|
111
|
+
- `docs/adr/ADR-002-estrategia-autenticacao.md`
|
|
112
|
+
- `docs/adr/ADR-003-modelagem-de-dados.md`
|
|
113
|
+
- [etc.]
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## Critérios de Saída
|
|
118
|
+
|
|
119
|
+
O SPEC-TECNICO está pronto quando:
|
|
120
|
+
|
|
121
|
+
- [ ] Stack definida e justificada para cada camada
|
|
122
|
+
- [ ] Arquitetura de alto nível documentada
|
|
123
|
+
- [ ] Estrutura de pastas definida
|
|
124
|
+
- [ ] `tsconfig.json` com paths absolutos configurado
|
|
125
|
+
- [ ] Modelagem de dados completa
|
|
126
|
+
- [ ] APIs e contratos documentados (ao menos os principais)
|
|
127
|
+
- [ ] Autenticação e autorização especificadas
|
|
128
|
+
- [ ] Estratégia de testes definida com cobertura mínima
|
|
129
|
+
- [ ] Considerações de segurança documentadas
|
|
130
|
+
- [ ] ADRs iniciais criados (mínimo 3)
|
|
131
|
+
- [ ] @qa revisou criticamente o spec (Fase 5 do Spec Pipeline)
|
|
132
|
+
- [ ] Documento salvo em `docs/[projeto]/SPEC-TECNICO.md`
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## Output — Estrutura do SPEC-TECNICO.md
|
|
137
|
+
|
|
138
|
+
```markdown
|
|
139
|
+
# Especificação Técnica — [Nome do Projeto]
|
|
140
|
+
Versão: 1.0 | Arquiteta: Arqui (@architect) | Data: YYYY-MM-DD
|
|
141
|
+
Status: Rascunho | Em Revisão | Aprovado
|
|
142
|
+
|
|
143
|
+
## 1. Visão Técnica
|
|
144
|
+
### Objetivos Técnicos
|
|
145
|
+
### Princípios Guias de Arquitetura
|
|
146
|
+
|
|
147
|
+
## 2. Stack Tecnológica
|
|
148
|
+
| Camada | Tecnologia | Versão | Justificativa |
|
|
149
|
+
|--------|-----------|--------|--------------|
|
|
150
|
+
|
|
151
|
+
## 3. Arquitetura de Alto Nível
|
|
152
|
+
[Diagrama textual/ASCII]
|
|
153
|
+
[Descrição dos componentes e comunicações]
|
|
154
|
+
|
|
155
|
+
## 4. Estrutura de Pastas
|
|
156
|
+
[Árvore de pastas comentada]
|
|
157
|
+
|
|
158
|
+
## 5. Modelagem de Dados
|
|
159
|
+
[Entidades, campos e relacionamentos]
|
|
160
|
+
|
|
161
|
+
## 6. APIs e Contratos
|
|
162
|
+
[Endpoints, request/response, erros]
|
|
163
|
+
|
|
164
|
+
## 7. Autenticação e Autorização
|
|
165
|
+
[Mecanismo, roles, regras]
|
|
166
|
+
|
|
167
|
+
## 8. Integrações Externas
|
|
168
|
+
[APIs de terceiros, webhooks, SDKs]
|
|
169
|
+
|
|
170
|
+
## 9. Estratégia de Testes
|
|
171
|
+
[Pirâmide, ferramentas, cobertura]
|
|
172
|
+
|
|
173
|
+
## 10. Segurança
|
|
174
|
+
[Gestão de secrets, OWASP, logging]
|
|
175
|
+
|
|
176
|
+
## 11. Requisitos Não-Funcionais
|
|
177
|
+
| RNF | Requisito | Como Medir |
|
|
178
|
+
|-----|----------|-----------|
|
|
179
|
+
|
|
180
|
+
## 12. ADRs
|
|
181
|
+
[Links para os ADRs criados]
|
|
182
|
+
|
|
183
|
+
## 13. Histórico de Versões
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
---
|
|
187
|
+
|
|
188
|
+
*GEN.IA OS v1.0 — {{TEAM_NAME}} — {{CREATOR_NAME}}*
|