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,199 +1,199 @@
|
|
|
1
|
-
# Task: Dev — Implementar Story
|
|
2
|
-
|
|
3
|
-
> Tarefa executada por @dev. Transforma uma story validada em código funcional.
|
|
4
|
-
> Pré-requisito: story com status Ready (aprovada por @po).
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## Objetivo
|
|
9
|
-
|
|
10
|
-
Implementar o código necessário para satisfazer todos os Acceptance Criteria da story, seguindo os padrões arquiteturais definidos no SPEC-TECNICO.md. Entregar código limpo, testado e commitado localmente, pronto para revisão de @qa.
|
|
11
|
-
|
|
12
|
-
---
|
|
13
|
-
|
|
14
|
-
## Pré-requisitos
|
|
15
|
-
|
|
16
|
-
Antes de iniciar, confirme:
|
|
17
|
-
|
|
18
|
-
- [ ] Story tem status `Ready` (aprovada por @po)
|
|
19
|
-
- [ ] SPEC-TECNICO.md lido e compreendido
|
|
20
|
-
- [ ] Branch `main` local está atualizado (`git pull`)
|
|
21
|
-
- [ ] Ambiente de desenvolvimento funcionando (dependências instaladas, env vars configuradas)
|
|
22
|
-
- [ ] Clareza sobre todos os Acceptance Criteria (se houver dúvida, consultar @po ANTES de começar)
|
|
23
|
-
|
|
24
|
-
---
|
|
25
|
-
|
|
26
|
-
## Passos de Execução
|
|
27
|
-
|
|
28
|
-
### Passo 1 — Leitura e Preparação
|
|
29
|
-
1. Leia a story completa: User Story, contexto, todos os ACs, não-escopo
|
|
30
|
-
2. Leia as seções relevantes do SPEC-TECNICO.md
|
|
31
|
-
3. Identifique todos os arquivos que precisarão ser criados ou modificados
|
|
32
|
-
4. Se houver qualquer dúvida sobre o comportamento esperado: perguntar para @po AGORA (não depois de implementar errado)
|
|
33
|
-
5. Estime internamente o tempo necessário e comunique para @sm se houver risco de não entregar no sprint
|
|
34
|
-
|
|
35
|
-
### Passo 2 — Criar Branch
|
|
36
|
-
```bash
|
|
37
|
-
git checkout main
|
|
38
|
-
git pull origin main
|
|
39
|
-
git checkout -b feat/STORY-XXX-descricao-kebab-case
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
Exemplos de nomes de branch:
|
|
43
|
-
- `feat/STORY-001-tela-de-login`
|
|
44
|
-
- `fix/STORY-015-corrigir-validacao-email`
|
|
45
|
-
- `refactor/STORY-022-extrair-servico-autenticacao`
|
|
46
|
-
|
|
47
|
-
### Passo 3 — Planejamento da Implementação
|
|
48
|
-
Antes de escrever código, faça um planejamento mental ou escrito:
|
|
49
|
-
1. Quais componentes/funções precisam ser criados?
|
|
50
|
-
2. Quais precisam ser modificados?
|
|
51
|
-
3. Há alguma dependência técnica (biblioteca nova, configuração)?
|
|
52
|
-
4. Qual a ordem lógica de implementação?
|
|
53
|
-
|
|
54
|
-
### Passo 4 — Implementação (TDD quando possível)
|
|
55
|
-
**Abordagem preferida (TDD):**
|
|
56
|
-
1. Escreva o teste primeiro (descreve o comportamento esperado)
|
|
57
|
-
2. Execute o teste — deve falhar (red)
|
|
58
|
-
3. Implemente o código mínimo para o teste passar (green)
|
|
59
|
-
4. Refatore o código mantendo os testes passando (refactor)
|
|
60
|
-
|
|
61
|
-
**Abordagem alternativa (test-after):**
|
|
62
|
-
1. Implemente a funcionalidade
|
|
63
|
-
2. Escreva os testes cobrindo os cenários
|
|
64
|
-
3. Garanta que os testes passam
|
|
65
|
-
|
|
66
|
-
**Regras de implementação:**
|
|
67
|
-
- Imports sempre absolutos com `@/` (nunca `../../../`)
|
|
68
|
-
- Tipagem TypeScript estrita (sem `any` sem justificativa)
|
|
69
|
-
- Funções com responsabilidade única (max 30 linhas como guia)
|
|
70
|
-
- Nomes descritivos (variáveis, funções, componentes)
|
|
71
|
-
- Comentários explicam o "por quê", não o "o quê"
|
|
72
|
-
- Nunca hardcodar values que deveriam ser variáveis de ambiente
|
|
73
|
-
|
|
74
|
-
### Passo 5 — Testes
|
|
75
|
-
|
|
76
|
-
Execute após cada unidade coesa de código:
|
|
77
|
-
|
|
78
|
-
```bash
|
|
79
|
-
# Lint (zero tolerância a erros)
|
|
80
|
-
npm run lint
|
|
81
|
-
|
|
82
|
-
# TypeScript (zero erros)
|
|
83
|
-
npm run typecheck
|
|
84
|
-
|
|
85
|
-
# Testes unitários
|
|
86
|
-
npm run test
|
|
87
|
-
|
|
88
|
-
# Cobertura
|
|
89
|
-
npm run coverage
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
**Meta de cobertura:** >= 80% nas linhas modificadas/criadas
|
|
93
|
-
|
|
94
|
-
O que testar:
|
|
95
|
-
- Happy path de cada AC
|
|
96
|
-
- Edge cases (valores nulos, strings vazias, arrays vazios)
|
|
97
|
-
- Cenários de erro (exceções esperadas)
|
|
98
|
-
- Comportamento com dados inválidos
|
|
99
|
-
|
|
100
|
-
O que NÃO testar (não agrega valor):
|
|
101
|
-
- Implementações de terceiros (não testa o que o React faz)
|
|
102
|
-
- Trivialidades óbvias (getters/setters simples sem lógica)
|
|
103
|
-
|
|
104
|
-
### Passo 6 — Self-Review (Antes do Commit Final)
|
|
105
|
-
|
|
106
|
-
Leia seu próprio código como se fosse o @reviewer:
|
|
107
|
-
|
|
108
|
-
- [ ] O código implementa EXATAMENTE os ACs? (nem mais, nem menos)
|
|
109
|
-
- [ ] Imports absolutos com `@/` em todos os arquivos novos?
|
|
110
|
-
- [ ] Sem `any` sem justificativa no TypeScript?
|
|
111
|
-
- [ ] Sem `console.log` de debug esquecidos?
|
|
112
|
-
- [ ] Sem `.env` ou secrets hardcodados?
|
|
113
|
-
- [ ] Sem código comentado desnecessário?
|
|
114
|
-
- [ ] Funções com responsabilidade única?
|
|
115
|
-
- [ ] Testes com cobertura >= 80%?
|
|
116
|
-
- [ ] Lint sem warnings?
|
|
117
|
-
|
|
118
|
-
### Passo 7 — Commits Atômicos
|
|
119
|
-
|
|
120
|
-
Commite em unidades coesas — cada commit deve descrever uma mudança em uma frase:
|
|
121
|
-
|
|
122
|
-
```bash
|
|
123
|
-
git add src/components/Auth/LoginForm.tsx
|
|
124
|
-
git add src/components/Auth/LoginForm.test.tsx
|
|
125
|
-
git commit -m "feat(auth): implementar formulário de login com validação
|
|
126
|
-
|
|
127
|
-
Implementa o formulário de login da STORY-001 com:
|
|
128
|
-
- Campos de email e senha com validação client-side
|
|
129
|
-
- Estado de loading durante autenticação
|
|
130
|
-
- Exibição de erros da API
|
|
131
|
-
|
|
132
|
-
Story: STORY-001
|
|
133
|
-
Co-Authored-By: GEN.IA OS <genia@bedata.com.br>"
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
Tipos de commit:
|
|
137
|
-
- `feat` — nova funcionalidade
|
|
138
|
-
- `fix` — correção de bug
|
|
139
|
-
- `refactor` — refatoração sem mudança de comportamento
|
|
140
|
-
- `test` — adição ou correção de testes
|
|
141
|
-
- `docs` — documentação inline
|
|
142
|
-
|
|
143
|
-
**NUNCA** fazer `git push` — exclusivo de @devops.
|
|
144
|
-
|
|
145
|
-
### Passo 8 — Verificação Final
|
|
146
|
-
|
|
147
|
-
Antes de declarar pronto para @qa:
|
|
148
|
-
|
|
149
|
-
```bash
|
|
150
|
-
# Garanta que tudo ainda passa com o conjunto completo
|
|
151
|
-
npm run lint && npm run typecheck && npm run test
|
|
152
|
-
```
|
|
153
|
-
|
|
154
|
-
- [ ] Todos os ACs foram implementados?
|
|
155
|
-
- [ ] Todos os testes passando?
|
|
156
|
-
- [ ] Cobertura >= 80%?
|
|
157
|
-
- [ ] Lint e typecheck limpos?
|
|
158
|
-
- [ ] Não-escopo da story foi respeitado? (não implementou nada além do escopo)
|
|
159
|
-
|
|
160
|
-
### Passo 9 — Comunicar para @qa
|
|
161
|
-
|
|
162
|
-
1. Atualize o status da story para `InQA` no arquivo `docs/stories/STORY-XXX.md`
|
|
163
|
-
2. Notifique @qa que o código está pronto para revisão
|
|
164
|
-
3. Informe:
|
|
165
|
-
- Story ID e branch name
|
|
166
|
-
- Quais ACs foram implementados
|
|
167
|
-
- Qualquer ponto de atenção que @qa deve saber
|
|
168
|
-
|
|
169
|
-
---
|
|
170
|
-
|
|
171
|
-
## Gestão de Blockers
|
|
172
|
-
|
|
173
|
-
Se encontrar um blocker durante a implementação:
|
|
174
|
-
|
|
175
|
-
1. **Blocker técnico de arquitetura** → consultar @architect
|
|
176
|
-
2. **Dúvida sobre requisito/AC** → consultar @po
|
|
177
|
-
3. **Dependência de outra story** → comunicar @sm
|
|
178
|
-
4. **Blocker de ambiente/ferramenta** → comunicar @devops
|
|
179
|
-
|
|
180
|
-
Nunca inventar uma solução para um blocker sem validação — isso é violação do Artigo IV.
|
|
181
|
-
|
|
182
|
-
---
|
|
183
|
-
|
|
184
|
-
## Critérios de Saída
|
|
185
|
-
|
|
186
|
-
A implementação está pronta para @qa quando:
|
|
187
|
-
|
|
188
|
-
- [ ] Todos os ACs da story implementados
|
|
189
|
-
- [ ] Testes unitários com coverage >= 80%
|
|
190
|
-
- [ ] `npm run lint` — zero erros ou warnings
|
|
191
|
-
- [ ] `npm run typecheck` — zero erros
|
|
192
|
-
- [ ] `npm run test` — todos passando
|
|
193
|
-
- [ ] Código commitado localmente no branch correto
|
|
194
|
-
- [ ] Status da story atualizado para InQA
|
|
195
|
-
- [ ] @qa notificado com contexto
|
|
196
|
-
|
|
197
|
-
---
|
|
198
|
-
|
|
199
|
-
*GEN.IA OS v1.0 — {{TEAM_NAME}} — {{CREATOR_NAME}}*
|
|
1
|
+
# Task: Dev — Implementar Story
|
|
2
|
+
|
|
3
|
+
> Tarefa executada por @dev. Transforma uma story validada em código funcional.
|
|
4
|
+
> Pré-requisito: story com status Ready (aprovada por @po).
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Objetivo
|
|
9
|
+
|
|
10
|
+
Implementar o código necessário para satisfazer todos os Acceptance Criteria da story, seguindo os padrões arquiteturais definidos no SPEC-TECNICO.md. Entregar código limpo, testado e commitado localmente, pronto para revisão de @qa.
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## Pré-requisitos
|
|
15
|
+
|
|
16
|
+
Antes de iniciar, confirme:
|
|
17
|
+
|
|
18
|
+
- [ ] Story tem status `Ready` (aprovada por @po)
|
|
19
|
+
- [ ] SPEC-TECNICO.md lido e compreendido
|
|
20
|
+
- [ ] Branch `main` local está atualizado (`git pull`)
|
|
21
|
+
- [ ] Ambiente de desenvolvimento funcionando (dependências instaladas, env vars configuradas)
|
|
22
|
+
- [ ] Clareza sobre todos os Acceptance Criteria (se houver dúvida, consultar @po ANTES de começar)
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## Passos de Execução
|
|
27
|
+
|
|
28
|
+
### Passo 1 — Leitura e Preparação
|
|
29
|
+
1. Leia a story completa: User Story, contexto, todos os ACs, não-escopo
|
|
30
|
+
2. Leia as seções relevantes do SPEC-TECNICO.md
|
|
31
|
+
3. Identifique todos os arquivos que precisarão ser criados ou modificados
|
|
32
|
+
4. Se houver qualquer dúvida sobre o comportamento esperado: perguntar para @po AGORA (não depois de implementar errado)
|
|
33
|
+
5. Estime internamente o tempo necessário e comunique para @sm se houver risco de não entregar no sprint
|
|
34
|
+
|
|
35
|
+
### Passo 2 — Criar Branch
|
|
36
|
+
```bash
|
|
37
|
+
git checkout main
|
|
38
|
+
git pull origin main
|
|
39
|
+
git checkout -b feat/STORY-XXX-descricao-kebab-case
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Exemplos de nomes de branch:
|
|
43
|
+
- `feat/STORY-001-tela-de-login`
|
|
44
|
+
- `fix/STORY-015-corrigir-validacao-email`
|
|
45
|
+
- `refactor/STORY-022-extrair-servico-autenticacao`
|
|
46
|
+
|
|
47
|
+
### Passo 3 — Planejamento da Implementação
|
|
48
|
+
Antes de escrever código, faça um planejamento mental ou escrito:
|
|
49
|
+
1. Quais componentes/funções precisam ser criados?
|
|
50
|
+
2. Quais precisam ser modificados?
|
|
51
|
+
3. Há alguma dependência técnica (biblioteca nova, configuração)?
|
|
52
|
+
4. Qual a ordem lógica de implementação?
|
|
53
|
+
|
|
54
|
+
### Passo 4 — Implementação (TDD quando possível)
|
|
55
|
+
**Abordagem preferida (TDD):**
|
|
56
|
+
1. Escreva o teste primeiro (descreve o comportamento esperado)
|
|
57
|
+
2. Execute o teste — deve falhar (red)
|
|
58
|
+
3. Implemente o código mínimo para o teste passar (green)
|
|
59
|
+
4. Refatore o código mantendo os testes passando (refactor)
|
|
60
|
+
|
|
61
|
+
**Abordagem alternativa (test-after):**
|
|
62
|
+
1. Implemente a funcionalidade
|
|
63
|
+
2. Escreva os testes cobrindo os cenários
|
|
64
|
+
3. Garanta que os testes passam
|
|
65
|
+
|
|
66
|
+
**Regras de implementação:**
|
|
67
|
+
- Imports sempre absolutos com `@/` (nunca `../../../`)
|
|
68
|
+
- Tipagem TypeScript estrita (sem `any` sem justificativa)
|
|
69
|
+
- Funções com responsabilidade única (max 30 linhas como guia)
|
|
70
|
+
- Nomes descritivos (variáveis, funções, componentes)
|
|
71
|
+
- Comentários explicam o "por quê", não o "o quê"
|
|
72
|
+
- Nunca hardcodar values que deveriam ser variáveis de ambiente
|
|
73
|
+
|
|
74
|
+
### Passo 5 — Testes
|
|
75
|
+
|
|
76
|
+
Execute após cada unidade coesa de código:
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
# Lint (zero tolerância a erros)
|
|
80
|
+
npm run lint
|
|
81
|
+
|
|
82
|
+
# TypeScript (zero erros)
|
|
83
|
+
npm run typecheck
|
|
84
|
+
|
|
85
|
+
# Testes unitários
|
|
86
|
+
npm run test
|
|
87
|
+
|
|
88
|
+
# Cobertura
|
|
89
|
+
npm run coverage
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
**Meta de cobertura:** >= 80% nas linhas modificadas/criadas
|
|
93
|
+
|
|
94
|
+
O que testar:
|
|
95
|
+
- Happy path de cada AC
|
|
96
|
+
- Edge cases (valores nulos, strings vazias, arrays vazios)
|
|
97
|
+
- Cenários de erro (exceções esperadas)
|
|
98
|
+
- Comportamento com dados inválidos
|
|
99
|
+
|
|
100
|
+
O que NÃO testar (não agrega valor):
|
|
101
|
+
- Implementações de terceiros (não testa o que o React faz)
|
|
102
|
+
- Trivialidades óbvias (getters/setters simples sem lógica)
|
|
103
|
+
|
|
104
|
+
### Passo 6 — Self-Review (Antes do Commit Final)
|
|
105
|
+
|
|
106
|
+
Leia seu próprio código como se fosse o @reviewer:
|
|
107
|
+
|
|
108
|
+
- [ ] O código implementa EXATAMENTE os ACs? (nem mais, nem menos)
|
|
109
|
+
- [ ] Imports absolutos com `@/` em todos os arquivos novos?
|
|
110
|
+
- [ ] Sem `any` sem justificativa no TypeScript?
|
|
111
|
+
- [ ] Sem `console.log` de debug esquecidos?
|
|
112
|
+
- [ ] Sem `.env` ou secrets hardcodados?
|
|
113
|
+
- [ ] Sem código comentado desnecessário?
|
|
114
|
+
- [ ] Funções com responsabilidade única?
|
|
115
|
+
- [ ] Testes com cobertura >= 80%?
|
|
116
|
+
- [ ] Lint sem warnings?
|
|
117
|
+
|
|
118
|
+
### Passo 7 — Commits Atômicos
|
|
119
|
+
|
|
120
|
+
Commite em unidades coesas — cada commit deve descrever uma mudança em uma frase:
|
|
121
|
+
|
|
122
|
+
```bash
|
|
123
|
+
git add src/components/Auth/LoginForm.tsx
|
|
124
|
+
git add src/components/Auth/LoginForm.test.tsx
|
|
125
|
+
git commit -m "feat(auth): implementar formulário de login com validação
|
|
126
|
+
|
|
127
|
+
Implementa o formulário de login da STORY-001 com:
|
|
128
|
+
- Campos de email e senha com validação client-side
|
|
129
|
+
- Estado de loading durante autenticação
|
|
130
|
+
- Exibição de erros da API
|
|
131
|
+
|
|
132
|
+
Story: STORY-001
|
|
133
|
+
Co-Authored-By: GEN.IA OS <genia@bedata.com.br>"
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
Tipos de commit:
|
|
137
|
+
- `feat` — nova funcionalidade
|
|
138
|
+
- `fix` — correção de bug
|
|
139
|
+
- `refactor` — refatoração sem mudança de comportamento
|
|
140
|
+
- `test` — adição ou correção de testes
|
|
141
|
+
- `docs` — documentação inline
|
|
142
|
+
|
|
143
|
+
**NUNCA** fazer `git push` — exclusivo de @devops.
|
|
144
|
+
|
|
145
|
+
### Passo 8 — Verificação Final
|
|
146
|
+
|
|
147
|
+
Antes de declarar pronto para @qa:
|
|
148
|
+
|
|
149
|
+
```bash
|
|
150
|
+
# Garanta que tudo ainda passa com o conjunto completo
|
|
151
|
+
npm run lint && npm run typecheck && npm run test
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
- [ ] Todos os ACs foram implementados?
|
|
155
|
+
- [ ] Todos os testes passando?
|
|
156
|
+
- [ ] Cobertura >= 80%?
|
|
157
|
+
- [ ] Lint e typecheck limpos?
|
|
158
|
+
- [ ] Não-escopo da story foi respeitado? (não implementou nada além do escopo)
|
|
159
|
+
|
|
160
|
+
### Passo 9 — Comunicar para @qa
|
|
161
|
+
|
|
162
|
+
1. Atualize o status da story para `InQA` no arquivo `docs/stories/STORY-XXX.md`
|
|
163
|
+
2. Notifique @qa que o código está pronto para revisão
|
|
164
|
+
3. Informe:
|
|
165
|
+
- Story ID e branch name
|
|
166
|
+
- Quais ACs foram implementados
|
|
167
|
+
- Qualquer ponto de atenção que @qa deve saber
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
## Gestão de Blockers
|
|
172
|
+
|
|
173
|
+
Se encontrar um blocker durante a implementação:
|
|
174
|
+
|
|
175
|
+
1. **Blocker técnico de arquitetura** → consultar @architect
|
|
176
|
+
2. **Dúvida sobre requisito/AC** → consultar @po
|
|
177
|
+
3. **Dependência de outra story** → comunicar @sm
|
|
178
|
+
4. **Blocker de ambiente/ferramenta** → comunicar @devops
|
|
179
|
+
|
|
180
|
+
Nunca inventar uma solução para um blocker sem validação — isso é violação do Artigo IV.
|
|
181
|
+
|
|
182
|
+
---
|
|
183
|
+
|
|
184
|
+
## Critérios de Saída
|
|
185
|
+
|
|
186
|
+
A implementação está pronta para @qa quando:
|
|
187
|
+
|
|
188
|
+
- [ ] Todos os ACs da story implementados
|
|
189
|
+
- [ ] Testes unitários com coverage >= 80%
|
|
190
|
+
- [ ] `npm run lint` — zero erros ou warnings
|
|
191
|
+
- [ ] `npm run typecheck` — zero erros
|
|
192
|
+
- [ ] `npm run test` — todos passando
|
|
193
|
+
- [ ] Código commitado localmente no branch correto
|
|
194
|
+
- [ ] Status da story atualizado para InQA
|
|
195
|
+
- [ ] @qa notificado com contexto
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
*GEN.IA OS v1.0 — {{TEAM_NAME}} — {{CREATOR_NAME}}*
|