jarvis-ai-framework 2.0.0 → 2.1.1

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 (192) hide show
  1. package/AGENTS.md +12 -9
  2. package/agents/AGENTS.md +9 -1
  3. package/agents/README.md +2 -2
  4. package/agents/engineering/data/eng.data-engineer.agent.md +2 -2
  5. package/agents/engineering/eng.agent.md +4 -6
  6. package/agents/engineering/eng.bug-hunter.md +10 -5
  7. package/agents/engineering/eng.cybersecurity.agent.md +2 -4
  8. package/agents/engineering/eng.dev-code-reviewer.md +4 -0
  9. package/agents/engineering/eng.docs-writer.md +3 -3
  10. package/agents/engineering/eng.frontend.agent.md +17 -8
  11. package/agents/engineering/eng.rpa.agent.md +3 -5
  12. package/agents/engineering/eng.ux-designer.agent.md +4 -0
  13. package/agents/engineering/qa/eng.qa.cypress-specialist.md +8 -5
  14. package/agents/engineering/qa/eng.qa.quality-champion-task-agent.md +4 -0
  15. package/agents/engineering/qa/eng.qa.quality-strategist.md +18 -8
  16. package/agents/engineering/qa/eng.qa.test-architect.md +17 -6
  17. package/agents/engineering/qa/eng.qa.test-planner.md +17 -8
  18. package/agents/engineering/qa/eng.qa.testing-engineer.md +26 -9
  19. package/agents/product/prod.discovery-interviewer.md +22 -3
  20. package/agents/product/prod.pm-checker.md +4 -0
  21. package/bin/commands/map.js +43 -0
  22. package/bin/commands/tokens.js +93 -0
  23. package/bin/jarvis.js +10 -0
  24. package/bin/lib/config/constants.js +11 -0
  25. package/bin/lib/core/profile-filter.js +113 -0
  26. package/bin/lib/core/scanner.js +2 -2
  27. package/bin/lib/core/token-report.js +90 -0
  28. package/bin/lib/flow-map/index.js +65 -0
  29. package/bin/lib/flow-map/parse.js +217 -0
  30. package/bin/lib/flow-map/render.js +86 -0
  31. package/bin/lib/flow-map/tree.js +199 -0
  32. package/members.md +1 -1
  33. package/package.json +4 -2
  34. package/rules/AGENTS.md +18 -7
  35. package/rules/engineering/eng-rules.md +2 -12
  36. package/rules/engineering/eng-security-rules.md +1 -2
  37. package/rules/engineering/eng.integrations-rules.md +0 -4
  38. package/rules/engineering/eng.skills-rules.md +0 -4
  39. package/rules/engineering/eng.specializations-rules.md +0 -4
  40. package/rules/product/README.md +1 -0
  41. package/rules/product/prod-rules.md +1 -4
  42. package/rules/product/prod.spec-rules.md +0 -4
  43. package/rules/rtk-rules.md +0 -1
  44. package/{rules → rules-on-demand}/engineering/eng.breakdown-subtasks-rules.md +0 -4
  45. package/{rules → rules-on-demand}/engineering/eng.plan-rules.md +0 -4
  46. package/{rules → rules-on-demand}/engineering/eng.pr-rules.md +0 -4
  47. package/{rules → rules-on-demand}/engineering/eng.pre-pr-rules.md +0 -4
  48. package/{rules → rules-on-demand}/engineering/eng.start-rules.md +0 -4
  49. package/{rules → rules-on-demand}/engineering/eng.tech-spec-rules.md +1 -2
  50. package/{rules → rules-on-demand}/engineering/eng.work-rules.md +0 -4
  51. package/skills/AGENTS.md +22 -21
  52. package/skills/SKILLS-ROADMAP.md +0 -4
  53. package/skills/eng-ai-engineer/SKILL.md +6 -0
  54. package/skills/eng-backend/SKILL.md +6 -0
  55. package/skills/eng-backend-arch-c4/SKILL.md +10 -4
  56. package/skills/eng-backend-microservices-trace/SKILL.md +6 -0
  57. package/skills/eng-backend-nestjs/SKILL.md +16 -461
  58. package/skills/eng-backend-nestjs/references/1-arquitetura-modulos.md +54 -0
  59. package/skills/eng-backend-nestjs/references/2-guards-autenticacao.md +118 -0
  60. package/skills/eng-backend-nestjs/references/3-interceptors-pipes-filters.md +113 -0
  61. package/skills/eng-backend-nestjs/references/4-config-logging.md +61 -0
  62. package/skills/eng-backend-nestjs/references/5-testes.md +83 -0
  63. package/skills/eng-backend-nestjs/references/6-problemas-comuns.md +53 -0
  64. package/skills/eng-backend-rabbitmq/SKILL.md +15 -298
  65. package/skills/eng-backend-rabbitmq/references/1-referencia-endpoints.md +28 -0
  66. package/skills/eng-backend-rabbitmq/references/2-codigo-consumer-producer.md +90 -0
  67. package/skills/eng-backend-rabbitmq/references/3-arquiteturas-comuns.md +101 -0
  68. package/skills/eng-backend-rabbitmq/references/4-troubleshooting.md +93 -0
  69. package/skills/eng-data-bi/SKILL.md +6 -0
  70. package/skills/eng-data-debug/SKILL.md +6 -0
  71. package/skills/eng-data-engineer/SKILL.md +16 -7
  72. package/skills/eng-data-onboard/SKILL.md +6 -0
  73. package/skills/eng-data-orchestrator/SKILL.md +6 -0
  74. package/skills/eng-devops-performance-engineer/SKILL.md +6 -0
  75. package/skills/eng-frontend/SKILL.md +6 -0
  76. package/skills/eng-frontend-design-system/SKILL.md +13 -479
  77. package/skills/eng-frontend-design-system/references/1-estrutura-pacote.md +57 -0
  78. package/skills/eng-frontend-design-system/references/2-tokens.md +116 -0
  79. package/skills/eng-frontend-design-system/references/3-componentes.md +165 -0
  80. package/skills/eng-frontend-design-system/references/4-storybook.md +85 -0
  81. package/skills/eng-frontend-design-system/references/5-auditoria-versionamento.md +76 -0
  82. package/skills/eng-frontend-microfrontend/SKILL.md +17 -457
  83. package/skills/eng-frontend-microfrontend/references/1-criando-remote.md +109 -0
  84. package/skills/eng-frontend-microfrontend/references/2-configurando-shell.md +70 -0
  85. package/skills/eng-frontend-microfrontend/references/3-contratos-interface.md +73 -0
  86. package/skills/eng-frontend-microfrontend/references/4-shared-dependencies.md +48 -0
  87. package/skills/eng-frontend-microfrontend/references/5-event-bus.md +59 -0
  88. package/skills/eng-frontend-microfrontend/references/6-monorepo-deploy.md +77 -0
  89. package/skills/eng-frontend-microfrontend/references/7-troubleshooting.md +45 -0
  90. package/skills/eng-global-browser-extension-builder/SKILL.md +6 -0
  91. package/skills/eng-global-docs-write/SKILL.md +10 -5
  92. package/skills/eng-global-jira-comment/SKILL.md +6 -0
  93. package/skills/eng-global-pr/SKILL.md +7 -1
  94. package/skills/eng-global-task-comment/SKILL.md +6 -0
  95. package/skills/eng-qa-a11y-audit/SKILL.md +10 -4
  96. package/skills/eng-qa-bug-report/SKILL.md +18 -230
  97. package/skills/eng-qa-bug-report/references/1-integracao-task-managers.md +148 -0
  98. package/skills/eng-qa-bug-report/references/2-exemplos-de-uso.md +46 -0
  99. package/skills/eng-qa-bug-report/references/3-bug-to-test.md +45 -0
  100. package/skills/eng-qa-cypress-e2e/SKILL.md +6 -0
  101. package/skills/eng-qa-dev-guide/SKILL.md +9 -1
  102. package/skills/eng-qa-e2e/SKILL.md +9 -3
  103. package/skills/eng-qa-e2e-spec-writer/SKILL.md +15 -9
  104. package/skills/eng-qa-exploratory/SKILL.md +16 -9
  105. package/skills/eng-qa-gate/SKILL.md +11 -5
  106. package/skills/eng-qa-gate/assets/checklist-validacao.md +1 -1
  107. package/skills/eng-qa-graphql-contract/SKILL.md +9 -3
  108. package/skills/eng-qa-quality-report/SKILL.md +9 -3
  109. package/skills/eng-qa-test-plan/SKILL.md +6 -0
  110. package/skills/eng-qa-testsprite/SKILL.md +10 -4
  111. package/skills/eng-qa-unit-test/SKILL.md +7 -1
  112. package/skills/eng-scraper/SKILL.md +12 -436
  113. package/skills/eng-scraper/references/1-puppeteer.md +140 -0
  114. package/skills/eng-scraper/references/2-playwright-cheerio-pdf.md +82 -0
  115. package/skills/eng-scraper/references/3-anti-bot.md +94 -0
  116. package/skills/eng-scraper/references/4-resiliencia-etl-monitoramento.md +137 -0
  117. package/skills/eng-scraper-robot-builder/SKILL.md +6 -0
  118. package/skills/eng-security-cybersecurity/SKILL.md +13 -409
  119. package/skills/eng-security-cybersecurity/references/1-owasp-top-10.md +331 -0
  120. package/skills/eng-security-cybersecurity/references/2-secrets-management.md +31 -0
  121. package/skills/eng-security-cybersecurity/references/3-input-validation.md +43 -0
  122. package/skills/eng-security-cybersecurity/references/4-compliance.md +20 -0
  123. package/skills/eng-security-patch/SKILL.md +6 -0
  124. package/skills/eng-security-threat-model/SKILL.md +6 -0
  125. package/skills/eng-security-triage/SKILL.md +6 -0
  126. package/skills/jarvis-context-detect/SKILL.md +6 -0
  127. package/skills/jarvis-create-specialization/SKILL.md +6 -0
  128. package/skills/jarvis-docs-central/SKILL.md +6 -0
  129. package/skills/jarvis-docs-index/SKILL.md +10 -2
  130. package/skills/jarvis-evolution-architect/SKILL.md +439 -0
  131. package/skills/jarvis-evolution-architect/references/exemplos.md +297 -0
  132. package/skills/jarvis-evolution-architect/references/guia-de-uso.md +355 -0
  133. package/skills/jarvis-evolution-architect/references/lentes-e-conceitos.md +292 -0
  134. package/skills/jarvis-evolution-architect/references/visao-geral.md +272 -0
  135. package/skills/jarvis-init/SKILL.md +14 -7
  136. package/skills/jarvis-list-specializations/SKILL.md +6 -0
  137. package/skills/jarvis-report-issue/SKILL.md +6 -0
  138. package/skills/product-roadmap-report/SKILL.md +8 -0
  139. package/skills/product-specs/SKILL.md +9 -0
  140. package/skills/product-specs-update/SKILL.md +6 -0
  141. package/taxonomy.md +12 -12
  142. package/templates/AGENTS.md +2 -0
  143. package/templates/engineering/tech-spec-delivery-template.md +179 -0
  144. package/workflows/AGENTS.md +12 -2
  145. package/workflows/README.md +18 -16
  146. package/workflows/all-tools.md +7 -1
  147. package/workflows/engineering/data/data.contract.md +8 -0
  148. package/workflows/engineering/data/data.new-pipeline.md +10 -0
  149. package/workflows/engineering/eng.breakdown-subtasks.md +9 -0
  150. package/workflows/engineering/eng.bug-audit.md +9 -2
  151. package/workflows/engineering/eng.build-tech-spec.md +17 -146
  152. package/workflows/engineering/eng.create-ard-from-code.md +8 -0
  153. package/workflows/engineering/eng.create-ard.md +8 -0
  154. package/workflows/engineering/eng.create-rfc.md +7 -0
  155. package/workflows/engineering/eng.debug.md +3 -3
  156. package/workflows/engineering/eng.docs.md +9 -0
  157. package/workflows/engineering/eng.light-arch.md +7 -0
  158. package/workflows/engineering/eng.plan.md +15 -2
  159. package/workflows/engineering/eng.pr.md +19 -7
  160. package/workflows/engineering/eng.pre-pr.md +27 -1
  161. package/workflows/engineering/eng.review.md +13 -0
  162. package/workflows/engineering/eng.rpa.robot.md +16 -0
  163. package/workflows/engineering/eng.security-audit.md +7 -0
  164. package/workflows/engineering/eng.security-incident.md +6 -0
  165. package/workflows/engineering/eng.security-pipeline.md +9 -0
  166. package/workflows/engineering/eng.security-review.md +6 -0
  167. package/workflows/engineering/eng.start.md +22 -6
  168. package/workflows/engineering/eng.work.md +18 -2
  169. package/workflows/engineering/frontend/eng.frontend-component.md +7 -0
  170. package/workflows/engineering/frontend/eng.frontend-perf-audit.md +8 -0
  171. package/workflows/engineering/frontend/eng.frontend-review.md +8 -0
  172. package/workflows/engineering/qa/eng.qa-dev-quality-guide.md +6 -0
  173. package/workflows/engineering/qa/eng.qa-e2e-test-generation.md +6 -0
  174. package/workflows/engineering/qa/eng.qa-exploratory-session.md +8 -0
  175. package/workflows/engineering/qa/eng.qa-quality-gate-validation.md +7 -0
  176. package/workflows/engineering/qa/eng.qa-quality-report.md +7 -0
  177. package/workflows/engineering/qa/eng.qa-refinement-entry.md +7 -0
  178. package/workflows/engineering/qa/eng.qa-release-signoff.md +6 -0
  179. package/workflows/engineering/qa/eng.qa-sprint-planning.md +6 -0
  180. package/workflows/product/prod.roadmap.preview.md +9 -0
  181. package/workflows/product/prod.spec.ard.md +97 -0
  182. package/workflows/product/prod.spec.breakdown.md +10 -0
  183. package/workflows/product/prod.spec.clarify.md +8 -2
  184. package/workflows/product/prod.spec.discovery.md +10 -0
  185. package/workflows/product/prod.spec.epic.md +8 -0
  186. package/workflows/product/prod.spec.frd.md +7 -0
  187. package/workflows/product/prod.spec.issue.md +6 -0
  188. package/workflows/product/prod.spec.md +15 -1
  189. package/workflows/product/prod.spec.prd.md +7 -0
  190. package/workflows/taxonomy.md +58 -6
  191. package/workflows/warm-up.md +24 -9
  192. package/rules/engineering/eng.downstream-flow-rules.md +0 -297
@@ -2,7 +2,7 @@
2
2
  description: Fluxo de implementação de código (commit por fase, SEM push nem PRs)
3
3
  auto_execution_mode: 3
4
4
  agent: "$IDE/agents/engineering/eng.agent.md"
5
- rules_file: "$IDE/rules/engineering/eng.work-rules.md"
5
+ rules_file: "$IDE/rules-on-demand/engineering/eng.work-rules.md"
6
6
  template_file: "$IDE/templates/engineering/work-progress-template.md"
7
7
  recommended_model: claude-sonnet-4-20250514
8
8
  model_tier: very_high
@@ -13,12 +13,28 @@ model_justification: Implementação de código requer máxima precisão, entend
13
13
 
14
14
  Este comando executa a **implementação de código** seguindo o plano de execução.
15
15
 
16
- > 📋 **Rules**: `$IDE/rules/engineering/eng.work-rules.md`
16
+ > 📋 **Rules**: `$IDE/rules-on-demand/engineering/eng.work-rules.md` — **antes de começar, leia esse arquivo e siga-o**: ele não é carregado automaticamente no início da sessão.
17
17
  > 📤 **Template**: `$IDE/templates/engineering/work-progress-template.md`
18
18
 
19
19
  > ⚠️ **IMPORTANTE**: Este workflow é para codificação com commits incrementais por fase.
20
20
  > **NÃO crie PRs, NÃO faça push**, mas **FAZ commit ao final de cada fase validada.**
21
21
 
22
+ ### Skills invocados durante o workflow
23
+
24
+ | Passo | Skill | Condição |
25
+ |-------|-------|----------|
26
+ | Cabeçalho (agente) | `eng.agent` (agente) | Sempre — identidade do workflow |
27
+ | Fase 0 › 0.1 Verificar ou Gerar Contexto da Sessão | `/jarvis-context-detect` | Se `ENABLE_CDD=true` e o `context.md` não existir (obrigatório antes da Fase 1) |
28
+ | Fase 0.5: Comentário no card — Início | `/eng-global-task-comment` | Se `TASK_MANAGER` estiver preenchido (freelance pula) |
29
+ | Fase 3 › 3.1 Implementar Código (skill de domínio) | `/eng-frontend` (via `eng.specializations-rules.md`) | Se o domínio da feature for frontend (componentes, UI, estado, estilos, bundle, a11y); a regra também carrega `FRONTEND_SPECIALIZATIONS` |
30
+ | Fase 3 › 3.1 Implementar Código (skill de domínio) | `/eng-backend` (via `eng.specializations-rules.md`) | Se o domínio da feature for backend (endpoints, auth, workers, filas, cache, banco, integrações); a regra também carrega `BACKEND_SPECIALIZATIONS` |
31
+ | Fase 3 › 3.1 Implementar Código (skill de domínio) | `/eng-scraper` | Se o domínio da feature for scraping, extração de dados, ETL ou parsing |
32
+ | Fase 3 › 3.1 Implementar Código (skill de domínio) | `/eng-scraper-robot-builder` | Se a tarefa for converter um fluxo manual em Playwright via Stagehand, sem seletores conhecidos |
33
+ | Fase 3 › 3.3.1 Identificar Gaps de Teste | `eng.qa.test-planner` (agente) | Sempre, depois de implementar o código da fase |
34
+ | Fase 3 › 3.3.2 Implementar Testes Faltantes (Opção A) | `eng.qa.testing-engineer` (agente) | Se o test-planner identificar gaps e a estratégia do `architecture.md` seção 6.5 indicar testes manuais (unitário/integração) |
35
+ | Fase 3 › 3.3.2 Implementar Testes Faltantes (Opção B) | `/eng-qa-testsprite` | Se a estratégia do `architecture.md` seção 6.5 indicar TestSprite (`testScope=diff`) |
36
+ | Fase 6 › 6.2 Se Todas as Fases Foram Concluídas | `/eng-global-task-comment` | Se `TASK_MANAGER` estiver preenchido e todas as fases estiverem concluídas (freelance pula) |
37
+
22
38
  ---
23
39
 
24
40
  ## Regra de Execução Máxima
@@ -26,6 +26,13 @@ estrutura de pastas. O que é específico da stack do projeto vem de:
26
26
 
27
27
  **Antes de começar**, aplique a regra `$IDE/rules/engineering/eng.specializations-rules.md` para a área **frontend**: ela carrega o skill base `eng-frontend` e as especializações registradas. Onde este workflow disser "conforme a especialização", siga o que o skill da especialização pedir; sem especialização registrada, siga as convenções do código existente e **pergunte ao usuário** o que faltar, sem inventar.
28
28
 
29
+ ### Skills invocados durante o workflow
30
+
31
+ | Passo | Skill | Condição |
32
+ |-------|-------|----------|
33
+ | Contexto (antes de começar) | `/eng-frontend` (via `eng.specializations-rules.md`) | Sempre — a regra carrega o skill base da área frontend |
34
+ | Contexto (antes de começar) | `skills em FRONTEND_SPECIALIZATIONS` (um por item da lista) | Se houver especialização registrada em `FRONTEND_SPECIALIZATIONS` no ENV.md; lista vazia: só o skill base |
35
+
29
36
  ---
30
37
 
31
38
  ## Fase 1 — Análise
@@ -23,6 +23,14 @@ projeto e das especializações registradas em `FRONTEND_SPECIALIZATIONS`.
23
23
 
24
24
  **Antes de começar**, aplique a regra `$IDE/rules/engineering/eng.specializations-rules.md` para a área **frontend**: ela carrega o skill base `eng-frontend` e as especializações registradas. Onde este workflow disser "conforme a especialização", siga o skill da especialização; sem especialização registrada, **pergunte ao usuário** qual ferramenta o projeto usa, em vez de presumir uma.
25
25
 
26
+ ### Skills invocados durante o workflow
27
+
28
+ | Passo | Skill | Condição |
29
+ |-------|-------|----------|
30
+ | Contexto (antes de começar) | `/eng-frontend` (via `eng.specializations-rules.md`) | Sempre — a regra carrega o skill base da área frontend |
31
+ | Contexto (antes de começar) | `skills em FRONTEND_SPECIALIZATIONS` (um por item da lista) | Se houver especialização registrada em `FRONTEND_SPECIALIZATIONS` no ENV.md; lista vazia: só o skill base |
32
+ | Fase 3 — Otimizações (arquitetura distribuída) | `skill da especialização registrada` | Se o projeto dividir o frontend em módulos carregados separadamente (siga o skill da especialização registrada) |
33
+
26
34
  ---
27
35
 
28
36
  ## Fase 1 — Coleta de Dados (antes de otimizar)
@@ -23,6 +23,14 @@ especialização registrada em `FRONTEND_SPECIALIZATIONS` e o código existente
23
23
 
24
24
  **Antes de revisar**, aplique a regra `$IDE/rules/engineering/eng.specializations-rules.md` para a área **frontend**: ela carrega o skill base `eng-frontend` e as especializações registradas. Se o PR tiver exigências que você não consegue verificar sem conhecer a stack, diga isso na revisão em vez de presumir.
25
25
 
26
+ ### Skills invocados durante o workflow
27
+
28
+ | Passo | Skill | Condição |
29
+ |-------|-------|----------|
30
+ | Contexto (antes de começar) | `/eng-frontend` (via `eng.specializations-rules.md`) | Sempre — a regra carrega o skill base da área frontend |
31
+ | Contexto (antes de começar) | `skills em FRONTEND_SPECIALIZATIONS` (um por item da lista) | Se houver especialização registrada em `FRONTEND_SPECIALIZATIONS` no ENV.md; lista vazia: só o skill base |
32
+ | Checklist de Revisão (especializações) | `skill de cada especialização registrada` | Para cada especialização em `FRONTEND_SPECIALIZATIONS`, aplicar o checklist de revisão do próprio skill; sem especialização, a seção não se aplica |
33
+
26
34
  ---
27
35
 
28
36
  ## Como usar
@@ -14,6 +14,12 @@ usando os padrões do projeto. Não escreve o teste — guia e valida.
14
14
  > 📋 **Rules**: `$IDE/rules/engineering/qa/eng.qa.cypress-standards-rules.md`
15
15
  > 🔧 **Skill**: `eng-qa-dev-guide`
16
16
 
17
+ ### Skills invocados durante o workflow
18
+
19
+ | Passo | Skill | Condição |
20
+ |-------|-------|----------|
21
+ | Execução | `/eng-qa-dev-guide` | Sempre — invocado via Skill tool |
22
+
17
23
  ---
18
24
 
19
25
  ## Entrada
@@ -15,6 +15,12 @@ Gera testes E2E Cypress + TypeScript para uma feature a partir de spec, task ou
15
15
  > 📤 **Template**: `$IDE/templates/engineering/qa/qa.cypress-test-template.md`
16
16
  > 🔧 **Skill**: `eng-qa-cypress-e2e`
17
17
 
18
+ ### Skills invocados durante o workflow
19
+
20
+ | Passo | Skill | Condição |
21
+ |-------|-------|----------|
22
+ | Execução | `/eng-qa-cypress-e2e` | Sempre — invocado via Skill tool |
23
+
18
24
  ---
19
25
 
20
26
  ## Entrada
@@ -16,6 +16,14 @@ e criando cards de bug via `eng-qa-bug-report` ao final.
16
16
  > 📤 **Template**: `$IDE/templates/engineering/qa/qa.exploratory-session-template.md`
17
17
  > 🔧 **Skill**: `eng-qa-exploratory`
18
18
 
19
+ ### Skills invocados durante o workflow
20
+
21
+ | Passo | Skill | Condição |
22
+ |-------|-------|----------|
23
+ | Execução | `/eng-qa-exploratory` | Sempre — invocado via Skill tool (modos `plan`, `document` e `report`) |
24
+ | Execução (modo `document`) | `/eng-qa-bug-report` | Para os bugs S1–S4 identificados na sessão (acionado pela skill `eng-qa-exploratory`) |
25
+ | Execução (modo `report`) | `/eng-qa-bug-report` | Para criar em lote os cards de bug do documento de sessão (acionado pela skill `eng-qa-exploratory`) |
26
+
19
27
  ---
20
28
 
21
29
  ## Entrada
@@ -22,6 +22,13 @@ Use o skill `eng-qa-gate` como fonte de verdade para o processo de validação e
22
22
 
23
23
  Este workflow ativa o **Quality Champion Agent**, especializado em validação de qualidade de tarefas Jira e especificações técnicas.
24
24
 
25
+ ### Skills invocados durante o workflow
26
+
27
+ | Passo | Skill | Condição |
28
+ |-------|-------|----------|
29
+ | Skill recomendado | `/eng-qa-gate` | Sempre — fonte de verdade para o processo de validação e o formato de saída |
30
+ | Agente Ativado | `eng.qa.quality-champion-task-agent` (agente) | Sempre — o workflow ativa o Quality Champion Agent |
31
+
25
32
  ## Instrução
26
33
 
27
34
  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.
@@ -15,6 +15,13 @@ relatório de qualidade em markdown pronto para publicar.
15
15
  > 📤 **Template**: `$IDE/templates/engineering/qa/qa.quality-report-template.md`
16
16
  > 🔧 **Skill**: `eng-qa-quality-report`
17
17
 
18
+ ### Skills invocados durante o workflow
19
+
20
+ | Passo | Skill | Condição |
21
+ |-------|-------|----------|
22
+ | Execução | `/eng-qa-quality-report` | Sempre — invocado via Skill tool |
23
+ | Publicação no Central Docs (condicional) | `/jarvis-docs-central` (via `jarvis docs publish --tipo qa-report`) | Se `CENTRAL_DOCS_REPO` estiver configurado, o relatório tiver frontmatter válido (period, squad, version) e o usuário aceitar publicar |
24
+
18
25
  ---
19
26
 
20
27
  ## Entrada
@@ -23,6 +23,13 @@ antes da codificação começar. A entrada é sempre a especificação do card
23
23
  **Regra obrigatória para o agente**: não executar `git diff` neste contexto.
24
24
  A fonte de verdade é o conteúdo do card no $TASK_MANAGER, lido via integração disponível (ex: Jira MCP).
25
25
 
26
+ ### Skills invocados durante o workflow
27
+
28
+ | Passo | Skill | Condição |
29
+ |-------|-------|----------|
30
+ | Execução (Modo A) | `eng.qa.test-planner` (agente) | Sempre — opera em Modo A, estratégia a partir da tech spec |
31
+ | Execução | `Jira MCP` (referência a confirmar) | Para ler o card do `$TASK_MANAGER` por "integração disponível (ex.: Jira MCP)"; o texto não indica a ferramenta exata |
32
+
26
33
  ---
27
34
 
28
35
  ## Entrada
@@ -22,6 +22,12 @@ Sign-off QA antes de um deploy. Verifica cobertura de testes, sessões explorat
22
22
 
23
23
  Aceita: nome da branch (padrão: branch atual via `git branch --show-current`).
24
24
 
25
+ ### Skills invocados durante o workflow
26
+
27
+ | Passo | Skill | Condição |
28
+ |-------|-------|----------|
29
+ | — | Nenhuma — workflow autocontido | — |
30
+
25
31
  ---
26
32
 
27
33
  ## Fase 0 — Identificar branch e mudanças
@@ -12,6 +12,12 @@ model_justification: Análise de risco multi-task e alocação de capacidade req
12
12
 
13
13
  Planejamento de capacidade QA para a sprint: avalia risco de cada task, considera QAs e Quality Champions disponíveis, e produz um plano de alocação baseado em critérios de risco.
14
14
 
15
+ ### Skills invocados durante o workflow
16
+
17
+ | Passo | Skill | Condição |
18
+ |-------|-------|----------|
19
+ | Fase 2 — Análise de Risco | `eng.qa.quality-strategist` (agente) | Sempre — avalia o risco, a cobertura ideal e a justificativa de cada task da sprint |
20
+
15
21
  ## Entrada
16
22
 
17
23
  ```
@@ -32,6 +32,15 @@ Ler os squads em `taxonomy.md` (seção Squads). Não hardcodar times.
32
32
 
33
33
  Se o projeto tiver wiki de status report, usar URLs informadas pelo usuário ou variáveis do `ENV.md` — nunca uma tabela fixa de squads.
34
34
 
35
+ ### Skills invocados durante o workflow
36
+
37
+ | Passo | Skill | Condição |
38
+ |-------|-------|----------|
39
+ | Regras | `MCP do $TASK_MANAGER` | Se houver MCP disponível relacionado ao `$TASK_MANAGER` do usuário |
40
+ | Regras | `/jarvis-docs-central` | Se as documentações do projeto não estiverem disponíveis localmente (via Skill tool) |
41
+ | Regras | `/product-roadmap-report` | Sempre — via Skill tool, para trazer as informações do roadmap |
42
+ | Status Reports por Squad / Dicas de Ferramenta | `MCP da Atlassian` (ex.: `Atlassian:searchJiraIssuesUsingJql`) | Para buscar os dados do roadmap no Jira, com o JQL ou o filtro salvo informado pelo usuário |
43
+
35
44
  ## Formato de Períodos de Referência
36
45
 
37
46
  Nós usamos Quadrimestres como período de Referência. Então, quando o usuário falar quarter, entenda que é referente a quatro meses no ano, e não apenas 3. Como o padrão abaixo:
@@ -0,0 +1,97 @@
1
+ ---
2
+ name: prod.spec.ard
3
+ description: Ponto de entrada de produto para o ARD (Architecture Requirements Document): levanta com o PM os requisitos arquiteturais em termos de produto e conduz o ARD pelo fluxo de engenharia.
4
+ auto_execution_mode: 3
5
+ env_file: "@/ENV.md"
6
+ recommended_model: gpt-4o
7
+ model_tier: medium
8
+ model_justification: Levantamento estruturado de requisitos arquiteturais a partir de PRD e FRD, seguido da condução do fluxo de engenharia existente
9
+ ---
10
+
11
+ # ARD a partir do produto (Architecture Requirements Document)
12
+
13
+ Antes de iniciar, revise o arquivo de regras invioláveis em `$PROD_RULES/**/*`. Se você não estiver familiarizado com essa variável, leia as regras diretamente na pasta `.$IDE/rules/product/**/*.*`.
14
+
15
+ Este fluxo é a **porta de entrada de produto** para o ARD. Ele levanta com o PM, em linguagem de produto, o que a arquitetura precisa atender (restrições, requisitos não funcionais, integrações, volumes e riscos) e, com isso, **conduz o ARD pelo fluxo de engenharia** (`eng.create-ard`), sem duplicá-lo.
16
+
17
+ > ⚠️ **O ARD é um documento de engenharia.** O arquivo resultante fica em `$DOCS_FOLDER/engineering/ARD/` (como no `eng.create-ard`), e as decisões de arquitetura pertencem à engenharia. Este comando só levanta os requisitos e abre o fluxo. Diga isso ao usuário no início.
18
+
19
+ Utilize o `$ARGUMENTS` que o usuário passar como ponto de partida e para entender o contexto do que foi pedido.
20
+ <requirement>
21
+ #$ARGUMENTS
22
+ </requirement>
23
+
24
+ ## Quando usar
25
+ - Depois de um PRD ou FRD aprovado, quando falta registrar os requisitos arquiteturais da iniciativa
26
+ - Quando o PM precisa deixar claro para a engenharia o que a arquitetura precisa atender (volumes, prazos, integrações, regras de negócio com impacto técnico)
27
+ - Para iniciar um ARD novo a partir de uma especificação de produto já existente
28
+
29
+ ## Quando **não** usar
30
+ - Para iterar ou editar um ARD que já existe → use `eng.create-ard` (modo `edit`)
31
+ - Para extrair o ARD do código existente → use `eng.create-ard-from-code`
32
+ - Para decidir tecnologia, desenho de componentes ou contratos → isso é da engenharia, dentro do ARD
33
+ - Quando ainda não há PRD nem FRD e a ideia está crua → comece por `prod.spec.discovery` ou `prod.spec.prd`
34
+
35
+ ## Pré-requisitos e opcionais
36
+ - **PRD ou FRD de origem (recomendado).** Procure em `$PROD_DOCS` e pergunte qual é a origem. Sem nenhum, avise que o ARD fica sem rastreabilidade e pergunte se o usuário quer seguir assim ou criar antes o PRD (`prod.spec.prd`) ou o FRD (`prod.spec.frd`).
37
+ - **Discovery (opcional).** Se o usuário apontar um discovery (por exemplo `discovery-002`), siga o princípio "Discovery como insumo" de `$PROD_RULES/prod.spec-rules.md`: leia-o como contexto e repasse tudo com o usuário antes de usar. Sem discovery apontado, não procure nem pergunte.
38
+ - Nome do ARD (título e slug em kebab-case): pergunte se não vier em `$ARGUMENTS`.
39
+
40
+ ### Skills invocados durante o workflow
41
+
42
+ | Passo | Skill | Condição |
43
+ |-------|-------|----------|
44
+ | Gate 1: Reconhecer o contexto | `/jarvis-docs-central` (via `jarvis docs sync --silent`) | Se `CENTRAL_DOCS_REPO` estiver definido no ENV.md e for preciso buscar o PRD ou FRD relacionado |
45
+ | Gate 4: Conduzir o ARD | `/eng.create-ard` | Sempre, depois de os requisitos serem confirmados: modo `new`, com `--prd` quando houver PRD (workflow de engenharia; o aviso de transição de domínio é dado antes) |
46
+
47
+ ## Resultado final
48
+ - Um **resumo dos requisitos arquiteturais** confirmado pelo usuário (Gate 3), entregue como insumo ao `eng.create-ard`
49
+ - O **ARD** gerado pelo `eng.create-ard` (numeração `ARD-###`, versão `1.0.0`, template `$IDE/templates/engineering/ARD-template.md` e caminho `$DOCS_FOLDER/engineering/ARD/{ARD-ID}-{slug}.md`)
50
+ - Rascunhos WIP, se houver, em `$SESSIONS_DIR/prod/{TASK_MANAGER_KEY}/`; o documento canônico é o ARD
51
+ - O arquivo final no mesmo idioma da interação do usuário
52
+
53
+ ## Princípios
54
+ - **Não invente.** O que o PM não souber fica registrado como "a validar pela engenharia", e não como fato.
55
+ - **Termos de produto, não de tecnologia.** Pergunte pelo que a solução precisa atender (por exemplo, "quantos usuários simultâneos no pico?"), e não por qual banco ou framework usar.
56
+ - **Uma pergunta por vez.** Siga o formato de perguntas de `prod-rules.md` (`AskUserQuestion` quando existir; tabela com alternativas quando não).
57
+ - **Terminologia consistente** com a do PRD e do FRD de origem (ver `$PROD_RULES/prod.spec-rules.md`).
58
+
59
+ ## Etapas de execução
60
+
61
+ ### Gate 1: Reconhecer o contexto
62
+ 1. Valide o `ENV.md` (regra geral de produto) e avise que o ARD é um documento de engenharia.
63
+ 2. Identifique o PRD ou FRD de origem em `$PROD_DOCS` (ou o caminho que o usuário informar) e leia-o. Se `CENTRAL_DOCS_REPO` estiver definido, busque no central docs o PRD ou FRD relacionado.
64
+ 3. Resuma em poucas linhas o que a especificação pede e confirme com o usuário que é essa a origem. Se `AREA` do usuário não for `ENGINEERING`, avise que o ARD seguirá o fluxo de engenharia e deve ser revisado por alguém da engenharia.
65
+
66
+ ### Gate 2: Levantar os requisitos arquiteturais em termos de produto
67
+ Pergunte, **uma por vez**, só o que a especificação não responde (pule o que o PRD ou FRD já traz, confirmando):
68
+ - **Volume e uso:** quantidade de usuários, picos, crescimento esperado, janelas de uso
69
+ - **Requisitos não funcionais:** disponibilidade, tempo de resposta aceitável, retenção e auditoria de dados
70
+ - **Integrações:** sistemas, parceiros ou serviços externos com que a solução precisa falar
71
+ - **Regras de negócio com impacto técnico:** limites, prazos legais, compliance (LGPD e afins), dados sensíveis
72
+ - **Restrições:** prazo, orçamento, equipe, tecnologias que **já são obrigatórias** na organização
73
+ - **Riscos conhecidos** e dependências de outras iniciativas
74
+
75
+ ### Gate 3: Resumir e confirmar
76
+ Apresente o **resumo dos requisitos arquiteturais** (por tópico do Gate 2, marcando o que ficou "a validar pela engenharia") e peça confirmação. Itere até a aprovação explícita. Não avance sem ela.
77
+
78
+ ### Gate 4: Conduzir o ARD
79
+ 1. Avise, antes de seguir, que a próxima etapa é o fluxo de engenharia e que as decisões de arquitetura passam a ser da engenharia.
80
+ 2. Execute o workflow `eng.create-ard` no modo `new`, com o nome do ARD e `--prd <caminho>` quando houver PRD de origem, entregando o resumo do Gate 3 como insumo do documento (seções de premissas, restrições, integrações, segurança, escalabilidade e riscos do template).
81
+ 3. O `eng.create-ard` cuida de numeração, versão, preenchimento do template, análise de impacto, estratégia de testes, guard rails e publicação no central docs. Siga as instruções dele a partir daí.
82
+
83
+ ### Gate 5: Fechar
84
+ 1. Informe o caminho do ARD criado e o que ficou "a validar pela engenharia".
85
+ 2. Sugira o próximo passo: revisão do ARD pela engenharia e, depois, `/eng.start` para a implementação. Não execute o próximo passo.
86
+ 3. Se a informação do ARD divergir do PRD ou FRD de origem, avise o usuário e sugira atualizar a especificação de produto (o PRD e o FRD são a fonte da verdade do produto).
87
+
88
+ ## Do
89
+ - Confirmar a origem (PRD ou FRD) antes de perguntar
90
+ - Registrar tudo o que o PM não souber como "a validar pela engenharia"
91
+ - Deixar claro, no início e antes do Gate 4, que o ARD é um documento de engenharia
92
+
93
+ ## Don't
94
+ - Escolher tecnologia, desenhar componentes ou definir contratos aqui (isso é do ARD, pela engenharia)
95
+ - Duplicar o `eng.create-ard`: numeração, template e publicação são dele
96
+ - Criar o ARD sem o resumo confirmado no Gate 3
97
+ - Alterar o PRD ou o FRD de origem sem o usuário pedir
@@ -42,6 +42,16 @@ Utilize o `$ARGUMENTS` como ponto de partida (caminho da spec, nome da feature o
42
42
  2. Se não houver spec pai: ofereça criar com `$PROD_FLOWS/prod.spec.prd.md` ou `$PROD_FLOWS/prod.spec.frd.md`. Não invente escopo do zero sem confirmação.
43
43
  3. Se a spec estiver cheia de “talvez” / “depois a gente vê”: sugira clarify antes; só continue se o usuário assumir o risco.
44
44
 
45
+ ### Skills invocados durante o workflow
46
+
47
+ | Passo | Skill | Condição |
48
+ |-------|-------|----------|
49
+ | Pré-requisitos (item 2) | `/prod.spec.prd` | Se não houver spec pai e o usuário aceitar criar o PRD |
50
+ | Pré-requisitos (item 2) | `/prod.spec.frd` | Se não houver spec pai e o usuário aceitar criar o FRD |
51
+ | Busca no Central Docs (condicional) | `/jarvis-docs-central` (via `jarvis docs sync --silent`) | Se `CENTRAL_DOCS_REPO` estiver no ENV.md (best-effort) |
52
+ | Resultado esperado (materialização) | `/prod.spec.epic` | Se o usuário aprovar criar os arquivos de épico a partir do breakdown (nunca automaticamente) |
53
+ | Resultado esperado (materialização) | `/prod.spec.issue` | Se o usuário aprovar criar os arquivos de história ou tarefa a partir do breakdown (nunca automaticamente) |
54
+
45
55
  ## Template
46
56
 
47
57
  O artefato de breakdown segue o template `$PROD_TEMPLATES/prod-breakdown-template.md`.
@@ -21,6 +21,12 @@ Utilize o que o usuário fornecer analisar em:
21
21
  #$ARGUMENTS
22
22
  </requirement>
23
23
 
24
+ ### Skills invocados durante o workflow
25
+
26
+ | Passo | Skill | Condição |
27
+ |-------|-------|----------|
28
+ | — | Nenhuma — workflow autocontido | — |
29
+
24
30
  Etapas de execução:
25
31
 
26
32
  1. Carregue o arquivo atual da spec. Realize uma varredura estruturada de ambiguidades e cobertura usando esta taxonomia. Para cada categoria, marque o status: Claro / Parcial / Ausente. Produza um mapa de cobertura interno usado para priorização (não divulgue o mapa bruto a menos que nenhuma pergunta seja feita). Analise o arquivo da spec e realize uma cobertura apenas com os itens que estão incluídos na especificação do usuário.
@@ -163,13 +169,13 @@ Para cada categoria com status Parcial ou Ausente, adicione uma oportunidade de
163
169
  - Caminho para a spec atualizada.
164
170
  - Seções tocadas (liste os nomes).
165
171
  - Tabela de resumo de cobertura listando cada categoria da taxonomia com Status: Resolvido (era Parcial/Ausente e foi tratada), Adiado (excede a cota de perguntas ou melhor tratar no planejamento), Claro (já estava suficiente), Pendente (ainda Parcial/Ausente mas de baixo impacto).
166
- - Se restarem itens Pendentes ou Adiados, recomende prosseguir para `/product/prod.spec.plan.md` ou rodar `/product/prod.spec.clarify.md` novamente após o planejamento.
172
+ - Se restarem itens Pendentes ou Adiados, recomende prosseguir para `/prod.spec.breakdown` ou rodar `/prod.spec.clarify` novamente após o planejamento.
167
173
  - Próximo comando sugerido.
168
174
 
169
175
  Regras de comportamento:
170
176
 
171
177
  - Se nenhuma ambiguidade significativa for encontrada (ou se todas as perguntas potenciais forem de baixo impacto), responda: “Nenhuma ambiguidade crítica detectada que valha esclarecimento formal.” e sugira prosseguir.
172
- - Se o arquivo da spec estiver ausente, instrua o usuário a rodar `/product/prod.spec.md` primeiro (não crie uma nova spec aqui).
178
+ - Se o arquivo da spec estiver ausente, instrua o usuário a rodar `/prod.spec` primeiro (não crie uma nova spec aqui).
173
179
  - Nunca exceda 5 perguntas feitas no total (reformulações de uma mesma pergunta não contam como novas).
174
180
  - Evite perguntas especulativas sobre stack tecnológica, a menos que a ausência bloqueie a clareza funcional.
175
181
  - Respeite sinais de encerramento antecipado do usuário (“stop”, “done”, “proceed”).
@@ -39,6 +39,16 @@ O comando e o agente seguem obrigatoriamente `$PROD_RULES` (`prod-rules.md`):
39
39
  - Perguntas: use o `AskUserQuestion` se estiver disponível; senão, o formato de tabela do `prod-rules.md`. **Uma pergunta por vez**
40
40
  - Confirmar com o usuário o caminho e o nome antes de salvar arquivo
41
41
 
42
+ ### Skills invocados durante o workflow
43
+
44
+ | Passo | Skill | Condição |
45
+ |-------|-------|----------|
46
+ | Regras do framework / Passo 4 — A entrevista | `prod.discovery-interviewer` (agente) | Sempre — conduz a entrevista, e o comando segue a postura dele |
47
+ | Passo 2 — Reconhecer o projeto | `/jarvis-docs-central` | Se `CENTRAL_DOCS_REPO` estiver configurado |
48
+ | Passo 2 — Reconhecer o projeto | `/jarvis-context-detect` | Para calibrar a profundidade da entrevista |
49
+ | Passo 2 — Reconhecer o projeto | `/eng-backend-arch-c4` | Só com a confirmação do usuário; o retorno é tratado como suposição a validar |
50
+ | Passo 2 — Reconhecer o projeto | `/eng-security-cybersecurity` | Só com a confirmação do usuário; o retorno é tratado como suposição a validar |
51
+
42
52
  ## Passo 0 — Entender o que foi pedido
43
53
 
44
54
  1. **Sem `$ARGUMENTS`:** pergunte qual é a ideia antes de qualquer outra coisa.
@@ -33,6 +33,14 @@ Utilize o `$ARGUMENTS` que o usuário passar como ponto de partida e para entend
33
33
  - Ter um breakdown existente é importante, mas opcional. Questione o usuário se ele deseja criar um breakdown (siga o fluxo de trabalho `prod.spec.breakdown.md`) ou se ele deseja criar um épico independente de especificações anteriores ou para projetos que já estão em andamento
34
34
  - Compreensão de alto nível da abordagem técnica
35
35
 
36
+ ### Skills invocados durante o workflow
37
+
38
+ | Passo | Skill | Condição |
39
+ |-------|-------|----------|
40
+ | Busca no Central Docs (condicional) | `/jarvis-docs-central` (via `jarvis docs sync --silent`) | Se `CENTRAL_DOCS_REPO` estiver definido no ENV.md, antes de criar o épico |
41
+ | Próximas etapas | `/prod.spec.issue` | Depois de criar o épico, se o usuário quiser escrever as histórias ou tarefas relacionadas |
42
+ | Publicação no Central Docs (condicional) | `/jarvis-docs-central` (via `jarvis docs publish --tipo epic`) | Se `CENTRAL_DOCS_REPO` estiver definido, o épico estiver salvo e aprovado e o usuário responder "Sim, publicar agora" |
43
+
36
44
  ## Resultado final
37
45
  - Por padrão, use o modelo `$PROD_TEMPLATES/prod-epic-template.md` integralmente
38
46
  - Siga a estrutura do modelo exatamente como definida, não pule passos, a não ser que o usuário solicite explicitamente
@@ -26,6 +26,13 @@ Utilize o `$ARGUMENTS` que o usuário passar como ponto de partida e para entend
26
26
  - Para documentar critérios de aceitação claros e testáveis
27
27
  - Para descrever o funcionamento detalhado da feature a partir do comportamento do usuário, de especificações de produto e de design
28
28
 
29
+ ### Skills invocados durante o workflow
30
+
31
+ | Passo | Skill | Condição |
32
+ |-------|-------|----------|
33
+ | Busca no Central Docs (condicional) | `/jarvis-docs-central` (via `jarvis docs sync --silent`) | Se `CENTRAL_DOCS_REPO` estiver definido no ENV.md |
34
+ | Publicação no Central Docs (condicional) | `/jarvis-docs-central` (via `jarvis docs publish --tipo frd`) | Se `CENTRAL_DOCS_REPO` estiver definido, o FRD estiver salvo e aprovado e o usuário responder "Sim, publicar agora" |
35
+
29
36
  ## Princípios Fundamentais
30
37
  1. **Sempre use o template** `$PROD_TEMPLATES/prod-frd-template.md` para o output final
31
38
  2. **Nunca crie o arquivo final com suposições não validadas** — sempre confirme sugestões primeiro
@@ -35,6 +35,12 @@ Um grupo de histórias de um mesmo assunto podem formar um épico.
35
35
  - Referências de design (para histórias de usuário)
36
36
  - Quaisquer restrições técnicas ou requisitos relevantes
37
37
 
38
+ ### Skills invocados durante o workflow
39
+
40
+ | Passo | Skill | Condição |
41
+ |-------|-------|----------|
42
+ | Estrutura da Issue (salvar no `$TASK_MANAGER`) | `/eng-global-task-comment` (e adapter do vendor) | Se o usuário pedir para salvar no `$TASK_MANAGER` e `TASK_MANAGER`, token e URL estiverem no ENV.md; freelance ou sem token/URL: não usar, salvar só o markdown local |
43
+
38
44
  ## Resultado Final
39
45
  - Siga a estrutura exata do template `$PROD_TEMPLATES/prod-issue-template.md`
40
46
  - Convenção de nomenclatura: `{issue_type}-{id}-{issue_name}.md` (ex: story-123-fluxo-lembrar-senha.md)
@@ -21,6 +21,20 @@ Estas instruções ajudam a orientar o usuário que deseja começar a construir
21
21
  - Quando precisar criar novos ou editar épicos, issues, tasks, stories e bugs
22
22
  - Quando precisar de orientação sobre o tipo de documentação a ser gerada
23
23
 
24
+ ### Skills invocados durante o workflow
25
+
26
+ | Passo | Skill | Condição |
27
+ |-------|-------|----------|
28
+ | Instruções › Projeto existente ou novo | `/prod.spec.prd` | Se for projeto novo, ou projeto existente sem documentação e o usuário quiser criar o PRD inicial |
29
+ | Instruções › Uso adequado dos comandos | `/prod.spec.discovery` | Se o usuário só tem uma ideia inicial (investigar problema, requisitos e viabilidade antes de especificar) |
30
+ | Instruções › Uso adequado dos comandos | `/prod.spec.prd` | Se o pedido for um PRD |
31
+ | Instruções › Uso adequado dos comandos | `/prod.spec.frd` | Se o pedido for um FRD |
32
+ | Instruções › Uso adequado dos comandos | `/prod.spec.ard` | Se o pedido for registrar os requisitos de arquitetura (ARD) a partir de uma especificação de produto |
33
+ | Instruções › Uso adequado dos comandos | `/prod.spec.issue` | Se o pedido for uma issue (história, tarefa ou bug) |
34
+ | Instruções › Uso adequado dos comandos | `/prod.spec.clarify` | Para clarificar e revisar qualquer tipo de especificação |
35
+ | Instruções › Uso adequado dos comandos | `/prod.spec.breakdown` | Para quebrar uma especificação grande em fatias (versões, épicos, histórias) |
36
+ | Instruções › Uso adequado dos comandos | `/prod.spec.epic` | Se o pedido for criar épicos |
37
+
24
38
  ## Instruções
25
39
 
26
40
  - **Sessões de produto**: rascunhos WIP em `$SESSIONS_DIR/prod/{TASK_MANAGER_KEY}/`. A spec canônica fica em `$PROD_DOCS` (não substituir).
@@ -45,7 +59,7 @@ Estas instruções ajudam a orientar o usuário que deseja começar a construir
45
59
  - Para investigar uma ideia inicial (problema, requisitos e viabilidade) antes de especificar, use `$PROD_FLOWS/prod.spec.discovery.md`. Se o usuário só tem uma ideia, oriente para o discovery em vez de abrir um PRD com dados presumidos
46
60
  - Para PRD use as instruções em `$PROD_FLOWS/prod.spec.prd.md`
47
61
  - Para FRD use as instruções em `$PROD_FLOWS/prod.spec.frd.md`
48
- - Para ARD use as instruções em `$PROD_FLOWS/prod.spec.ard.md`
62
+ - Para ARD use as instruções em `$PROD_FLOWS/prod.spec.ard.md` (o ARD é um documento de engenharia: este comando levanta os requisitos com o PM e conduz o `eng.create-ard`)
49
63
  - Para Issue use as instruções em `$PROD_FLOWS/prod.spec.issue.md`
50
64
  - Para clarificar e revisar qualquer tipo de especificação, use as instruções em `$PROD_FLOWS/prod.spec.clarify.md`
51
65
  - Para quebrar uma especificação grande em fatias (versões / épicos / histórias), use `$PROD_FLOWS/prod.spec.breakdown.md`
@@ -25,6 +25,13 @@ Utilize o `$ARGUMENTS` que o usuário passar como ponto de partida e para entend
25
25
  - Quando documentação abrangente é necessária
26
26
  - Como fonte única de verdade para o desenvolvimento do produto e base para derivar histórias e tarefas
27
27
 
28
+ ### Skills invocados durante o workflow
29
+
30
+ | Passo | Skill | Condição |
31
+ |-------|-------|----------|
32
+ | Busca no Central Docs (condicional) | `/jarvis-docs-central` (via `jarvis docs sync --silent`) | Se `CENTRAL_DOCS_REPO` estiver definido no ENV.md (iteração de PRD existente) |
33
+ | Publicação no Central Docs (condicional) | `/jarvis-docs-central` (via `jarvis docs publish --tipo prd`) | Se `CENTRAL_DOCS_REPO` estiver definido, o PRD estiver salvo e aprovado e o usuário responder "Sim, publicar agora" |
34
+
28
35
  ## Princípios Fundamentais
29
36
  1. **Sempre use o template** `$PROD_TEMPLATES/prod-prd-template.md` para o output final
30
37
  2. **Nunca crie o arquivo final com suposições não validadas** — sempre confirme sugestões primeiro
@@ -6,9 +6,9 @@ description: Gerencia o arquivo taxonomy.md de forma segura (CRUD de opções or
6
6
 
7
7
  Gerencia o arquivo `taxonomy.md` que define as opções válidas para SQUAD, HUB, POSITION e AREA.
8
8
 
9
- ## Uso
9
+ Este workflow é **autônomo**: as instruções para as operações abaixo estão aqui, sem depender de nenhum skill.
10
10
 
11
- Este command invoca o skill `taxonomy-manager` para operações CRUD seguras:
11
+ ## Uso
12
12
 
13
13
  ### Listar opções
14
14
 
@@ -45,10 +45,16 @@ Este command invoca o skill `taxonomy-manager` para operações CRUD seguras:
45
45
  /taxonomy validate
46
46
  ```
47
47
 
48
+ ### Skills invocados durante o workflow
49
+
50
+ | Passo | Skill | Condição |
51
+ |-------|-------|----------|
52
+ | — | Nenhuma — workflow autocontido | — |
53
+
48
54
  ## Sintaxe
49
55
 
50
56
  ```
51
- Skill("taxonomy-manager", "$ARGUMENTS")
57
+ /taxonomy <operação> [<CATEGORIA>] [<NOME>] [<DESCRIÇÃO>]
52
58
  ```
53
59
 
54
60
  Onde `$ARGUMENTS` é um dos formatos:
@@ -58,6 +64,52 @@ Onde `$ARGUMENTS` é um dos formatos:
58
64
  - `remove <CATEGORIA> <NOME>`
59
65
  - `validate`
60
66
 
67
+ `<CATEGORIA>` é `SQUADS`, `HUBS`, `POSITIONS` ou `AREAS`. Sem argumentos ou com uma operação desconhecida, mostre a sintaxe acima e pergunte o que a pessoa quer fazer.
68
+
69
+ ## Como executar cada operação
70
+
71
+ O arquivo é o `taxonomy.md` da raiz do framework (ou do workspace). Cada categoria é uma seção `## ...` (Squads, Hubs, Positions, Areas) e cada opção é um título `### NOME`, seguido de linhas de descrição. Em `SQUADS`, a opção também pode ter linhas de metadados (`channel_id:`, `board_code:`, `modules:`); em `AREAS`, a linha `prefix:`. A seção `Domain` (`DOMAIN:`) não é uma categoria de opções.
72
+
73
+ ### Regras comuns (antes de qualquer alteração)
74
+
75
+ 1. **Ler** o `taxonomy.md` inteiro e localizar a seção da categoria. Se a categoria não existir, informe e liste as categorias válidas.
76
+ 2. **Validar o nome** (em `add`): MAIÚSCULAS, sem espaços (use `-` ou `_` para separar palavras), sem duplicar uma opção que já existe na categoria.
77
+ 3. **Fazer backup** antes de gravar: copie o `taxonomy.md` para `.jarvis/backups/taxonomy-{AAAAMMDD-HHMMSS}.md` (a pasta `.jarvis/` não é versionada). Se não for possível gravar o backup, **pare** e avise, sem alterar o arquivo.
78
+ 4. **Mostrar o que vai mudar** (a seção antes e depois) e **pedir confirmação** antes de gravar em `add`, `update` e `remove`.
79
+ 5. **Preservar a estrutura markdown**: não reordenar nem reescrever outras seções; alterar só a opção pedida.
80
+
81
+ ### `list <CATEGORIA>`
82
+
83
+ Mostre cada opção da categoria com a primeira linha da descrição, em tabela. Não altera nada.
84
+
85
+ ### `add <CATEGORIA> <NOME> <DESCRIÇÃO>`
86
+
87
+ 1. Aplique as regras comuns.
88
+ 2. Acrescente, no fim da seção da categoria (antes do `---` que a encerra), um bloco `### NOME` com a descrição.
89
+ 3. Em `SQUADS`, pergunte se a pessoa quer preencher `channel_id`, `board_code` e `modules`; sem resposta, deixe-os vazios como nas outras squads.
90
+ 4. Em `AREAS`, peça o `prefix` (letras minúsculas, sem espaços) e **avise** que as áreas do framework são `ENGINEERING` e `PRODUCT`: adicionar outra área exige um menu correspondente no `warm-up` e só deve ser feito com confirmação explícita.
91
+
92
+ ### `update <CATEGORIA> <NOME> <NOVA_DESCRIÇÃO>`
93
+
94
+ 1. A opção deve existir; se não, informe e sugira nomes parecidos.
95
+ 2. Substitua só as linhas de descrição da opção (mantendo `prefix:` e metadados), depois de mostrar o antes e o depois e pedir confirmação.
96
+
97
+ ### `remove <CATEGORIA> <NOME>`
98
+
99
+ 1. A opção deve existir; se não, informe e sugira nomes parecidos.
100
+ 2. **Ação destrutiva:** leia o `$IDE/ENV.md`; se o valor de `SQUAD`, `HUB`, `POSITION` ou `AREA` for a opção a remover, **avise** que o `ENV.md` ficará inválido e peça confirmação explícita.
101
+ 3. Remova o bloco `### NOME` e suas linhas, sem tocar nas outras opções, depois de mostrar o que será removido e pedir confirmação.
102
+
103
+ ### `validate`
104
+
105
+ Não altera nada. Verifique e reporte, por categoria:
106
+ - a seção existe e tem ao menos uma opção;
107
+ - todo nome está em MAIÚSCULAS e sem espaços, sem duplicata;
108
+ - toda opção de `AREAS` tem `prefix:`;
109
+ - a estrutura markdown está íntegra (títulos `##` e `###`, separadores `---`).
110
+
111
+ Termine com um resumo (`✅ válido` ou a lista de problemas, com a linha de cada um).
112
+
61
113
  ## Exemplos
62
114
 
63
115
  ### Adicionar novo squad
@@ -77,9 +129,9 @@ Onde `$ARGUMENTS` é um dos formatos:
77
129
 
78
130
  ## Segurança
79
131
 
80
- ✅ Backup automático antes de modificações
132
+ ✅ Backup antes de modificações (`.jarvis/backups/`)
81
133
  ✅ Validação de formato (MAIÚSCULAS, sem espaços)
82
- ✅ Confirmação para ações destrutivas
134
+ ✅ Confirmação para ações destrutivas e antes de gravar
83
135
  ✅ Preservação da estrutura markdown
84
136
 
85
137
  ## Após Modificações
@@ -89,4 +141,4 @@ Depois de adicionar/remover opções:
89
141
  2. Não é necessário reiniciar o Claude ou a IDE
90
142
  3. Projetos existentes continuam funcionando
91
143
 
92
- > **Documentação completa**: Ver `.claude/skills/taxonomy-manager/SKILL.md`
144
+ > **Referência**: o formato das seções está descrito no próprio `taxonomy.md` ("Como Adicionar Novas Opções").