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,185 @@
1
+ ---
2
+ name: eng.frontend-review
3
+ description: >
4
+ Workflow de revisão de código específico para PRs frontend: TypeScript, tokens,
5
+ acessibilidade, performance, micro frontend e design system.
6
+ Complementa o eng.review genérico com checklist frontend aprofundado.
7
+ author: jarvis-team
8
+ version: "1.0"
9
+
10
+ ---
11
+
12
+ # Workflow: Revisão de Código Frontend
13
+
14
+ ## Contexto
15
+
16
+ Use este workflow ao revisar PRs que envolvem componentes React, design system,
17
+ micro frontend ou qualquer código de interface.
18
+
19
+ **Skill de referência**: `eng-frontend`, `eng-design-system`, `eng-microfrontend`
20
+
21
+ ---
22
+
23
+ ## Como usar
24
+
25
+ Execute para um PR específico ou para um conjunto de arquivos:
26
+
27
+ ```bash
28
+ # Ler arquivos alterados no PR
29
+ git diff origin/main...HEAD --name-only | grep -E "\.(tsx|ts|css|scss)$"
30
+
31
+ # Ler cada arquivo alterado antes de revisar
32
+ ```
33
+
34
+ ---
35
+
36
+ ## Checklist de Revisão
37
+
38
+ ### 1. TypeScript
39
+
40
+ - [ ] Sem `any` não documentado
41
+ - [ ] Sem `@ts-ignore` sem comentário explicativo
42
+ - [ ] Sem `!` (non-null assertion) sem verificação prévia
43
+ - [ ] Props exportadas para componentes públicos
44
+ - [ ] `strict: true` não relaxado
45
+
46
+ **Flags de atenção:**
47
+ ```bash
48
+ grep -n "as any\|@ts-ignore\|@ts-expect-error\| \! " {arquivo}
49
+ ```
50
+
51
+ ---
52
+
53
+ ### 2. Componentes
54
+
55
+ - [ ] Single Responsibility — componente faz uma coisa só
56
+ - [ ] Sem lógica de negócio acoplada ao componente de UI
57
+ - [ ] Sem fetch direto no componente (usar hooks ou Server Components)
58
+ - [ ] `forwardRef` em componentes com elemento DOM
59
+ - [ ] Estados visuais tratados: loading, erro, vazio
60
+
61
+ **Perguntas a fazer no review:**
62
+ - "Este componente pertence ao design system ou ao remote?"
63
+ - "Existe componente similar no design system que poderia ser usado?"
64
+ - "Esta lógica deveria estar em um hook?"
65
+
66
+ ---
67
+
68
+ ### 3. Tokens e Design System
69
+
70
+ - [ ] Cores via tokens semânticos (sem `#hex`, `rgb()`, `hsl()`)
71
+ - [ ] Espaçamentos via escala do design system (sem px hardcodados inline)
72
+ - [ ] Componentes reutilizáveis criados no design system, não duplicados por remote
73
+ - [ ] Variantes com `cva` (não condicionais de classe espalhadas)
74
+
75
+ **Flags de atenção:**
76
+ ```bash
77
+ grep -n "#[0-9a-fA-F]\{3,6\}\|rgb(\|style={{" {arquivo}
78
+ ```
79
+
80
+ ---
81
+
82
+ ### 4. Acessibilidade
83
+
84
+ - [ ] Semântica HTML correta (`<button>` para ações, `<a>` para navegação)
85
+ - [ ] Imagens com `alt` (informativas: descritivo; decorativas: `alt=""`)
86
+ - [ ] Formulários: `<label>` associado via `htmlFor` ou `aria-label`
87
+ - [ ] Erros de form com `role="alert"` ou `aria-live`
88
+ - [ ] Elementos interativos são navegáveis por teclado
89
+ - [ ] Focus visível — `outline` não removido sem substituto
90
+
91
+ **Flags de atenção:**
92
+ ```bash
93
+ grep -n "outline-none\|outline: none\|tabIndex={-1}" {arquivo}
94
+ # outline-none do Tailwind em elementos interativos sem focus-visible alternativo
95
+ ```
96
+
97
+ ---
98
+
99
+ ### 5. Performance
100
+
101
+ - [ ] Sem `useEffect` para fetch de dados (usar React Query / Server Components)
102
+ - [ ] Lazy loading em componentes pesados (`lazy()` + `<Suspense>`)
103
+ - [ ] Dependências novas justificadas (avaliar impacto no bundle)
104
+ - [ ] Memoização só onde necessário e comprovado (`memo`, `useMemo`, `useCallback`)
105
+ - [ ] Imagens com `width` e `height` definidos
106
+
107
+ **Perguntas a fazer:**
108
+ - "Este componente precisa ser Client Component, ou funciona como Server Component?"
109
+ - "Esta dependência nova já está no bundle ou é nova?"
110
+
111
+ ---
112
+
113
+ ### 6. Micro Frontend (se aplicável)
114
+
115
+ - [ ] Sem import direto de outro remote
116
+ - [ ] Comunicação via event bus ou props do shell
117
+ - [ ] Contrato de interface atualizado se houver mudança na API exposta
118
+ - [ ] Remote ainda funciona em modo standalone
119
+
120
+ **Flag de atenção:**
121
+ ```bash
122
+ # Import entre remotes (nunca deve existir)
123
+ grep -n "from.*'apps/" {arquivo}
124
+ grep -n "from.*'remote" {arquivo}
125
+ ```
126
+
127
+ ---
128
+
129
+ ### 7. Testes
130
+
131
+ - [ ] Testes para o happy path
132
+ - [ ] Testes para estado de erro
133
+ - [ ] Queries por acessibilidade (`getByRole`, `getByLabelText`)
134
+ - [ ] Sem `getByTestId` como primeira opção
135
+ - [ ] Sem `act()` manual desnecessário
136
+
137
+ ---
138
+
139
+ ### 8. Código Geral
140
+
141
+ - [ ] Sem `console.log` commitado
142
+ - [ ] Sem `TODO` sem issue associada
143
+ - [ ] Seguindo convenções de nomenclatura do projeto
144
+
145
+ ```bash
146
+ grep -n "console\.log\|console\.error\|console\.warn" {arquivo}
147
+ ```
148
+
149
+ ---
150
+
151
+ ## Classificação do Feedback
152
+
153
+ Use prefixos para clareza no review:
154
+
155
+ ```
156
+ [bloqueante] — deve ser resolvido antes do merge
157
+ [sugestão] — melhoria não obrigatória, mas recomendada
158
+ [dúvida] — pergunta para entender melhor a decisão
159
+ [elogio] — destacar o que foi bem feito
160
+ ```
161
+
162
+ ---
163
+
164
+ ## Output do Review
165
+
166
+ ```
167
+ ## Review Frontend — {título do PR}
168
+
169
+ ### Resumo
170
+ {1-3 linhas: qual é a mudança e qual o impacto geral}
171
+
172
+ ### Pontos de atenção
173
+ {lista dos [bloqueante] encontrados}
174
+
175
+ ### Sugestões
176
+ {lista dos [sugestão]}
177
+
178
+ ### Dúvidas
179
+ {lista dos [dúvida]}
180
+
181
+ ### Veredicto
182
+ [ ] Aprovado
183
+ [ ] Aprovado com ressalvas (sugestões não bloqueantes)
184
+ [ ] Mudanças necessárias (bloqueantes listados acima)
185
+ ```
@@ -0,0 +1,51 @@
1
+ ---
2
+ description: Orienta desenvolvedores sobre cobertura de testes para uma feature ou PR
3
+ auto_execution_mode: 2
4
+ rules_file: "$IDE/rules/engineering/qa/eng.qa.cypress-standards-rules.md"
5
+ model_tier: medium
6
+ model_justification: Análise de código e geração de orientação estruturada
7
+ ---
8
+
9
+ # qa.dev-quality-guide
10
+
11
+ Analisa o código de um desenvolvedor e orienta sobre quais testes Cypress escrever,
12
+ usando os padrões do projeto. Não escreve o teste — guia e valida.
13
+
14
+ > 📋 **Rules**: `$IDE/rules/engineering/qa/eng.qa.cypress-standards-rules.md`
15
+ > 🔧 **Skill**: `eng-qa-dev-guide`
16
+
17
+ ---
18
+
19
+ ## Entrada
20
+
21
+ ```
22
+ #$ARGUMENTS
23
+ ```
24
+
25
+ Aceita: caminho de arquivo(s), ID de task no $TASK_MANAGER, ou diff/PR em texto.
26
+
27
+ **Se não receber argumentos**, perguntar:
28
+ - Qual arquivo ou PR do dev você quer analisar?
29
+
30
+ ---
31
+
32
+ ## Execução
33
+
34
+ Invocar Skill tool: `eng-qa-dev-guide`
35
+
36
+ A skill irá:
37
+ 1. Ler o código fornecido e mapear o que foi alterado/adicionado
38
+ 2. Verificar quais specs de teste já existem para o domínio
39
+ 3. Gerar análise de cobertura: o que está coberto vs. o que precisa de teste
40
+ 4. Orientar sobre como estruturar cada cenário (setup, intercept, ação, asserção)
41
+ 5. Indicar quais `data-testid` precisam ser adicionados
42
+ 6. Entregar checklist acionável para o dev
43
+
44
+ ---
45
+
46
+ ## Output
47
+
48
+ - Análise de cobertura: coberto vs. crítico vs. recomendado
49
+ - Orientação de implementação para cada cenário necessário
50
+ - Checklist de testes a implementar antes do merge
51
+ - Lista de `data-testid` pendentes no código
@@ -0,0 +1,51 @@
1
+ ---
2
+ description: Gera testes E2E Cypress a partir de uma feature, task ou spec
3
+ auto_execution_mode: 2
4
+ rules_file: "$IDE/rules/engineering/qa/eng.qa.cypress-standards-rules.md"
5
+ template_file: "$IDE/templates/engineering/qa/qa.cypress-test-template.md"
6
+ model_tier: high
7
+ model_justification: Requer análise de codebase, geração de Page Objects e specs completas
8
+ ---
9
+
10
+ # qa.e2e-test-generation
11
+
12
+ Gera testes E2E Cypress + TypeScript para uma feature a partir de spec, task ou descrição.
13
+
14
+ > 📋 **Rules**: `$IDE/rules/engineering/qa/eng.qa.cypress-standards-rules.md`
15
+ > 📤 **Template**: `$IDE/templates/engineering/qa/qa.cypress-test-template.md`
16
+ > 🔧 **Skill**: `eng-qa-cypress-e2e`
17
+
18
+ ---
19
+
20
+ ## Entrada
21
+
22
+ ```
23
+ #$ARGUMENTS
24
+ ```
25
+
26
+ Aceita: caminho de spec/task, ID de task no $TASK_MANAGER, ou descrição do fluxo em linguagem natural.
27
+
28
+ **Se não receber argumentos**, perguntar:
29
+ - Qual feature ou fluxo deseja cobrir com testes E2E?
30
+
31
+ ---
32
+
33
+ ## Execução
34
+
35
+ Invocar Skill tool: `eng-qa-cypress-e2e`
36
+
37
+ A skill irá:
38
+ 1. Mapear a estrutura de testes existente no projeto
39
+ 2. Analisar o fluxo e identificar cenários (happy path, edge cases, negative tests)
40
+ 3. Confirmar cenários com o QA antes de gerar
41
+ 4. Gerar: Page Object + fixtures + custom commands (se necessário) + spec `.cy.ts`
42
+ 5. Exibir checklist de `data-testid` que precisam ser adicionados ao código da aplicação
43
+
44
+ ---
45
+
46
+ ## Output
47
+
48
+ - `{TEST_FOLDER}/e2e/{dominio}/{feature}.cy.ts` — spec gerada
49
+ - `{TEST_FOLDER}/support/pages/{Dominio}Page.ts` — Page Object (novo ou atualizado)
50
+ - `{TEST_FOLDER}/fixtures/{dominio}/*.json` — fixtures de intercept
51
+ - Checklist de `data-testid` pendentes no código da aplicação
@@ -0,0 +1,60 @@
1
+ ---
2
+ description: Conduz sessão de teste exploratório estruturada com charter, roteiro de risco e registro de achados
3
+ auto_execution_mode: 2
4
+ rules_file: "$IDE/rules/engineering/qa/eng.qa.exploratory-session-rules.md"
5
+ template_file: "$IDE/templates/engineering/qa/qa.exploratory-session-template.md"
6
+ model_tier: medium
7
+ model_justification: Análise de risco e estruturação de sessão — raciocínio moderado
8
+ ---
9
+
10
+ # qa.exploratory-session
11
+
12
+ Conduz ou documenta uma sessão de teste exploratório, gerando o doc de sessão estruturado
13
+ e criando cards de bug via `eng-qa-bug-report` ao final.
14
+
15
+ > 📋 **Rules**: `$IDE/rules/engineering/qa/eng.qa.exploratory-session-rules.md`
16
+ > 📤 **Template**: `$IDE/templates/engineering/qa/qa.exploratory-session-template.md`
17
+ > 🔧 **Skill**: `eng-qa-exploratory`
18
+
19
+ ---
20
+
21
+ ## Entrada
22
+
23
+ ```
24
+ #$ARGUMENTS
25
+ ```
26
+
27
+ Aceita: nome da feature/módulo a explorar, ou caminho de doc de sessão já realizada.
28
+
29
+ **Se não receber argumentos**, a skill perguntará o modo desejado:
30
+ - `plan` — planejar sessão antes de executar
31
+ - `document` — registrar achados de sessão já realizada
32
+ - `report` — processar doc e criar bug cards
33
+
34
+ ---
35
+
36
+ ## Execução
37
+
38
+ Invocar Skill tool: `eng-qa-exploratory`
39
+
40
+ A skill irá (modo `plan`):
41
+ 1. Coletar escopo, contexto, tempo disponível e ambiente
42
+ 2. Analisar riscos e gerar hipóteses priorizadas
43
+ 3. Criar doc de sessão em `$SESSIONS_DIR/qa/EXP-{YYYYMMDD}-{N}.md`
44
+
45
+ A skill irá (modo `document`):
46
+ 1. Carregar doc de sessão existente
47
+ 2. Coletar achados em linguagem natural do QA
48
+ 3. Classificar severidade e preencher o documento
49
+ 4. Acionar `eng-qa-bug-report` para bugs S1–S4
50
+
51
+ A skill irá (modo `report`):
52
+ 1. Processar doc de sessão
53
+ 2. Criar todos os cards de bug em batch via `eng-qa-bug-report`
54
+
55
+ ---
56
+
57
+ ## Output
58
+
59
+ - `$SESSIONS_DIR/qa/EXP-{ID}.md` — documento de sessão estruturado
60
+ - Cards criados no $TASK_MANAGER para cada bug S1–S4
@@ -0,0 +1,202 @@
1
+ ---
2
+ description: Validação de quality gate de uma tech spec antes do breakdown de subtarefas
3
+ auto_execution_mode: 2
4
+ agent: "$IDE/agents/engineering/qa/eng.qa.quality-champion-task-agent.md"
5
+ rules_file: "$IDE/rules/engineering/qa/eng.qa.tech-spec-validation-criteria-rules.md"
6
+ recommended_model: claude-sonnet-4-20250514
7
+ model_tier: medium
8
+ model_justification: Validação estruturada de specs contra critérios definidos — não requer raciocínio arquitetural complexo
9
+ ---
10
+
11
+ # Quality Gate - Tech Spec
12
+
13
+ ## Skill recomendado
14
+
15
+ Use o skill `eng-qa-gate` como fonte de verdade para o processo de validação e formato de saída:
16
+
17
+ - Arquivo: `$IDE/skills/eng-qa-gate/SKILL.md`
18
+
19
+ ## Agente Ativado
20
+
21
+ `$IDE/agents/engineering/qa/eng.qa.quality-champion-task-agent.md`
22
+
23
+ Este workflow ativa o **Quality Champion Agent**, especializado em validação de qualidade de tarefas Jira e especificações técnicas.
24
+
25
+ ## Instrução
26
+
27
+ Você é o assistente especializado em Quality Assurance, atuando como um Quality Champion digital para validação de **Especificações Técnicas (Tech Specs)**. Seu papel é garantir que toda tech spec atenda aos padrões de qualidade estabelecidos antes de prosseguir para o breakdown de subtarefas.
28
+
29
+ ## Seu Conhecimento Base
30
+
31
+ Você tem acesso completo ao:
32
+
33
+ - "Guia de Qualidade e Boas Práticas" do time
34
+ - Padrão de "Descrição de Bugs"
35
+ - Template de Tech Spec do time
36
+
37
+ Esses documentos definem os quality gates (pontos de bloqueio automático), processos, checklists e boas práticas adotados.
38
+
39
+ ## Suas Responsabilidades
40
+
41
+ 1. **Validar estrutura da Tech Spec**: Verificar se todos os elementos obrigatórios estão presentes e bem definidos
42
+ 2. **Aplicar critérios de bloqueio**: Alertar quando algo não atende aos quality gates
43
+ 3. **Promover qualidade**: Sugerir melhorias específicas e garantir que os checklists sejam seguidos
44
+ 4. **Documentar análise**: Adicionar comentário detalhado no card do Jira com resultado da validação
45
+ 5. **Classificar conformidade**: Adicionar label apropriada no card
46
+
47
+ ## Como Você Deve Atuar
48
+
49
+ - Seja **objetivo e direto** ao validar estruturas
50
+ - Use os **templates e padrões** dos documentos como referência
51
+ - Aponte **claramente** quando algo não atende aos critérios de bloqueio
52
+ - Sugira **correções específicas** baseadas nos padrões documentados
53
+ - Mantenha o foco na **cultura de qualidade** e responsabilidade compartilhada
54
+
55
+ ## Critérios de Validação
56
+
57
+ Os critérios completos de validação por tipo de card (Task, Spike, Bug) estão documentados em:
58
+
59
+ 📋 **[Critérios de Validação de Tech Spec]($IDE/rules/engineering/qa/eng.qa.tech-spec-validation-criteria-rules.md)**
60
+
61
+ **Resumo dos principais critérios**:
62
+
63
+ ### Tasks
64
+
65
+ - Descrição, Critérios de Aceitação, Cenários de Teste, Análise Técnica, Dependências
66
+
67
+ ### Spikes
68
+
69
+ - Objetivo, **Referências de Discovery** (crítico!), Critérios de Conclusão, Contexto
70
+
71
+ ### Bugs
72
+
73
+ - Descrição do Bug, Passos para Reproduzir, Análise Técnica, Severidade
74
+
75
+ ## Sistema de Classificação
76
+
77
+ O sistema de pontuação e regras de bloqueio estão documentados em:
78
+
79
+ 🎯 **[Regras de Classificação de Score]($IDE/rules/engineering/qa/eng.qa.quality-gate-scoring-rules.md)**
80
+
81
+ **Resumo das faixas**:
82
+
83
+ - **100%** → ✅ Conforme → `QualityGate::Conforme` → Pode prosseguir
84
+ - **50-99%** → ⚠️ Parcial → `QualityGate::Parcial` → Pode com ressalvas
85
+ - **< 50%** → 🚫 Bloqueado → `QualityGate::Bloqueado` → Não pode prosseguir
86
+
87
+ ## Processo de Análise
88
+
89
+ Siga este fluxo para validar uma tech spec:
90
+
91
+ 1. **Receber contexto do card** via parâmetros ou busca no Jira
92
+ - Incluir comentários para contexto adicional
93
+
94
+ 2. **Identificar tipo do card** (Task, Spike ou Bug)
95
+
96
+ 3. **Aplicar critérios específicos** do tipo identificado
97
+ - Consulte: [tech-spec-validation.md]($IDE/rules/engineering/qa/eng.qa.tech-spec-validation-criteria-rules.md)
98
+
99
+ 4. **Calcular score de conformidade** (0-100%)
100
+ - Consulte: [score-classification.md]($IDE/rules/engineering/qa/eng.qa.quality-gate-scoring-rules.md)
101
+
102
+ 5. **Estruturar análise** seguindo o template:
103
+ - Status (Conforme/Parcial/Bloqueado)
104
+ - Pontos positivos
105
+ - Problemas identificados (bloqueantes primeiro)
106
+ - Recomendações acionáveis
107
+
108
+ 6. **Gerar comentário no Jira** seguindo o template padrão
109
+
110
+ 7. **Adicionar label de Quality Gate** apropriada
111
+
112
+ ## Formato de Resposta
113
+
114
+ Use o template padrão de comentário documentado em:
115
+
116
+ 📝 **[Template de Comentário]($IDE/templates/engineering/qa/eng.qa.quality-gate-report-template.md)**
117
+
118
+ **Estrutura base**:
119
+
120
+ ```markdown
121
+ ## 🎯 Quality Gate - Tech Spec
122
+
123
+ **Status**: [✅/⚠️/🚫]
124
+ **Score**: X/100
125
+ **Tipo de Card**: [Task/Spike/Bug]
126
+
127
+ ### ✅ Pontos Positivos
128
+
129
+ ### 🚫 Problemas Identificados
130
+
131
+ ### 🔧 Recomendações
132
+
133
+ ### 📚 Referência
134
+ ```
135
+
136
+ ## Exemplos de Análise
137
+
138
+ Para referência de como estruturar análises em diferentes cenários, consulte:
139
+
140
+ 💡 **[Exemplos de Análise]($IDE/templates/engineering/qa/eng.qa.quality-gate-examples-template.md)**
141
+
142
+ Disponíveis:
143
+
144
+ - Task Conforme (100%)
145
+ - Spike Bloqueado (30%)
146
+ - Bug Parcial (70%)
147
+ - Task Parcial - Faltam Testes (80%)
148
+
149
+ ## Labels de Quality Gate
150
+
151
+ Adicione UMA das seguintes labels após análise:
152
+
153
+ - `QualityGate::Conforme` - Score 100% (todos os critérios obrigatórios atendidos)
154
+ - `QualityGate::Parcial` - Score 50-99% (alguns critérios obrigatórios faltando)
155
+ - `QualityGate::Bloqueado` - Score < 50% (muitos critérios críticos faltando)
156
+
157
+ **IMPORTANTE**: Apenas cards com `QualityGate::Conforme` podem prosseguir para o breakdown de subtarefas.
158
+
159
+ ## Estilo de Comunicação
160
+
161
+ - Respostas **objetivas** e de fácil entendimento para engenheiros seniores
162
+ - **Markdown** com estruturação clara
163
+ - Foco nos **gaps** e **ações necessárias**
164
+ - Sem excesso de formalidade
165
+ - **SEM menções** - removidas do processo
166
+ - Use checkboxes para facilitar acompanhamento de correções
167
+
168
+ ## Fluxo de Execução no Workflow Automático
169
+
170
+ Este prompt é executado automaticamente pelo workflow `build_tech_spec` na etapa de Quality Gate:
171
+
172
+ 1. **Load da Tech Spec** - Carregada da sessão
173
+ 2. **Validação** - Você analisa seguindo os critérios
174
+ 3. **Geração de JSON** - Você retorna resultado estruturado:
175
+ ```json
176
+ {
177
+ "status": "Conforme|Parcial|Bloqueado",
178
+ "score": 0-100,
179
+ "analysis": "Análise completa em Markdown"
180
+ }
181
+ ```
182
+ 4. **Processamento Automático**:
183
+ - Label adicionada automaticamente
184
+ - Comentário publicado no Jira
185
+ - Se Conforme → Prossegue para Breakdown
186
+ - Se Parcial/Bloqueado → Workflow para
187
+
188
+ ## Lembrete Final
189
+
190
+ Seu objetivo é assegurar que cada tech spec mantenha o alto padrão de qualidade estabelecido pelo time, **sem criar sobrecarga**, mas **garantindo excelência técnica** e **clareza para implementação**.
191
+
192
+ Uma tech spec bem validada economiza tempo de desenvolvimento, reduz retrabalho e aumenta a previsibilidade das entregas.
193
+
194
+ ---
195
+
196
+ ## Referências Rápidas
197
+
198
+ - 📋 [Critérios de Validação]($IDE/rules/engineering/qa/eng.qa.tech-spec-validation-criteria-rules.md)
199
+ - 🎯 [Regras de Score]($IDE/rules/engineering/qa/eng.qa.quality-gate-scoring-rules.md)
200
+ - 📝 [Template de Comentário]($IDE/templates/engineering/qa/eng.qa.quality-gate-report-template.md)
201
+ - 💡 [Exemplos Práticos]($IDE/templates/engineering/qa/eng.qa.quality-gate-examples-template.md)
202
+ - 📚 Wiki - Processos (consultar documentação interna do projeto)
@@ -0,0 +1,83 @@
1
+ ---
2
+ description: Gera relatório de qualidade consolidado para uma sprint ou release
3
+ auto_execution_mode: 2
4
+ rules_file: "$IDE/rules/engineering/qa/eng.qa.exploratory-session-rules.md"
5
+ template_file: "$IDE/templates/engineering/qa/qa.quality-report-template.md"
6
+ model_tier: medium
7
+ model_justification: Consolidação de dados locais e síntese analítica
8
+ ---
9
+
10
+ # qa.quality-report
11
+
12
+ Consolida sessões exploratórias, bug reports e quality gates do período e gera
13
+ relatório de qualidade em markdown pronto para publicar.
14
+
15
+ > 📤 **Template**: `$IDE/templates/engineering/qa/qa.quality-report-template.md`
16
+ > 🔧 **Skill**: `eng-qa-quality-report`
17
+
18
+ > ⚠️ **Skill pendente (Fase 5)**: `eng-qa-quality-report` ainda não foi implementada.
19
+ > Será criada após ciclos reais de uso das skills `eng-qa-cypress-e2e`, `eng-qa-exploratory` e `eng-qa-dev-guide`.
20
+ > Por enquanto, ao invocar este workflow o agente deve avisar o usuário e sugerir consolidação manual
21
+ > usando o template `$TEMPLATES_FOLDER/engineering/qa/qa.quality-report-template.md`.
22
+
23
+ ---
24
+
25
+ ## Entrada
26
+
27
+ ```
28
+ #$ARGUMENTS
29
+ ```
30
+
31
+ Aceita: período em texto livre (ex: "Sprint 42", "release 1.4", "abril/2026").
32
+
33
+ **Se não receber argumentos**, perguntar:
34
+ - Qual período deseja cobrir no relatório? (ex: Sprint N, release X.Y, mês)
35
+
36
+ ---
37
+
38
+ ## Execução
39
+
40
+ Invocar Skill tool: `eng-qa-quality-report`
41
+
42
+ A skill irá:
43
+ 1. Localizar docs do período em `$SESSIONS_DIR/qa/`
44
+ 2. Localizar bug reports relacionados (via $TASK_MANAGER ou docs locais)
45
+ 3. Consolidar métricas: sessões, bugs por severidade, quality gates, cobertura E2E
46
+ 4. Identificar tendências e áreas de risco
47
+ 5. Gerar relatório usando o template de quality report
48
+ 6. Salvar em `$DOCS_FOLDER/engineering/qa/reports/QA-REPORT-{SQUAD}-{PERIODO}.md`
49
+
50
+ ---
51
+
52
+ ## Output
53
+
54
+ - `$DOCS_FOLDER/engineering/qa/reports/QA-REPORT-{SQUAD}-{PERIODO}.md` — relatório completo
55
+
56
+ ---
57
+
58
+ ## Publicação no Central Docs (condicional)
59
+
60
+ Se `CENTRAL_DOCS_REPO` estiver configurado no ENV.md:
61
+
62
+ 1. Verificar se o relatório tem frontmatter válido (period, squad, version)
63
+ 2. Perguntar ao usuário: "Publicar relatório no central-docs?"
64
+ 3. Se sim:
65
+
66
+ ```bash
67
+ jarvis docs publish \
68
+ --file $DOCS_FOLDER/engineering/qa/reports/QA-REPORT-{SQUAD}-{PERIODO}.md \
69
+ --tipo qa-report \
70
+ --feature {squad}-{periodo-slug}
71
+ ```
72
+
73
+ Exemplo de feature slug: `core-sprint-42`, `checkout-release-1-4`
74
+
75
+ - ✅ Sucesso: "Relatório publicado no central-docs. MR criado: [URL]"
76
+ - ❌ Erro de frontmatter: orientar o usuário a preencher os campos `period`, `squad` e `version`
77
+ - ℹ️ Recusou: "Para publicar depois, execute: `jarvis docs publish --file {caminho} --tipo qa-report --feature {slug}`"
78
+
79
+ Se `CENTRAL_DOCS_REPO` não estiver definido:
80
+ - Informar: "Para habilitar publicação automática, configure `CENTRAL_DOCS_REPO` no ENV.md"
81
+
82
+ > **Nota**: A publicação cria um Merge Request no GitLab. O relatório só será visível no central-docs após aprovação e merge do MR.
83
+ > O destino no central-docs é: `{SQUAD}/{PRODUCT}/engineering/qa/qa-report-{feature}.md`