create-genia-os 2.1.1 → 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.
Files changed (88) hide show
  1. package/README.md +154 -154
  2. package/package.json +4 -2
  3. package/template/.claude/CLAUDE.md +215 -215
  4. package/template/.claude/agent-memory/analyst/MEMORY.md +20 -20
  5. package/template/.claude/agent-memory/architect/MEMORY.md +20 -20
  6. package/template/.claude/agent-memory/dev/MEMORY.md +20 -20
  7. package/template/.claude/agent-memory/devops/MEMORY.md +20 -20
  8. package/template/.claude/agent-memory/pm/MEMORY.md +20 -20
  9. package/template/.claude/agent-memory/po/MEMORY.md +20 -20
  10. package/template/.claude/agent-memory/qa/MEMORY.md +20 -20
  11. package/template/.claude/agent-memory/reviewer/MEMORY.md +20 -20
  12. package/template/.claude/agent-memory/sm/MEMORY.md +20 -20
  13. package/template/.claude/hooks/enforce-git-push-authority.py +70 -70
  14. package/template/.claude/hooks/metrics-tracker.cjs +65 -0
  15. package/template/.claude/hooks/precompact-session-digest.cjs +87 -87
  16. package/template/.claude/hooks/sql-governance.py +65 -65
  17. package/template/.claude/hooks/synapse-engine.cjs +122 -122
  18. package/template/.claude/hooks/write-path-validation.py +59 -59
  19. package/template/.claude/rules/agent-authority.md +39 -39
  20. package/template/.claude/rules/agent-handoff.md +71 -71
  21. package/template/.claude/rules/agent-memory.md +61 -61
  22. package/template/.claude/rules/ids-principles.md +52 -52
  23. package/template/.claude/rules/mcp-usage.md +49 -49
  24. package/template/.claude/rules/new-project.md +157 -0
  25. package/template/.claude/rules/story-lifecycle.md +87 -87
  26. package/template/.claude/rules/workflow-execution.md +68 -68
  27. package/template/.claude/settings.json +58 -58
  28. package/template/.claude/settings.local.json +14 -14
  29. package/template/.genia/CONSTITUTION.md +129 -129
  30. package/template/.genia/contexts/api-patterns.md +134 -134
  31. package/template/.genia/contexts/nextjs-react.md +210 -210
  32. package/template/.genia/contexts/projeto.md +18 -18
  33. package/template/.genia/contexts/supabase.md +152 -152
  34. package/template/.genia/contexts/whatsapp-cloud.md +176 -176
  35. package/template/.genia/core-config.yaml +192 -192
  36. package/template/.genia/development/agents/analyst.md +138 -138
  37. package/template/.genia/development/agents/architect.md +171 -171
  38. package/template/.genia/development/agents/dev.md +160 -160
  39. package/template/.genia/development/agents/devops.md +200 -200
  40. package/template/.genia/development/agents/pm.md +142 -142
  41. package/template/.genia/development/agents/po.md +165 -165
  42. package/template/.genia/development/agents/qa.md +183 -183
  43. package/template/.genia/development/agents/reviewer.md +198 -198
  44. package/template/.genia/development/agents/sm.md +230 -230
  45. package/template/.genia/development/checklists/architecture-review.md +189 -189
  46. package/template/.genia/development/checklists/pre-commit.md +205 -205
  47. package/template/.genia/development/checklists/pre-deploy.md +230 -230
  48. package/template/.genia/development/checklists/qa-gate.md +216 -216
  49. package/template/.genia/development/checklists/story-dod.md +155 -155
  50. package/template/.genia/development/tasks/code-review.md +197 -197
  51. package/template/.genia/development/tasks/criar-prd.md +170 -170
  52. package/template/.genia/development/tasks/criar-spec.md +188 -188
  53. package/template/.genia/development/tasks/criar-story.md +185 -185
  54. package/template/.genia/development/tasks/debug-sistematico.md +230 -230
  55. package/template/.genia/development/tasks/dev-implement.md +199 -199
  56. package/template/.genia/development/tasks/qa-review.md +224 -224
  57. package/template/.genia/development/workflows/brownfield.md +178 -178
  58. package/template/.genia/development/workflows/delivery.md +208 -208
  59. package/template/.genia/development/workflows/development.md +189 -189
  60. package/template/.genia/development/workflows/greenfield.md +166 -166
  61. package/template/.genia/development/workflows/planning.md +167 -167
  62. package/template/.genia/development/workflows/qa-loop.md +179 -179
  63. package/template/.genia/development/workflows/spec-pipeline.md +192 -192
  64. package/template/.genia/development/workflows/story-development-cycle.md +252 -252
  65. package/template/.genia/guidelines/clean-code.md +98 -98
  66. package/template/.genia/guidelines/testing.md +176 -176
  67. package/template/.genia/skills/design/canvas-design.md +109 -109
  68. package/template/.genia/skills/design/frontend-design.md +140 -140
  69. package/template/.genia/skills/dev/mcp-builder.md +172 -172
  70. package/template/.genia/skills/dev/webapp-testing.md +150 -150
  71. package/template/.genia/skills/documents/docx.md +153 -153
  72. package/template/.genia/skills/documents/pdf.md +134 -134
  73. package/template/.genia/skills/documents/pptx.md +118 -118
  74. package/template/.genia/skills/documents/xlsx.md +140 -140
  75. package/template/.synapse/agent-analyst +8 -8
  76. package/template/.synapse/agent-architect +8 -8
  77. package/template/.synapse/agent-dev +8 -8
  78. package/template/.synapse/agent-devops +8 -8
  79. package/template/.synapse/agent-pm +8 -8
  80. package/template/.synapse/agent-po +7 -7
  81. package/template/.synapse/agent-qa +8 -8
  82. package/template/.synapse/agent-reviewer +7 -7
  83. package/template/.synapse/agent-sm +7 -7
  84. package/template/.synapse/constitution +7 -7
  85. package/template/.synapse/context +8 -8
  86. package/template/.synapse/global +8 -8
  87. package/template/.synapse/manifest +14 -14
  88. package/template/README.md +53 -53
@@ -1,205 +1,205 @@
1
- # Checklist: Pré-Commit
2
-
3
- > Verificações obrigatórias antes de qualquer commit.
4
- > Executado por @dev. Automatizável via git hooks.
5
-
6
- ---
7
-
8
- ## Objetivo
9
-
10
- Garantir que nenhum commit "sujo" entre no histórico do repositório. Um commit deve ser uma unidade de mudança coesa, funcional e segura. Esta checklist previne problemas que são muito mais custosos de corrigir depois do commit.
11
-
12
- ---
13
-
14
- ## Checklist Completo
15
-
16
- ### Bloco 1 — Qualidade de Código (Obrigatório)
17
-
18
- ```bash
19
- npm run lint
20
- ```
21
-
22
- - [ ] Zero erros de lint
23
- - [ ] Zero warnings de lint (warnings são erros em potencial)
24
- - [ ] Nenhuma regra do ESLint desabilitada com `// eslint-disable` sem comentário explicativo
25
-
26
- ```bash
27
- npm run typecheck
28
- ```
29
-
30
- - [ ] Zero erros TypeScript
31
- - [ ] Nenhum `@ts-ignore` ou `@ts-expect-error` sem explicação no comentário
32
- - [ ] Sem `any` usado como atalho — tipagem explícita ou `unknown`
33
-
34
- ---
35
-
36
- ### Bloco 2 — Testes (Obrigatório)
37
-
38
- ```bash
39
- npm run test
40
- ```
41
-
42
- - [ ] Todos os testes passando
43
- - [ ] Nenhum teste em `skip` ou `xtest` que foi esquecido
44
- - [ ] Nenhum `test.only` esquecido (faria outros testes serem ignorados no CI)
45
-
46
- ```bash
47
- npm run coverage
48
- ```
49
-
50
- - [ ] Coverage >= 80% nas linhas modificadas
51
- - [ ] Se coverage caiu abaixo de 80%: adicionar testes antes de commitar
52
-
53
- ---
54
-
55
- ### Bloco 3 — Segurança (Obrigatório)
56
-
57
- Antes de executar `git add`, verifique todos os arquivos no diff:
58
-
59
- ```bash
60
- git diff --staged
61
- ```
62
-
63
- - [ ] Sem passwords, tokens, API keys ou secrets hardcodados
64
- - [ ] Sem credenciais de banco de dados no código
65
- - [ ] Sem URLs de ambiente hardcodadas (usar variáveis de ambiente)
66
- - [ ] Arquivo `.env` ou `.env.local` NÃO está sendo commitado
67
- - [ ] Sem chaves privadas (`.pem`, `.key`) no staged
68
- - [ ] Sem tokens de autenticação em nenhum arquivo
69
-
70
- **Se encontrar qualquer desses:** remova ANTES de commitar. Secrets no histórico git são permanentes e comprometem a segurança do projeto.
71
-
72
- ---
73
-
74
- ### Bloco 4 — Limpeza de Código (Obrigatório)
75
-
76
- Leia o diff uma vez como se fosse o reviewer:
77
-
78
- - [ ] Sem `console.log`, `console.debug`, `console.warn` de debug esquecidos
79
- - [ ] Sem código comentado desnecessariamente (use `git stash` se quiser salvar)
80
- - [ ] Sem imports não utilizados
81
- - [ ] Sem variáveis declaradas e não utilizadas
82
- - [ ] Sem arquivos de teste manual esquecidos (`test.html`, `debug.js`, etc.)
83
-
84
- ---
85
-
86
- ### Bloco 5 — Conformidade com Padrões (Obrigatório)
87
-
88
- - [ ] Todos os imports novos usam paths absolutos com `@/`
89
- - [ ] Nenhum import relativo com `../../` em arquivos novos
90
- - [ ] Nomenclatura seguindo os padrões do SPEC-TECNICO (camelCase, PascalCase)
91
- - [ ] Arquivos criados nas pastas corretas conforme estrutura definida
92
-
93
- ---
94
-
95
- ### Bloco 6 — Formato do Commit (Obrigatório)
96
-
97
- A mensagem de commit deve seguir o formato:
98
-
99
- ```
100
- tipo(escopo): descrição em imperativo presente
101
-
102
- [corpo opcional com contexto adicional]
103
-
104
- Story: STORY-XXX
105
- Co-Authored-By: GEN.IA OS <genia@bedata.com.br>
106
- ```
107
-
108
- - [ ] Tipo válido: `feat`, `fix`, `refactor`, `test`, `docs`, `style`, `chore`
109
- - [ ] Escopo relevante ao módulo modificado
110
- - [ ] Descrição em imperativo: "adicionar", "corrigir", "implementar" (não "adicionado", "foi corrigido")
111
- - [ ] Descrição em até 72 caracteres na primeira linha
112
- - [ ] Story ID incluído quando aplicável
113
- - [ ] Co-authored-by incluído
114
-
115
- **Exemplos corretos:**
116
- ```
117
- feat(auth): implementar formulário de login com validação de email
118
- fix(api): corrigir erro 500 ao criar usuário sem telefone
119
- test(payment): adicionar casos de teste para falha de pagamento
120
- ```
121
-
122
- **Exemplos incorretos:**
123
- ```
124
- update stuff
125
- fixing bug
126
- WIP
127
- feat: fiz várias coisas no componente de login e também corrigi um bug
128
- ```
129
-
130
- ---
131
-
132
- ### Bloco 7 — Atomicidade (Boas Práticas)
133
-
134
- - [ ] Este commit representa UMA mudança coesa e descritível em uma frase?
135
- - [ ] Se o commit precisaria de "e também" na descrição, considere dividir em 2 commits
136
- - [ ] Arquivos não relacionados a esta mudança NÃO estão em stage
137
- - [ ] Arquivos de configuração pessoal (`.vscode/settings.json` pessoal, etc.) não incluídos
138
-
139
- ---
140
-
141
- ## Verificação Rápida Final
142
-
143
- Execute a sequência completa antes de `git commit`:
144
-
145
- ```bash
146
- npm run lint && npm run typecheck && npm run test && echo "PRÉ-COMMIT OK ✓"
147
- ```
148
-
149
- Se este comando terminar com `PRÉ-COMMIT OK ✓`, o commit pode ser feito.
150
-
151
- Se falhar: corrija o problema identificado antes de commitar.
152
-
153
- ---
154
-
155
- ## Automatização com Git Hooks
156
-
157
- Para automatizar parte desta checklist, adicione o hook em `.git/hooks/pre-commit`:
158
-
159
- ```bash
160
- #!/bin/sh
161
- echo "Executando verificações pré-commit..."
162
-
163
- npm run lint
164
- if [ $? -ne 0 ]; then
165
- echo "BLOQUEADO: Lint falhou. Corrija os erros antes de commitar."
166
- exit 1
167
- fi
168
-
169
- npm run typecheck
170
- if [ $? -ne 0 ]; then
171
- echo "BLOQUEADO: TypeScript com erros. Corrija antes de commitar."
172
- exit 1
173
- fi
174
-
175
- npm run test
176
- if [ $? -ne 0 ]; then
177
- echo "BLOQUEADO: Testes falhando. Corrija antes de commitar."
178
- exit 1
179
- fi
180
-
181
- echo "Verificações pré-commit concluídas. ✓"
182
- exit 0
183
- ```
184
-
185
- Tornar executável:
186
- ```bash
187
- chmod +x .git/hooks/pre-commit
188
- ```
189
-
190
- **Nota:** @devops é responsável por configurar hooks em nível de projeto (usando Husky ou similar) para que se apliquem a todo o time.
191
-
192
- ---
193
-
194
- ## Exceções
195
-
196
- Em situações excepcionais, @architect pode autorizar um commit que não passa em todas as verificações, com:
197
- - Registro documentado da exceção
198
- - Justificativa técnica
199
- - Issue criada para resolução imediata (no mesmo sprint)
200
-
201
- **Exceções nunca são a norma.** Se você se pega precisando de exceções frequentemente, o problema é no código ou no processo.
202
-
203
- ---
204
-
205
- *GEN.IA OS v1.0 — {{TEAM_NAME}} — {{CREATOR_NAME}}*
1
+ # Checklist: Pré-Commit
2
+
3
+ > Verificações obrigatórias antes de qualquer commit.
4
+ > Executado por @dev. Automatizável via git hooks.
5
+
6
+ ---
7
+
8
+ ## Objetivo
9
+
10
+ Garantir que nenhum commit "sujo" entre no histórico do repositório. Um commit deve ser uma unidade de mudança coesa, funcional e segura. Esta checklist previne problemas que são muito mais custosos de corrigir depois do commit.
11
+
12
+ ---
13
+
14
+ ## Checklist Completo
15
+
16
+ ### Bloco 1 — Qualidade de Código (Obrigatório)
17
+
18
+ ```bash
19
+ npm run lint
20
+ ```
21
+
22
+ - [ ] Zero erros de lint
23
+ - [ ] Zero warnings de lint (warnings são erros em potencial)
24
+ - [ ] Nenhuma regra do ESLint desabilitada com `// eslint-disable` sem comentário explicativo
25
+
26
+ ```bash
27
+ npm run typecheck
28
+ ```
29
+
30
+ - [ ] Zero erros TypeScript
31
+ - [ ] Nenhum `@ts-ignore` ou `@ts-expect-error` sem explicação no comentário
32
+ - [ ] Sem `any` usado como atalho — tipagem explícita ou `unknown`
33
+
34
+ ---
35
+
36
+ ### Bloco 2 — Testes (Obrigatório)
37
+
38
+ ```bash
39
+ npm run test
40
+ ```
41
+
42
+ - [ ] Todos os testes passando
43
+ - [ ] Nenhum teste em `skip` ou `xtest` que foi esquecido
44
+ - [ ] Nenhum `test.only` esquecido (faria outros testes serem ignorados no CI)
45
+
46
+ ```bash
47
+ npm run coverage
48
+ ```
49
+
50
+ - [ ] Coverage >= 80% nas linhas modificadas
51
+ - [ ] Se coverage caiu abaixo de 80%: adicionar testes antes de commitar
52
+
53
+ ---
54
+
55
+ ### Bloco 3 — Segurança (Obrigatório)
56
+
57
+ Antes de executar `git add`, verifique todos os arquivos no diff:
58
+
59
+ ```bash
60
+ git diff --staged
61
+ ```
62
+
63
+ - [ ] Sem passwords, tokens, API keys ou secrets hardcodados
64
+ - [ ] Sem credenciais de banco de dados no código
65
+ - [ ] Sem URLs de ambiente hardcodadas (usar variáveis de ambiente)
66
+ - [ ] Arquivo `.env` ou `.env.local` NÃO está sendo commitado
67
+ - [ ] Sem chaves privadas (`.pem`, `.key`) no staged
68
+ - [ ] Sem tokens de autenticação em nenhum arquivo
69
+
70
+ **Se encontrar qualquer desses:** remova ANTES de commitar. Secrets no histórico git são permanentes e comprometem a segurança do projeto.
71
+
72
+ ---
73
+
74
+ ### Bloco 4 — Limpeza de Código (Obrigatório)
75
+
76
+ Leia o diff uma vez como se fosse o reviewer:
77
+
78
+ - [ ] Sem `console.log`, `console.debug`, `console.warn` de debug esquecidos
79
+ - [ ] Sem código comentado desnecessariamente (use `git stash` se quiser salvar)
80
+ - [ ] Sem imports não utilizados
81
+ - [ ] Sem variáveis declaradas e não utilizadas
82
+ - [ ] Sem arquivos de teste manual esquecidos (`test.html`, `debug.js`, etc.)
83
+
84
+ ---
85
+
86
+ ### Bloco 5 — Conformidade com Padrões (Obrigatório)
87
+
88
+ - [ ] Todos os imports novos usam paths absolutos com `@/`
89
+ - [ ] Nenhum import relativo com `../../` em arquivos novos
90
+ - [ ] Nomenclatura seguindo os padrões do SPEC-TECNICO (camelCase, PascalCase)
91
+ - [ ] Arquivos criados nas pastas corretas conforme estrutura definida
92
+
93
+ ---
94
+
95
+ ### Bloco 6 — Formato do Commit (Obrigatório)
96
+
97
+ A mensagem de commit deve seguir o formato:
98
+
99
+ ```
100
+ tipo(escopo): descrição em imperativo presente
101
+
102
+ [corpo opcional com contexto adicional]
103
+
104
+ Story: STORY-XXX
105
+ Co-Authored-By: GEN.IA OS <genia@bedata.com.br>
106
+ ```
107
+
108
+ - [ ] Tipo válido: `feat`, `fix`, `refactor`, `test`, `docs`, `style`, `chore`
109
+ - [ ] Escopo relevante ao módulo modificado
110
+ - [ ] Descrição em imperativo: "adicionar", "corrigir", "implementar" (não "adicionado", "foi corrigido")
111
+ - [ ] Descrição em até 72 caracteres na primeira linha
112
+ - [ ] Story ID incluído quando aplicável
113
+ - [ ] Co-authored-by incluído
114
+
115
+ **Exemplos corretos:**
116
+ ```
117
+ feat(auth): implementar formulário de login com validação de email
118
+ fix(api): corrigir erro 500 ao criar usuário sem telefone
119
+ test(payment): adicionar casos de teste para falha de pagamento
120
+ ```
121
+
122
+ **Exemplos incorretos:**
123
+ ```
124
+ update stuff
125
+ fixing bug
126
+ WIP
127
+ feat: fiz várias coisas no componente de login e também corrigi um bug
128
+ ```
129
+
130
+ ---
131
+
132
+ ### Bloco 7 — Atomicidade (Boas Práticas)
133
+
134
+ - [ ] Este commit representa UMA mudança coesa e descritível em uma frase?
135
+ - [ ] Se o commit precisaria de "e também" na descrição, considere dividir em 2 commits
136
+ - [ ] Arquivos não relacionados a esta mudança NÃO estão em stage
137
+ - [ ] Arquivos de configuração pessoal (`.vscode/settings.json` pessoal, etc.) não incluídos
138
+
139
+ ---
140
+
141
+ ## Verificação Rápida Final
142
+
143
+ Execute a sequência completa antes de `git commit`:
144
+
145
+ ```bash
146
+ npm run lint && npm run typecheck && npm run test && echo "PRÉ-COMMIT OK ✓"
147
+ ```
148
+
149
+ Se este comando terminar com `PRÉ-COMMIT OK ✓`, o commit pode ser feito.
150
+
151
+ Se falhar: corrija o problema identificado antes de commitar.
152
+
153
+ ---
154
+
155
+ ## Automatização com Git Hooks
156
+
157
+ Para automatizar parte desta checklist, adicione o hook em `.git/hooks/pre-commit`:
158
+
159
+ ```bash
160
+ #!/bin/sh
161
+ echo "Executando verificações pré-commit..."
162
+
163
+ npm run lint
164
+ if [ $? -ne 0 ]; then
165
+ echo "BLOQUEADO: Lint falhou. Corrija os erros antes de commitar."
166
+ exit 1
167
+ fi
168
+
169
+ npm run typecheck
170
+ if [ $? -ne 0 ]; then
171
+ echo "BLOQUEADO: TypeScript com erros. Corrija antes de commitar."
172
+ exit 1
173
+ fi
174
+
175
+ npm run test
176
+ if [ $? -ne 0 ]; then
177
+ echo "BLOQUEADO: Testes falhando. Corrija antes de commitar."
178
+ exit 1
179
+ fi
180
+
181
+ echo "Verificações pré-commit concluídas. ✓"
182
+ exit 0
183
+ ```
184
+
185
+ Tornar executável:
186
+ ```bash
187
+ chmod +x .git/hooks/pre-commit
188
+ ```
189
+
190
+ **Nota:** @devops é responsável por configurar hooks em nível de projeto (usando Husky ou similar) para que se apliquem a todo o time.
191
+
192
+ ---
193
+
194
+ ## Exceções
195
+
196
+ Em situações excepcionais, @architect pode autorizar um commit que não passa em todas as verificações, com:
197
+ - Registro documentado da exceção
198
+ - Justificativa técnica
199
+ - Issue criada para resolução imediata (no mesmo sprint)
200
+
201
+ **Exceções nunca são a norma.** Se você se pega precisando de exceções frequentemente, o problema é no código ou no processo.
202
+
203
+ ---
204
+
205
+ *GEN.IA OS v1.0 — {{TEAM_NAME}} — {{CREATOR_NAME}}*