jarvis-ai-framework 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.
Files changed (240) hide show
  1. package/AGENTS.md +416 -0
  2. package/LICENSE +21 -0
  3. package/README.md +190 -0
  4. package/agents/AGENTS.md +234 -0
  5. package/agents/README.md +309 -0
  6. package/agents/engineering/data/eng.data-engineer.agent.md +309 -0
  7. package/agents/engineering/eng.agent.md +303 -0
  8. package/agents/engineering/eng.bug-hunter.md +386 -0
  9. package/agents/engineering/eng.cybersecurity.agent.md +503 -0
  10. package/agents/engineering/eng.dev-code-reviewer.md +148 -0
  11. package/agents/engineering/eng.docs-writer.md +152 -0
  12. package/agents/engineering/eng.frontend.agent.md +117 -0
  13. package/agents/engineering/eng.rpa.agent.md +215 -0
  14. package/agents/engineering/eng.tech-analyst.agent.md +102 -0
  15. package/agents/engineering/eng.ux-designer.agent.md +193 -0
  16. package/agents/engineering/qa/eng.qa.cypress-specialist.md +109 -0
  17. package/agents/engineering/qa/eng.qa.quality-champion-task-agent.md +85 -0
  18. package/agents/engineering/qa/eng.qa.quality-strategist.md +111 -0
  19. package/agents/engineering/qa/eng.qa.test-architect.md +400 -0
  20. package/agents/engineering/qa/eng.qa.test-planner.md +477 -0
  21. package/agents/engineering/qa/eng.qa.testing-engineer.md +339 -0
  22. package/agents/product/prod.pm-checker.md +52 -0
  23. package/bin/commands/docs-publish.js +184 -0
  24. package/bin/commands/docs-sync.js +139 -0
  25. package/bin/commands/info.js +87 -0
  26. package/bin/commands/init.js +237 -0
  27. package/bin/commands/install-rtk.js +90 -0
  28. package/bin/commands/list.js +48 -0
  29. package/bin/commands/qa-signoff.js +112 -0
  30. package/bin/commands/whoami.js +43 -0
  31. package/bin/jarvis.js +159 -0
  32. package/bin/lib/auth/session.js +56 -0
  33. package/bin/lib/config/constants.js +123 -0
  34. package/bin/lib/config/ide-config.js +233 -0
  35. package/bin/lib/core/scanner.js +124 -0
  36. package/bin/lib/core/sync-engine.js +551 -0
  37. package/bin/lib/docs/fetch-file.sh +41 -0
  38. package/bin/lib/docs/publish-file.sh +284 -0
  39. package/bin/lib/docs/validate-frontmatter.js +157 -0
  40. package/bin/lib/env-loader.js +198 -0
  41. package/bin/lib/tasks/comment.js +131 -0
  42. package/bin/lib/utils/git-parser.js +145 -0
  43. package/bin/lib/utils/logger.js +104 -0
  44. package/bin/lib/utils/npmrc-parser.js +106 -0
  45. package/bin/lib/utils/paths.js +55 -0
  46. package/bin/lib/utils/ui.js +59 -0
  47. package/bin/lib/vcs/api.js +312 -0
  48. package/bin/lib/vcs/create-issue.js +43 -0
  49. package/bin/lib/vcs/create-merge.js +43 -0
  50. package/bin/lib/vcs/fetch-raw.js +30 -0
  51. package/bin/postinstall.js +41 -0
  52. package/members.md +25 -0
  53. package/package.json +55 -0
  54. package/rules/AGENTS.md +205 -0
  55. package/rules/engineering/data/data-rules.md +200 -0
  56. package/rules/engineering/eng-rules.md +243 -0
  57. package/rules/engineering/eng-security-rules.md +186 -0
  58. package/rules/engineering/eng.breakdown-subtasks-rules.md +585 -0
  59. package/rules/engineering/eng.bump-rules.md +27 -0
  60. package/rules/engineering/eng.docs-scraping-rules.md +64 -0
  61. package/rules/engineering/eng.downstream-flow-rules.md +297 -0
  62. package/rules/engineering/eng.integrations-rules.md +73 -0
  63. package/rules/engineering/eng.plan-rules.md +333 -0
  64. package/rules/engineering/eng.pr-rules.md +359 -0
  65. package/rules/engineering/eng.pre-pr-rules.md +103 -0
  66. package/rules/engineering/eng.start-rules.md +246 -0
  67. package/rules/engineering/eng.tech-spec-rules.md +968 -0
  68. package/rules/engineering/eng.work-rules.md +312 -0
  69. package/rules/engineering/frontend/eng.frontend-rules.md +147 -0
  70. package/rules/engineering/qa/eng.qa.cypress-standards-rules.md +259 -0
  71. package/rules/engineering/qa/eng.qa.exploratory-session-rules.md +137 -0
  72. package/rules/engineering/qa/eng.qa.quality-gate-scoring-rules.md +181 -0
  73. package/rules/engineering/qa/eng.qa.tech-spec-validation-criteria-rules.md +120 -0
  74. package/rules/engineering/rpa/eng.rpa-rules.md +230 -0
  75. package/rules/product/README.md +24 -0
  76. package/rules/product/prod-rules.md +151 -0
  77. package/rules/rtk-rules.md +68 -0
  78. package/skills/AGENTS.md +290 -0
  79. package/skills/SKILLS-ROADMAP.md +333 -0
  80. package/skills/churn-audit/SKILL.md +385 -0
  81. package/skills/context-detect/SKILL.md +399 -0
  82. package/skills/context-detect/assets/context-profile-template.md +127 -0
  83. package/skills/docs-central/README.md +310 -0
  84. package/skills/docs-central/SKILL.md +423 -0
  85. package/skills/docs-index/SKILL.md +377 -0
  86. package/skills/eng-ai-engineer/SKILL.md +296 -0
  87. package/skills/eng-arch-c4/SKILL.md +358 -0
  88. package/skills/eng-arch-c4/assets/example-code.md +189 -0
  89. package/skills/eng-arch-c4/assets/example-component.md +105 -0
  90. package/skills/eng-arch-c4/assets/example-container.md +104 -0
  91. package/skills/eng-arch-c4/assets/example-context.md +81 -0
  92. package/skills/eng-backend/SKILL.md +776 -0
  93. package/skills/eng-browser-extension-builder/SKILL.md +385 -0
  94. package/skills/eng-cybersecurity/SKILL.md +645 -0
  95. package/skills/eng-data-bi/SKILL.md +199 -0
  96. package/skills/eng-data-debug/SKILL.md +307 -0
  97. package/skills/eng-data-engineer/SKILL.md +256 -0
  98. package/skills/eng-data-onboard/SKILL.md +310 -0
  99. package/skills/eng-data-orchestrator/SKILL.md +426 -0
  100. package/skills/eng-design-system/SKILL.md +619 -0
  101. package/skills/eng-docs-write/SKILL.md +312 -0
  102. package/skills/eng-frontend/SKILL.md +913 -0
  103. package/skills/eng-jira-comment/SKILL.md +17 -0
  104. package/skills/eng-microfrontend/SKILL.md +602 -0
  105. package/skills/eng-ms-trace/SKILL.md +469 -0
  106. package/skills/eng-nestjs/SKILL.md +791 -0
  107. package/skills/eng-performance-engineer/SKILL.md +312 -0
  108. package/skills/eng-pr/SKILL.md +339 -0
  109. package/skills/eng-qa-a11y-audit/SKILL.md +269 -0
  110. package/skills/eng-qa-bug-report/SKILL.md +1088 -0
  111. package/skills/eng-qa-bug-report/TASK_MANAGERS.md +138 -0
  112. package/skills/eng-qa-cypress-e2e/SKILL.md +177 -0
  113. package/skills/eng-qa-dev-guide/SKILL.md +164 -0
  114. package/skills/eng-qa-e2e/SKILL.md +400 -0
  115. package/skills/eng-qa-e2e-spec-writer/SKILL.md +322 -0
  116. package/skills/eng-qa-exploratory/SKILL.md +188 -0
  117. package/skills/eng-qa-gate/SKILL.md +370 -0
  118. package/skills/eng-qa-gate/assets/checklist-validacao.md +291 -0
  119. package/skills/eng-qa-graphql-contract/SKILL.md +256 -0
  120. package/skills/eng-qa-quality-report/SKILL.md +412 -0
  121. package/skills/eng-qa-test-plan/SKILL.md +466 -0
  122. package/skills/eng-qa-test-plan/assets/test-coverage-template.md +92 -0
  123. package/skills/eng-qa-test-plan/assets/test-patterns.md +178 -0
  124. package/skills/eng-qa-testsprite/SKILL.md +325 -0
  125. package/skills/eng-qa-testsprite/references/testsprite-mcp.md +224 -0
  126. package/skills/eng-qa-unit-test/SKILL.md +471 -0
  127. package/skills/eng-rabbitmq/SKILL.md +661 -0
  128. package/skills/eng-scraper/SKILL.md +683 -0
  129. package/skills/eng-scraper-robot-builder/SKILL.md +370 -0
  130. package/skills/eng-security-patch/SKILL.md +378 -0
  131. package/skills/eng-security-triage/SKILL.md +266 -0
  132. package/skills/eng-task-comment/SKILL.md +60 -0
  133. package/skills/eng-tech-analyst/SKILL.md +529 -0
  134. package/skills/eng-threat-model/SKILL.md +161 -0
  135. package/skills/init-jarvis/SKILL.md +1304 -0
  136. package/skills/init-jarvis/assets/mcp-configs.md +389 -0
  137. package/skills/init-jarvis/assets/onboarding-checklist.md +104 -0
  138. package/skills/init-jarvis/assets/setup-guide.md +360 -0
  139. package/skills/lovable-prompt-generator/SKILL.md +304 -0
  140. package/skills/prod-roadmap-report/README.md +303 -0
  141. package/skills/prod-roadmap-report/SKILL.md +198 -0
  142. package/skills/prod-roadmap-report/commands/status.compiled.single.team.md +23 -0
  143. package/skills/prod-roadmap-report/commands/status.list.projects.md +17 -0
  144. package/skills/prod-roadmap-report/commands/status.memory.md +192 -0
  145. package/skills/prod-roadmap-report/commands/status.roadmap.preview.md +94 -0
  146. package/skills/prod-roadmap-report/references/detailed-guide.md +236 -0
  147. package/skills/prod-roadmap-report/rules/detailed-guide.md +237 -0
  148. package/skills/prod-roadmap-report/rules/status-report-rules.md +44 -0
  149. package/skills/prod-roadmap-report/templates/template-multiple-teams-compiled-status.md +53 -0
  150. package/skills/prod-roadmap-report/templates/template-projects-list.md +23 -0
  151. package/skills/prod-roadmap-report/templates/template-single-team-compiled-status.md +60 -0
  152. package/skills/prod-roadmap-report/templates/template-single-team-status.md +49 -0
  153. package/skills/prod-specs/SKILL.md +108 -0
  154. package/skills/prod-specs/references/prod.spec.clarify.md +176 -0
  155. package/skills/prod-specs/references/prod.spec.epic.md +107 -0
  156. package/skills/prod-specs/references/prod.spec.frd.md +135 -0
  157. package/skills/prod-specs/references/prod.spec.issue.md +145 -0
  158. package/skills/prod-specs/references/prod.spec.prd.md +118 -0
  159. package/skills/prod-specs/rules/prod-spec-rules.md +186 -0
  160. package/skills/prod-specs/templates/prod-breakdown-template.md +136 -0
  161. package/skills/prod-specs/templates/prod-epic-template.md +76 -0
  162. package/skills/prod-specs/templates/prod-frd-template.md +172 -0
  163. package/skills/prod-specs/templates/prod-issue-template.md +68 -0
  164. package/skills/prod-specs/templates/prod-prd-full-template.md +159 -0
  165. package/skills/prod-specs/templates/prod-prd-template.md +173 -0
  166. package/skills/prod-specs-update/SKILL.md +272 -0
  167. package/skills/report-issue/SKILL.md +156 -0
  168. package/taxonomy.md +270 -0
  169. package/templates/AGENTS.md +189 -0
  170. package/templates/CDD aplicado a Prompts.md +182 -0
  171. package/templates/ENV-template.md +187 -0
  172. package/templates/engineering/AGENTS-template.md +71 -0
  173. package/templates/engineering/ARD-template.md +193 -0
  174. package/templates/engineering/CONTACTS-template.md +135 -0
  175. package/templates/engineering/PR-template.md +40 -0
  176. package/templates/engineering/RFC-Playbook.md +325 -0
  177. package/templates/engineering/RFC-template.md +199 -0
  178. package/templates/engineering/architecture-template.md +277 -0
  179. package/templates/engineering/breakdown-subtasks-template.md +582 -0
  180. package/templates/engineering/c4-model-template.md +516 -0
  181. package/templates/engineering/data-contract-template.md +135 -0
  182. package/templates/engineering/data-pipeline-template.md +163 -0
  183. package/templates/engineering/plan-template.md +255 -0
  184. package/templates/engineering/qa/eng.qa.quality-gate-examples-template.md +311 -0
  185. package/templates/engineering/qa/eng.qa.quality-gate-report-template.md +249 -0
  186. package/templates/engineering/qa/qa.cypress-test-template.md +172 -0
  187. package/templates/engineering/qa/qa.exploratory-session-template.md +148 -0
  188. package/templates/engineering/qa/qa.quality-report-template.md +130 -0
  189. package/templates/engineering/qa/qa.release-signoff-template.md +54 -0
  190. package/templates/engineering/qa/qa.sprint-plan-template.md +49 -0
  191. package/templates/engineering/swagger-template.md +145 -0
  192. package/templates/engineering/tech-spec-template.md +497 -0
  193. package/templates/engineering/work-progress-template.md +155 -0
  194. package/workflows/AGENTS.md +240 -0
  195. package/workflows/README.md +160 -0
  196. package/workflows/all-tools.md +11 -0
  197. package/workflows/engineering/data/data.contract.md +202 -0
  198. package/workflows/engineering/data/data.new-pipeline.md +234 -0
  199. package/workflows/engineering/eng.breakdown-subtasks.md +420 -0
  200. package/workflows/engineering/eng.bug-audit.md +591 -0
  201. package/workflows/engineering/eng.build-tech-spec.md +1116 -0
  202. package/workflows/engineering/eng.create-ard-from-code.md +259 -0
  203. package/workflows/engineering/eng.create-ard.md +382 -0
  204. package/workflows/engineering/eng.create-rfc.md +245 -0
  205. package/workflows/engineering/eng.debug.md +479 -0
  206. package/workflows/engineering/eng.docs.md +40 -0
  207. package/workflows/engineering/eng.light-arch.md +84 -0
  208. package/workflows/engineering/eng.plan.md +213 -0
  209. package/workflows/engineering/eng.pr.md +466 -0
  210. package/workflows/engineering/eng.pre-pr.md +167 -0
  211. package/workflows/engineering/eng.review.md +185 -0
  212. package/workflows/engineering/eng.rpa.robot.md +342 -0
  213. package/workflows/engineering/eng.security-audit.md +312 -0
  214. package/workflows/engineering/eng.security-incident.md +275 -0
  215. package/workflows/engineering/eng.security-pipeline.md +210 -0
  216. package/workflows/engineering/eng.security-review.md +235 -0
  217. package/workflows/engineering/eng.start.md +494 -0
  218. package/workflows/engineering/eng.work.md +558 -0
  219. package/workflows/engineering/frontend/eng.frontend-component.md +190 -0
  220. package/workflows/engineering/frontend/eng.frontend-perf-audit.md +375 -0
  221. package/workflows/engineering/frontend/eng.frontend-review.md +185 -0
  222. package/workflows/engineering/qa/eng.qa-dev-quality-guide.md +51 -0
  223. package/workflows/engineering/qa/eng.qa-e2e-test-generation.md +51 -0
  224. package/workflows/engineering/qa/eng.qa-exploratory-session.md +60 -0
  225. package/workflows/engineering/qa/eng.qa-quality-gate-validation.md +202 -0
  226. package/workflows/engineering/qa/eng.qa-quality-report.md +83 -0
  227. package/workflows/engineering/qa/eng.qa-refinement-entry.md +83 -0
  228. package/workflows/engineering/qa/eng.qa-release-signoff.md +170 -0
  229. package/workflows/engineering/qa/eng.qa-sprint-planning.md +100 -0
  230. package/workflows/engineering/ta/eng.ta.atendimento.md +93 -0
  231. package/workflows/product/prod.roadmap.preview.md +110 -0
  232. package/workflows/product/prod.spec.breakdown.md +163 -0
  233. package/workflows/product/prod.spec.clarify.md +178 -0
  234. package/workflows/product/prod.spec.epic.md +154 -0
  235. package/workflows/product/prod.spec.frd.md +96 -0
  236. package/workflows/product/prod.spec.issue.md +145 -0
  237. package/workflows/product/prod.spec.md +60 -0
  238. package/workflows/product/prod.spec.prd.md +100 -0
  239. package/workflows/taxonomy.md +92 -0
  240. package/workflows/warm-up.md +574 -0
@@ -0,0 +1,249 @@
1
+ # Template de Comentário - Quality Gate
2
+
3
+ Estrutura padronizada para comentários de validação de tech spec no Jira.
4
+
5
+ ## Estrutura Base
6
+
7
+ ```markdown
8
+ ## 🎯 Quality Gate - Tech Spec
9
+
10
+ **Status**: [✅ Conforme / ⚠️ Parcialmente / 🚫 Não conforme]
11
+ **Score**: X/100
12
+ **Tipo de Card**: [Task / Spike / Bug]
13
+
14
+ ### ✅ Pontos Positivos
15
+ - Item 1
16
+ - Item 2
17
+ - Item 3
18
+
19
+ ### 🚫 Problemas Identificados
20
+
21
+ #### Bloqueantes
22
+ - [ ] **[Área]**: Descrição do problema e impacto
23
+ - [ ] **[Área]**: Descrição do problema e impacto
24
+
25
+ #### Melhorias Recomendadas
26
+ - [ ] **[Área]**: Sugestão de melhoria
27
+ - [ ] **[Área]**: Sugestão de melhoria
28
+
29
+ ### 🔧 Recomendações
30
+
31
+ 1. **[Área]**: Ação específica e acionável
32
+ - Exemplo concreto ou referência
33
+
34
+ 2. **[Área]**: Ação específica e acionável
35
+ - Exemplo concreto ou referência
36
+
37
+ ### 📚 Referência
38
+ Validação baseada em: (processo de quality gate do projeto)
39
+
40
+ ---
41
+ *Análise realizada pelo Quality Champion*
42
+ ```
43
+
44
+ ---
45
+
46
+ ## Variações por Status
47
+
48
+ ### ✅ CONFORME (Score 100%)
49
+
50
+ ```markdown
51
+ ## 🎯 Quality Gate - Tech Spec
52
+
53
+ **Status**: ✅ Conforme
54
+ **Score**: 100/100
55
+ **Tipo de Card**: [Task/Spike/Bug]
56
+
57
+ ### ✅ Pontos Positivos
58
+ - [Liste todos os critérios atendidos]
59
+ - [Destaque aspectos particularmente bem feitos]
60
+ - [Mencione completude da documentação]
61
+
62
+ ### 🔧 Recomendações
63
+
64
+ Tech spec aprovada! Pode prosseguir para breakdown de subtarefas.
65
+
66
+ **Próximos passos**:
67
+ 1. Executar `breakdown_spec_tech` para quebrar em subtarefas
68
+ 2. Revisar subtarefas geradas
69
+ 3. Iniciar implementação
70
+
71
+ ### 📚 Referência
72
+ Validação baseada em: (processo de quality gate do projeto)
73
+
74
+ ---
75
+ *Análise realizada pelo Quality Champion*
76
+ ```
77
+
78
+ ---
79
+
80
+ ### ⚠️ PARCIAL (Score 50-99%)
81
+
82
+ ```markdown
83
+ ## 🎯 Quality Gate - Tech Spec
84
+
85
+ **Status**: ⚠️ Parcialmente conforme
86
+ **Score**: X/100
87
+ **Tipo de Card**: [Task/Spike/Bug]
88
+
89
+ ### ✅ Pontos Positivos
90
+ - [Liste critérios já atendidos]
91
+ - [Destaque o que está bem feito]
92
+
93
+ ### 🚫 Problemas Identificados
94
+
95
+ #### Melhorias Recomendadas
96
+ - [ ] **[Critério]**: Problema específico identificado
97
+ - **Como melhorar**: Ação específica
98
+ - **Exemplo**: [Forneça exemplo concreto]
99
+
100
+ - [ ] **[Critério]**: Problema específico identificado
101
+ - **Como melhorar**: Ação específica
102
+
103
+ ### 🔧 Recomendações
104
+
105
+ 1. **[Área crítica]**: Priorize esta correção
106
+ - [Orientação detalhada]
107
+
108
+ 2. **[Área secundária]**: Melhoria incremental
109
+ - [Orientação detalhada]
110
+
111
+ **Decisão**: Card pode prosseguir com ressalvas. Considere as melhorias para aumentar qualidade.
112
+
113
+ ### 📚 Referência
114
+ Validação baseada em: (processo de quality gate do projeto)
115
+
116
+ ---
117
+ *Análise realizada pelo Quality Champion*
118
+ ```
119
+
120
+ ---
121
+
122
+ ### 🚫 BLOQUEADO (Score < 50%)
123
+
124
+ ```markdown
125
+ ## 🎯 Quality Gate - Tech Spec
126
+
127
+ **Status**: 🚫 Não conforme
128
+ **Score**: X/100
129
+ **Tipo de Card**: [Task/Spike/Bug]
130
+
131
+ ### 🚫 Problemas Identificados
132
+
133
+ #### Bloqueantes (Obrigatório corrigir)
134
+ - [ ] **[Critério crítico]**: AUSENTE - Descrição do gap
135
+ - **Impacto**: Por que isso bloqueia a implementação
136
+ - **Como corrigir**: [Passo a passo ou exemplo]
137
+
138
+ - [ ] **[Critério crítico]**: AUSENTE - Descrição do gap
139
+ - **Impacto**: Por que isso bloqueia a implementação
140
+ - **Como corrigir**: [Passo a passo ou exemplo]
141
+
142
+ #### Melhorias Recomendadas
143
+ - [ ] **[Critério]**: Problema adicional
144
+ - **Como melhorar**: Sugestão específica
145
+
146
+ ### 🔧 Recomendações
147
+
148
+ **⚠️ Card BLOQUEADO para breakdown**
149
+
150
+ Antes de prosseguir, é necessário:
151
+
152
+ 1. **[Área crítica 1]**: [Ação obrigatória]
153
+ - Exemplo: [Fornecer exemplo concreto]
154
+ - Referência: [Link para template ou doc]
155
+
156
+ 2. **[Área crítica 2]**: [Ação obrigatória]
157
+ - Exemplo: [Fornecer exemplo concreto]
158
+ - Referência: [Link para template ou doc]
159
+
160
+ **Após correções**:
161
+ - Solicite nova análise executando `quality_gate_tech_spec` novamente
162
+ - O card será reavaliado com os novos critérios
163
+
164
+ ### 📚 Referência
165
+ Validação baseada em: (processo de quality gate do projeto)
166
+
167
+ ---
168
+ *Análise realizada pelo Quality Champion*
169
+ ```
170
+
171
+ ---
172
+
173
+ ## Guia de Preenchimento
174
+
175
+ ### Seção: Pontos Positivos
176
+ - **Quando usar**: Sempre que houver critérios atendidos
177
+ - **Formato**: Lista com bullets
178
+ - **Tom**: Positivo e específico
179
+ - **Exemplo**: ❌ "Descrição boa" → ✅ "Descrição clara com contexto do problema e objetivo bem definido"
180
+
181
+ ### Seção: Problemas Identificados
182
+
183
+ #### Bloqueantes
184
+ - **Quando usar**: Critérios obrigatórios não atendidos
185
+ - **Formato**: Checkbox + Área + Descrição
186
+ - **Tom**: Objetivo e direto
187
+ - **Sempre incluir**: Impacto + Como corrigir
188
+
189
+ #### Melhorias Recomendadas
190
+ - **Quando usar**: Critérios opcionais ou melhorias incrementais
191
+ - **Formato**: Checkbox + Área + Sugestão
192
+ - **Tom**: Construtivo e educativo
193
+
194
+ ### Seção: Recomendações
195
+ - **Quando usar**: Sempre
196
+ - **Formato**: Numerado com ações específicas
197
+ - **Tom**: Acionável e prático
198
+ - **Sempre incluir**: Exemplos concretos ou referências
199
+
200
+ ---
201
+
202
+ ## Boas Práticas
203
+
204
+ ### ✅ FAZER
205
+
206
+ - Ser específico nos problemas identificados
207
+ - Fornecer exemplos concretos
208
+ - Incluir links para templates ou documentação
209
+ - Usar checkboxes para facilitar acompanhamento
210
+ - Focar no "como corrigir", não apenas no problema
211
+ - Priorizar problemas bloqueantes no topo
212
+
213
+ ### ❌ EVITAR
214
+
215
+ - Linguagem vaga ou genérica
216
+ - Críticas sem sugestões de correção
217
+ - Tom negativo ou desmotivador
218
+ - Excesso de formalidade
219
+ - Mencionar pessoas (removido do processo)
220
+ - Listar muitos problemas sem priorização
221
+
222
+ ---
223
+
224
+ ## Emojis Padronizados
225
+
226
+ | Emoji | Uso | Contexto |
227
+ |-------|-----|----------|
228
+ | 🎯 | Título principal | Quality Gate - Tech Spec |
229
+ | ✅ | Conformidade | Status conforme, pontos positivos |
230
+ | ⚠️ | Atenção | Status parcial, ressalvas |
231
+ | 🚫 | Bloqueio | Status não conforme, problemas críticos |
232
+ | 🔧 | Ação | Recomendações, próximos passos |
233
+ | 📚 | Referência | Links para documentação |
234
+
235
+ ---
236
+
237
+ ## Checklist Pré-Publicação
238
+
239
+ Antes de publicar o comentário, verifique:
240
+
241
+ - [ ] Status correto (Conforme/Parcial/Bloqueado)
242
+ - [ ] Score calculado está presente
243
+ - [ ] Tipo de card identificado
244
+ - [ ] Todos os problemas bloqueantes listados
245
+ - [ ] Recomendações são acionáveis
246
+ - [ ] Exemplos concretos fornecidos
247
+ - [ ] Link de referência incluído
248
+ - [ ] Tom objetivo e construtivo
249
+ - [ ] Checkboxes para acompanhamento
@@ -0,0 +1,172 @@
1
+ # Template — Spec Cypress + TypeScript
2
+
3
+ Template base para criação de specs `.cy.ts` seguindo os padrões definidos em
4
+ `$RULES_FOLDER/engineering/qa/eng.qa.cypress-standards-rules.md`.
5
+
6
+ ---
7
+
8
+ ## Estrutura Base
9
+
10
+ ```typescript
11
+ // e2e/{dominio}/{feature}.cy.ts
12
+
13
+ import { {Dominio}Page } from '../../support/pages/{Dominio}Page'
14
+
15
+ const page = new {Dominio}Page()
16
+
17
+ describe('{Domínio} — {Feature}', () => {
18
+ beforeEach(() => {
19
+ // Setup comum: autenticação e navegação
20
+ cy.loginAs('{perfil}')
21
+ page.visit()
22
+ })
23
+
24
+ // ---------------------------------------------------------------------------
25
+ // Happy Path
26
+ // ---------------------------------------------------------------------------
27
+ context('quando {condição principal — estado válido}', () => {
28
+ beforeEach(() => {
29
+ cy.intercept('{MÉTODO}', '**/api/{recurso}', {
30
+ fixture: '{dominio}/{recurso}-{metodo}.json',
31
+ }).as('{verbRecurso}')
32
+ })
33
+
34
+ it('deve {comportamento principal esperado}', () => {
35
+ // Arrange
36
+ // (dados já preparados no beforeEach)
37
+
38
+ // Act
39
+ page.{acao}()
40
+ cy.wait('@{verbRecurso}')
41
+
42
+ // Assert
43
+ page.shouldShow{Resultado}()
44
+ })
45
+ })
46
+
47
+ // ---------------------------------------------------------------------------
48
+ // Edge Cases
49
+ // ---------------------------------------------------------------------------
50
+ context('quando {condição de borda}', () => {
51
+ it('deve {comportamento esperado no limite}', () => {
52
+ // ...
53
+ })
54
+ })
55
+
56
+ // ---------------------------------------------------------------------------
57
+ // Negative Tests
58
+ // ---------------------------------------------------------------------------
59
+ context('quando {condição de erro / dados inválidos}', () => {
60
+ it('deve exibir {mensagem de erro esperada}', () => {
61
+ cy.intercept('{MÉTODO}', '**/api/{recurso}', {
62
+ statusCode: 422,
63
+ body: { message: '{mensagem de erro da API}' },
64
+ }).as('{verbRecursoError}')
65
+
66
+ page.{acaoComDadosInvalidos}()
67
+ cy.wait('@{verbRecursoError}')
68
+
69
+ page.shouldShowError('{mensagem esperada}')
70
+ })
71
+ })
72
+ })
73
+ ```
74
+
75
+ ---
76
+
77
+ ## Page Object Base
78
+
79
+ ```typescript
80
+ // support/pages/{Dominio}Page.ts
81
+
82
+ export class {Dominio}Page {
83
+ visit() {
84
+ cy.visit('/{rota}')
85
+ return this
86
+ }
87
+
88
+ // --- Ações ---
89
+
90
+ {acao}() {
91
+ cy.get('[data-testid="{btn-dominio-acao}"]').click()
92
+ return this
93
+ }
94
+
95
+ fill{Campo}(valor: string) {
96
+ cy.get('[data-testid="input-{dominio}-{campo}"]').clear().type(valor)
97
+ return this
98
+ }
99
+
100
+ submit() {
101
+ cy.get('[data-testid="btn-{dominio}-submit"]').click()
102
+ return this
103
+ }
104
+
105
+ // --- Asserções ---
106
+
107
+ shouldShow{Resultado}() {
108
+ cy.get('[data-testid="{el-dominio-resultado}"]').should('be.visible')
109
+ return this
110
+ }
111
+
112
+ shouldShowError(message: string) {
113
+ cy.get('[data-testid="alert-error-message"]').should('contain', message)
114
+ return this
115
+ }
116
+
117
+ shouldBeOnPage() {
118
+ cy.url().should('include', '/{rota}')
119
+ return this
120
+ }
121
+ }
122
+ ```
123
+
124
+ ---
125
+
126
+ ## Custom Command de Autenticação (referência)
127
+
128
+ ```typescript
129
+ // support/commands/auth.commands.ts
130
+
131
+ Cypress.Commands.add('loginAs', (perfil: '{perfil1}' | '{perfil2}') => {
132
+ cy.fixture(`usuarios/${perfil}`).then((usuario) => {
133
+ cy.request('POST', '/api/auth/login', {
134
+ email: usuario.email,
135
+ password: Cypress.env('DEFAULT_PASSWORD'),
136
+ }).then(({ body }) => {
137
+ window.localStorage.setItem('auth_token', body.token)
138
+ })
139
+ })
140
+ })
141
+ ```
142
+
143
+ ---
144
+
145
+ ## Fixture de Intercept (referência)
146
+
147
+ ```json
148
+ // fixtures/{dominio}/{recurso}-get.json
149
+ {
150
+ "data": [
151
+ {
152
+ "id": "{id-1}",
153
+ "{campo}": "{valor}"
154
+ }
155
+ ],
156
+ "total": 1,
157
+ "page": 1
158
+ }
159
+ ```
160
+
161
+ ---
162
+
163
+ ## Checklist antes de fazer commit da spec
164
+
165
+ - [ ] Todos os seletores usam `data-testid`
166
+ - [ ] Nenhum `cy.wait({número})` hardcoded — apenas `cy.wait('@alias')`
167
+ - [ ] Cada `it` testa exatamente um comportamento
168
+ - [ ] Todas as chamadas de API estão interceptadas
169
+ - [ ] Fixtures tipadas com `cy.fixture<Tipo>(...)`
170
+ - [ ] Happy Path + pelo menos 1 Negative Test cobertos
171
+ - [ ] Page Object retorna `this` em todos os métodos de ação
172
+ - [ ] `beforeEach` garante estado limpo para cada teste
@@ -0,0 +1,148 @@
1
+ # Template — Sessão de Teste Exploratório
2
+
3
+ Documento de registro de sessão exploratória estruturada.
4
+ Preencher antes, durante e após a sessão conforme indicado.
5
+
6
+ ---
7
+
8
+ ## Cabeçalho
9
+
10
+ ```markdown
11
+ **Sessão ID**: EXP-{YYYYMMDD}-{N}
12
+ **Data**: {YYYY-MM-DD}
13
+ **QA Responsável**: {nome}
14
+ **Duração**: {30 / 60 / 90} minutos
15
+ **Início**: {HH:MM}
16
+ **Fim**: {HH:MM}
17
+ **Ambiente**: {staging / homologação / produção}
18
+ **Versão / Build**: {tag ou hash de deploy}
19
+ ```
20
+
21
+ ---
22
+
23
+ ## Charter
24
+
25
+ > Preencher antes de iniciar a sessão.
26
+
27
+ ```
28
+ Explorar {área/feature/fluxo}
29
+ para descobrir {tipo de informação / riscos a validar}
30
+ com foco em {dimensão(ões) de qualidade — máximo 2}
31
+ ```
32
+
33
+ **Dimensões escolhidas:**
34
+ - [ ] Funcionalidade
35
+ - [ ] Robustez
36
+ - [ ] Consistência
37
+ - [ ] Performance percebida
38
+ - [ ] Acessibilidade
39
+ - [ ] Segurança superficial
40
+ - [ ] Integração
41
+ - [ ] Regressão
42
+
43
+ ---
44
+
45
+ ## Escopo
46
+
47
+ > O que está dentro e fora desta sessão.
48
+
49
+ **Incluído:**
50
+ - {fluxo/área 1}
51
+ - {fluxo/área 2}
52
+
53
+ **Excluído (coberto em outra sessão ou fora de escopo):**
54
+ - {item excluído e motivo}
55
+
56
+ ---
57
+
58
+ ## Roteiro de Risco (pré-sessão)
59
+
60
+ > Listar as hipóteses de risco a investigar — não é um script, é um guia de atenção.
61
+
62
+ | # | Hipótese de risco | Área | Prioridade |
63
+ |---|-------------------|------|------------|
64
+ | 1 | {o que pode falhar?} | {componente} | Alta / Média / Baixa |
65
+ | 2 | | | |
66
+
67
+ ---
68
+
69
+ ## Log de Execução
70
+
71
+ > Preencher durante a sessão — anotações livres, não precisa ser formal.
72
+
73
+ ```
74
+ {HH:MM} — {o que foi feito / observado}
75
+ {HH:MM} — {achado ou comportamento interessante}
76
+ {HH:MM} — {dúvida para investigar}
77
+ ```
78
+
79
+ ---
80
+
81
+ ## Achados
82
+
83
+ > Classificar com severidade conforme `eng.qa.exploratory-session-rules.md`.
84
+
85
+ ### Bugs
86
+
87
+ | ID | Título | Severidade | Reprodutível? | Evidência |
88
+ |----|--------|------------|---------------|-----------|
89
+ | B01 | {título conciso} | S{1-4} | Sim / Às vezes / Não | {link / screenshot} |
90
+
91
+ **Detalhamento por bug:**
92
+
93
+ #### B01 — {título}
94
+
95
+ **Severidade:** S{N}
96
+ **Passos para reproduzir:**
97
+ 1. {passo 1}
98
+ 2. {passo 2}
99
+ 3. {passo N}
100
+
101
+ **Comportamento observado:** {o que aconteceu}
102
+ **Comportamento esperado:** {o que deveria acontecer}
103
+ **Ambiente/dados:** {URL, dados utilizados, usuário, etc.}
104
+ **Evidência:** {link para screenshot/vídeo}
105
+
106
+ ---
107
+
108
+ ### Melhorias (S5 — não são bugs)
109
+
110
+ | ID | Sugestão | Área |
111
+ |----|----------|------|
112
+ | M01 | {sugestão de UX/comportamento} | {área} |
113
+
114
+ ---
115
+
116
+ ## Cobertura da Sessão
117
+
118
+ | Hipótese | Investigada? | Resultado |
119
+ |----------|-------------|-----------|
120
+ | {hipótese 1} | ✅ Sim / ⚠️ Parcial / ❌ Não | {o que foi encontrado} |
121
+
122
+ ---
123
+
124
+ ## Status do Charter
125
+
126
+ - [ ] ✅ Completo — charter totalmente coberto
127
+ - [ ] ⚠️ Parcial — {o que ficou pendente e motivo}
128
+ - [ ] ❌ Bloqueado — {causa do bloqueio}
129
+
130
+ ---
131
+
132
+ ## Próximos Passos
133
+
134
+ - [ ] Criar cards no $TASK_MANAGER para bugs S1–S4 via `eng-qa-bug-report`
135
+ - [ ] {ação específica derivada dos achados}
136
+ - [ ] Agendar sessão de follow-up se necessário: {foco da próxima sessão}
137
+
138
+ ---
139
+
140
+ ## Métricas da Sessão
141
+
142
+ ```
143
+ Bugs encontrados : S1={N} · S2={N} · S3={N} · S4={N}
144
+ Melhorias (S5) : {N}
145
+ Hipóteses cobertas : {N}/{total}
146
+ Charter : completo / parcial / bloqueado
147
+ Tempo efetivo : {minutos} min de {total definido} min
148
+ ```
@@ -0,0 +1,130 @@
1
+ ---
2
+ period: "{Sprint N / Release X.Y}"
3
+ squad: "{SQUAD}"
4
+ version: "1.0"
5
+ status: Draft
6
+ ---
7
+
8
+ # Template — Relatório de Qualidade por Sprint/Release
9
+
10
+ Relatório consolidado de qualidade para o período. Gerado pelo skill `eng-qa-quality-report`
11
+ a partir das sessões exploratórias, bug reports e quality gates do período.
12
+
13
+ ---
14
+
15
+ ## Cabeçalho
16
+
17
+ ```markdown
18
+ **Relatório**: QA-REPORT-{SQUAD}-{PERIODO}
19
+ **Período**: {Sprint N / Release X.Y} — {YYYY-MM-DD} a {YYYY-MM-DD}
20
+ **Squad**: {SQUAD}
21
+ **QA Responsável**: {nome(s)}
22
+ **Gerado em**: {YYYY-MM-DD}
23
+ ```
24
+
25
+ ---
26
+
27
+ ## Resumo Executivo
28
+
29
+ > 3–5 linhas — visão geral da saúde de qualidade do período.
30
+
31
+ {Síntese do período: principais entregas validadas, riscos encontrados, tendências observadas.}
32
+
33
+ ---
34
+
35
+ ## Métricas do Período
36
+
37
+ ### Volume de Testes
38
+
39
+ | Tipo | Qtd | vs. Período Anterior |
40
+ |------|-----|----------------------|
41
+ | Sessões exploratórias realizadas | {N} | {+N / -N / igual} |
42
+ | Quality gates validados | {N} | |
43
+ | Testes E2E adicionados/atualizados | {N} | |
44
+ | Bugs reportados (total) | {N} | |
45
+
46
+ ### Distribuição de Bugs por Severidade
47
+
48
+ | Severidade | Encontrados | Resolvidos | Em aberto |
49
+ |------------|------------|------------|-----------|
50
+ | S1 — Crítico | {N} | {N} | {N} |
51
+ | S2 — Alto | {N} | {N} | {N} |
52
+ | S3 — Médio | {N} | {N} | {N} |
53
+ | S4 — Baixo | {N} | {N} | {N} |
54
+ | **Total** | **{N}** | **{N}** | **{N}** |
55
+
56
+ ### Quality Gates
57
+
58
+ | Status | Qtd | % do total |
59
+ |--------|-----|------------|
60
+ | ✅ Conforme (100%) | {N} | {%} |
61
+ | ⚠️ Parcial (50–99%) | {N} | {%} |
62
+ | 🚫 Bloqueado (< 50%) | {N} | {%} |
63
+
64
+ ---
65
+
66
+ ## Features Validadas
67
+
68
+ | Feature / Task | QG | Sessões | Bugs S1/S2 | Status |
69
+ |---------------|-----|---------|------------|--------|
70
+ | {nome} | ✅/⚠️/🚫 | {N} | {N} | Aprovado / Pendente / Bloqueado |
71
+
72
+ ---
73
+
74
+ ## Bugs em Destaque
75
+
76
+ ### S1 — Críticos
77
+
78
+ > Listar todos os S1 do período — mesmo os já resolvidos.
79
+
80
+ | ID | Título | Descoberto em | Resolvido? | Tempo de resolução |
81
+ |----|--------|--------------|------------|-------------------|
82
+ | {ID} | {título} | {sessão / quality gate} | Sim / Não | {horas/dias} |
83
+
84
+ ### S2 — Altos em Aberto
85
+
86
+ | ID | Título | Área | Há quanto tempo |
87
+ |----|--------|------|----------------|
88
+ | {ID} | {título} | {área} | {N dias} |
89
+
90
+ ---
91
+
92
+ ## Tendências
93
+
94
+ ### Áreas com Maior Concentração de Bugs
95
+
96
+ | Área / Módulo | Bugs no período | Tendência |
97
+ |---------------|----------------|-----------|
98
+ | {módulo} | {N} | ↑ aumentando / → estável / ↓ melhorando |
99
+
100
+ ### Observações de Processo
101
+
102
+ - {O que funcionou bem neste período}
103
+ - {O que pode melhorar}
104
+ - {Risco identificado para o próximo período}
105
+
106
+ ---
107
+
108
+ ## Cobertura de Testes E2E
109
+
110
+ | Domínio | Specs ativas | Cobertura estimada | Gaps identificados |
111
+ |---------|-------------|--------------------|--------------------|
112
+ | {domínio} | {N} | Alta / Média / Baixa | {o que falta} |
113
+
114
+ ---
115
+
116
+ ## Recomendações para o Próximo Período
117
+
118
+ | Prioridade | Ação | Responsável sugerido |
119
+ |------------|------|----------------------|
120
+ | Alta | {ação específica} | QA / Dev / PM |
121
+ | Média | {ação} | |
122
+ | Baixa | {ação} | |
123
+
124
+ ---
125
+
126
+ ## Sessões Realizadas (referência)
127
+
128
+ | Sessão ID | Feature | Duração | Bugs | Charter |
129
+ |-----------|---------|---------|------|---------|
130
+ | EXP-{ID} | {feature} | {min} | S1={N} S2={N} | ✅/⚠️/❌ |