jarvis-ai-framework 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +416 -0
- package/LICENSE +21 -0
- package/README.md +190 -0
- package/agents/AGENTS.md +234 -0
- package/agents/README.md +309 -0
- package/agents/engineering/data/eng.data-engineer.agent.md +309 -0
- package/agents/engineering/eng.agent.md +303 -0
- package/agents/engineering/eng.bug-hunter.md +386 -0
- package/agents/engineering/eng.cybersecurity.agent.md +503 -0
- package/agents/engineering/eng.dev-code-reviewer.md +148 -0
- package/agents/engineering/eng.docs-writer.md +152 -0
- package/agents/engineering/eng.frontend.agent.md +117 -0
- package/agents/engineering/eng.rpa.agent.md +215 -0
- package/agents/engineering/eng.tech-analyst.agent.md +102 -0
- package/agents/engineering/eng.ux-designer.agent.md +193 -0
- package/agents/engineering/qa/eng.qa.cypress-specialist.md +109 -0
- package/agents/engineering/qa/eng.qa.quality-champion-task-agent.md +85 -0
- package/agents/engineering/qa/eng.qa.quality-strategist.md +111 -0
- package/agents/engineering/qa/eng.qa.test-architect.md +400 -0
- package/agents/engineering/qa/eng.qa.test-planner.md +477 -0
- package/agents/engineering/qa/eng.qa.testing-engineer.md +339 -0
- package/agents/product/prod.pm-checker.md +52 -0
- package/bin/commands/docs-publish.js +184 -0
- package/bin/commands/docs-sync.js +139 -0
- package/bin/commands/info.js +87 -0
- package/bin/commands/init.js +237 -0
- package/bin/commands/install-rtk.js +90 -0
- package/bin/commands/list.js +48 -0
- package/bin/commands/qa-signoff.js +112 -0
- package/bin/commands/whoami.js +43 -0
- package/bin/jarvis.js +159 -0
- package/bin/lib/auth/session.js +56 -0
- package/bin/lib/config/constants.js +123 -0
- package/bin/lib/config/ide-config.js +233 -0
- package/bin/lib/core/scanner.js +124 -0
- package/bin/lib/core/sync-engine.js +551 -0
- package/bin/lib/docs/fetch-file.sh +41 -0
- package/bin/lib/docs/publish-file.sh +284 -0
- package/bin/lib/docs/validate-frontmatter.js +157 -0
- package/bin/lib/env-loader.js +198 -0
- package/bin/lib/tasks/comment.js +131 -0
- package/bin/lib/utils/git-parser.js +145 -0
- package/bin/lib/utils/logger.js +104 -0
- package/bin/lib/utils/npmrc-parser.js +106 -0
- package/bin/lib/utils/paths.js +55 -0
- package/bin/lib/utils/ui.js +59 -0
- package/bin/lib/vcs/api.js +312 -0
- package/bin/lib/vcs/create-issue.js +43 -0
- package/bin/lib/vcs/create-merge.js +43 -0
- package/bin/lib/vcs/fetch-raw.js +30 -0
- package/bin/postinstall.js +41 -0
- package/members.md +25 -0
- package/package.json +55 -0
- package/rules/AGENTS.md +205 -0
- package/rules/engineering/data/data-rules.md +200 -0
- package/rules/engineering/eng-rules.md +243 -0
- package/rules/engineering/eng-security-rules.md +186 -0
- package/rules/engineering/eng.breakdown-subtasks-rules.md +585 -0
- package/rules/engineering/eng.bump-rules.md +27 -0
- package/rules/engineering/eng.docs-scraping-rules.md +64 -0
- package/rules/engineering/eng.downstream-flow-rules.md +297 -0
- package/rules/engineering/eng.integrations-rules.md +73 -0
- package/rules/engineering/eng.plan-rules.md +333 -0
- package/rules/engineering/eng.pr-rules.md +359 -0
- package/rules/engineering/eng.pre-pr-rules.md +103 -0
- package/rules/engineering/eng.start-rules.md +246 -0
- package/rules/engineering/eng.tech-spec-rules.md +968 -0
- package/rules/engineering/eng.work-rules.md +312 -0
- package/rules/engineering/frontend/eng.frontend-rules.md +147 -0
- package/rules/engineering/qa/eng.qa.cypress-standards-rules.md +259 -0
- package/rules/engineering/qa/eng.qa.exploratory-session-rules.md +137 -0
- package/rules/engineering/qa/eng.qa.quality-gate-scoring-rules.md +181 -0
- package/rules/engineering/qa/eng.qa.tech-spec-validation-criteria-rules.md +120 -0
- package/rules/engineering/rpa/eng.rpa-rules.md +230 -0
- package/rules/product/README.md +24 -0
- package/rules/product/prod-rules.md +151 -0
- package/rules/rtk-rules.md +68 -0
- package/skills/AGENTS.md +290 -0
- package/skills/SKILLS-ROADMAP.md +333 -0
- package/skills/churn-audit/SKILL.md +385 -0
- package/skills/context-detect/SKILL.md +399 -0
- package/skills/context-detect/assets/context-profile-template.md +127 -0
- package/skills/docs-central/README.md +310 -0
- package/skills/docs-central/SKILL.md +423 -0
- package/skills/docs-index/SKILL.md +377 -0
- package/skills/eng-ai-engineer/SKILL.md +296 -0
- package/skills/eng-arch-c4/SKILL.md +358 -0
- package/skills/eng-arch-c4/assets/example-code.md +189 -0
- package/skills/eng-arch-c4/assets/example-component.md +105 -0
- package/skills/eng-arch-c4/assets/example-container.md +104 -0
- package/skills/eng-arch-c4/assets/example-context.md +81 -0
- package/skills/eng-backend/SKILL.md +776 -0
- package/skills/eng-browser-extension-builder/SKILL.md +385 -0
- package/skills/eng-cybersecurity/SKILL.md +645 -0
- package/skills/eng-data-bi/SKILL.md +199 -0
- package/skills/eng-data-debug/SKILL.md +307 -0
- package/skills/eng-data-engineer/SKILL.md +256 -0
- package/skills/eng-data-onboard/SKILL.md +310 -0
- package/skills/eng-data-orchestrator/SKILL.md +426 -0
- package/skills/eng-design-system/SKILL.md +619 -0
- package/skills/eng-docs-write/SKILL.md +312 -0
- package/skills/eng-frontend/SKILL.md +913 -0
- package/skills/eng-jira-comment/SKILL.md +17 -0
- package/skills/eng-microfrontend/SKILL.md +602 -0
- package/skills/eng-ms-trace/SKILL.md +469 -0
- package/skills/eng-nestjs/SKILL.md +791 -0
- package/skills/eng-performance-engineer/SKILL.md +312 -0
- package/skills/eng-pr/SKILL.md +339 -0
- package/skills/eng-qa-a11y-audit/SKILL.md +269 -0
- package/skills/eng-qa-bug-report/SKILL.md +1088 -0
- package/skills/eng-qa-bug-report/TASK_MANAGERS.md +138 -0
- package/skills/eng-qa-cypress-e2e/SKILL.md +177 -0
- package/skills/eng-qa-dev-guide/SKILL.md +164 -0
- package/skills/eng-qa-e2e/SKILL.md +400 -0
- package/skills/eng-qa-e2e-spec-writer/SKILL.md +322 -0
- package/skills/eng-qa-exploratory/SKILL.md +188 -0
- package/skills/eng-qa-gate/SKILL.md +370 -0
- package/skills/eng-qa-gate/assets/checklist-validacao.md +291 -0
- package/skills/eng-qa-graphql-contract/SKILL.md +256 -0
- package/skills/eng-qa-quality-report/SKILL.md +412 -0
- package/skills/eng-qa-test-plan/SKILL.md +466 -0
- package/skills/eng-qa-test-plan/assets/test-coverage-template.md +92 -0
- package/skills/eng-qa-test-plan/assets/test-patterns.md +178 -0
- package/skills/eng-qa-testsprite/SKILL.md +325 -0
- package/skills/eng-qa-testsprite/references/testsprite-mcp.md +224 -0
- package/skills/eng-qa-unit-test/SKILL.md +471 -0
- package/skills/eng-rabbitmq/SKILL.md +661 -0
- package/skills/eng-scraper/SKILL.md +683 -0
- package/skills/eng-scraper-robot-builder/SKILL.md +370 -0
- package/skills/eng-security-patch/SKILL.md +378 -0
- package/skills/eng-security-triage/SKILL.md +266 -0
- package/skills/eng-task-comment/SKILL.md +60 -0
- package/skills/eng-tech-analyst/SKILL.md +529 -0
- package/skills/eng-threat-model/SKILL.md +161 -0
- package/skills/init-jarvis/SKILL.md +1304 -0
- package/skills/init-jarvis/assets/mcp-configs.md +389 -0
- package/skills/init-jarvis/assets/onboarding-checklist.md +104 -0
- package/skills/init-jarvis/assets/setup-guide.md +360 -0
- package/skills/lovable-prompt-generator/SKILL.md +304 -0
- package/skills/prod-roadmap-report/README.md +303 -0
- package/skills/prod-roadmap-report/SKILL.md +198 -0
- package/skills/prod-roadmap-report/commands/status.compiled.single.team.md +23 -0
- package/skills/prod-roadmap-report/commands/status.list.projects.md +17 -0
- package/skills/prod-roadmap-report/commands/status.memory.md +192 -0
- package/skills/prod-roadmap-report/commands/status.roadmap.preview.md +94 -0
- package/skills/prod-roadmap-report/references/detailed-guide.md +236 -0
- package/skills/prod-roadmap-report/rules/detailed-guide.md +237 -0
- package/skills/prod-roadmap-report/rules/status-report-rules.md +44 -0
- package/skills/prod-roadmap-report/templates/template-multiple-teams-compiled-status.md +53 -0
- package/skills/prod-roadmap-report/templates/template-projects-list.md +23 -0
- package/skills/prod-roadmap-report/templates/template-single-team-compiled-status.md +60 -0
- package/skills/prod-roadmap-report/templates/template-single-team-status.md +49 -0
- package/skills/prod-specs/SKILL.md +108 -0
- package/skills/prod-specs/references/prod.spec.clarify.md +176 -0
- package/skills/prod-specs/references/prod.spec.epic.md +107 -0
- package/skills/prod-specs/references/prod.spec.frd.md +135 -0
- package/skills/prod-specs/references/prod.spec.issue.md +145 -0
- package/skills/prod-specs/references/prod.spec.prd.md +118 -0
- package/skills/prod-specs/rules/prod-spec-rules.md +186 -0
- package/skills/prod-specs/templates/prod-breakdown-template.md +136 -0
- package/skills/prod-specs/templates/prod-epic-template.md +76 -0
- package/skills/prod-specs/templates/prod-frd-template.md +172 -0
- package/skills/prod-specs/templates/prod-issue-template.md +68 -0
- package/skills/prod-specs/templates/prod-prd-full-template.md +159 -0
- package/skills/prod-specs/templates/prod-prd-template.md +173 -0
- package/skills/prod-specs-update/SKILL.md +272 -0
- package/skills/report-issue/SKILL.md +156 -0
- package/taxonomy.md +270 -0
- package/templates/AGENTS.md +189 -0
- package/templates/CDD aplicado a Prompts.md +182 -0
- package/templates/ENV-template.md +187 -0
- package/templates/engineering/AGENTS-template.md +71 -0
- package/templates/engineering/ARD-template.md +193 -0
- package/templates/engineering/CONTACTS-template.md +135 -0
- package/templates/engineering/PR-template.md +40 -0
- package/templates/engineering/RFC-Playbook.md +325 -0
- package/templates/engineering/RFC-template.md +199 -0
- package/templates/engineering/architecture-template.md +277 -0
- package/templates/engineering/breakdown-subtasks-template.md +582 -0
- package/templates/engineering/c4-model-template.md +516 -0
- package/templates/engineering/data-contract-template.md +135 -0
- package/templates/engineering/data-pipeline-template.md +163 -0
- package/templates/engineering/plan-template.md +255 -0
- package/templates/engineering/qa/eng.qa.quality-gate-examples-template.md +311 -0
- package/templates/engineering/qa/eng.qa.quality-gate-report-template.md +249 -0
- package/templates/engineering/qa/qa.cypress-test-template.md +172 -0
- package/templates/engineering/qa/qa.exploratory-session-template.md +148 -0
- package/templates/engineering/qa/qa.quality-report-template.md +130 -0
- package/templates/engineering/qa/qa.release-signoff-template.md +54 -0
- package/templates/engineering/qa/qa.sprint-plan-template.md +49 -0
- package/templates/engineering/swagger-template.md +145 -0
- package/templates/engineering/tech-spec-template.md +497 -0
- package/templates/engineering/work-progress-template.md +155 -0
- package/workflows/AGENTS.md +240 -0
- package/workflows/README.md +160 -0
- package/workflows/all-tools.md +11 -0
- package/workflows/engineering/data/data.contract.md +202 -0
- package/workflows/engineering/data/data.new-pipeline.md +234 -0
- package/workflows/engineering/eng.breakdown-subtasks.md +420 -0
- package/workflows/engineering/eng.bug-audit.md +591 -0
- package/workflows/engineering/eng.build-tech-spec.md +1116 -0
- package/workflows/engineering/eng.create-ard-from-code.md +259 -0
- package/workflows/engineering/eng.create-ard.md +382 -0
- package/workflows/engineering/eng.create-rfc.md +245 -0
- package/workflows/engineering/eng.debug.md +479 -0
- package/workflows/engineering/eng.docs.md +40 -0
- package/workflows/engineering/eng.light-arch.md +84 -0
- package/workflows/engineering/eng.plan.md +213 -0
- package/workflows/engineering/eng.pr.md +466 -0
- package/workflows/engineering/eng.pre-pr.md +167 -0
- package/workflows/engineering/eng.review.md +185 -0
- package/workflows/engineering/eng.rpa.robot.md +342 -0
- package/workflows/engineering/eng.security-audit.md +312 -0
- package/workflows/engineering/eng.security-incident.md +275 -0
- package/workflows/engineering/eng.security-pipeline.md +210 -0
- package/workflows/engineering/eng.security-review.md +235 -0
- package/workflows/engineering/eng.start.md +494 -0
- package/workflows/engineering/eng.work.md +558 -0
- package/workflows/engineering/frontend/eng.frontend-component.md +190 -0
- package/workflows/engineering/frontend/eng.frontend-perf-audit.md +375 -0
- package/workflows/engineering/frontend/eng.frontend-review.md +185 -0
- package/workflows/engineering/qa/eng.qa-dev-quality-guide.md +51 -0
- package/workflows/engineering/qa/eng.qa-e2e-test-generation.md +51 -0
- package/workflows/engineering/qa/eng.qa-exploratory-session.md +60 -0
- package/workflows/engineering/qa/eng.qa-quality-gate-validation.md +202 -0
- package/workflows/engineering/qa/eng.qa-quality-report.md +83 -0
- package/workflows/engineering/qa/eng.qa-refinement-entry.md +83 -0
- package/workflows/engineering/qa/eng.qa-release-signoff.md +170 -0
- package/workflows/engineering/qa/eng.qa-sprint-planning.md +100 -0
- package/workflows/engineering/ta/eng.ta.atendimento.md +93 -0
- package/workflows/product/prod.roadmap.preview.md +110 -0
- package/workflows/product/prod.spec.breakdown.md +163 -0
- package/workflows/product/prod.spec.clarify.md +178 -0
- package/workflows/product/prod.spec.epic.md +154 -0
- package/workflows/product/prod.spec.frd.md +96 -0
- package/workflows/product/prod.spec.issue.md +145 -0
- package/workflows/product/prod.spec.md +60 -0
- package/workflows/product/prod.spec.prd.md +100 -0
- package/workflows/taxonomy.md +92 -0
- package/workflows/warm-up.md +574 -0
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Fluxo de trabalho de Engenharia para criação/iteração de RFC seguindo o RFC-Playbook
|
|
3
|
+
recommended_model: claude-sonnet-4-20250514
|
|
4
|
+
model_tier: high
|
|
5
|
+
model_justification: RFCs requerem análise de decisões técnicas complexas, trade-offs e governança de arquitetura
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Workflow de Engenharia – RFC (Request for Comments)
|
|
9
|
+
|
|
10
|
+
## Objetivo
|
|
11
|
+
|
|
12
|
+
Guiar o assistente de Engenharia (ENG) na criação, revisão ou iteração de um RFC,
|
|
13
|
+
seguindo o playbook `$IDE/templates/engineering/RFC-Playbook.md` e usando o template `$IDE/templates/engineering/RFC-template.md`.
|
|
14
|
+
|
|
15
|
+
Este workflow existe para garantir:
|
|
16
|
+
|
|
17
|
+
- Decisões técnicas claras
|
|
18
|
+
- Governança sem burocracia
|
|
19
|
+
- Rastreabilidade entre RFC ⇄ PRD ⇄ FRD ⇄ ARD
|
|
20
|
+
- Versionamento consistente (SemVer) em documentos versionados
|
|
21
|
+
|
|
22
|
+
Além disso, quando houver campo `Versão` no RFC, aplicar obrigatoriamente:
|
|
23
|
+
|
|
24
|
+
- `$IDE/rules/engineering/eng.bump-rules.md`
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## Passo 0 – Definir se é novo RFC ou iteração
|
|
29
|
+
|
|
30
|
+
0. Se o comando vier com argumentos (atalhos):
|
|
31
|
+
|
|
32
|
+
- `eng.create-rfc new <nome> [--prd <caminho-do-prd>] [--frd <caminho-do-frd>] [--ard <caminho-do-ard>]` → modo **novo RFC**
|
|
33
|
+
- `eng.create-rfc edit <nome-ou-caminho>` → modo **iteração**
|
|
34
|
+
|
|
35
|
+
1. Se os argumentos **não** estiverem claros, pergunte ao usuário:
|
|
36
|
+
- Você quer:
|
|
37
|
+
- ( ) Criar um **novo RFC**
|
|
38
|
+
- ( ) **Iterar** um RFC existente
|
|
39
|
+
|
|
40
|
+
2. Se for **iterar**:
|
|
41
|
+
|
|
42
|
+
- Peça o **caminho do arquivo** do RFC existente (preferencial) ou o **nome**.
|
|
43
|
+
- Leia o RFC atual e pergunte:
|
|
44
|
+
- qual seção precisa mudar
|
|
45
|
+
- qual o objetivo da iteração (investigação, convergência, decisão)
|
|
46
|
+
|
|
47
|
+
3. Se for **novo RFC**:
|
|
48
|
+
|
|
49
|
+
- Pergunte e confirme:
|
|
50
|
+
- `Título`
|
|
51
|
+
- `Slug` (kebab-case)
|
|
52
|
+
- `Owner`
|
|
53
|
+
- `Reviewers`
|
|
54
|
+
- Defina o `RFC-ID` automaticamente assim:
|
|
55
|
+
- Se a pasta `$DOCS_FOLDER/engineering/RFC/` existir e houver arquivos no padrão `RFC-###-*.md`, use o maior `###` + 1.
|
|
56
|
+
- Caso não exista ou não haja arquivos, iniciar em `RFC-001`.
|
|
57
|
+
- Defina:
|
|
58
|
+
- `Status` inicial = `Draft`
|
|
59
|
+
- `Caminho do arquivo` = `$DOCS_FOLDER/engineering/RFC/{RFC-ID}-{slug}.md`
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## Passo 0.5 – Versionamento do RFC (obrigatório)
|
|
64
|
+
|
|
65
|
+
Aplicar **SemVer (x.y.z)** no campo `Versão` do RFC, seguindo obrigatoriamente:
|
|
66
|
+
|
|
67
|
+
- `$IDE/rules/engineering/eng.bump-rules.md`
|
|
68
|
+
|
|
69
|
+
Regras:
|
|
70
|
+
|
|
71
|
+
1. **Novo RFC**:
|
|
72
|
+
|
|
73
|
+
- Definir `Versão: 1.0.0`.
|
|
74
|
+
|
|
75
|
+
2. **Iteração de RFC existente**:
|
|
76
|
+
|
|
77
|
+
- Ler a `Versão` atual do RFC.
|
|
78
|
+
- Perguntar ao usuário (de forma objetiva) qual foi o tipo de mudança na iteração:
|
|
79
|
+
- ( ) **Major**: mudança incompatível na decisão/escopo que invalida o entendimento anterior.
|
|
80
|
+
- ( ) **Minor**: expansão retrocompatível do conteúdo (novas opções, novos critérios, etc.).
|
|
81
|
+
- ( ) **Patch**: correções, clarificações, ajustes pequenos e/ou atualização de documentação.
|
|
82
|
+
- Atualizar o campo `Versão` incrementando apenas o componente adequado.
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## Passo 0.6 – Buscar Documentação Relacionada no Central Docs (condicional)
|
|
87
|
+
|
|
88
|
+
Se `CENTRAL_DOCS_REPO` definido no ENV.md:
|
|
89
|
+
|
|
90
|
+
1. Executar busca automática no central-docs:
|
|
91
|
+
```bash
|
|
92
|
+
jarvis docs sync --silent
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
2. Buscar documentação relacionada usando:
|
|
96
|
+
- Título/objetivo do RFC
|
|
97
|
+
- Jira ID (se disponível)
|
|
98
|
+
- Tags semânticas
|
|
99
|
+
|
|
100
|
+
3. Documentos a buscar:
|
|
101
|
+
- **PRD relacionado** (para rastreabilidade e contexto de negócio)
|
|
102
|
+
- **ARD existente** (para consistência arquitetural)
|
|
103
|
+
- **RFCs anteriores** relacionados ao tema
|
|
104
|
+
|
|
105
|
+
4. Se documentos encontrados:
|
|
106
|
+
- Carregar automaticamente como contexto
|
|
107
|
+
- Informar ao usuário: "✅ Documentos encontrados no central-docs: [lista]"
|
|
108
|
+
- Incorporar ao contexto antes do Passo 1
|
|
109
|
+
|
|
110
|
+
5. Se não encontrado:
|
|
111
|
+
- Continuar normalmente
|
|
112
|
+
- Perguntar manualmente se existem docs relacionados
|
|
113
|
+
|
|
114
|
+
> **Não bloquear o fluxo** se docs não forem encontrados.
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
## Passo 1 – Criação do RFC (Playbook: Passo 1)
|
|
119
|
+
|
|
120
|
+
1. Relembre o papel do RFC conforme o playbook:
|
|
121
|
+
|
|
122
|
+
- RFC é um container vivo de decisão técnica
|
|
123
|
+
- é aberto cedo (ainda na investigação)
|
|
124
|
+
- não define solução técnica no início
|
|
125
|
+
|
|
126
|
+
2. Preencha o `$IDE/templates/engineering/RFC-template.md` com o usuário, garantindo:
|
|
127
|
+
|
|
128
|
+
- `status: Draft`
|
|
129
|
+
- `created_at` e metadados
|
|
130
|
+
- `owner` e `reviewers`
|
|
131
|
+
|
|
132
|
+
3. Seções obrigatórias para um RFC Draft:
|
|
133
|
+
|
|
134
|
+
- Contexto e problema (sem solução)
|
|
135
|
+
- Motivação para investigação
|
|
136
|
+
- Escopo em discussão (dentro/fora)
|
|
137
|
+
- Pontos de atenção para engenharia
|
|
138
|
+
- Riscos e pendências (com owner)
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
## Passo 2 – Divulgação obrigatória (Playbook: Passo 2)
|
|
143
|
+
|
|
144
|
+
1. Gere uma mensagem padrão de divulgação (para Slack ou equivalente), contendo:
|
|
145
|
+
|
|
146
|
+
- Link/caminho do RFC
|
|
147
|
+
- Data limite para comentários (ex.: D+5)
|
|
148
|
+
- Lista de revisores
|
|
149
|
+
|
|
150
|
+
2. Regra:
|
|
151
|
+
|
|
152
|
+
- O RFC não vale se ninguém souber que ele existe.
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
## Passo 3 – Discussão assíncrona (Playbook: Passo 3)
|
|
157
|
+
|
|
158
|
+
1. Reforçar as regras:
|
|
159
|
+
|
|
160
|
+
- Comentários devem ficar no RFC (não em chats soltos)
|
|
161
|
+
- Opiniões precisam de argumento técnico
|
|
162
|
+
|
|
163
|
+
2. Se o usuário trouxer comentários de chat, orientar a registrar no RFC como resumo.
|
|
164
|
+
|
|
165
|
+
---
|
|
166
|
+
|
|
167
|
+
## Passo 4 – Preparar decisão formal (Playbook: Passo 4)
|
|
168
|
+
|
|
169
|
+
1. Quando o usuário indicar que PRD/FRD estão prontos, orientar atualização do RFC:
|
|
170
|
+
|
|
171
|
+
- `status: In Review` quando PRD/FRD existirem
|
|
172
|
+
- `status: Ready for Decision` quando for marcar agenda para decisão
|
|
173
|
+
|
|
174
|
+
2. Exigir rastreabilidade:
|
|
175
|
+
|
|
176
|
+
- `related_prd` e/ou `related_frd` preenchidos quando existirem
|
|
177
|
+
- `related_ard` preenchido quando já houver ARD
|
|
178
|
+
|
|
179
|
+
3. Preencher o checklist de revisão técnica (seção 7 do template) ao chegar em `Ready for Decision`.
|
|
180
|
+
|
|
181
|
+
---
|
|
182
|
+
|
|
183
|
+
## Passo 5 – Gate para implementação (Playbook: Passo 5)
|
|
184
|
+
|
|
185
|
+
1. Regra de ouro:
|
|
186
|
+
|
|
187
|
+
- Implementação relevante não começa sem RFC `Accepted`.
|
|
188
|
+
|
|
189
|
+
2. Ao fechar o RFC:
|
|
190
|
+
|
|
191
|
+
- preencher seção de decisão final (status final, data, decisores, condições)
|
|
192
|
+
- se `Superseded`, linkar o RFC substituto
|
|
193
|
+
|
|
194
|
+
3. Regras adicionais:
|
|
195
|
+
|
|
196
|
+
- Link do RFC vira pré-requisito do ARD
|
|
197
|
+
- PRs grandes devem referenciar a RFC
|
|
198
|
+
|
|
199
|
+
---
|
|
200
|
+
|
|
201
|
+
## Passo 6 – Entrega
|
|
202
|
+
|
|
203
|
+
Entregar:
|
|
204
|
+
|
|
205
|
+
1. Um rascunho de RFC preenchido conforme o `$IDE/templates/engineering/RFC-template.md`.
|
|
206
|
+
2. Um resumo executivo em poucas linhas:
|
|
207
|
+
|
|
208
|
+
- problema
|
|
209
|
+
- escopo
|
|
210
|
+
- riscos
|
|
211
|
+
- próximos passos
|
|
212
|
+
|
|
213
|
+
3. Uma mensagem pronta de divulgação (passo 2 do playbook).
|
|
214
|
+
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
## Passo 7 – Publicar no Central Docs (condicional)
|
|
218
|
+
|
|
219
|
+
Se `CENTRAL_DOCS_REPO` definido no ENV.md **E** o usuário aprovar o RFC:
|
|
220
|
+
|
|
221
|
+
1. Perguntar ao usuário:
|
|
222
|
+
```
|
|
223
|
+
Deseja publicar este RFC no repositório central de documentação?
|
|
224
|
+
- ( ) Sim, publicar agora
|
|
225
|
+
- ( ) Não, vou publicar depois manualmente
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
2. Se **Sim**:
|
|
229
|
+
- Extrair o slug do nome do arquivo (ex: `RFC-001-wallet-idempotencia.md` → `wallet-idempotencia`)
|
|
230
|
+
- Executar:
|
|
231
|
+
```bash
|
|
232
|
+
jarvis docs publish \
|
|
233
|
+
--file {caminho_do_rfc} \
|
|
234
|
+
--tipo rfc \
|
|
235
|
+
--feature {slug}
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
3. Informar resultado:
|
|
239
|
+
- ✅ Sucesso: "RFC publicado no central-docs. MR criado: [URL]"
|
|
240
|
+
- ❌ Erro: Exibir mensagem de erro e orientar troubleshooting
|
|
241
|
+
|
|
242
|
+
4. Se **Não**:
|
|
243
|
+
- Informar: "Para publicar depois, execute: `jarvis docs publish --file {caminho} --tipo rfc --feature {slug}`"
|
|
244
|
+
|
|
245
|
+
> **Nota**: A publicação cria um Merge Request no GitLab. O RFC só será visível no central-docs após aprovação e merge do MR.
|