jarvis-ai-framework 7.0.0 → 8.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/AGENTS.md +2 -2
  2. package/README.md +11 -34
  3. package/agents/engineering/data/eng.data-engineer.agent.md +3 -3
  4. package/agents/engineering/eng.agent.md +13 -11
  5. package/agents/engineering/eng.dev-code-reviewer.md +19 -4
  6. package/agents/engineering/eng.docs-consolidator.agent.md +2 -2
  7. package/agents/engineering/eng.docs-writer.md +17 -2
  8. package/agents/engineering/qa/eng.qa.quality-champion-task-agent.md +2 -2
  9. package/agents/engineering/qa/eng.qa.test-planner.md +20 -5
  10. package/agents/product/prod.pm-checker.md +16 -1
  11. package/bin/README.md +4 -4
  12. package/bin/commands/init.js +237 -29
  13. package/bin/lib/cli/program.js +7 -11
  14. package/bin/lib/core/sync-engine.js +8 -4
  15. package/bin/lib/utils/frontmatter.js +1 -1
  16. package/bin/lib/utils/paths.js +2 -1
  17. package/bin/lib/utils/version.js +65 -0
  18. package/bin/postinstall.js +7 -31
  19. package/package.json +2 -2
  20. package/rules/AGENTS.md +1 -1
  21. package/rules/engineering/data/data-rules.md +2 -2
  22. package/rules/engineering/eng-rules.md +1 -1
  23. package/rules/engineering/eng-security-rules.md +1 -1
  24. package/rules/engineering/eng.integrations-rules.md +6 -2
  25. package/rules/rtk-rules.md +1 -1
  26. package/rules-on-demand/doc-links-rules.md +2 -2
  27. package/rules-on-demand/engineering/eng.breakdown-subtasks-rules.md +1 -1
  28. package/rules-on-demand/engineering/eng.plan-rules.md +2 -0
  29. package/rules-on-demand/engineering/eng.pr-rules.md +8 -6
  30. package/rules-on-demand/engineering/eng.pre-pr-rules.md +10 -3
  31. package/rules-on-demand/engineering/eng.start-rules.md +7 -5
  32. package/rules-on-demand/engineering/eng.tech-spec-rules.md +9 -7
  33. package/rules-on-demand/engineering/eng.transitions-rules.md +7 -6
  34. package/skills/AGENTS.md +2 -2
  35. package/skills/SKILLS-ROADMAP.md +3 -3
  36. package/skills/eng-backend-arch-c4/assets/example-container.md +4 -4
  37. package/skills/eng-backend-arch-c4/assets/example-context.md +6 -6
  38. package/skills/eng-backend-microservices-trace/SKILL.md +1 -1
  39. package/skills/eng-global-investigation/SKILL.md +4 -0
  40. package/skills/eng-global-pr/SKILL.md +15 -12
  41. package/skills/eng-global-task-comment/SKILL.md +11 -3
  42. package/skills/eng-global-tech-spec/references/delivery-spec.md +28 -21
  43. package/skills/jarvis-docs-central/README.md +4 -4
  44. package/skills/jarvis-docs-central/SKILL.md +5 -3
  45. package/skills/jarvis-evolution-architect/references/exemplos.md +3 -3
  46. package/skills/jarvis-init/SKILL.md +89 -24
  47. package/skills/jarvis-init/assets/setup-guide.md +1 -1
  48. package/skills/jarvis-report-issue/SKILL.md +37 -24
  49. package/skills/product-roadmap-report/SKILL.md +2 -2
  50. package/skills/product-roadmap-report/commands/status.memory.md +1 -1
  51. package/skills/product-roadmap-report/commands/status.roadmap.preview.md +2 -2
  52. package/skills/product-specs/SKILL.md +1 -1
  53. package/skills/product-specs-update/SKILL.md +138 -121
  54. package/templates/ENV-template.md +57 -27
  55. package/templates/cdd-aplicado-a-prompts.md +1 -1
  56. package/templates/engineering/AGENTS-template.md +2 -2
  57. package/templates/engineering/CONTACTS-template.md +1 -1
  58. package/templates/engineering/advisor-template.md +2 -2
  59. package/templates/engineering/architecture-template.md +14 -1
  60. package/templates/engineering/data-contract-template.md +1 -1
  61. package/templates/engineering/plan-template.md +2 -0
  62. package/templates/engineering/tech-spec-delivery-template.md +8 -8
  63. package/templates/engineering/tech-spec-template.md +3 -3
  64. package/templates/product/prod-frd-template.md +1 -1
  65. package/templates/product/prod-prd-template.md +1 -1
  66. package/workflows/AGENTS.md +1 -1
  67. package/workflows/README.md +1 -1
  68. package/workflows/engineering/data/data.contract.md +12 -8
  69. package/workflows/engineering/eng.breakdown-subtasks.md +2 -2
  70. package/workflows/engineering/eng.build-tech-spec.md +1 -1
  71. package/workflows/engineering/eng.create-ard-from-code.md +3 -5
  72. package/workflows/engineering/eng.create-ard.md +3 -5
  73. package/workflows/engineering/eng.create-rfc.md +5 -5
  74. package/workflows/engineering/eng.light-arch.md +1 -1
  75. package/workflows/engineering/eng.plan.md +10 -7
  76. package/workflows/engineering/eng.pr.md +26 -19
  77. package/workflows/engineering/eng.pre-pr.md +126 -27
  78. package/workflows/engineering/eng.spec-consolidate.md +5 -5
  79. package/workflows/engineering/eng.start.md +23 -9
  80. package/workflows/engineering/eng.work.md +4 -4
  81. package/workflows/engineering/qa/eng.qa-release-signoff.md +1 -66
  82. package/workflows/product/prod.roadmap.preview.md +10 -14
  83. package/workflows/product/prod.spec.ard.md +2 -2
  84. package/workflows/product/prod.spec.breakdown.md +2 -2
  85. package/workflows/product/prod.spec.epic.md +4 -4
  86. package/workflows/product/prod.spec.frd.md +3 -3
  87. package/workflows/product/prod.spec.issue.md +3 -3
  88. package/workflows/product/prod.spec.prd.md +5 -5
  89. package/bin/commands/qa-signoff.js +0 -115
@@ -38,7 +38,7 @@
38
38
  - Nunca commite credenciais, tokens ou senhas
39
39
  - Use variáveis de ambiente para dados sensíveis
40
40
  - Siga as práticas de segurança definidas em `{IDE_FOLDER}/rules/engineering/`
41
- - Reporte vulnerabilidades ao time de segurança
41
+ - Reporte vulnerabilidades ao time de segurança (a pessoa do projeto, pela via combinada; o Jarvis não envia nada sem perguntar)
42
42
 
43
43
  Available Workflows
44
44
 
@@ -50,7 +50,7 @@ O projeto utiliza o framework JARVIS com os seguintes comandos principais:
50
50
  | `/eng.start` | Iniciar nova tarefa (cria architecture.md) |
51
51
  | `/eng.plan` | Criar plano de execução faseado |
52
52
  | `/eng.work` | Implementar código seguindo o plano |
53
- | `/eng.pr` | Criar branch, commit e Merge Request |
53
+ | `/eng.pr` | Push e Merge Request, depois da pergunta (regra de ouro) |
54
54
  | `/eng.debug` | Investigar e resolver bugs |
55
55
 
56
56
  For AI Agents
@@ -73,7 +73,7 @@ Recomendação: ler o playbook de tomada de decisões em tecnologia do time (wik
73
73
  Incidentes em Produção
74
74
 
75
75
  ```
76
- . Alertar no canal squad-{nome}-alerts
76
+ . A pessoa avisa no canal squad-{nome}-alerts (o Jarvis, só depois da pergunta)
77
77
 
78
78
  . Acionar pessoa de plantão (PagerDuty)
79
79
 
@@ -14,7 +14,7 @@ Etapas da tarefa:
14
14
  | Alerta no início do eng.start | O usuário escolhe usar o Advisor e o modelo | Ainda não existe |
15
15
  | eng.start | Escrevo o architecture.md; o que diverge do código ou é ambíguo vira "Questões em Aberto" | Aqui: você orienta cada questão |
16
16
  | Orientação acatada | Atualizo o architecture.md e registro | Não |
17
- | Registro da auditoria | Posto um comentário na issue com as questões e as suas sugestões (sem TASK_MANAGER, só no architecture.md) | Não |
17
+ | Registro da auditoria | Mostro o comentário com as questões e as suas sugestões e, só com o Sim do usuário (regra de ouro), posto na issue pelo `/eng-global-task-comment`, que pergunta (sem o Sim, o texto fica no task-comment-*.md e no architecture.md; sem TASK_MANAGER, o skill registra no task-log.md) | Não |
18
18
  | eng.plan / eng.work | Plano e implementação | Só por exceção: questão nova em aberto |
19
19
  | Commit e PR | Um commit; o usuário valida em "Files changed" | Não |
20
20
  | Merge e fechamento | O usuário faz o merge | Não |
@@ -41,7 +41,7 @@ Analise o repositório só se precisar para ter certeza (sem chutar). Responda (
41
41
  1. SUGESTÃO DO ADVISOR (opção 1-3 ou a 4 detalhada) · 2. DIVERGÊNCIA · 3. BASE · 4. ANÁLISE NO REPOSITÓRIO · 5. RELAÇÃO COM OUTRAS TAREFAS · 6. CERTEZA (escrito / confirmado no código / inferência). Não altere arquivos; aponte o risco se uma opção for destrutiva ou fugir do card.
42
42
  ```
43
43
 
44
- ## Modelo do comentário de auditoria (postado pelo agente principal)
44
+ ## Modelo do comentário de auditoria (postado pelo agente principal, só depois da pergunta: regra de ouro)
45
45
 
46
46
  ```
47
47
  ## Auditoria — questões do architecture.md
@@ -10,7 +10,8 @@
10
10
  > **Commit base:** `{sha}` (no modo workspace, `{repo}@{sha}` por repositório: as linhas citadas nos links são deste commit)
11
11
  > **Status:** 🔄 Em Revisão | ✅ Aprovado | ❌ Rejeitado
12
12
  > **Advisor:** {modelo escolhido no início do eng.start} | não utilizado
13
- > **Questões em aberto:** tratar no architecture.md (como hoje) | uma a uma, assim que surgirem (só sem Advisor)
13
+ > **Questões em aberto:** tratar no architecture.md (como hoje) | uma a uma, assim que surgirem (só sem Advisor)
14
+ > **Ajustes antes da aprovação:** {0} (o `eng.start` soma 1 a cada "Ajustar o documento"; o `eng.pre-pr` copia o número para o PR Brief)
14
15
 
15
16
  ---
16
17
 
@@ -86,6 +87,18 @@ Novo fluxo:
86
87
  | {convenção de API} | {ex: REST, naming conventions} | {caminho/arquivo-exemplo} |
87
88
  | {padrão de testes} | {ex: AAA, mocks} | {caminho/arquivo-exemplo} |
88
89
 
90
+ ### 2.5 Premissas e Passe Crítico
91
+
92
+ > Preenchida no passe crítico (Fase 4.4 do `eng.start`), antes da aprovação. Parecido com o `Reflection`: um passe contra o próprio documento (ver #171). Só entram premissas que mudam o plano se estiverem erradas; até cerca de 10 linhas.
93
+
94
+ | Premissa | Fonte | O que a derrubaria | Como conferir |
95
+ | -------- | ----- | ------------------ | ------------- |
96
+ | {afirmação em que o documento se apoia} | {lida: [`{arquivo}:{n}`](../../../../{repo}/{caminho}#L{n}) \| presumida} | {fato que, se verdadeiro, invalida a premissa} | {leitura, comando ou pergunta} |
97
+
98
+ **O que derrubaria este documento:** {a premissa mais frágil, em uma frase}
99
+
100
+ > Toda premissa **presumida** que mudaria o plano vira, antes da aprovação, uma leitura feita (e passa a "lida") ou uma questão em aberto na seção 8.
101
+
89
102
  ---
90
103
 
91
104
  ## 3. Decisões Arquiteturais
@@ -122,7 +122,7 @@ WHERE data_referencia BETWEEN '{{DATA_INICIO}}' AND '{{DATA_FIM}}'
122
122
 
123
123
  Qualquer alteração de schema (adição, remoção ou mudança de tipo de campo) deve:
124
124
 
125
- 1. Ser comunicada no canal `$DATA_REQUESTS_CHANNEL` com **7 dias de antecedência**
125
+ 1. Ser comunicada no canal `$DATA_REQUESTS_CHANNEL` com **7 dias de antecedência** (pela pessoa; um aviso enviado pelo Jarvis só sai depois da pergunta)
126
126
  2. Ter nova versão do contrato criada (versionamento semântico: `MAJOR.MINOR`)
127
127
  3. Período de coexistência: versão antiga disponível por **30 dias** após nova versão publicada
128
128
 
@@ -7,6 +7,8 @@
7
7
  > Links (inclusive nos comentários de fase): `rules-on-demand/doc-links-rules.md`; os arquivos de "Onde fazer" que já existem viram link (`../../../../{repo}/{arquivo}#L{n}`), e os novos ficam em texto.
8
8
  >
9
9
  > **Execução:** {fase a fase | todas de uma vez} · **Commits:** {um por fase | um só ao final} · **Depois do work:** {sugerir /eng.pre-pr | rodar /eng.pre-pr | direto para /eng.pr | parar} _(preenchido pelo `eng.work`, Fase 1.3)_
10
+ >
11
+ > **Ajustes antes da aprovação:** {0} _(o `eng.plan` soma 1 a cada "Ajustar o plano"; o `eng.pre-pr` copia o número para o PR Brief)_
10
12
 
11
13
  ---
12
14
 
@@ -1,10 +1,10 @@
1
1
  # Tech Spec — Formatos de Entrega
2
2
 
3
- > Template com os formatos usados no fim do `eng.build-tech-spec`: descrição da subtarefa no Jira, comentário na história original, mensagem de entrega e um exemplo preenchido, além do diagrama do fluxo. Substitua os placeholders `{...}`.
3
+ > Template com os formatos usados no fim do `eng.build-tech-spec`: descrição da subtarefa no board, comentário na história original, mensagem de entrega e um exemplo preenchido, além do diagrama do fluxo. Substitua os placeholders `{...}`.
4
4
 
5
- ## Descrição da subtarefa no Jira
5
+ ## Descrição da subtarefa no board
6
6
 
7
- Fase 7.2 do workflow. Use este formato na descrição de cada subtarefa criada no Jira (ou entregue ao usuário para copiar e colar).
7
+ Fase 7.2 do workflow. Use este formato na descrição de cada subtarefa criada no Jira pela `acli` (ou entregue ao usuário para copiar e colar no board).
8
8
 
9
9
  ```markdown
10
10
  ## Descrição
@@ -37,7 +37,7 @@ Tech Spec: [Link para tech-spec.md]
37
37
 
38
38
  ## Comentário na história original
39
39
 
40
- Fase 7.4 do workflow. Comentário a registrar na história (STORY-XXX) depois de criar as subtarefas.
40
+ Fase 7.4 do workflow. Comentário a registrar na história (STORY-XXX) depois de criar as subtarefas, pelo `/eng-global-task-comment`, que mostra o texto e pergunta (regra de ouro).
41
41
 
42
42
  ```
43
43
  Tech Spec criada: [Link para tech-spec.md]
@@ -60,7 +60,7 @@ Fase 8.2 do workflow. O que entregar ao usuário ao final.
60
60
  ✅ Tech Spec criada com sucesso!
61
61
 
62
62
  📄 Documento Local: $SESSIONS_DIR/eng/{feature-name}/tech-spec.md
63
- 📎 Anexada no Jira: {STORY-XXX}
63
+ 📎 {Anexada na issue: {STORY-XXX} | A anexar pela pessoa (orientado: GitHub/GitLab, sem a CLI, CLI que não anexa ou acesso manual) | Não anexada (só na sessão; sem o Sim) | Sem issue (freelance)}
64
64
 
65
65
  📋 Resumo:
66
66
  - História: {STORY-XXX} - {Título}
@@ -68,7 +68,7 @@ Fase 8.2 do workflow. O que entregar ao usuário ao final.
68
68
  - Subtarefas: {Y subtarefas}
69
69
  - Estimativa total: {Z horas}
70
70
 
71
- 🔗 Subtarefas criadas no Jira:
71
+ 🔗 Subtarefas {criadas no Jira pela acli | entregues em template para criação manual (outros boards, sem a CLI, com acesso manual, sem o Sim ou sem board)}:
72
72
  - SUBTASK-001: {Nome} (P0, 6h)
73
73
  - SUBTASK-002: {Nome} (P1, 4h)
74
74
  - SUBTASK-003: {Nome} (P1, 8h)
@@ -93,7 +93,7 @@ Exemplo preenchido da mensagem de entrega (fictício).
93
93
  ✅ Tech Spec para STORY-456 criada com sucesso!
94
94
 
95
95
  📄 **Documento Local**: $SESSIONS_DIR/eng/story-456/tech-spec.md
96
- 📎 **Anexado no Jira**: STORY-456
96
+ 📎 **Anexada na issue**: STORY-456
97
97
 
98
98
  📊 **Resumo**:
99
99
 
@@ -102,7 +102,7 @@ Exemplo preenchido da mensagem de entrega (fictício).
102
102
  - **Subtarefas**: 5 subtarefas
103
103
  - **Estimativa total**: 26 horas
104
104
 
105
- 🔗 **Subtarefas criadas no Jira**:
105
+ 🔗 **Subtarefas criadas no Jira**: ← ou "entregues em template"
106
106
 
107
107
  - SUBTASK-101: [BACKEND] Criar endpoint POST /api/auth/register (P0, 6h)
108
108
  - SUBTASK-102: [BACKEND] Criar endpoint POST /api/auth/login (P0, 6h)
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: {nome da tech-spec}
3
3
  id: {TECH-001}
4
- related_story: {STORY-XXX do Jira}
4
+ related_story: {STORY-XXX do board}
5
5
  epic_related: {EPIC-XXX se existir}
6
6
  related_rfc: {RFC-XXX ou "Não aplicável"}
7
7
  link_task: {URL da história no $TASK_MANAGER}
@@ -16,7 +16,7 @@ reviewers: {lista de revisores}
16
16
 
17
17
  ## 1. Contexto da História
18
18
 
19
- ### História Original do Jira
19
+ ### História Original (card do board)
20
20
  **ID**: {STORY-XXX}
21
21
  **Link**: {URL}
22
22
 
@@ -443,7 +443,7 @@ TIMEOUT_MS=5000
443
443
  - [ ] Rollback testado
444
444
 
445
445
  **Produto:**
446
- - [ ] Critérios de aceitação do Jira atendidos
446
+ - [ ] Critérios de aceitação do card atendidos
447
447
  - [ ] Product Owner aceitou
448
448
  - [ ] QA sign-off
449
449
  - [ ] Stakeholders notificados
@@ -165,7 +165,7 @@ Ele é um sistema de gestão de dados pessoais de saúde, que agrega informaçõ
165
165
  - {Exclusão adicional}
166
166
 
167
167
  ## Especificações relacionadas
168
- {liste todos os PRDs, FRDs ou outros documentos relacionados a este FRD fazendo uma análise prévia do projeto e das especificações existentes no Central docs (`jarvis docs sync`). Pergunte para o usuário se existe outras relações que ele conheça. Antes de adicionar as sugestões, confirme com o usuário se elas estão corretas.}
168
+ {liste todos os PRDs, FRDs ou outros documentos relacionados a este FRD fazendo uma análise prévia do projeto e das especificações existentes em `$PROD_DOCS` (e, se configurado, das funcionalidades já implementadas no Central docs, `jarvis docs sync`). Pergunte para o usuário se existe outras relações que ele conheça. Antes de adicionar as sugestões, confirme com o usuário se elas estão corretas.}
169
169
 
170
170
  **PRDs relacionadas**:
171
171
  | ID | Título | Descrição |
@@ -179,7 +179,7 @@ Estes são indicadores que podem ser usados para medir o sucesso dessa solução
179
179
 
180
180
 
181
181
  ## Especificações relacionadas
182
- {liste todos os PRDs, FRDs ou outros documentos relacionados a este FRD fazendo uma análise prévia do projeto e das especificações existentes no Central docs (`jarvis docs sync`). Pergunte para o usuário se existe outras relações que ele conheça. Antes de adicionar as sugestões, confirme com o usuário se elas estão corretas.}
182
+ {liste todos os PRDs, FRDs ou outros documentos relacionados a este PRD fazendo uma análise prévia do projeto e das especificações existentes em `$PROD_DOCS` (e, se configurado, das funcionalidades já implementadas no Central docs, `jarvis docs sync`). Pergunte para o usuário se existe outras relações que ele conheça. Antes de adicionar as sugestões, confirme com o usuário se elas estão corretas.}
183
183
 
184
184
  **PRDs relacionadas**:
185
185
  | ID | Título | Descrição |
@@ -155,7 +155,7 @@ Workflows de engenharia seguem fases restritas:
155
155
  |------|-----------|-----------|
156
156
  | Planejamento | `eng.start`, `eng.plan` | Somente analise, SEM codigo |
157
157
  | Implementacao | `eng.work` | Codigo e testes, commit por fase, SEM push nem PR |
158
- | Entrega | `eng.pr` | Branch, commit e PR |
158
+ | Entrega | `eng.pr` | Push e PR, depois da pergunta (regra de ouro) |
159
159
 
160
160
  **IMPORTANTE**: Respeitar estritamente as restricoes de cada fase.
161
161
 
@@ -85,7 +85,7 @@ workflows/
85
85
  | `eng.plan.md` | Criar plano de execução por fases |
86
86
  | `eng.work.md` | Executar implementação de código |
87
87
  | `eng.pre-pr.md` | Validação final antes do PR |
88
- | `eng.pr.md` | Criar branch, commit e Pull Request |
88
+ | `eng.pr.md` | Push e Pull Request, depois da pergunta (regra de ouro) |
89
89
  | `eng.review.md` | Revisão de solução/PR |
90
90
  | `eng.debug.md` | Investiga um bug ou varre um escopo atrás de problemas |
91
91
  | `eng.docs.md` | Atualizar documentação de engenharia |
@@ -161,7 +161,9 @@ Salvar o contrato preenchido em:
161
161
 
162
162
  ### 4.2 — Comunicar à squad requisitante
163
163
 
164
- Notificar no canal de solicitação de dados (thread original) com:
164
+ Mostre o texto e pergunte com `AskUserQuestion` antes de notificar (regra de ouro, `eng.integrations-rules.md`); sem o Sim, deixe o texto pronto para a pessoa enviar.
165
+
166
+ Notificar no canal de solicitação de dados (thread original), depois do Sim acima, com:
165
167
  - Link para o contrato
166
168
  - Como acessar os dados (método, IAM role ou equivalente)
167
169
  - SLA combinado
@@ -169,10 +171,12 @@ Notificar no canal de solicitação de dados (thread original) com:
169
171
 
170
172
  ### 4.3 — Abrir card no board do time de Data
171
173
 
172
- Criar card no board `DE` (ou equivalente) com:
174
+ Mostre o texto do card e, se a criação vai sair (board configurado, CLI logada e `TASK_MANAGER_ACCESS=cli` ou vazio), pergunte com `AskUserQuestion` antes de criar (regra de ouro); sem o Sim, sem board, sem a CLI ou com acesso manual, deixe o card descrito para a pessoa criar.
175
+
176
+ Com o Sim, criar card no board `DE` (ou equivalente) pela CLI oficial do vendor (`acli jira workitem create` no projeto `DE` do Jira, ou `gh issue create`/`glab issue create` com `--repo` a partir de `TASK_MANAGER_URL_BASE`, o repositório que faz as vezes do board `DE`; flags no `--help`; sem `--repo`, `gh`/`glab` criariam a issue no repositório do diretório atual. O `jarvis vcs create-issue` é o do `/jarvis-report-issue`, com `--repo` explícito, não um atalho para o board). Sem a CLI logada, com acesso manual ou sem board, a pessoa cria com o texto pronto. O card leva:
173
177
  - Squad requisitante
174
178
  - Tabela/recurso
175
- - Status: `Ativo`
179
+ - Status: `Ativo` (no corpo do card; nenhuma CLI põe status na criação)
176
180
  - Link para o contrato
177
181
 
178
182
  ---
@@ -183,7 +187,7 @@ Criar card no board `DE` (ou equivalente) com:
183
187
 
184
188
  Qualquer mudança de schema (adição, remoção ou tipo de campo) deve:
185
189
 
186
- 1. Ser comunicada no canal de dados com **antecedência** (prazo definido nas rules)
190
+ 1. Ser comunicada no canal de dados com **antecedência** (prazo definido nas rules), depois de mostrar a mensagem e perguntar com `AskUserQuestion` (regra de ouro, `eng.integrations-rules.md`); sem o Sim, deixe o texto pronto
187
191
  2. Gerar nova versão do contrato (versionamento semântico: `MAJOR.MINOR`)
188
192
  3. Manter versão antiga disponível pelo período de coexistência definido nas rules
189
193
 
@@ -191,8 +195,8 @@ Qualquer mudança de schema (adição, remoção ou tipo de campo) deve:
191
195
 
192
196
  Quando o contrato não for mais necessário:
193
197
  1. Atualizar `Status` para `Deprecado` no documento
194
- 2. Comunicar à squad requisitante com prazo de encerramento
195
- 3. Atualizar (ou remover) o card no board do time de Data
198
+ 2. Comunicar à squad requisitante com prazo de encerramento, depois de mostrar a mensagem e perguntar com `AskUserQuestion` (regra de ouro); sem o Sim, deixe o texto pronto
199
+ 3. Orientar a pessoa a atualizar (ou remover) o card no board do time de Data (o Jarvis não move card); um comentário no card sai pelo `/eng-global-task-comment`, que mostra o texto e pergunta (regra de ouro)
196
200
 
197
201
  ---
198
202
 
@@ -205,6 +209,6 @@ Quando o contrato não for mais necessário:
205
209
  [ ] Contrato preenchido (schema, SLA, acesso, campos sensíveis)
206
210
  [ ] Campos sensíveis com tratamento aplicado (ou ausência confirmada)
207
211
  [ ] Contrato salvo no repositório de pipelines
208
- [ ] Squad requisitante notificada com acesso e SLA
209
- [ ] Card aberto no board do time de Data
212
+ [ ] Squad requisitante notificada com acesso e SLA (ou texto entregue à pessoa, sem o Sim)
213
+ [ ] Card aberto no board do time de Data (ou descrito para a pessoa criar; sem board, só o texto)
210
214
  ```
@@ -8,7 +8,7 @@ rules_file: "$IDE/rules-on-demand/engineering/eng.breakdown-subtasks-rules.md"
8
8
  ---
9
9
  # Breakdown Subtasks - Gerador de Subtarefas Mastigadas
10
10
 
11
- Você receberá uma Tech Spec completa e deve quebrá-la em subtarefas **EXTREMAMENTE DETALHADAS** para o Jira.
11
+ Você receberá uma Tech Spec completa e deve quebrá-la em subtarefas **EXTREMAMENTE DETALHADAS** para o board. Este comando **não cria cards**: entrega as subtarefas em Markdown para a pessoa criar; a criação automática (só no Jira, pela `acli`, depois da pergunta) é a Fase 7 do `delivery-spec` do `/eng.build-tech-spec`.
12
12
 
13
13
  > ⚠️ **PRINCÍPIO FUNDAMENTAL**: Cada subtarefa deve ser tão detalhada que um desenvolvedor júnior possa executá-la SEM precisar perguntar nada. A subtarefa deve ser um "tutorial passo-a-passo" completo.
14
14
 
@@ -45,7 +45,7 @@ Analise a Tech Spec e extraia **TUDO**:
45
45
 
46
46
  ### 1.2 Investigação do Codebase (OBRIGATÓRIA)
47
47
 
48
- **ANTES de criar subtarefas**, use as ferramentas para:
48
+ **ANTES de escrever as subtarefas**, use as ferramentas para:
49
49
 
50
50
  1. **Encontrar arquivos similares** - Use glob para localizar exemplos no projeto
51
51
  2. **Entender padrões existentes** - Use grep para ver como funcionalidades similares foram implementadas
@@ -65,7 +65,7 @@ Gerar uma especificação técnica completa e auto-contida, em um de dois modos:
65
65
  | Delivery Spec › Processo de Criação › verificação de necessidade de RFC | `/eng.create-rfc` | Se a Tech Spec atender aos critérios que exigem RFC e o usuário escolher "A: Criar uma RFC agora" |
66
66
  | Delivery Spec › Caminho A › 2A.2 Análise de Documentação de Produto | `/jarvis-docs-central` | Se `CENTRAL_DOCS_STORAGE` estiver configurado (funcionalidades já implementadas relacionadas ao épico; PRD/FRD vêm de `$PROD_DOCS`) |
67
67
  | Reference Spec › 2. Checagem de RFC | `/eng.create-rfc` | Se não houver RFC/ARD de origem, algum dos 7 critérios for "Sim" e o usuário escolher "A: Criar uma RFC agora" |
68
- | Delivery Spec › FASE 7 › 7.3 Criação no Jira | `acli jira workitem create` (CLI do vendor) ou MCP do Jira configurado à mão | Se o projeto usar Jira com a `acli` logada (ou um MCP do Jira configurado pela pessoa); senão, template para criação manual |
68
+ | Delivery Spec › FASE 7 › 7.3 Criação no Jira | `acli jira workitem create` (CLI do vendor) | Se o projeto usar Jira com a `acli` logada, só depois de mostrar o texto e perguntar (regra de ouro); senão, template para criação manual |
69
69
 
70
70
  ---
71
71
 
@@ -68,16 +68,14 @@ priorizando a **arquitetura observada no código do repositório**, usando o tem
68
68
 
69
69
  ## Passo 1 – Verificar PRD (obrigatório quando existir)
70
70
 
71
- ### 1.1 – Buscar PRD no Central Docs (condicional)
71
+ ### 1.1 – Buscar o PRD em `$PROD_DOCS` e o implementado no Central docs
72
72
 
73
- Se `CENTRAL_DOCS_STORAGE` definido no ENV.md:
74
-
75
- 1. Consultar no Central docs as funcionalidades já implementadas relacionadas (o que existe hoje):
73
+ 1. Se `CENTRAL_DOCS_STORAGE` estiver definido no ENV.md, consultar no Central docs as funcionalidades já implementadas relacionadas (o que existe hoje); vazio: pule só este item:
76
74
  ```bash
77
75
  jarvis docs sync --silent
78
76
  ```
79
77
 
80
- 2. Buscar o PRD relacionado em `$PROD_DOCS` (documento de trabalho; o Central docs não guarda PRD) usando:
78
+ 2. Buscar o PRD relacionado em `$PROD_DOCS` (sempre, com ou sem Central docs; é documento de trabalho e o Central docs não o guarda) usando:
81
79
  - Título/objetivo do ARD
82
80
  - Jira ID (se disponível)
83
81
  - Tags semânticas
@@ -121,16 +121,14 @@ Regras:
121
121
 
122
122
  ## Passo 1.1 – Verificar PRD (obrigatório)
123
123
 
124
- ### 1.1.1 – Buscar PRD no Central Docs (condicional)
124
+ ### 1.1.1 – Buscar o PRD em `$PROD_DOCS` e o implementado no Central docs
125
125
 
126
- Se `CENTRAL_DOCS_STORAGE` definido no ENV.md:
127
-
128
- 1. Consultar no Central docs as funcionalidades já implementadas relacionadas (o que existe hoje):
126
+ 1. Se `CENTRAL_DOCS_STORAGE` estiver definido no ENV.md, consultar no Central docs as funcionalidades já implementadas relacionadas (o que existe hoje); vazio: pule só este item:
129
127
  ```bash
130
128
  jarvis docs sync --silent
131
129
  ```
132
130
 
133
- 2. Buscar o PRD relacionado em `$PROD_DOCS` (documento de trabalho; o Central docs não guarda PRD) usando:
131
+ 2. Buscar o PRD relacionado em `$PROD_DOCS` (sempre, com ou sem Central docs; é documento de trabalho e o Central docs não o guarda) usando:
134
132
  - Título/objetivo do ARD
135
133
  - Jira ID (se disponível)
136
134
  - Tags semânticas
@@ -91,11 +91,11 @@ Regras:
91
91
 
92
92
  ---
93
93
 
94
- ## Passo 0.6 – Buscar Documentação Relacionada no Central Docs (condicional)
94
+ ## Passo 0.6 – Buscar Documentação Relacionada (`docs/jarvis/` sempre; Central docs se configurado)
95
95
 
96
- Se `CENTRAL_DOCS_STORAGE` definido no ENV.md:
96
+ A busca em `docs/jarvis/` (PRD, ARD, RFCs) é sempre feita; a consulta ao Central docs só se `CENTRAL_DOCS_STORAGE` estiver definido no ENV.md (vazio: pule só o item 1).
97
97
 
98
- 1. Consultar no Central docs as funcionalidades já implementadas relacionadas (o que existe hoje):
98
+ 1. Se `CENTRAL_DOCS_STORAGE` estiver definido, consultar no Central docs as funcionalidades já implementadas relacionadas (o que existe hoje):
99
99
  ```bash
100
100
  jarvis docs sync --silent
101
101
  ```
@@ -106,13 +106,13 @@ Se `CENTRAL_DOCS_STORAGE` definido no ENV.md:
106
106
  - Tags semânticas
107
107
 
108
108
  3. Documentos a buscar:
109
- - **Funcionalidades já implementadas** relacionadas (Central docs: `feature-*`)
109
+ - **Funcionalidades já implementadas** relacionadas (Central docs, se configurado: `feature-*`)
110
110
  - **PRD relacionado** (em `$PROD_DOCS`, para rastreabilidade e contexto de negócio)
111
111
  - **ARD existente** e **RFCs anteriores** relacionados ao tema (em `$ENG_DOCS/ARD` e `$ENG_DOCS/RFC`)
112
112
 
113
113
  4. Se documentos encontrados:
114
114
  - Carregar automaticamente como contexto
115
- - Informar ao usuário: "✅ Documentos encontrados no central-docs: [lista]"
115
+ - Informar ao usuário: "✅ Documentos encontrados (`docs/jarvis/` e, se configurado, Central docs): [lista]"
116
116
  - Incorporar ao contexto antes do Passo 1
117
117
 
118
118
  5. Se não encontrado:
@@ -79,7 +79,7 @@ Se ajudar a construir um diagrama MERMAID, sinta-se livre para fazê-lo.
79
79
 
80
80
  5. Uma vez que tenha um bom entendimento do que está sendo construído, mostre ao usuário na forma de um artefato e aguarde sua aprovação. Iterate juntos até estar pronto. PAUSE para aguardar a aprovação do humano.
81
81
 
82
- 6. Quando o humano concordar com seu entendimento, você pode proceder ao próximo passo, salvando os detalhes da estrutura arquitetural no card do $TASK_MANAGER como um comentário ao card original.
82
+ 6. Quando o humano concordar com seu entendimento, você pode proceder ao próximo passo, salvando os detalhes da estrutura arquitetural no card do $TASK_MANAGER como um comentário ao card original, pelo `/eng-global-task-comment`, que mostra o texto e pergunta antes de enviar (regra de ouro, `eng.integrations-rules.md`); sem o Sim, o texto fica só na sessão.
83
83
 
84
84
  ## Pesquisa
85
85
 
@@ -45,10 +45,9 @@ Antes de executar este workflow:
45
45
  |-------|-------|----------|
46
46
  | Cabeçalho (agente) | `eng.agent` (agente) | Sempre — identidade do workflow |
47
47
  | Fase 0 › 0.1 Herdar Contexto da Sessão | `/jarvis-context-detect` | Se `ENABLE_CDD=true` e o `context.md` não existir |
48
- | Fase 2: Pesquisa no Codebase | `repoprompt` (MCP: `search`, `read_selected_files`) | Para buscar e ler arquivos relevantes do codebase |
49
48
  | Fase 2: Pesquisa no Codebase (se necessário) | `context7` (MCP) | Se for preciso consultar a documentação de bibliotecas |
50
49
  | Fase 3: Criação do Plano (exceção) | `eng.advisor.agent` (agente) | Só por exceção: questão nova em aberto, com o Advisor habilitado no `eng.start` (cabeçalho do `architecture.md`) |
51
- | Fase 3: Criação do Plano (exceção) | `/eng-global-task-comment` | Só por exceção: comentário de auditoria da questão nova consultada ao Advisor (freelance pula) |
50
+ | Fase 3: Criação do Plano (exceção) | `/eng-global-task-comment` | Só por exceção: comentário de auditoria da questão nova consultada ao Advisor, só com o Sim da pergunta (regra de ouro; freelance: o skill registra no `task-log.md`); sem o Sim, o texto fica no `task-comment-*.md` e no `architecture.md` |
52
51
 
53
52
  ---
54
53
 
@@ -129,9 +128,12 @@ CONTEXT_PROFILE:
129
128
 
130
129
  ### Fase 2: Pesquisa no Codebase
131
130
 
132
- 1. **Buscar** arquivos relevantes usando:
133
- - `repoprompt:search` para encontrar arquivos específicos
134
- - `repoprompt:read_selected_files` para ler código em batch
131
+ 1. **Buscar** arquivos relevantes com as ferramentas de busca, como na Fase 3.1 do `eng.start`:
132
+ - **Glob** para encontrar arquivos relacionados
133
+ - **Grep** para buscar padrões e implementações parecidas
134
+ - **Read** para ler os arquivos que serão modificados
135
+
136
+ Com `WORKSPACE_MODE=workspace`, busque só nos repositórios do workspace e siga a regra "Buscas de código em modo workspace" de `eng-rules.md`.
135
137
  2. **Analisar**:
136
138
  - Padrões existentes no projeto
137
139
  - Arquivos que serão modificados
@@ -163,14 +165,15 @@ CONTEXT_PROFILE:
163
165
 
164
166
  4. **Usar** o template em `$IDE/templates/engineering/plan-template.md`
165
167
 
166
- **Questão nova em aberto (exceção).** O ideal é que todas as questões tenham sido levantadas no `eng.start`. Se surgir uma nova e o cabeçalho do `architecture.md` indicar um Advisor, consulte `eng.advisor.agent` com o Prompt 2 de `$IDE/templates/engineering/advisor-template.md` (refaça o Prompt 1 se o subagente não existir mais), acrescente a questão à seção 8 marcada "levantada no `eng.plan`", adote a sugestão do Advisor e poste o comentário de auditoria com `/eng-global-task-comment` (é desvio do plano; cite-o no PR como lacuna do `eng.start`). Sem Advisor, pergunte ao usuário.
168
+ **Questão nova em aberto (exceção).** O ideal é que todas as questões tenham sido levantadas no `eng.start`. Se surgir uma nova e o cabeçalho do `architecture.md` indicar um Advisor, consulte `eng.advisor.agent` com o Prompt 2 de `$IDE/templates/engineering/advisor-template.md` (refaça o Prompt 1 se o subagente não existir mais), acrescente a questão à seção 8 marcada "levantada no `eng.plan`", adote a sugestão do Advisor e monte o comentário de auditoria e publique-o com `/eng-global-task-comment`, que mostra o texto e pergunta (regra de ouro, `eng.integrations-rules.md`; é desvio do plano; freelance: o skill registra no `task-log.md`). Sem o Sim, o texto fica no `task-comment-*.md` e no `architecture.md`. Cite o desvio no PR como lacuna do `eng.start`. Sem Advisor, pergunte ao usuário.
167
169
 
168
170
  ### Fase 4: Validação
169
171
 
172
+ 0. **Passe crítico**, antes de apresentar: percorra o "Checklist de Conclusão" de `eng.plan-rules.md` item a item contra o `plan.md` (toda fase cabe em cerca de 1 hora; toda fase tem a tarefa `X.T`; toda tarefa tem o que, onde, como e como verificar; dependências explícitas; status iniciais ⏳) e corrija o plano antes de mostrar. Registre o resultado nos comentários da última fase: `Passe crítico: {n} itens conferidos, {m} corrigidos`. Parecido com o `Reflection` (ver #171), como o passe crítico do `eng.start` (Fase 4.4).
170
173
  1. **Apresentar** o plano ao humano, com o consolidado de links da sessão (regra 5 de `eng.transitions-rules.md`: `context.md`, `architecture.md` e o `plan.md` novo)
171
174
  2. **Discutir** ajustes necessários
172
175
  3. **Atualizar** `architecture.md` se houver mudanças arquiteturais
173
- 4. **Confirmar** antes de prosseguir, com a pergunta de transição (`eng.transitions-rules.md`): **"O que fazer com o plano?"** (depois da mensagem em markdown com o consolidado de links) → **Aprovar e implementar agora** (chame o `/eng.work {TASK_MANAGER_KEY}`, ou mostre o comando) / **Aprovar e seguir manualmente (como hoje)** (o comando termina e o usuário chama o `/eng.work` quando quiser) / **Ajustar o plano** (o usuário diz o que mudar; atualize o `plan.md` e mostre de novo). As duas aprovações valem como a aprovação explícita do plano
176
+ 4. **Confirmar** antes de prosseguir, com a pergunta de transição (`eng.transitions-rules.md`): **"O que fazer com o plano?"** (depois da mensagem em markdown com o consolidado de links) → **Aprovar e implementar agora** (chame o `/eng.work {TASK_MANAGER_KEY}`, ou mostre o comando) / **Aprovar e seguir manualmente (como hoje)** (o comando termina e o usuário chama o `/eng.work` quando quiser) / **Ajustar o plano** (o usuário diz o que mudar; atualize o `plan.md`, some 1 em "Ajustes antes da aprovação" no cabeçalho, refaça o passe crítico no que mudou e mostre de novo). As duas aprovações valem como a aprovação explícita do plano
174
177
 
175
178
  ---
176
179
 
@@ -11,7 +11,7 @@ model_justification: Operações Git e preenchimento de templates são tarefas e
11
11
 
12
12
  # Pull Request / Merge Request
13
13
 
14
- Este comando cria a **branch, commita as alterações e abre um Merge Request**.
14
+ Este comando **gera o `pull-request.md` na sessão e, com a escolha de publicar da Fase 0 (regra de ouro), faz o push e abre o Merge Request**. A branch e os commits vêm do `eng.start` e do `eng.work`.
15
15
 
16
16
  > 📋 **Rules**: `$IDE/rules-on-demand/engineering/eng.pr-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/PR-template.md`
@@ -47,7 +47,7 @@ Este comando cria a **branch, commita as alterações e abre um Merge Request**.
47
47
  | Skills recomendados | `/eng-global-docs-write` | Se houver necessidade de atualizar documentação junto do PR |
48
48
  | Agentes recomendados (opcional) | `eng.qa.test-planner` (agente) | Se houver dúvidas sobre cobertura de testes ou mudanças significativas |
49
49
  | Fase 4 › 4.4 Criar MR/PR pela CLI | `jarvis vcs create-merge` (CLI do Jarvis → `gh`/`glab`) | Só se a escolha da Fase 0 for publicar (4.3): abre o MR/PR pela cadeia de `eng.integrations-rules.md`, pelo host do `origin` |
50
- | Fase 5 › 5.2 Link do MR | `/eng-global-task-comment` | Depois de o MR ser criado (só ao publicar, 4.3): um único comentário no card com o link do MR, seguindo o Passo 6 do skill `eng-global-pr` (freelance: registra no `task-log.md`) |
50
+ | Fase 5 › 5.2 Link do MR | `/eng-global-task-comment` | Depois de o MR ser criado (só ao publicar, 4.3): um único comentário no card com o link do MR, só com o Sim da pergunta (regra de ouro), seguindo o Passo 6 do skill `eng-global-pr` (freelance: registra no `task-log.md`) |
51
51
 
52
52
  ---
53
53
 
@@ -72,7 +72,7 @@ Ler `TASK_MANAGER` do `$IDE/ENV.md`. Seguir `$IDE/rules/engineering/eng.integrat
72
72
  ## Fase 0: O que fazer com o PR (`eng.transitions-rules.md`)
73
73
 
74
74
  Pergunte com `AskUserQuestion`: **"O que fazer com o PR?"**
75
- - **Revisar o texto e publicar (como hoje):** gera o `pull-request.md`, você aprova ou ajusta (4.2) e, com a aprovação, faz o push e abre o PR (4.4). A aprovação do texto é a confirmação da publicação.
75
+ - **Revisar o texto e publicar (como hoje):** gera o `pull-request.md`, você aprova, ajusta ou escolhe `[Só gerar os arquivos]` (4.2) e, com a aprovação, faz o push e abre o PR (4.4). A aprovação do texto é a confirmação da publicação.
76
76
  - **Publicar sem revisar o texto:** gera o `pull-request.md` (4.1), faz o push e abre o PR (4.4) sem a revisão (4.2); você ajusta o texto direto no PR.
77
77
  - **Só gerar os arquivos:** gera o `pull-request.md` (4.1), mostra para revisão (4.2) e não faz push nem abre o PR; você abre à mão. A Fase 7 gera o `daily.md` mesmo assim.
78
78
 
@@ -209,7 +209,7 @@ Use **MR** se GitLab, **PR** se GitHub.
209
209
 
210
210
  ### 4.1 Gerar `pull-request.md` na sessão
211
211
 
212
- Escreva o título e a descrição do PR em **`$SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/pull-request.md`** (primeira linha `# {título}`, depois o corpo). Se a sessão tiver o `gate-checklist.md` do `eng.pre-pr`, use o PR Brief e as decisões dele.
212
+ Escreva o título e a descrição do PR em **`$SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/pull-request.md`** (primeira linha `# {título}`, depois o corpo). Se a sessão tiver o `gate-checklist.md` do `eng.pre-pr`, use o PR Brief e as decisões da rodada mais recente (o `gate-checklist.md`; as rodadas anteriores, `gate-checklist-rodada-{N}.md`, são histórico). Os labels sugeridos do PR Brief **não** entram no corpo do PR nem na criação do MR (o `jarvis vcs create-merge` não põe label): eles aparecem na mensagem final (7.3), para a pessoa adicionar no host.
213
213
 
214
214
  Template, nesta ordem (o primeiro que existir):
215
215
 
@@ -234,11 +234,11 @@ Preencher com a tarefa. Link do card:
234
234
 
235
235
  ### 4.2 Revisão do texto
236
236
 
237
- Mostre o consolidado de links da sessão (regra 5 de `eng.transitions-rules.md`, com o `pull-request.md` novo), o título e o resumo das seções e pergunte com `AskUserQuestion` (depois da mensagem com o consolidado de links): `[Aprovar]` / `[Ajustar]`. Ajuste até a aprovação. (Pulada com "Publicar sem revisar o texto" na Fase 0.)
237
+ Mostre o consolidado de links da sessão (regra 5 de `eng.transitions-rules.md`, com o `pull-request.md` novo), o título e o resumo das seções e pergunte com `AskUserQuestion` (depois da mensagem com o consolidado de links): `[Aprovar]` / `[Ajustar]`, mais `[Só gerar os arquivos]` quando a Fase 0 foi "Revisar o texto e publicar" (essa opção troca a escolha da Fase 0 por "Só gerar os arquivos": nada é enviado). Ajuste até a aprovação ou até o `[Só gerar os arquivos]`. (Pulada com "Publicar sem revisar o texto" na Fase 0.)
238
238
 
239
239
  ### 4.3 Publicar ou não (sem pergunta nova)
240
240
 
241
- A decisão já veio da Fase 0; não pergunte de novo. Aprovado o texto na 4.2, siga a escolha:
241
+ A decisão vem da Fase 0, que vale como a pergunta do push e do PR (exceção da regra de ouro, `eng.integrations-rules.md`), ou do `[Só gerar os arquivos]` da 4.2, que a troca por "Só gerar os arquivos"; não pergunte de novo. Aprovado o texto na 4.2 (ou escolhido o `[Só gerar os arquivos]` dela; com "Publicar sem revisar o texto", sem a revisão), siga a escolha:
242
242
 
243
243
  - **Só gerar os arquivos:** nada é enviado. O `pull-request.md` fica na sessão para você publicar quando quiser (à mão ou rodando o `/eng.pr` de novo). Pule para a Fase 7, que gera o `daily.md` mesmo assim (para não passar batido quando você abrir o PR à mão), com a mensagem "PR não publicado".
244
244
  - **Revisar o texto e publicar** ou **Publicar sem revisar o texto:** faça o push (Fase 3) e crie o MR/PR (4.4).
@@ -284,11 +284,11 @@ Pular a 5.1 se `TASK_MANAGER` estiver vazio (freelance); a 5.2 registra o link d
284
284
 
285
285
  ### 5.1 Mover Card
286
286
 
287
- Mova o card para a etapa equivalente a "em revisão" no seu board. Quem assumiu o card o move; não é preciso esperar o TECH LEAD ou o PM.
287
+ Oriente a pessoa a mover o card para a etapa equivalente a "em revisão" no board (o Jarvis não move card). Quem assumiu o card o move; não é preciso esperar o TECH LEAD ou o PM.
288
288
 
289
289
  ### 5.2 Link do MR no card
290
290
 
291
- Siga o Passo 6 do skill `eng-global-pr`: um único comentário no card, com o link e a branch. É o único comentário do `eng.pr` no card.
291
+ Siga o Passo 6 do skill `eng-global-pr`: monte um único comentário, com o link e a branch, e publique-o no card com `/eng-global-task-comment`, que mostra o texto e pergunta (regra de ouro, `eng.integrations-rules.md`); sem o Sim, ele fica no `task-comment-*.md` da sessão. É o único comentário do `eng.pr` no card.
292
292
 
293
293
  ---
294
294
 
@@ -308,12 +308,13 @@ Para cada comentário:
308
308
 
309
309
  ### 6.3 Aplicar Correções
310
310
 
311
- Se necessário:
311
+ Se necessário, faça as correções e o commit. O push das correções sai só depois da pergunta (regra de ouro, `eng.integrations-rules.md`): mostre o commit e pergunte com `AskUserQuestion` (**Sim, publicar** / **Não, manter só local**); sem o Sim, o commit fica local.
312
312
 
313
313
  ```bash
314
314
  # Fazer mudanças
315
315
  git add {arquivos_alterados}
316
316
  git commit -m "fix: corrigir {problema} conforme code review"
317
+ # só com o Sim da pergunta acima
317
318
  git push
318
319
  ```
319
320
 
@@ -357,7 +358,7 @@ fi
357
358
 
358
359
  Regras em `$IDE/rules-on-demand/engineering/eng.pr-rules.md` (seção "daily.md"); template em `$IDE/templates/engineering/daily-template.md`. Arquivo: `$SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/daily.md`, **só na sessão, nunca publicado**.
359
360
 
360
- 1. **Gere sempre**, com ou sem PR publicado: quem abre o PR à mão ("Só gerar os arquivos" na Fase 0) também precisa do registro, e é aí que ele costuma passar batido. Se houver PR (o criado na 4.4 ou o PR já aberto da branch, via CLI/adapter do vendor, ex.: `gh pr view --json state,number,url`), preencha o campo `pr`; sem PR, deixe-o vazio e atualize quando o PR for aberto.
361
+ 1. **Gere sempre**, com ou sem PR publicado: quem abre o PR à mão ("Só gerar os arquivos" na Fase 0 ou o `[Só gerar os arquivos]` da 4.2) também precisa do registro, e é aí que ele costuma passar batido. Se houver PR (o criado na 4.4 ou o PR já aberto da branch, via CLI/adapter do vendor, ex.: `gh pr view --json state,number,url`), preencha o campo `pr`; sem PR, deixe-o vazio e atualize quando o PR for aberto.
361
362
  2. **Data:** pergunte com `AskUserQuestion`: **"Registrar o esforço com qual data?"** → `Hoje ({AAAA-MM-DD})` | `Outra data` (o usuário digita `AAAA-MM-DD`).
362
363
  3. **Dias trabalhados** (só se o período entre a data do `.timestamp_start` e a data do registro tiver mais de um dia), uma pergunta por vez:
363
364
  - se o período tiver sábado ou domingo: **"Você trabalhou em {datas de sábado/domingo}?"** (Sim / Não; com várias datas, pode responder por data);
@@ -374,7 +375,7 @@ Regras em `$IDE/rules-on-demand/engineering/eng.pr-rules.md` (seção "daily.md"
374
375
 
375
376
  Atualize a seção da data escolhida. Se a data for nova, acrescente uma seção `## AAAA-MM-DD`.
376
377
  6. **Gerar** a descrição detalhada **e** a linha de timesheet, juntas.
377
- - **Fontes:** `architecture.md`, `plan.md`, `gate-checklist.md`, `pull-request.md`, `git log {BRANCH_BASE}..HEAD`, o PR/MR e o card.
378
+ - **Fontes:** `architecture.md`, `plan.md`, `gate-checklist.md` (a rodada mais recente), `pull-request.md`, `git log {BRANCH_BASE}..HEAD`, o PR/MR e o card.
378
379
  - **Descrição:** um parágrafo narrativo (contexto técnico, trabalho realizado, decisões), mais o *post mortem* quando couber (problema e causa raiz, investigação, solução/direcionamento), com detalhe suficiente para embasar questionamentos futuros.
379
380
  - **Timesheet:** **uma única linha** (`{TASK_KEY} — {resumo}`).
380
381
  - Sem e-mails, tokens nem valores de variáveis.
@@ -383,12 +384,14 @@ Regras em `$IDE/rules-on-demand/engineering/eng.pr-rules.md` (seção "daily.md"
383
384
  ### 7.3 Mensagem Final
384
385
 
385
386
  ```
386
- ✅ MERGE REQUEST CRIADO COM SUCESSO!
387
+ ✅ MERGE REQUEST CRIADO COM SUCESSO! ← com o PR publicado
388
+ 📝 PR NÃO PUBLICADO ← com "Só gerar os arquivos", ou quando a 4.4 termina sem PR no host (saída 3 sem a CLI direta, ou saída 4 sem o PR criado); o pull-request.md fica pronto
387
389
 
388
390
  📋 Resumo:
389
391
  - Branch: {NOME_DA_BRANCH}
390
- - MR: {LINK_DO_MR}
391
- - Jira: {TASK_MANAGER_KEY} → "In Review"
392
+ - MR: {LINK_DO_MR} ← sem PR publicado: "— (abra à mão com o pull-request.md)"
393
+ - Card: {URL do card, pela tabela da 4.1} ← só com board; com o PR aberto, mova-o para a etapa equivalente a "em revisão" (o Jarvis não move card)
394
+ - Labels: {labels sugeridos no PR Brief do gate-checklist.md, ex.: security} ← só se houver; sem o relatório, ou sem o campo nele, avalie `eng-security-rules.md` direto; a pessoa adiciona no host (o `jarvis vcs create-merge` não põe label)
392
395
 
393
396
  📊 Validações:
394
397
  - Testes: ✅ Passando
@@ -401,27 +404,31 @@ Regras em `$IDE/rules-on-demand/engineering/eng.pr-rules.md` (seção "daily.md"
401
404
  - [context.md]({caminho relativo}) ({nota de estado})
402
405
  - [architecture.md]({caminho relativo}) ({nota de estado})
403
406
  - [plan.md]({caminho relativo}) ({nota de estado})
407
+ - [gate-checklist-rodada-{N}.md]({caminho relativo}) (rodada {N}) ← uma por rodada anterior do `eng.pre-pr`, em ordem crescente do número do nome, se houver
404
408
  - [gate-checklist.md]({caminho relativo}) ({nota de estado}) ← se o `eng.pre-pr` rodou
405
409
  - [pull-request.md]({caminho relativo}) (novo; {publicado como PR #N | gerado, PR não publicado})
406
410
  - [daily.md]({caminho relativo}) (novo; {aprovado, com timesheet})
407
411
  🕒 Timesheet: {LINHA_DE_TIMESHEET_APROVADA}
408
412
 
409
- 📌 Próximos passos:
413
+ 📌 Próximos passos (com o PR publicado):
410
414
  1. Aguardar revisão do time e processar os comentários do code review
411
415
  2. Merge após aprovação
412
416
  3. /eng.spec-consolidate {TASK_MANAGER_KEY} depois do merge → registrar no Central docs o que esta entrega implementou
417
+ 📌 Próximos passos (sem o PR publicado):
418
+ 1. Abrir o PR com o pull-request.md (à mão ou rodando o /eng.pr de novo)
419
+ 2. /eng.spec-consolidate {TASK_MANAGER_KEY} depois do merge
413
420
 
414
421
  🗂️ A sessão $SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/ não é apagada (o /eng.spec-consolidate precisa dela).
415
422
  Remova à mão quando quiser.
416
423
 
417
424
  🔗 Links:
418
- - MR: {LINK_DO_MR}
419
- - Jira: {TASK_MANAGER_URL_BASE}/browse/{TASK_MANAGER_KEY}
425
+ - MR: {LINK_DO_MR} ← só com o PR publicado
426
+ - Card: {URL do card, pela tabela da 4.1} ← só com board
420
427
  ```
421
428
 
422
429
  ### 7.4 Versões humanizadas (só com `ARTIFACT_STYLE=human-generated`)
423
430
 
424
- Pergunte uma vez, com `AskUserQuestion` de várias perguntas em abas (`rules/artifact-style-rules.md`, regra 2), uma aba por documento da sessão que existir: `architecture.md`, `plan.md`, `gate-checklist.md` e `daily.md` (o `pull-request.md` não entra: já é público). Cada aba: **"Gerar a versão humanizada de {documento}?"** → **Não (como hoje)** / **Sim**. Com Sim, grave `{nome}.public.md` ao lado do original, seguindo o checklist da regra, e mostre o link. Com outro `ARTIFACT_STYLE`, pule esta etapa.
431
+ Pergunte uma vez, com `AskUserQuestion` de várias perguntas em abas (`rules/artifact-style-rules.md`, regra 2), uma aba por documento da sessão que existir: `architecture.md`, `plan.md`, `gate-checklist.md` e `daily.md` (o `pull-request.md` não entra: já é público; as rodadas anteriores `gate-checklist-rodada-{N}.md` não ganham versão humanizada, só o `gate-checklist.md` atual). Cada aba: **"Gerar a versão humanizada de {documento}?"** → **Não (como hoje)** / **Sim**. Com Sim, grave `{nome}.public.md` ao lado do original, seguindo o checklist da regra, e mostre o link. Com outro `ARTIFACT_STYLE`, pule esta etapa.
425
432
 
426
433
  ### 7.5 PR mergeado? (`eng.transitions-rules.md`)
427
434
 
@@ -446,7 +453,7 @@ Pergunte com `AskUserQuestion`: **"O PR já foi aprovado e mergeado?"**
446
453
  - ✅ Usar mensagem de commit padronizada
447
454
  - ✅ Criar branch no padrão `{TASK_MANAGER_KEY}-{titulo}`
448
455
  - ✅ Preencher template do MR completamente
449
- - ✅ Mover card para "In Review"
456
+ - ✅ Orientar a pessoa a mover o card para a etapa equivalente a "em revisão" (o Jarvis não move card)
450
457
  - ✅ Gerar o `pull-request.md` na sessão e só publicar com a escolha de publicar da Fase 0 (4.3)
451
458
  - ✅ Com PR aberto, registrar o esforço no `daily.md` (7.2), com revisão conjunta da descrição e do timesheet
452
459
  - ✅ **Nunca apagar a sessão:** o `/eng.spec-consolidate` precisa dela