jarvis-ai-framework 4.0.0 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/agents/engineering/eng.docs-consolidator.agent.md +81 -0
- package/agents/engineering/qa/eng.qa.test-planner.md +7 -7
- package/agents/product/prod.discovery-interviewer.md +1 -1
- package/bin/commands/docs-publish.js +18 -8
- package/bin/commands/docs-sync.js +3 -2
- package/bin/lib/cli/program.js +3 -3
- package/bin/lib/docs/publish-file.js +35 -24
- package/bin/lib/docs/storage/build-index.js +29 -8
- package/bin/lib/docs/validate-frontmatter.js +4 -0
- package/package.json +1 -1
- package/rules/engineering/eng.docs-scraping-rules.md +4 -4
- package/rules/engineering/eng.integrations-rules.md +1 -1
- package/rules/engineering/rpa/eng.rpa-rules.md +1 -1
- package/rules/product/prod-rules.md +3 -3
- package/rules-on-demand/engineering/eng.pr-rules.md +9 -31
- package/rules-on-demand/engineering/eng.pre-pr-rules.md +12 -19
- package/skills/eng-backend-arch-c4/SKILL.md +3 -3
- package/skills/eng-global-docs-write/SKILL.md +1 -1
- package/skills/eng-qa-planner/SKILL.md +5 -5
- package/skills/jarvis-docs-central/README.md +18 -30
- package/skills/jarvis-docs-central/SKILL.md +80 -97
- package/skills/jarvis-init/SKILL.md +60 -26
- package/templates/ENV-template.md +15 -9
- package/templates/engineering/ARD-template.md +1 -1
- package/templates/engineering/central-delivery-template.md +65 -0
- package/templates/engineering/central-feature-template.md +86 -0
- package/workflows/engineering/eng.build-tech-spec.md +3 -3
- package/workflows/engineering/eng.create-ard-from-code.md +12 -36
- package/workflows/engineering/eng.create-ard.md +14 -38
- package/workflows/engineering/eng.create-rfc.md +8 -32
- package/workflows/engineering/eng.pr.md +31 -62
- package/workflows/engineering/eng.pre-pr.md +52 -89
- package/workflows/engineering/eng.rpa.robot.md +5 -5
- package/workflows/engineering/eng.spec-consolidate.md +140 -0
- package/workflows/engineering/eng.start.md +6 -6
- package/workflows/engineering/eng.work.md +1 -1
- package/workflows/engineering/qa/eng.qa-refinement-entry.md +1 -1
- package/workflows/engineering/qa/eng.qa-release-signoff.md +3 -3
- package/workflows/engineering/qa/eng.qa-sprint-planning.md +2 -2
- package/workflows/product/prod.spec.ard.md +4 -4
- package/workflows/product/prod.spec.breakdown.md +1 -1
- package/workflows/product/prod.spec.epic.md +5 -35
- package/workflows/product/prod.spec.frd.md +6 -34
- package/workflows/product/prod.spec.prd.md +6 -35
- package/workflows/warm-up.md +8 -10
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Gera o pull-request.md na sessão e, com o Sim do usuário, faz o push e abre o merge request (MR)
|
|
3
3
|
auto_execution_mode: 3
|
|
4
4
|
agent: "$IDE/agents/engineering/eng.agent.md"
|
|
5
5
|
rules_file: "$IDE/rules-on-demand/engineering/eng.pr-rules.md"
|
|
@@ -43,8 +43,8 @@ Este comando cria a **branch, commita as alterações e abre um Merge Request**.
|
|
|
43
43
|
| Fase 1 › 1.4 Executar Testes Automatizados (Opcional) | `/eng-qa` + `QA_SPECIALIZATIONS` | Passo opcional, recomendado em mudanças significativas |
|
|
44
44
|
| Skills recomendados | `/eng-global-docs-write` | Se houver necessidade de atualizar documentação junto do PR |
|
|
45
45
|
| Agentes recomendados (opcional) | `eng.qa.test-planner` (agente) | Se houver dúvidas sobre cobertura de testes ou mudanças significativas |
|
|
46
|
-
| Fase 4 › 4.
|
|
47
|
-
| Fase 6 › 6.2 Link do MR | `/eng-global-task-comment` | Depois de o MR ser criado: um único comentário no card com o link do MR, seguindo o Passo 6 do skill `eng-global-pr` (freelance pula) |
|
|
46
|
+
| Fase 4 › 4.4 Criar MR/PR via adapter | `jarvis vcs create-merge` (CLI do Jarvis) | Só se o usuário responder **Sim** na Fase 4.3: abre o MR/PR conforme `VERSION_CONTROL` ou o host do `origin` |
|
|
47
|
+
| Fase 6 › 6.2 Link do MR | `/eng-global-task-comment` | Depois de o MR ser criado (só com o Sim da 4.3): um único comentário no card com o link do MR, seguindo o Passo 6 do skill `eng-global-pr` (freelance pula) |
|
|
48
48
|
|
|
49
49
|
---
|
|
50
50
|
|
|
@@ -156,6 +156,8 @@ Refs: {TASK_MANAGER_KEY}"
|
|
|
156
156
|
|
|
157
157
|
## Fase 3: Push
|
|
158
158
|
|
|
159
|
+
> ⚠️ O push só acontece **depois do Sim** da Fase 4.3. Esta fase descreve o comando; ele roda dentro da publicação.
|
|
160
|
+
|
|
159
161
|
### 3.1 Enviar para Remote
|
|
160
162
|
|
|
161
163
|
```bash
|
|
@@ -175,7 +177,9 @@ git log --oneline -3
|
|
|
175
177
|
Ler `VERSION_CONTROL` do `$IDE/ENV.md` (`gitlab` | `github` | `bitbucket`).
|
|
176
178
|
Use **MR** se GitLab, **PR** se GitHub/Bitbucket.
|
|
177
179
|
|
|
178
|
-
### 4.1
|
|
180
|
+
### 4.1 Gerar `pull-request.md` na sessão
|
|
181
|
+
|
|
182
|
+
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.
|
|
179
183
|
|
|
180
184
|
Template, nesta ordem (o primeiro que existir):
|
|
181
185
|
|
|
@@ -199,21 +203,32 @@ Preencher com a tarefa. Link do card:
|
|
|
199
203
|
|
|
200
204
|
> ⚠️ Não mencione AI, Claude ou assistentes no MR/PR.
|
|
201
205
|
|
|
202
|
-
### 4.2
|
|
206
|
+
### 4.2 Revisão do texto
|
|
207
|
+
|
|
208
|
+
Mostre o `pull-request.md` (título e resumo das seções) e pergunte com `AskUserQuestion`: `[Aprovar]` / `[Ajustar]`. Ajuste até a aprovação.
|
|
209
|
+
|
|
210
|
+
### 4.3 Publicar? (Sim / Não)
|
|
211
|
+
|
|
212
|
+
Pergunte com `AskUserQuestion` (**Sim / Não**): **"Publicar o PR agora?"**
|
|
213
|
+
|
|
214
|
+
- **Não:** 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, com a mensagem "PR não publicado".
|
|
215
|
+
- **Sim:** faça o push (Fase 3) e crie o MR/PR (4.4).
|
|
216
|
+
|
|
217
|
+
### 4.4 Criar MR/PR via adapter
|
|
203
218
|
|
|
204
219
|
- **Título**: `{TASK_MANAGER_KEY}: {Título da tarefa}`
|
|
205
220
|
- **Branch origem**: `{NOME_DA_BRANCH}`
|
|
206
221
|
- **Branch destino**: `{BRANCH_BASE}` (a `Branch base:` do `architecture.md`)
|
|
207
|
-
- **Descrição**:
|
|
222
|
+
- **Descrição**: o corpo do `pull-request.md` aprovado (sem a linha do título)
|
|
208
223
|
|
|
209
224
|
```bash
|
|
210
225
|
BODY_FILE=$(mktemp)
|
|
211
|
-
|
|
226
|
+
tail -n +2 $SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/pull-request.md > "$BODY_FILE"
|
|
212
227
|
|
|
213
228
|
jarvis vcs create-merge \
|
|
214
229
|
--source "${NOME_DA_BRANCH}" \
|
|
215
|
-
--target "${
|
|
216
|
-
--title "${
|
|
230
|
+
--target "${BRANCH_BASE}" \
|
|
231
|
+
--title "${TITULO_DO_PULL_REQUEST_MD}" \
|
|
217
232
|
--body-file "$BODY_FILE"
|
|
218
233
|
|
|
219
234
|
rm -f "$BODY_FILE"
|
|
@@ -326,65 +341,18 @@ fi
|
|
|
326
341
|
{LEAD_TIME_MSG}
|
|
327
342
|
|
|
328
343
|
📌 Próximos passos:
|
|
329
|
-
1.
|
|
330
|
-
2.
|
|
344
|
+
1. /eng.spec-consolidate {TASK_MANAGER_KEY} → registrar no Central docs o que esta entrega implementou
|
|
345
|
+
2. Aguardar revisão do time e processar os comentários do code review
|
|
331
346
|
3. Merge após aprovação
|
|
332
347
|
|
|
348
|
+
🗂️ A sessão $SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/ não é apagada (o /eng.spec-consolidate precisa dela).
|
|
349
|
+
Remova à mão quando quiser.
|
|
350
|
+
|
|
333
351
|
🔗 Links:
|
|
334
352
|
- MR: {LINK_DO_MR}
|
|
335
353
|
- Jira: {TASK_MANAGER_URL_BASE}/browse/{TASK_MANAGER_KEY}
|
|
336
354
|
```
|
|
337
355
|
|
|
338
|
-
## Fase 8: Limpeza da Sessão
|
|
339
|
-
|
|
340
|
-
### 9.1 Solicitar Confirmação
|
|
341
|
-
|
|
342
|
-
Após o MR ser criado com sucesso, **solicitar confirmação do usuário**:
|
|
343
|
-
|
|
344
|
-
```
|
|
345
|
-
🧹 Deseja limpar a sessão?
|
|
346
|
-
|
|
347
|
-
A pasta $SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/ será removida.
|
|
348
|
-
A documentação permanece no Jira e no MR.
|
|
349
|
-
|
|
350
|
-
Confirmar? (s/n)
|
|
351
|
-
```
|
|
352
|
-
|
|
353
|
-
> ⚠️ **IMPORTANTE**: Sempre pedir confirmação antes de executar comandos destrutivos.
|
|
354
|
-
|
|
355
|
-
### 9.2 Remover Pasta da Sessão
|
|
356
|
-
|
|
357
|
-
Se confirmado:
|
|
358
|
-
|
|
359
|
-
```bash
|
|
360
|
-
rm -rf $SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/
|
|
361
|
-
```
|
|
362
|
-
|
|
363
|
-
**Exemplo:**
|
|
364
|
-
|
|
365
|
-
```bash
|
|
366
|
-
rm -rf $SESSIONS_DIR/eng/task-123/
|
|
367
|
-
```
|
|
368
|
-
|
|
369
|
-
### 9.3 Confirmar Limpeza
|
|
370
|
-
|
|
371
|
-
```
|
|
372
|
-
🧹 SESSÃO LIMPA!
|
|
373
|
-
|
|
374
|
-
📁 Removido: $SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/
|
|
375
|
-
- architecture.md ✅
|
|
376
|
-
- plan.md ✅
|
|
377
|
-
- context.md ✅ (se existia)
|
|
378
|
-
|
|
379
|
-
ℹ️ A documentação permanece no:
|
|
380
|
-
- Card do Jira: {TASK_MANAGER_KEY}
|
|
381
|
-
- Merge Request: {LINK_DO_MR}
|
|
382
|
-
```
|
|
383
|
-
|
|
384
|
-
> ⚠️ **NOTA**: A documentação não é perdida! Ela está anexada no Jira e registrada no MR.
|
|
385
|
-
|
|
386
|
-
---
|
|
387
|
-
|
|
388
356
|
## Regras Importantes
|
|
389
357
|
|
|
390
358
|
### ⛔ NÃO FAÇA
|
|
@@ -403,7 +371,8 @@ rm -rf $SESSIONS_DIR/eng/task-123/
|
|
|
403
371
|
- ✅ Criar branch no padrão `{TASK_MANAGER_KEY}-{titulo}`
|
|
404
372
|
- ✅ Preencher template do MR completamente
|
|
405
373
|
- ✅ Mover card para "In Review"
|
|
406
|
-
- ✅
|
|
374
|
+
- ✅ Gerar o `pull-request.md` na sessão e só publicar com o **Sim** (Fase 4.3)
|
|
375
|
+
- ✅ **Nunca apagar a sessão:** o `/eng.spec-consolidate` precisa dela
|
|
407
376
|
|
|
408
377
|
---
|
|
409
378
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Revisão de lacunas antes de abrir o PR/MR, com o relatório gate-checklist.md na sessão
|
|
3
3
|
auto_execution_mode: 3
|
|
4
4
|
env_file: "@/ENV.md"
|
|
5
5
|
rules_file: "$IDE/rules-on-demand/engineering/eng.pre-pr-rules.md"
|
|
@@ -10,7 +10,9 @@ model_justification: Revisão multi-agente requer coordenação, análise de có
|
|
|
10
10
|
|
|
11
11
|
# pre-pr
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
Antes de abrir o PR/MR, este comando **revê a branch atrás de possíveis lacunas** (produto, código, testes, requisitos não funcionais, interface, segurança, documentação) e gera um relatório, o **`gate-checklist.md`**, na pasta da sessão. Ele é estruturado e explicativo, para você decidir o que ajustar e o que não ajustar.
|
|
14
|
+
|
|
15
|
+
> ⚠️ **Só revisa.** O `eng.pre-pr` não corrige código, não escreve testes, não atualiza documentação e não publica nada no Central docs. Ele aponta; quem decide e ajusta é você (ou o `eng.work`, se pedir).
|
|
14
16
|
|
|
15
17
|
> 📋 **Rules**: `$IDE/rules-on-demand/engineering/eng.pre-pr-rules.md` — **antes de começar, leia esse arquivo e siga-o**: ele não é carregado automaticamente no início da sessão.
|
|
16
18
|
|
|
@@ -18,7 +20,7 @@ Estamos nos aproximando de finalizar o trabalho nesta branch e nos preparar para
|
|
|
18
20
|
|
|
19
21
|
- **eng-qa-planner**: para avaliar cobertura de testes e identificar gaps antes do PR — se a especialização estiver registrada em `QA_SPECIALIZATIONS` (ver `$IDE/rules/engineering/eng.specializations-rules.md`). Sem ela, use a base `eng-qa` diretamente.
|
|
20
22
|
- Arquivo: `$IDE/skills/eng-qa-planner/SKILL.md`
|
|
21
|
-
- **eng-global-docs-write**: para
|
|
23
|
+
- **eng-global-docs-write**: para identificar documentação que ficou desatualizada com as mudanças da branch.
|
|
22
24
|
- Arquivo: `$IDE/skills/eng-global-docs-write/SKILL.md`
|
|
23
25
|
- **jarvis-docs-index**: para atualizar o índice de documentação quando necessário.
|
|
24
26
|
- Arquivo: `$IDE/skills/jarvis-docs-index/SKILL.md`
|
|
@@ -36,117 +38,78 @@ Estamos nos aproximando de finalizar o trabalho nesta branch e nos preparar para
|
|
|
36
38
|
| Passo | Skill | Condição |
|
|
37
39
|
|-------|-------|----------|
|
|
38
40
|
| Skills recomendados | `/eng-qa-planner` | Se a especialização estiver registrada em `QA_SPECIALIZATIONS`; sem ela, usar a base `/eng-qa` diretamente |
|
|
39
|
-
| Skills recomendados | `/eng-global-docs-write` | Para
|
|
41
|
+
| Skills recomendados | `/eng-global-docs-write` | Para identificar documentação desatualizada pelas mudanças da branch |
|
|
40
42
|
| Skills recomendados | `/jarvis-docs-index` | Se for necessário atualizar o índice de documentação |
|
|
41
43
|
| Skills recomendados | `/eng-platform` + `PLATFORM_SPECIALIZATIONS` | Se a feature tiver requisitos não-funcionais de latência, throughput ou escalabilidade |
|
|
42
44
|
| Skills recomendados | `/eng-backend` e `/eng-frontend` (via `eng.specializations-rules.md`) | Para validar código de backend (endpoints, autenticação, workers) ou de frontend (componentes, performance de UI, WCAG 2.1 AA); a regra também carrega as especializações registradas no ENV.md |
|
|
43
|
-
| Gate 0: Verificar Documentação Central | `/jarvis-docs-central` (via `jarvis docs publish --tipo ard`) | Se `CENTRAL_DOCS_STORAGE` estiver configurado, houver mudança arquitetural, o ARD estiver desatualizado ou novo e o usuário aceitar publicar |
|
|
44
45
|
| Gates › item 1 | `prod.pm-checker` (agente) | Sempre — verificar alinhamento da branch com os docs de produto e engenharia |
|
|
45
46
|
| Gates › item 2 | `eng.dev-code-reviewer` (agente) | Sempre — revisar o código antes de lançar |
|
|
46
47
|
| Gates › item 3 | `eng.qa.test-planner` (agente) | Sempre — identificar gaps de cobertura de testes na branch |
|
|
47
|
-
| Gates › item 4 | `eng.qa.testing-engineer` (agente) | Se o test-planner identificar gaps críticos (escrever os testes faltantes) |
|
|
48
48
|
| Gates › item 5 | `eng.qa.test-architect` (agente) | Se a feature tiver requisitos não-funcionais (no `architecture.md` ou explícitos na task) |
|
|
49
49
|
| Gates › item 6 | `/eng-qa` + `QA_SPECIALIZATIONS` | Sempre — frontend e/ou backend conforme o projeto |
|
|
50
50
|
| Gates › item 7 | `eng.frontend.agent` (agente) | Se a branch tiver mudanças de interface (componentes, estilos, estado) |
|
|
51
51
|
| Gates › item 8 | `eng.ux-designer.agent` (agente) | Se a branch introduzir nova feature de UI ou alterar fluxo de usuário |
|
|
52
|
-
| Gates › item 9 | `eng.docs-writer` (agente) | Sempre —
|
|
52
|
+
| Gates › item 9 | `eng.docs-writer` (agente) | Sempre — apontar documentação do projeto desatualizada (sem editar) |
|
|
53
53
|
| Gates › item 10 | Nenhuma — checklist inline | Se a branch tocar em auth, sessions, inputs de usuário, CORS, CSP, permissões ou adicionar endpoints públicos |
|
|
54
|
-
|
|
|
54
|
+
| Publicação do relatório | `/eng-global-task-comment` | Só se o usuário responder **Sim** no fim: o `gate-checklist.md` com as decisões vira um comentário na issue/card (freelance pula) |
|
|
55
55
|
|
|
56
56
|
## Regras de Execução
|
|
57
57
|
|
|
58
|
-
- **Escopo**: avalie apenas as mudanças desta branch em relação
|
|
59
|
-
- **
|
|
60
|
-
- **
|
|
61
|
-
- Gate 2 (revisão técnica)
|
|
62
|
-
- Gate 3 (testes/validações)
|
|
58
|
+
- **Escopo**: avalie apenas as mudanças desta branch em relação à **branch base** (`Branch base:` do `architecture.md`; sem ele, pergunte).
|
|
59
|
+
- **Só apontar**: cada agente/gate devolve lacunas, não correções. Nenhum arquivo do projeto é alterado por este comando.
|
|
60
|
+
- **Evidências**: cite o comando rodado e o resultado, ou `arquivo:linha`, para cada lacuna.
|
|
63
61
|
|
|
64
|
-
## Gates
|
|
62
|
+
## Gates (revisão)
|
|
65
63
|
|
|
66
|
-
|
|
64
|
+
1. Invoque o agente [prod.pm-checker]($IDE/agents/product/prod.pm-checker.md) para apontar desalinhamentos entre a branch e os documentos de produto e de engenharia (em `$PROD_DOCS`, `$ENG_DOCS` e no Central docs).
|
|
65
|
+
2. Invoque o agente [eng.dev-code-reviewer]($IDE/agents/engineering/eng.dev-code-reviewer.md) para apontar problemas de código (bugs, legibilidade, padrões do projeto).
|
|
66
|
+
3. Invoque o agente [eng.qa.test-planner]($IDE/agents/engineering/qa/eng.qa.test-planner.md) para apontar lacunas de cobertura de testes. Lacunas críticas: funções públicas sem teste, lógica de negócio descoberta, tratamento de erro não validado.
|
|
67
|
+
4. **Se a feature tiver requisitos não funcionais** (no `architecture.md` ou explícitos na task), invoque o agente [eng.qa.test-architect]($IDE/agents/engineering/qa/eng.qa.test-architect.md) para apontar o que falta validar (performance, segurança, quality gates).
|
|
68
|
+
5. Use a base [eng-qa]($IDE/skills/eng-qa/SKILL.md) (ou a especialização registrada em `QA_SPECIALIZATIONS`) para rodar os testes automatizados da branch e registrar o resultado.
|
|
69
|
+
6. **Se a branch tiver mudanças de interface**, invoque o agente [eng.frontend.agent]($IDE/agents/engineering/eng.frontend.agent.md) para apontar problemas de tipagem, tokens de design e acessibilidade (WCAG 2.1 AA), aplicando as especializações de frontend registradas.
|
|
70
|
+
7. **Se a branch introduzir nova feature de UI ou alterar fluxo de usuário**, invoque o agente [eng.ux-designer.agent]($IDE/agents/engineering/eng.ux-designer.agent.md) para apontar empty states, loading, mensagens de erro e consistência visual.
|
|
71
|
+
8. **Se a branch tocar em auth, sessions, inputs de usuário, CORS, CSP, permissões ou adicionar endpoints públicos**, aplique o checklist de segurança (padrões da base [eng-backend]($IDE/skills/eng-backend/SKILL.md) + `BACKEND_SPECIALIZATIONS`, [eng-frontend]($IDE/skills/eng-frontend/SKILL.md) + `FRONTEND_SPECIALIZATIONS` e, para infraestrutura, [eng-platform]($IDE/skills/eng-platform/SKILL.md) + `PLATFORM_SPECIALIZATIONS`): sanitização de inputs e queries parametrizadas, auth guards, headers e CORS, secrets no diff, `npm audit` sem HIGH/CRITICAL.
|
|
72
|
+
9. Invoque o agente [eng.docs-writer]($IDE/agents/engineering/eng.docs-writer.md) para apontar documentação do projeto que ficou desatualizada (sem editar).
|
|
67
73
|
|
|
68
|
-
|
|
74
|
+
## Relatório: `gate-checklist.md` (obrigatório)
|
|
69
75
|
|
|
70
|
-
|
|
71
|
-
```bash
|
|
72
|
-
git diff main...HEAD | grep -E "(class|interface|schema|migration|config)" || true
|
|
73
|
-
```
|
|
76
|
+
Grave em `$SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/gate-checklist.md`:
|
|
74
77
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
- Comparar com ARD do central-docs (se existir)
|
|
78
|
-
- Se desatualizado ou novo:
|
|
79
|
-
- Perguntar: "Publicar ARD atualizado no central-docs?"
|
|
80
|
-
- Se sim: executar `jarvis docs publish --file <path> --tipo ard`
|
|
78
|
+
```markdown
|
|
79
|
+
# Gate checklist — {TASK_MANAGER_KEY}
|
|
81
80
|
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
- Se não: sugerir criar RFC para decisões arquiteturais
|
|
81
|
+
> Branch: {branch} → {branch base} · Data: {AAAA-MM-DD}
|
|
82
|
+
> **Semáforo:** 🟢 pronto para PR | 🟡 pode abrir com notas | 🔴 há bloqueadores
|
|
85
83
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
- Não bloquear PR por docs desatualizados (apenas avisar)
|
|
84
|
+
## Resumo
|
|
85
|
+
{3 a 5 frases: o que a branch faz, quantas lacunas por severidade e o principal risco.}
|
|
89
86
|
|
|
90
|
-
|
|
87
|
+
## Lacunas
|
|
88
|
+
|
|
89
|
+
### {Área: Produto e documentação | Código | Testes | Não funcionais | Interface e UX | Segurança | Documentação do projeto}
|
|
90
|
+
|
|
91
|
+
| # | Lacuna | Onde | Por que importa | Sugestão | Severidade | Decisão |
|
|
92
|
+
|---|---|---|---|---|---|---|
|
|
93
|
+
| 1 | {o que falta ou está errado} | `{arquivo:linha}` | {impacto, em linguagem simples} | {como resolver} | 🔴 Bloqueador / 🟡 Importante / ⚪ Menor | {Ajustar \| Não ajustar: motivo} |
|
|
91
94
|
|
|
92
|
-
|
|
93
|
-
2. Invoque o agente [eng.dev-code-reviewer]($IDE/agents/engineering/eng.dev-code-reviewer.md) para revisar o código e assegurar que está bom para lançar.
|
|
94
|
-
3. Invoque o agente [eng.qa.test-planner]($IDE/agents/engineering/qa/eng.qa.test-planner.md) para identificar gaps de cobertura de testes na branch.
|
|
95
|
-
4. **Se o test-planner identificar gaps críticos**, invoque o agente [eng.qa.testing-engineer]($IDE/agents/engineering/qa/eng.qa.testing-engineer.md) para escrever os testes faltantes antes de prosseguir.
|
|
96
|
-
- Gaps críticos: funções públicas sem teste, lógica de negócio descoberta, tratamento de erros não validado
|
|
97
|
-
- Gaps aceitáveis (com justificativa): código de infraestrutura, integrações já cobertas por e2e
|
|
98
|
-
5. **Se a feature tiver requisitos não-funcionais** (definidos no `architecture.md` ou explícitos na task), invoque o agente [eng.qa.test-architect]($IDE/agents/engineering/qa/eng.qa.test-architect.md) para validar:
|
|
99
|
-
- Testes de performance executados e dentro dos thresholds
|
|
100
|
-
- Testes de segurança passando (RBAC, injection, etc.)
|
|
101
|
-
- Quality gates configurados corretamente
|
|
102
|
-
6. Use a base [eng-qa]($IDE/skills/eng-qa/SKILL.md) (ou a especialização registrada em `QA_SPECIALIZATIONS`, se houver uma) para validar testes automatizados nas mudanças da branch, frontend e/ou backend conforme o projeto.
|
|
103
|
-
7. **Se a branch tiver mudanças de interface** (componentes, estilos, estado), invoque o agente [eng.frontend.agent]($IDE/agents/engineering/eng.frontend.agent.md) para validar:
|
|
104
|
-
- Tipagem forte (quando a linguagem tem), tokens de design do projeto usados, acessibilidade WCAG 2.1 AA
|
|
105
|
-
- Aplicar as exigências das especializações de frontend registradas (ver `eng.specializations-rules.md`)
|
|
106
|
-
8. **Se a branch introduzir nova feature de UI ou alterar fluxo de usuário**, invoque o agente [eng.ux-designer.agent]($IDE/agents/engineering/eng.ux-designer.agent.md) para verificar:
|
|
107
|
-
- Empty states, loading states e mensagens de erro em linguagem humana
|
|
108
|
-
- Consistência com padrões visuais existentes no produto
|
|
109
|
-
9. Invoque o agente [eng.docs-writer]($IDE/agents/engineering/eng.docs-writer.md) para atualizar a documentação do projeto.
|
|
110
|
-
10. **Se a branch tocar em auth, sessions, inputs de usuário, CORS, CSP, permissões ou adicionar endpoints públicos**, aplicar o gate de segurança (os padrões de segurança da base [eng-backend]($IDE/skills/eng-backend/SKILL.md) + `BACKEND_SPECIALIZATIONS` / [eng-frontend]($IDE/skills/eng-frontend/SKILL.md) + `FRONTEND_SPECIALIZATIONS` e, para infraestrutura, do [eng-platform]($IDE/skills/eng-platform/SKILL.md) + `PLATFORM_SPECIALIZATIONS` servem de referência):
|
|
111
|
-
- Revisar sanitização de inputs e queries parametrizadas
|
|
112
|
-
- Verificar auth guards em endpoints novos
|
|
113
|
-
- Validar headers de segurança e configurações de CORS
|
|
114
|
-
- Escanear secrets no diff (`grep` por patterns de tokens/senhas)
|
|
115
|
-
- Verificar `npm audit` sem vulnerabilidades HIGH/CRITICAL
|
|
116
|
-
- Se achados CRITICAL: status **Red** (bloqueador)
|
|
117
|
-
|
|
118
|
-
Você também precisará lidar com todo o feedback que esses agentes fornecerem e fazer mudanças e correções conforme necessário.
|
|
119
|
-
|
|
120
|
-
## Checklist final (obrigatório)
|
|
121
|
-
|
|
122
|
-
- [ ] Não existem bloqueadores abertos (segurança/bugs críticos).
|
|
123
|
-
- [ ] Testes e validações relevantes foram executados e passaram (com evidências automatizadas ou manuais).
|
|
124
|
-
- [ ] Cobertura de testes para mudanças da branch foi avaliada (e gaps críticos tratados ou justificados).
|
|
125
|
-
- [ ] Documentação foi revisada/atualizada (listar arquivos alterados) ou foi explicitado por que não foi necessário.
|
|
126
|
-
- [ ] Riscos conhecidos e trade-offs foram registrados (e follow-ups criados quando aplicável).
|
|
127
|
-
|
|
128
|
-
## Saída final (obrigatória)
|
|
129
|
-
|
|
130
|
-
### 1) Status Pre-PR (Semáforo)
|
|
131
|
-
|
|
132
|
-
- Green: pronto para PR
|
|
133
|
-
- Yellow: pode abrir PR com notas e follow-ups
|
|
134
|
-
- Red: não pode abrir PR (listar bloqueadores)
|
|
135
|
-
|
|
136
|
-
### 2) Bloqueadores e pendências
|
|
137
|
-
|
|
138
|
-
Se o status for **RED** (bloqueado), comente o bloqueio e o motivo no card com `/eng-global-task-comment` (freelance pula). GREEN e YELLOW não geram comentário.
|
|
139
|
-
|
|
140
|
-
- Bloqueadores:
|
|
141
|
-
- Pendências aceitas (com justificativa):
|
|
142
|
-
- Follow-ups (links/IDs):
|
|
143
|
-
|
|
144
|
-
### 3) PR Brief (para colar no PR)
|
|
95
|
+
(uma tabela por área; área sem lacuna: "Nenhuma lacuna encontrada.")
|
|
145
96
|
|
|
97
|
+
## Evidências
|
|
98
|
+
{Comandos rodados (testes, lint, build, audit) e resultados.}
|
|
99
|
+
|
|
100
|
+
## PR Brief
|
|
146
101
|
- Resumo do que mudou:
|
|
147
102
|
- Como testar:
|
|
148
|
-
- Evidências de testes/validações:
|
|
149
|
-
- Docs atualizadas:
|
|
150
103
|
- Riscos / trade-offs:
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
A coluna **Decisão** nasce vazia: quem preenche é o usuário.
|
|
107
|
+
|
|
108
|
+
## Fechamento
|
|
151
109
|
|
|
152
|
-
|
|
110
|
+
1. Mostre o semáforo, o resumo e a lista de lacunas por severidade, com o caminho do `gate-checklist.md`.
|
|
111
|
+
2. Peça as decisões: para cada lacuna 🔴 e 🟡, "Ajustar" ou "Não ajustar" (com o motivo). Use `AskUserQuestion` por lacuna quando houver poucas; com muitas, deixe a pessoa responder em texto ou editar o arquivo. Grave as decisões na coluna **Decisão**.
|
|
112
|
+
3. Pergunte com `AskUserQuestion` (**Sim / Não**, sempre, nunca publicar sem a resposta): **"Publicar o gate-checklist.md (com as decisões) como comentário na issue/card?"**
|
|
113
|
+
- **Sim** (e `TASK_MANAGER` preenchido): `/eng-global-task-comment {TASK_MANAGER_KEY}` com o conteúdo do arquivo.
|
|
114
|
+
- **Não**, ou modo freelance: fica só na sessão.
|
|
115
|
+
4. Próximo passo: ajustar o que foi marcado "Ajustar" (à mão ou com o `/eng.work`) e rodar o `/eng.pr`, que usa o PR Brief deste relatório.
|
|
@@ -47,7 +47,7 @@ Formato esperado: `new {TASK_MANAGER_KEY}` ou `update {TASK_MANAGER_KEY}`
|
|
|
47
47
|
3. **[se `new`]** Qual o tag do serviço? (ex: `consulta-orgao`, `extrator-dados`) — será usado como `{robot-tag}`
|
|
48
48
|
4. **[se `update`]** Qual robô será mantido? Listar opções:
|
|
49
49
|
```bash
|
|
50
|
-
ls
|
|
50
|
+
ls $ENG_DOCS/robots/
|
|
51
51
|
```
|
|
52
52
|
Apresentar a lista e pedir que o dev escolha.
|
|
53
53
|
|
|
@@ -204,7 +204,7 @@ Garantir durante a implementação:
|
|
|
204
204
|
|
|
205
205
|
### Fase N4 — Documentação
|
|
206
206
|
|
|
207
|
-
Criar
|
|
207
|
+
Criar `$ENG_DOCS/robots/{robot-tag}-robot.md`.
|
|
208
208
|
|
|
209
209
|
Seguir `$IDE/rules/engineering/eng.docs-scraping-rules.md`:
|
|
210
210
|
|
|
@@ -239,7 +239,7 @@ No corpo do PR incluir: link para `{robot-tag}-robot.md`, variáveis de ambiente
|
|
|
239
239
|
Ler o documento existente do robô:
|
|
240
240
|
|
|
241
241
|
```bash
|
|
242
|
-
cat
|
|
242
|
+
cat $ENG_DOCS/robots/{robot-tag}-robot.md
|
|
243
243
|
```
|
|
244
244
|
|
|
245
245
|
Extrair e apresentar ao usuário:
|
|
@@ -304,7 +304,7 @@ Para bug fixes estruturais (seletor quebrado, campo mudou de posição):
|
|
|
304
304
|
|
|
305
305
|
### Fase U4 — Atualizar Documentação
|
|
306
306
|
|
|
307
|
-
Atualizar
|
|
307
|
+
Atualizar `$ENG_DOCS/robots/{robot-tag}-robot.md`:
|
|
308
308
|
|
|
309
309
|
- **Sempre**: Histórico de Bugs (toda correção estrutural entra aqui com referência ao card)
|
|
310
310
|
- **Se campos mudaram**: atualizar Fontes de Dados e Campos Extraídos
|
|
@@ -331,7 +331,7 @@ Chamar `/jarvis-docs-index` após atualizar.
|
|
|
331
331
|
Modo : {new | update}
|
|
332
332
|
Robô : {robot-tag}-robot
|
|
333
333
|
Classe : {RobotTag}Robot
|
|
334
|
-
Docs :
|
|
334
|
+
Docs : $ENG_DOCS/robots/{robot-tag}-robot.md
|
|
335
335
|
Branch : {TASK_MANAGER_KEY}-{robot-tag}
|
|
336
336
|
PR : (link do MR criado pelo eng.pr)
|
|
337
337
|
─────────────────────────────────────────────────────────────
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Consolida o que a entrega implementou no Central docs (documento da funcionalidade + registro da entrega)
|
|
3
|
+
auto_execution_mode: 3
|
|
4
|
+
agent: "$IDE/agents/engineering/eng.docs-consolidator.agent.md"
|
|
5
|
+
template_file: "$IDE/templates/engineering/central-feature-template.md"
|
|
6
|
+
recommended_model: opus
|
|
7
|
+
model_tier: high
|
|
8
|
+
model_justification: Consolidar exige ler e cruzar muitas fontes (documentos, decisões, diff e commits) e escrever um registro completo e sem ambiguidade
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Consolidar no Central docs
|
|
12
|
+
|
|
13
|
+
Este comando registra no **Central docs** o que a entrega **de fato implementou**. Ele roda **logo depois do PR aberto** (`/eng.pr`) e gera dois documentos completos e autossuficientes:
|
|
14
|
+
- o **documento da funcionalidade** (`feature-{slug}.md`), com o estado atual, novo ou atualizado;
|
|
15
|
+
- o **registro da entrega** (`delivery-{AAAA-MM-DD}-{task_key}.md`), com o PR, os commits e os autores.
|
|
16
|
+
|
|
17
|
+
Os documentos de trabalho (PRD, FRD, ARD, RFC…) continuam em `docs/jarvis/` e **não** vão para o Central docs: lá fica só o que foi implementado.
|
|
18
|
+
|
|
19
|
+
> 🤖 **Modelo**: se a IDE informar o modelo desta sessão e ele for de outra família que o `recommended_model` do documento (ou do template, se for novo), avise em uma linha e siga, sem bloquear e sem repetir. Sem essa informação, não avise.
|
|
20
|
+
> 📤 **Templates**: `$IDE/templates/engineering/central-feature-template.md` e `$IDE/templates/engineering/central-delivery-template.md`
|
|
21
|
+
|
|
22
|
+
### Skills invocados durante o workflow
|
|
23
|
+
|
|
24
|
+
| Passo | Skill | Condição |
|
|
25
|
+
|-------|-------|----------|
|
|
26
|
+
| Cabeçalho (agente) | `eng.docs-consolidator.agent` (agente) | Sempre: escreve a consolidação na sessão |
|
|
27
|
+
| Passo 3 (funcionalidade) e Passo 6 (publicação) | `/jarvis-docs-central` (via `jarvis docs fetch` / `jarvis docs publish`) | Sempre: lê o índice e o documento atual e publica depois do Sim |
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Entrada
|
|
32
|
+
|
|
33
|
+
<arguments>
|
|
34
|
+
#$ARGUMENTS
|
|
35
|
+
</arguments>
|
|
36
|
+
|
|
37
|
+
- `{TASK_MANAGER_KEY}` (obrigatório no modo normal): a mesma chave do `eng.start`/`eng.pr`. Sem ela, pergunte e aguarde (`eng.integrations-rules.md`; no modo freelance, o número de controle).
|
|
38
|
+
- `{slug}` (opcional): slug da funcionalidade, se você já souber qual atualizar.
|
|
39
|
+
- `--inicial`: carga inicial a partir dos documentos de trabalho que já existem (chamado pelo `/jarvis-init`). Não precisa de chave nem de PR.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## Passo 0: Pré-condições
|
|
44
|
+
|
|
45
|
+
1. **Central docs ligado:** `CENTRAL_DOCS_STORAGE` preenchido no `$IDE/ENV.md`. Se estiver vazio, pare: "O Central docs está desligado. Ligue-o no `/jarvis-init` (Passo 5.2) para registrar o que foi implementado."
|
|
46
|
+
2. **Modo normal:** a sessão `$SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/` existe com o `architecture.md`. Sem ela, avise que a consolidação perde as decisões e pergunte se segue só com o diff e os documentos de trabalho.
|
|
47
|
+
3. **Branch base:** o `Branch base:` do `architecture.md`. Sem ele, pergunte com `AskUserQuestion` (`main`, `dev` ou Outro).
|
|
48
|
+
|
|
49
|
+
## Passo 1: Coleta (modo normal)
|
|
50
|
+
|
|
51
|
+
O agente `eng.docs-consolidator` lê **todas** as fontes, na ordem do agente:
|
|
52
|
+
1. `architecture.md` e `plan.md` da sessão.
|
|
53
|
+
2. Documentos de trabalho ligados à tarefa em `$PROD_DOCS` e `$ENG_DOCS` (PRD, FRD, épicos, histórias, ARD, RFC, swagger, QA).
|
|
54
|
+
3. Commits e arquivos:
|
|
55
|
+
```bash
|
|
56
|
+
git log {base}..HEAD --format='%h|%an|%ad|%s' --date=short
|
|
57
|
+
git diff --stat {base}...HEAD
|
|
58
|
+
```
|
|
59
|
+
4. **PR/MR:** número e URL (`pull-request.md` da sessão, `gh pr view`/equivalente do vendor, ou pergunte).
|
|
60
|
+
5. **Card:** URL no padrão do `TASK_MANAGER` (`eng.integrations-rules.md`); no modo freelance, só o número de controle.
|
|
61
|
+
6. `gate-checklist.md` e `pull-request.md` da sessão, se existirem.
|
|
62
|
+
|
|
63
|
+
## Passo 2: Coleta (modo `--inicial`)
|
|
64
|
+
|
|
65
|
+
1. Liste os PRD, FRD, ARD e RFC em `$PROD_DOCS` e `$ENG_DOCS/{ARD,RFC}` (e nos caminhos antigos, se o `/jarvis-init` não os moveu).
|
|
66
|
+
2. Sugira o agrupamento por funcionalidade (um PRD/FRD e os ARD/RFC ligados a ele) e confirme com `AskUserQuestion` (aceitar / ajustar).
|
|
67
|
+
3. Para cada grupo, o agente lê os documentos e o código relacionado (só leitura), para descrever o que **está implementado**. O que estiver só especificado vai para "Fora do escopo", e o status reflete isso.
|
|
68
|
+
|
|
69
|
+
## Passo 3: Qual funcionalidade
|
|
70
|
+
|
|
71
|
+
1. `jarvis docs fetch {SQUAD}/index.md` e liste as funcionalidades existentes do produto (`WORKSPACE`).
|
|
72
|
+
2. Sugira uma, pelo PRD/FRD de origem, pelo título do `architecture.md` e pelos arquivos do diff, e um slug novo bem nomeado (kebab-case, pelo nome que o negócio usa).
|
|
73
|
+
3. Pergunte com `AskUserQuestion`:
|
|
74
|
+
- "Atualizar `feature-{x}`" (sugerida);
|
|
75
|
+
- "Criar `feature-{slug sugerido}`";
|
|
76
|
+
- Outro (digitar).
|
|
77
|
+
|
|
78
|
+
Se o slug veio como argumento, confirme com a mesma pergunta.
|
|
79
|
+
4. Na atualização, `jarvis docs fetch {SQUAD}/product/{produto}/feature-{x}.md` é o ponto de partida.
|
|
80
|
+
|
|
81
|
+
## Passo 4: Escrever na sessão
|
|
82
|
+
|
|
83
|
+
O agente gera em `$SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/consolidation/` (no `--inicial`, em `$SESSIONS_DIR/eng/inicial-{AAAA-MM-DD}/consolidation/`):
|
|
84
|
+
- `feature-{slug}.md`: todas as 11 seções do template, com o estado atual e a linha nova no Histórico de entregas;
|
|
85
|
+
- `delivery-{AAAA-MM-DD}-{task_key}.md`: as 7 seções (não existe no `--inicial`).
|
|
86
|
+
|
|
87
|
+
O frontmatter segue o template, com os comentários `#`. `product` = `WORKSPACE` (ou o produto confirmado).
|
|
88
|
+
|
|
89
|
+
## Passo 5: Revisão
|
|
90
|
+
|
|
91
|
+
Mostre o resumo dos dois arquivos (seções, tamanho, referências) e o caminho deles. Pergunte com `AskUserQuestion`:
|
|
92
|
+
- `[Aprovar]`
|
|
93
|
+
- `[Ajustar]`: diga o que mudar; o agente ajusta e você revisa de novo.
|
|
94
|
+
|
|
95
|
+
Confira antes de aprovar:
|
|
96
|
+
- [ ] card e PR/MR com URL;
|
|
97
|
+
- [ ] commits com autor (sem e-mail);
|
|
98
|
+
- [ ] nenhum segredo nem valor de variável;
|
|
99
|
+
- [ ] nenhuma frase depende de um documento de origem.
|
|
100
|
+
|
|
101
|
+
## Passo 6: Publicar
|
|
102
|
+
|
|
103
|
+
Pergunte com `AskUserQuestion` (**Sim / Não**): **"Publicar no Central docs?"**
|
|
104
|
+
|
|
105
|
+
- **Sim:**
|
|
106
|
+
```bash
|
|
107
|
+
jarvis docs publish --file .../consolidation/delivery-{AAAA-MM-DD}-{task_key}.md --tipo delivery
|
|
108
|
+
jarvis docs publish --file .../consolidation/feature-{slug}.md --tipo feature
|
|
109
|
+
```
|
|
110
|
+
(no `--inicial`, só os `feature-*`). Com o Central docs num repositório git, cada publicação abre um PR no repositório de documentação: informe as URLs.
|
|
111
|
+
- **Não:** os arquivos ficam na sessão. Para publicar depois, use os mesmos comandos.
|
|
112
|
+
|
|
113
|
+
## Passo 7: Mensagem final
|
|
114
|
+
|
|
115
|
+
```
|
|
116
|
+
✅ Consolidação {publicada | salva na sessão}
|
|
117
|
+
|
|
118
|
+
📄 Funcionalidade: {SQUAD}/product/{produto}/feature-{slug}.md
|
|
119
|
+
🧾 Entrega: {SQUAD}/engineering/{produto}/delivery-{AAAA-MM-DD}-{task_key}.md
|
|
120
|
+
🔗 PR/MR: {URL} · Card: {URL ou número}
|
|
121
|
+
|
|
122
|
+
🧹 A sessão $SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/ não é apagada automaticamente: remova à mão quando quiser.
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## Regras
|
|
128
|
+
|
|
129
|
+
### ⛔ Nunca
|
|
130
|
+
- Publicar sem o **Sim** do Passo 6
|
|
131
|
+
- Publicar PRD, FRD, ARD ou RFC no Central docs (só `feature` e `delivery`)
|
|
132
|
+
- Incluir e-mails, tokens, senhas, valores de variáveis ou dados pessoais de clientes
|
|
133
|
+
- Inventar informação: sem fonte, pergunte ou registre "não informado"
|
|
134
|
+
- Alterar o código, os documentos de trabalho ou a sessão fora de `consolidation/`
|
|
135
|
+
|
|
136
|
+
### ✅ Sempre
|
|
137
|
+
- Ler todas as fontes antes de escrever
|
|
138
|
+
- Citar o card e o PR/MR com URL (ou o número de controle no freelance)
|
|
139
|
+
- Descrever o implementado, não o pretendido
|
|
140
|
+
- Português do Brasil
|
|
@@ -221,17 +221,17 @@ Se `CENTRAL_DOCS_STORAGE` estiver configurado no ENV.md, buscar docs relacionado
|
|
|
221
221
|
|
|
222
222
|
**Passo 1:** Identificar docs relevantes com base no Jira ID e tags do card
|
|
223
223
|
|
|
224
|
-
**Passo 2:** Buscar
|
|
225
|
-
-
|
|
226
|
-
-
|
|
227
|
-
|
|
228
|
-
-
|
|
224
|
+
**Passo 2:** Buscar via skill jarvis-docs-central **o que já foi implementado**:
|
|
225
|
+
- funcionalidades relacionadas (`feature-*`): comportamento atual, decisões, onde está no código;
|
|
226
|
+
- entregas recentes dessas funcionalidades (`delivery-*`), se ajudarem.
|
|
227
|
+
|
|
228
|
+
Os documentos de trabalho da tarefa (PRD, FRD, ARD, RFC) ficam em `$PROD_DOCS`/`$ENG_DOCS` (`docs/jarvis/`): leia-os de lá.
|
|
229
229
|
|
|
230
230
|
**Passo 3:** Incorporar ao contexto antes de prosseguir para análise
|
|
231
231
|
|
|
232
232
|
**Comportamento:**
|
|
233
233
|
- Se docs encontrados → carregar e exibir resumo
|
|
234
|
-
- Se não encontrados →
|
|
234
|
+
- Se não encontrados → seguir com os documentos de trabalho em `docs/jarvis/` e o card
|
|
235
235
|
- Se `CENTRAL_DOCS_STORAGE` vazio → pular silenciosamente
|
|
236
236
|
|
|
237
237
|
### 2.3 Análise do Requisito
|
|
@@ -264,7 +264,7 @@ Invoque o agente [eng.qa.test-planner]($IDE/agents/engineering/qa/eng.qa.test-pl
|
|
|
264
264
|
- Analisar o código implementado na fase
|
|
265
265
|
- Identificar funções/métodos sem cobertura de teste
|
|
266
266
|
- Mapear casos de borda não cobertos
|
|
267
|
-
- Gerar relatório de gaps em `$
|
|
267
|
+
- Gerar relatório de gaps em `$ENG_DOCS/qa/{task-id}-test_coverage_branch_report.md`
|
|
268
268
|
|
|
269
269
|
#### 3.3.2 Implementar Testes Faltantes
|
|
270
270
|
|
|
@@ -67,7 +67,7 @@ O código ainda não existe neste momento do fluxo.
|
|
|
67
67
|
## Output
|
|
68
68
|
|
|
69
69
|
Documento de estratégia de testes salvo em:
|
|
70
|
-
`$
|
|
70
|
+
`$ENG_DOCS/qa/strategies/{task-id}-test-strategy.md`
|
|
71
71
|
|
|
72
72
|
Estrutura do documento:
|
|
73
73
|
```
|
|
@@ -63,7 +63,7 @@ Verificar se foi realizada sessão para a feature.
|
|
|
63
63
|
|
|
64
64
|
**3. Quality gate**
|
|
65
65
|
```bash
|
|
66
|
-
ls $
|
|
66
|
+
ls $ENG_DOCS/qa/ 2>/dev/null | grep -i "quality-gate\|qg"
|
|
67
67
|
```
|
|
68
68
|
Verificar se a spec passou pelo quality gate antes da sprint.
|
|
69
69
|
|
|
@@ -102,7 +102,7 @@ Usar template `$TEMPLATES_FOLDER/engineering/qa/qa.release-signoff-template.md`.
|
|
|
102
102
|
|
|
103
103
|
Salvar em:
|
|
104
104
|
```
|
|
105
|
-
$
|
|
105
|
+
$ENG_DOCS/qa/signoffs/signoff-{branch-slug}-{YYYYMMDD}.md
|
|
106
106
|
```
|
|
107
107
|
|
|
108
108
|
> O frontmatter **deve** conter `status: GO` ou `status: NO-GO` — o CLI `jarvis qa-signoff` lê este campo.
|
|
@@ -172,5 +172,5 @@ Se $MESSAGE_COMUNICATOR não estiver configurado ou o TL não tiver Slack ID em
|
|
|
172
172
|
|
|
173
173
|
## Output
|
|
174
174
|
|
|
175
|
-
- `$
|
|
175
|
+
- `$ENG_DOCS/qa/signoffs/signoff-{branch-slug}-{YYYYMMDD}.md` — documento de sign-off
|
|
176
176
|
- Snippet CI (apenas na primeira execução, se pipeline ainda não configurado)
|
|
@@ -93,7 +93,7 @@ Com base no risco e na capacidade mapeada na Fase 0:
|
|
|
93
93
|
Usando o template `$TEMPLATES_FOLDER/engineering/qa/qa.sprint-plan-template.md`, gerar o plano e salvar em:
|
|
94
94
|
|
|
95
95
|
```
|
|
96
|
-
$
|
|
96
|
+
$ENG_DOCS/qa/sprints/sprint-plan-{sprint-slug}.md
|
|
97
97
|
```
|
|
98
98
|
|
|
99
99
|
Exibir o plano ao usuário e perguntar se há ajustes antes de salvar.
|
|
@@ -102,5 +102,5 @@ Exibir o plano ao usuário e perguntar se há ajustes antes de salvar.
|
|
|
102
102
|
|
|
103
103
|
## Output
|
|
104
104
|
|
|
105
|
-
- `$
|
|
105
|
+
- `$ENG_DOCS/qa/sprints/sprint-plan-{sprint-slug}.md` — plano de alocação da sprint
|
|
106
106
|
- Pronto para compartilhar com o time ou colar no $TASK_MANAGER
|