@brunosps00/dev-workflow 2.1.0 → 2.3.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/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +118 -0
- package/README.md +17 -6
- package/lib/constants.js +24 -20
- package/lib/init.js +34 -0
- package/lib/instruction-health.js +38 -0
- package/lib/post-update.js +2 -1
- package/lib/validate.js +3 -1
- package/package.json +1 -1
- package/scaffold/config/routing.json +61 -23
- package/scaffold/en/agent-instructions.md +31 -135
- package/scaffold/en/commands/dw-analyze-project.md +2 -0
- package/scaffold/en/commands/dw-autopilot.md +22 -243
- package/scaffold/en/commands/dw-bugfix.md +9 -35
- package/scaffold/en/commands/dw-claude-run.md +29 -45
- package/scaffold/en/commands/dw-codex-run.md +30 -45
- package/scaffold/en/commands/dw-context-budget.md +6 -14
- package/scaffold/en/commands/dw-copilot-run.md +29 -41
- package/scaffold/en/commands/dw-generate-pr.md +2 -2
- package/scaffold/en/commands/dw-goal.md +11 -5
- package/scaffold/en/commands/dw-harness-audit.md +2 -0
- package/scaffold/en/commands/dw-help.md +8 -4
- package/scaffold/en/commands/dw-pause.md +1 -0
- package/scaffold/en/commands/dw-plan.md +14 -7
- package/scaffold/en/commands/dw-qa.md +2 -0
- package/scaffold/en/commands/dw-report.md +169 -0
- package/scaffold/en/commands/dw-resume.md +5 -11
- package/scaffold/en/commands/dw-review.md +4 -3
- package/scaffold/en/commands/dw-run.md +19 -165
- package/scaffold/en/commands/dw-skill-health.md +7 -0
- package/scaffold/en/commands/dw-update.md +18 -4
- package/scaffold/en/commands/dw-worktree.md +100 -0
- package/scaffold/en/references/command-routing.md +53 -0
- package/scaffold/en/references/execution-contract.md +55 -0
- package/scaffold/en/templates/frontend-quality-template.md +43 -0
- package/scaffold/en/templates/task-template.md +20 -40
- package/scaffold/en/templates/tasks-template.md +9 -6
- package/scaffold/en/templates/techspec-template.md +4 -0
- package/scaffold/pt-br/agent-instructions.md +31 -135
- package/scaffold/pt-br/commands/dw-analyze-project.md +2 -0
- package/scaffold/pt-br/commands/dw-autopilot.md +22 -243
- package/scaffold/pt-br/commands/dw-bugfix.md +9 -35
- package/scaffold/pt-br/commands/dw-claude-run.md +29 -46
- package/scaffold/pt-br/commands/dw-codex-run.md +30 -45
- package/scaffold/pt-br/commands/dw-context-budget.md +6 -14
- package/scaffold/pt-br/commands/dw-copilot-run.md +29 -43
- package/scaffold/pt-br/commands/dw-generate-pr.md +2 -2
- package/scaffold/pt-br/commands/dw-goal.md +11 -5
- package/scaffold/pt-br/commands/dw-harness-audit.md +2 -0
- package/scaffold/pt-br/commands/dw-help.md +8 -4
- package/scaffold/pt-br/commands/dw-pause.md +1 -0
- package/scaffold/pt-br/commands/dw-plan.md +14 -7
- package/scaffold/pt-br/commands/dw-qa.md +2 -0
- package/scaffold/pt-br/commands/dw-report.md +169 -0
- package/scaffold/pt-br/commands/dw-resume.md +7 -11
- package/scaffold/pt-br/commands/dw-review.md +4 -3
- package/scaffold/pt-br/commands/dw-run.md +19 -165
- package/scaffold/pt-br/commands/dw-skill-health.md +7 -0
- package/scaffold/pt-br/commands/dw-update.md +18 -4
- package/scaffold/pt-br/commands/dw-worktree.md +100 -0
- package/scaffold/pt-br/references/command-routing.md +53 -0
- package/scaffold/pt-br/references/execution-contract.md +55 -0
- package/scaffold/pt-br/templates/frontend-quality-template.md +43 -0
- package/scaffold/pt-br/templates/task-template.md +20 -40
- package/scaffold/pt-br/templates/tasks-template.md +9 -6
- package/scaffold/pt-br/templates/techspec-template.md +4 -0
- package/scaffold/scripts/hooks/git-guardrails.mjs +1 -0
- package/scaffold/scripts/lib/workflow-contract.mjs +101 -0
- package/scaffold/scripts/lib/worktree-gc.mjs +460 -0
- package/scaffold/skill-registry.json +23 -23
- package/scaffold/skills/dw-cli-run/SKILL.md +33 -208
- package/scaffold/skills/dw-cli-run/references/dispatch-tuning.md +14 -72
- package/scaffold/skills/dw-codebase-intel/SKILL.md +5 -39
- package/scaffold/skills/dw-codebase-intel/agents/intel-updater.md +1 -1
- package/scaffold/skills/dw-codebase-intel/references/agents-detail.md +7 -0
- package/scaffold/skills/dw-codebase-intel/references/files-in-dw-intel-detail.md +16 -0
- package/scaffold/skills/dw-codebase-intel/references/how-dw-intel-reads-this-detail.md +12 -0
- package/scaffold/skills/dw-codebase-intel/references/how-to-compose-the-typical-flow-detail.md +11 -0
- package/scaffold/skills/dw-council/SKILL.md +2 -17
- package/scaffold/skills/dw-council/references/integration-with-other-dw-commands-detail.md +7 -0
- package/scaffold/skills/dw-council/references/phase-2-tensions-and-rebuttals-detail.md +15 -0
- package/scaffold/skills/dw-domain-modeling/SKILL.md +1 -1
- package/scaffold/skills/dw-execute-phase/SKILL.md +12 -32
- package/scaffold/skills/dw-execute-phase/agents/executor.md +15 -252
- package/scaffold/skills/dw-execute-phase/agents/plan-checker.md +4 -207
- package/scaffold/skills/dw-execute-phase/references/atomic-commits.md +8 -18
- package/scaffold/skills/dw-execute-phase/references/de-sloppify-pass-optional-cleanup-task-detail.md +12 -0
- package/scaffold/skills/dw-execute-phase/references/deviation-rules-during-execution-detail.md +8 -0
- package/scaffold/skills/dw-execute-phase/references/how-the-two-agents-compose-detail.md +7 -0
- package/scaffold/skills/dw-execute-phase/references/plan-verification.md +9 -155
- package/scaffold/skills/dw-execute-phase/references/wave-coordination.md +6 -97
- package/scaffold/skills/dw-git-discipline/SKILL.md +2 -2
- package/scaffold/skills/dw-grilling/SKILL.md +1 -1
- package/scaffold/skills/dw-incident-response/SKILL.md +1 -64
- package/scaffold/skills/dw-incident-response/references/the-five-phases-detail.md +66 -0
- package/scaffold/skills/dw-llm-eval/SKILL.md +5 -53
- package/scaffold/skills/dw-llm-eval/references/agent-tool-use-evaluation-detail.md +23 -0
- package/scaffold/skills/dw-llm-eval/references/anti-patterns-will-block-in-dw-review-code-only-detail.md +9 -0
- package/scaffold/skills/dw-llm-eval/references/consistency-run-to-run-stability-detail.md +10 -0
- package/scaffold/skills/dw-llm-eval/references/integration-with-dev-workflow-commands-detail.md +6 -0
- package/scaffold/skills/dw-llm-eval/references/the-oracle-ladder-detail.md +15 -0
- package/scaffold/skills/dw-memory/SKILL.md +4 -50
- package/scaffold/skills/dw-memory/references/context-budget.md +8 -56
- package/scaffold/skills/dw-memory/references/promotion-decision-test-detail.md +30 -0
- package/scaffold/skills/dw-minimalism/SKILL.md +4 -5
- package/scaffold/skills/dw-review-rigor/SKILL.md +1 -54
- package/scaffold/skills/dw-review-rigor/references/the-five-rules-detail.md +56 -0
- package/scaffold/skills/dw-simplification/SKILL.md +2 -55
- package/scaffold/skills/dw-simplification/references/pattern-recognition-detail.md +11 -0
- package/scaffold/skills/dw-simplification/references/the-five-rules-detail.md +48 -0
- package/scaffold/skills/dw-source-grounding/SKILL.md +1 -56
- package/scaffold/skills/dw-source-grounding/references/the-protocol-detect-fetch-implement-cite-detail.md +58 -0
- package/scaffold/skills/dw-testing-discipline/SKILL.md +25 -177
- package/scaffold/skills/dw-testing-discipline/references/agent-guardrails.md +9 -167
- package/scaffold/skills/dw-testing-discipline/references/core-rules.md +3 -3
- package/scaffold/skills/dw-testing-discipline/references/mutation-testing.md +19 -0
- package/scaffold/skills/dw-testing-discipline/references/patterns.md +3 -12
- package/scaffold/skills/dw-ui-discipline/SKILL.md +2 -59
- package/scaffold/skills/dw-ui-discipline/references/frontend-engineering.md +46 -0
- package/scaffold/skills/dw-ui-discipline/references/the-four-grounding-questions-detail.md +61 -0
- package/scaffold/skills/dw-verify/SKILL.md +26 -148
- package/scaffold/skills/dw-verify/references/verification-discovery-and-attribution.md +2 -2
- package/scaffold/skills/humanizer/SKILL.md +2 -1
- package/scaffold/skills/security-review/SKILL.md +3 -183
- package/scaffold/skills/security-review/references/do-not-flag-detail.md +49 -0
- package/scaffold/skills/security-review/references/quick-patterns-reference-detail.md +56 -0
- package/scaffold/skills/security-review/references/review-process-detail.md +84 -0
- package/scaffold/skills/vercel-react-best-practices/SKILL.md +1 -90
- package/scaffold/skills/vercel-react-best-practices/references/quick-reference-detail.md +92 -0
|
@@ -1,257 +1,36 @@
|
|
|
1
1
|
<system_instructions>
|
|
2
|
-
|
|
2
|
+
# Orquestrador de implementação contínua
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
2. **Invocação de execução:** retoma de `autopilot-state.json`, roda `/dw-goal --from-autopilot <prd-slug>`, depois commit e gate de PR.
|
|
4
|
+
`/dw-autopilot "<wish>"` planeja e conduz trabalho aprovado até implementação e validação. `/dw-autopilot --from-prd <slug>` parte de `.dw/spec/<slug>/prd.md`; ausência bloqueia informando o caminho. `/dw-autopilot` sem descrição retoma estado salvo. Não imponha segunda invocação após aprovar tasks. Pedido somente de plano ou modo Plan ativo da plataforma termina no artefato de planejamento.
|
|
6
5
|
|
|
7
|
-
|
|
8
|
-
<critical>A segunda invocação DEVE retomar do estado salvo e delegar Run → Review → QA/Fix → Review para `/dw-goal --from-autopilot <prd-slug>`.</critical>
|
|
9
|
-
<critical>Cada etapa que invoca um comando `/dw-*` DEVE seguir as instruções completas de `.dw/commands/`. Leia e execute o comando inteiro, não uma versão resumida.</critical>
|
|
6
|
+
## Planejamento
|
|
10
7
|
|
|
11
|
-
|
|
12
|
-
-
|
|
13
|
-
|
|
14
|
-
-
|
|
15
|
-
- NÃO use para bugfix cirúrgico; use `/dw-bugfix`.
|
|
16
|
-
- NÃO use quando o usuário quer controle manual entre cada fase; use comandos individuais.
|
|
8
|
+
1. Inspecione código/regras relevantes e decisões existentes. Use `.dw/intel/` quando útil; pesquise tecnologias/domínios/integrações desconhecidos. Brainstorm só para escolhas pendentes, sem entrevista obrigatória de três opções.
|
|
9
|
+
2. Invoque `/dw-plan` ou estágios relevantes para produzir PRD, TechSpec, tasks e tasks-validation.md. Reutilize respostas e handoffs alinhados. Pergunte lacunas materiais pela ferramenta de entrevista disponível; não repita fatos descobertos.
|
|
10
|
+
3. Na quebra apresente desenvolvimento local/cruzado, modelo/esforço concretos e agentes relevantes por complexidade. Siga `.dw/references/execution-contract.md`, escreva/valide execution-plan.json e obtenha aprovação da mesma matriz de tasks/escolhas. Respeite aprovações de estágios existentes sem repeti-las.
|
|
11
|
+
4. Salve `autopilot-state.json` com `status: plan_complete`, `current_step: goal`, artefatos, caminho das escolhas aprovadas e `next_command: /dw-goal --from-autopilot <slug>`. Em pedido de implementação continue imediatamente. Em pedido somente de plano reporte-o e preserve o ponto de retomada.
|
|
17
12
|
|
|
18
|
-
##
|
|
19
|
-
**Antecessor:** desejo do usuário | **Sucessor:** `/dw-goal`, `/dw-commit`, `/dw-generate-pr`
|
|
13
|
+
## Execução e entrega
|
|
20
14
|
|
|
21
|
-
|
|
15
|
+
Arme `/dw-report` uma vez (idempotente, pule quando `DW_REPORT_AUTO=off`). Invoque `/dw-goal --from-autopilot <slug>` para conduzir `/dw-run` → `/dw-review` completo → `/dw-qa` aplicável → `/dw-qa --fix` para bugs Open → review pós-QA quando edições ou novos achados invalidarem review anterior. Não substitua review completo por coverage-only. Runners externos retornam ao parent para correções e continuidade, sem encerrar o goal.
|
|
22
16
|
|
|
23
|
-
|
|
24
|
-
|------------------|---------|
|
|
25
|
-
| `dw-memory` | SEMPRE — preserva decisões entre planejamento, goal de execução, QA, review e PR. |
|
|
26
|
-
| `dw-verify` | SEMPRE — invocado por gates e comandos downstream antes de claims de aprovação/commit/PR. |
|
|
27
|
-
| `/dw-goal` | SEMPRE na segunda invocação — objetivo durável de execução/qualidade. |
|
|
17
|
+
Use `dw-memory` para decisões duráveis e `dw-verify` para evidência válida. Security Gate continua obrigatório quando aplicável: `/dw-secure-audit` produz `.dw/secure-audit/audit-summary.md`; evidência ausente/inválida é refeita e achados bloqueantes corrigidos. SECRET findings sempre bloqueiam (sem escape por ADR). Reutilize scan válido em outro checkpoint.
|
|
28
18
|
|
|
29
|
-
|
|
19
|
+
Goal conclui apenas com critérios atendidos, artefatos exigidos de review/QA e checks válidos, sem achado bloqueante pendente. Para `prd-bugfix-*` escalado, localize `.dw/bugfixes/*/escalated.md` original, produza SUMMARY.md ausente com evidências e feche o índice.
|
|
30
20
|
|
|
31
|
-
|
|
32
|
-
|----------|-----------|---------|
|
|
33
|
-
| `{{WISH}}` | Descrição do que o usuário quer construir no modo padrão. | `"preferencias de notificacao push"` |
|
|
34
|
-
| `{{PRD_SLUG}}` | Slug de PRD existente quando `--from-prd` é usado. | `prd-bugfix-stripe-webhook-retry` |
|
|
35
|
-
| `{{MODE}}` | Flag opcional de invocação. | `--from-prd <slug>` |
|
|
21
|
+
Inspecione commits com escopo e bookkeeping restante; `/dw-commit` faz commit final autorizado quando necessário. Não crie commits vazios nem exija commit extra para trabalho já commitado. Prepare branch/worktree validado e resumo de entrega. Merge, push e publicação de PR seguem só autorização existente. Se faltar autorização final, apresente resultado concreto e peça apenas essa ação; não repita permissão já concedida.
|
|
36
22
|
|
|
37
|
-
##
|
|
23
|
+
## Estado durável
|
|
38
24
|
|
|
39
|
-
|
|
40
|
-
|-----------|---------------|
|
|
41
|
-
| `/dw-autopilot "<wish>"` | Invocação de planejamento do zero. Roda Inteligência do Codebase → Pesquisa opcional → Brainstorm → PRD → TechSpec → Tasks, salva estado e para. |
|
|
42
|
-
| `/dw-autopilot --from-prd <slug>` | Invocação de planejamento a partir de PRD existente. Começa em aprovação do PRD, depois TechSpec → Tasks, salva estado e para. |
|
|
43
|
-
| `/dw-autopilot` em PRD com `autopilot-state.json status=plan_complete` | Invocação de execução. Roda `/dw-goal --from-autopilot <slug>`, depois commit e gate de PR. |
|
|
25
|
+
Preserve campos de `autopilot-state.json`: mode, wish, prd_path, from_prd_slug, current_step, completed_steps, skipped_steps, skip_reasons, gates_passed, step_artifacts, goal_slug, next_command, started_at, last_updated. Acrescente caminhos `execution_plan` e `execution_state`. Registre evidência, não só existência de arquivo, antes de concluir etapa.
|
|
44
26
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
4. **Gate de PR** depois que o goal de execução e commit completarem.
|
|
53
|
-
|
|
54
|
-
Entre estes pontos, execute automaticamente respeitando perguntas bloqueantes exigidas pelo comando chamado.
|
|
55
|
-
|
|
56
|
-
## Retomada de Sessão
|
|
57
|
-
|
|
58
|
-
Se este comando for re-invocado no mesmo PRD:
|
|
59
|
-
|
|
60
|
-
<critical>Leia `.dw/spec/<prd-slug>/autopilot-state.json` primeiro. Se `status` for `plan_complete`, não repita planejamento. Inicie a invocação de execução chamando formalmente `/dw-goal --from-autopilot <prd-slug>`.</critical>
|
|
61
|
-
|
|
62
|
-
Significados de estado:
|
|
63
|
-
|
|
64
|
-
| Status | Ação |
|
|
65
|
-
|--------|------|
|
|
66
|
-
| estado ausente | Iniciar invocação de planejamento normal. |
|
|
67
|
-
| `planning` | Retomar de `current_step`, respeitando etapas completas/puladas. |
|
|
68
|
-
| `plan_complete` | Iniciar invocação de execução via `/dw-goal --from-autopilot <prd-slug>`. |
|
|
69
|
-
| `goal_active` | Continuar `/dw-goal resume` ou `/dw-goal --from-autopilot <prd-slug>` conforme `.dw/goals/autopilot-<prd-slug>/status.json`. |
|
|
70
|
-
| `goal_complete` | Continuar para commit e gate de PR. |
|
|
71
|
-
| `completed` | Reportar que já foi concluído e mostrar resumo de PR/commit se disponível. |
|
|
72
|
-
|
|
73
|
-
## Invocação de Planejamento
|
|
74
|
-
|
|
75
|
-
### Etapa 0: Resolver modo de invocação
|
|
76
|
-
|
|
77
|
-
1. Se `--from-prd <slug>` aparece:
|
|
78
|
-
- Resolva para `.dw/spec/<slug>/`.
|
|
79
|
-
- Verifique que `prd.md` existe; senão PARE com: `Alvo de --from-prd .dw/spec/<slug>/prd.md nao encontrado. Rode /dw-plan prd ou corrija o slug.`
|
|
80
|
-
- Crie ou atualize `autopilot-state.json` com `mode: "from-prd"`, `status: "planning"`, `skipped_steps: [1,2,3,4]`, e `skip_reasons["1-4"] = "from-prd-mode"`.
|
|
81
|
-
- Pule para aprovação do PRD usando o PRD existente.
|
|
82
|
-
2. Caso contrário:
|
|
83
|
-
- Crie ou atualize `autopilot-state.json` com `mode: "autopilot"`, `status: "planning"`, wish original e `current_step: 1`.
|
|
84
|
-
|
|
85
|
-
### Etapa 1: Inteligência do Codebase
|
|
86
|
-
|
|
87
|
-
<critical>Se `.dw/intel/` existir, consulte via `/dw-intel` antes de planejar. Caia para `.dw/rules/` e grep direto se ausente.</critical>
|
|
88
|
-
|
|
89
|
-
- Identifique stack, padrões existentes, features relacionadas e restrições do projeto.
|
|
90
|
-
- Se `.dw/intel/` estiver ausente, sugira `/dw-intel --build` para contexto futuro mais rico, mas continue com `.dw/rules/` e inspeção direta.
|
|
91
|
-
|
|
92
|
-
### Etapa 2: Pesquisa (Condicional)
|
|
93
|
-
|
|
94
|
-
Rode `/dw-brainstorm --research` quando a feature envolver tecnologia nova, domínio desconhecido, APIs externas, regulação ou arquitetura de alto impacto. Caso contrário, pule e registre o motivo em `skip_reasons`.
|
|
95
|
-
|
|
96
|
-
### Etapa 3: Brainstorm (Interativo)
|
|
97
|
-
|
|
98
|
-
Rode `/dw-brainstorm` com o contexto acumulado. Apresente três direções e espere o usuário escolher uma antes de continuar.
|
|
99
|
-
|
|
100
|
-
### Etapa 4: PRD
|
|
101
|
-
|
|
102
|
-
Rode `/dw-plan prd` usando findings de brainstorm/research.
|
|
103
|
-
|
|
104
|
-
<critical>O estágio PRD deve usar a ferramenta de entrevista estruturada quando disponível. Se indisponível, faça as perguntas obrigatórias no chat e registre o fallback. O usuário deve responder; não infira respostas.</critical>
|
|
105
|
-
|
|
106
|
-
Depois que `prd.md` existir, apresente resumo do PRD e aguarde aprovação explícita. Se o usuário pedir edits, atualize e reapresente.
|
|
107
|
-
|
|
108
|
-
### Etapa 5: TechSpec
|
|
109
|
-
|
|
110
|
-
Rode `/dw-plan techspec` a partir do PRD aprovado.
|
|
111
|
-
|
|
112
|
-
<critical>O estágio TechSpec deve usar a ferramenta de entrevista estruturada quando disponível. Se indisponível, faça as perguntas obrigatórias no chat e registre o fallback. O usuário deve responder; não infira respostas.</critical>
|
|
113
|
-
|
|
114
|
-
Depois que `techspec.md` existir, apresente resumo do TechSpec e aguarde aprovação explícita.
|
|
115
|
-
|
|
116
|
-
### Etapa 6: Tasks
|
|
117
|
-
|
|
118
|
-
Rode `/dw-plan tasks` a partir de PRD + TechSpec. Verifique:
|
|
119
|
-
- `tasks.md` existe.
|
|
120
|
-
- arquivos per-task existem.
|
|
121
|
-
- `tasks-validation.md` existe e passou ou tem override explícito do usuário.
|
|
122
|
-
|
|
123
|
-
### Etapa 7: Aprovação das Tasks e Parada Obrigatória
|
|
124
|
-
|
|
125
|
-
Apresente resumo das tasks, dependências e esforço total. Aguarde aprovação explícita.
|
|
126
|
-
|
|
127
|
-
Após aprovação:
|
|
128
|
-
|
|
129
|
-
1. Salve `.dw/spec/<prd-slug>/autopilot-state.json` com:
|
|
130
|
-
|
|
131
|
-
```json
|
|
132
|
-
{
|
|
133
|
-
"status": "plan_complete",
|
|
134
|
-
"current_step": "goal",
|
|
135
|
-
"next_command": "/dw-goal --from-autopilot <prd-slug>"
|
|
136
|
-
}
|
|
137
|
-
```
|
|
138
|
-
|
|
139
|
-
2. Inclua `completed_steps` para todas as etapas de planejamento completas e `step_artifacts` para `prd.md`, `techspec.md`, `tasks.md`, arquivos per-task e `tasks-validation.md`.
|
|
140
|
-
3. PARE e diga ao usuário que a fase de planejamento está completa. Não rode implementação nesta invocação.
|
|
141
|
-
|
|
142
|
-
## Invocação de Execução
|
|
143
|
-
|
|
144
|
-
### Etapa 8: Goal Durável de Execução
|
|
145
|
-
|
|
146
|
-
Quando `autopilot-state.json status=plan_complete`, invoque formalmente:
|
|
147
|
-
|
|
148
|
-
```text
|
|
149
|
-
/dw-goal --from-autopilot <prd-slug>
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
O goal é dono desta sequência:
|
|
153
|
-
|
|
154
|
-
1. `/dw-run <prd-path>`
|
|
155
|
-
2. `/dw-review <prd-path>` (review completo: cobertura, qualidade, convenções, constitution, verify)
|
|
156
|
-
3. `/dw-qa <prd-path>`
|
|
157
|
-
4. `/dw-qa --fix <prd-path>` se QA encontrou bugs Open
|
|
158
|
-
5. `/dw-review <prd-path>` novamente após QA/fixes
|
|
159
|
-
6. **Security Gate** — o `/dw-review` pós-QA (passo 5) aciona o `/dw-secure-audit`, produzindo um `.dw/secure-audit/audit-summary.md` fresco. Este passo **garante** que o verdict é APROVADO: se ausente/desatualizado/REPROVADO, rode `/dw-secure-audit <prd-path>` standalone, depois volte pro `/dw-bugfix` por finding e re-cheque. Findings SECRET sempre bloqueiam (sem escape de ADR). Não force um segundo scan completo quando já existe um summary APROVADO fresco.
|
|
160
|
-
|
|
161
|
-
<critical>Não substitua os reviews do goal por `/dw-review --coverage-only`. O goal de qualidade do autopilot exige `/dw-review` completo antes do QA e depois dos fixes de QA.</critical>
|
|
162
|
-
|
|
163
|
-
Depois que `/dw-goal` completar, verifique que `.dw/goals/autopilot-<prd-slug>/status.json` tem `status: "complete"`, então defina `autopilot-state.json status: "goal_complete"`.
|
|
164
|
-
|
|
165
|
-
### Etapa 9: Fechar Loop de Bugfix (Condicional)
|
|
166
|
-
|
|
167
|
-
Se `mode == "from-prd"` e o slug do PRD casar com `prd-bugfix-*`, feche o índice de bugfix antes do commit:
|
|
168
|
-
- Encontre `.dw/bugfixes/*/escalated.md` que referência o slug do PRD.
|
|
169
|
-
- Se `SUMMARY.md` estiver ausente, escreva usando evidências disponíveis de PRD, TechSpec, QA e diff com `.dw/templates/bugfix-summary-template.md`.
|
|
170
|
-
- Nunca fabrique evidência de verificação.
|
|
171
|
-
- Registre artefatos em `autopilot-state.json`.
|
|
172
|
-
|
|
173
|
-
### Etapa 10: Auditoria Pre-Commit
|
|
174
|
-
|
|
175
|
-
Antes de `/dw-commit`, verifique:
|
|
176
|
-
- `.dw/goals/autopilot-<prd-slug>/status.json` está completo.
|
|
177
|
-
- `<prd-path>/QA/review-consolidated.md` existe a partir do review final pós-QA.
|
|
178
|
-
- `<prd-path>/QA/qa-report.md` e `<prd-path>/QA/bugs.md` existem.
|
|
179
|
-
- **Security Gate passou:** `.dw/secure-audit/audit-summary.md` existe, está fresco (pós-última-edição) e status APROVADO. Se ausente/desatualizado/REPROVADO → PARE (não commite).
|
|
180
|
-
- `autopilot-state.json` registra artefatos de planejamento e o goal completo.
|
|
181
|
-
|
|
182
|
-
Se algo estiver faltando, PARE e re-execute o comando formal ausente. Não faça commit parcial.
|
|
183
|
-
|
|
184
|
-
### Etapa 11: Commit
|
|
185
|
-
|
|
186
|
-
Rode `/dw-commit` automaticamente. Não aguarde aprovação depois que o goal estiver completo.
|
|
187
|
-
|
|
188
|
-
### Etapa 12: Gate de Pull Request
|
|
189
|
-
|
|
190
|
-
Pergunte: **"Commits realizados. Deseja gerar o Pull Request?"**
|
|
191
|
-
|
|
192
|
-
- SIM: rode `/dw-generate-pr`.
|
|
193
|
-
- NÃO: informe que os commits estão prontos e o PR pode ser gerado depois.
|
|
194
|
-
|
|
195
|
-
Marque `autopilot-state.json status: "completed"` após commit, e inclua link do PR se gerado.
|
|
196
|
-
|
|
197
|
-
## Persistencia de Estado
|
|
198
|
-
|
|
199
|
-
`autopilot-state.json` deve incluir:
|
|
200
|
-
|
|
201
|
-
```json
|
|
202
|
-
{
|
|
203
|
-
"mode": "autopilot",
|
|
204
|
-
"status": "planning",
|
|
205
|
-
"wish": "descricao original do usuario",
|
|
206
|
-
"prd_path": ".dw/spec/prd-name",
|
|
207
|
-
"from_prd_slug": null,
|
|
208
|
-
"current_step": 1,
|
|
209
|
-
"completed_steps": [],
|
|
210
|
-
"skipped_steps": [],
|
|
211
|
-
"skip_reasons": {},
|
|
212
|
-
"gates_passed": [],
|
|
213
|
-
"step_artifacts": {},
|
|
214
|
-
"goal_slug": null,
|
|
215
|
-
"next_command": null,
|
|
216
|
-
"started_at": "2026-05-20T00:00:00Z",
|
|
217
|
-
"last_updated": "2026-05-20T00:00:00Z"
|
|
218
|
-
}
|
|
219
|
-
```
|
|
220
|
-
|
|
221
|
-
Atualize estado depois de cada etapa completa ou pulada. Uma etapa só está completa depois que artefatos obrigatórios existem.
|
|
222
|
-
|
|
223
|
-
## Formato de Progresso
|
|
224
|
-
|
|
225
|
-
Reporte progresso depois de cada etapa:
|
|
226
|
-
|
|
227
|
-
```text
|
|
228
|
-
=== AUTOPILOT =====================================
|
|
229
|
-
OK [1] Inteligencia do Codebase
|
|
230
|
-
OK [2] Pesquisa (pulada — dominio conhecido)
|
|
231
|
-
OK [3] Brainstorm
|
|
232
|
-
OK [4] PRD
|
|
233
|
-
OK [5] TechSpec
|
|
234
|
-
OK [6] Tasks
|
|
235
|
-
STOP [PLAN COMPLETE] Proximo: /dw-goal --from-autopilot prd-name
|
|
236
|
-
===================================================
|
|
237
|
-
```
|
|
238
|
-
|
|
239
|
-
Durante a invocação de execução:
|
|
240
|
-
|
|
241
|
-
```text
|
|
242
|
-
=== AUTOPILOT =====================================
|
|
243
|
-
OK [PLAN] Ja completo
|
|
244
|
-
RUN [GOAL] /dw-goal --from-autopilot prd-name
|
|
245
|
-
NEXT [COMMIT] apos goal status=complete
|
|
246
|
-
===================================================
|
|
247
|
-
```
|
|
248
|
-
|
|
249
|
-
## Anti-patterns
|
|
250
|
-
|
|
251
|
-
- Não continue para implementação durante a primeira invocação.
|
|
252
|
-
- Não pule `/dw-goal` durante a segunda invocação.
|
|
253
|
-
- Não substitua `/dw-review` completo por review mais estreito no goal de execução.
|
|
254
|
-
- Não marque estado completo a partir de validação manual.
|
|
255
|
-
- Não reexecute planejamento quando `status=plan_complete`; retome o goal.
|
|
27
|
+
| status | Ação de retomada |
|
|
28
|
+
|---|---|
|
|
29
|
+
| ausente / planning | Continue apenas planejamento pendente; preserve decisões resolvidas. |
|
|
30
|
+
| plan_complete | Execute plano aprovado por `/dw-goal --from-autopilot <slug>` quando implementação for solicitada. |
|
|
31
|
+
| goal_active | `/dw-goal resume` com estado salvo de task/executor. |
|
|
32
|
+
| goal_complete | Prepare entrega e ações restantes autorizadas de commit/publicação. |
|
|
33
|
+
| completed | Reporte entrega validada e links/branch; publicação pode aguardar autorização. |
|
|
256
34
|
|
|
35
|
+
Atualize estado após cada checkpoint. Reporte task atual, evidência e restante de forma compacta. Preserve checkpoints em pausa ou bloqueio real; corrija falhas recuperáveis no escopo e continue.
|
|
257
36
|
</system_instructions>
|
|
@@ -247,51 +247,25 @@
|
|
|
247
247
|
| Pergunta | Se SIM |
|
|
248
248
|
|----------|--------|
|
|
249
249
|
| Precisa de migration/alteração de schema? | Redirecionar para PRD |
|
|
250
|
-
|
|
|
250
|
+
| Escopo de arquivos maior? | Reavalie organização e risco real; sem parada automática |
|
|
251
251
|
| Requer novo endpoint? | Redirecionar para PRD |
|
|
252
252
|
| Muda contrato de API existente? | Redirecionar para PRD |
|
|
253
253
|
| Afeta múltiplos projetos? | Redirecionar para PRD |
|
|
254
|
-
| Estimativa
|
|
254
|
+
| Estimativa maior de implementação? | Reorganize/checkpoint dentro do escopo aprovado |
|
|
255
255
|
|
|
256
|
-
### 5.0. Safety Valve (
|
|
256
|
+
### 5.0. Safety Valve (antes da implementação)
|
|
257
257
|
|
|
258
|
-
|
|
259
|
-
ANTES de desenhar a lista numerada do passo 5, esboce inline os passos que pretende escrever.
|
|
260
|
-
Se esse esboço revelar **mais de 5 tasks numeradas distintas**, OU **qualquer dependência cross-file que obrigue ordem específica de execução**, OU **uma task que requeira rodar migration / refactor / novo endpoint / alteração de contrato de API**, então o escopo do bugfix foi SUBESTIMADO e você DEVE escalar.
|
|
261
|
-
</critical>
|
|
262
|
-
|
|
263
|
-
**Por que isso existe:** a triagem do passo 0 pega problemas de escopo a partir da descrição do sintoma. O checkpoint 4.1 pega depois da análise de causa raiz. Esta válvula pega o caso que sobra — quando o fix em si, uma vez listado, revela mais complexidade do que triagem e RCA previram. NÃO existe flag de bypass. Escalar é o desfecho correto.
|
|
264
|
-
|
|
265
|
-
**Procedimento de escalação:**
|
|
266
|
-
|
|
267
|
-
1. Aloque `NNN` para `.dw/bugfixes/NNN-<slug>/`. Escreva `TASK.md` com a triagem, clarificações, causa raiz e plano que seria executado.
|
|
268
|
-
2. Crie `.dw/spec/prd-bugfix-<slug>/` e escreva `prd.md` lá (use `.dw/templates/bugfix-template.md`). Este é o path que `/dw-plan` espera.
|
|
269
|
-
3. Escreva `.dw/bugfixes/NNN-<slug>/escalated.md` com: `Escalated to /dw-plan on <YYYY-MM-DD> — reason: <qual critério da válvula disparou> → see .dw/spec/prd-bugfix-<slug>/`.
|
|
270
|
-
4. Reporte ao usuário:
|
|
271
|
-
|
|
272
|
-
```
|
|
273
|
-
## Escopo maior que bugfix
|
|
274
|
-
|
|
275
|
-
Listando o fix produziu [N] tasks / [deps cross-file] / [tipo de mudança proibida].
|
|
276
|
-
Pelo safety valve, isso não é mais um bugfix cirúrgico.
|
|
277
|
-
|
|
278
|
-
Índice do bugfix preservado em `.dw/bugfixes/NNN-<slug>/{TASK.md, escalated.md}`.
|
|
279
|
-
PRD criado em `.dw/spec/prd-bugfix-<slug>/prd.md`.
|
|
280
|
-
|
|
281
|
-
Próximo — escolha um:
|
|
282
|
-
- Cadeia manual: `/dw-plan techspec prd-bugfix-<slug>` → `/dw-plan tasks prd-bugfix-<slug>` → `/dw-run` → `/dw-qa` → `/dw-review` → `/dw-commit` → `/dw-generate-pr`.
|
|
283
|
-
- Entregar pro autopilot: `/dw-autopilot --from-prd prd-bugfix-<slug>` — roda a fase de planejamento a partir do PRD existente, para depois de Tasks, e uma invocacao posterior retoma via `/dw-goal`.
|
|
284
|
-
```
|
|
258
|
+
Inspecione o fix proposto por mudanças materiais de escopo ou arquitetura. Quantidade de tasks/arquivos, dependências de ordem e estimativas maiores sinalizam organização, não bloqueio automático. Refactor necessário para corrigir comportamento aprovado pode permanecer no escopo. Contrato novo de produto, migration sensível ou decisão arquitetural pendente exige proposta concreta antes de implementar trabalho dependente.
|
|
285
259
|
|
|
286
|
-
|
|
260
|
+
Quando precisar de plano estruturado, preserve `.dw/bugfixes/NNN-<slug>/TASK.md`, crie `.dw/spec/prd-bugfix-<slug>/prd.md` pelo template de bugfix e registre referência em `escalated.md`. Continue por `/dw-plan` ou `/dw-autopilot --from-prd prd-bugfix-<slug>` conforme intenção existente. A quebra propõe executor/modelo/agentes; após aprovação continue na mesma invocação. Não peça autorização novamente para organizar fix já autorizado. Pedido somente de análise termina no relatório.
|
|
287
261
|
|
|
288
|
-
|
|
262
|
+
Sem nova decisão material nem necessidade de plano estruturado, continue no passo 5.
|
|
289
263
|
|
|
290
264
|
### 5. Propor Tarefas Numeradas (Obrigatório)
|
|
291
265
|
|
|
292
266
|
<critical>
|
|
293
267
|
Liste TODAS as tarefas necessárias, numeradas sequencialmente.
|
|
294
|
-
|
|
268
|
+
Use aprovação existente do mesmo escopo; pergunte só decisões materiais novas antes de executar.
|
|
295
269
|
</critical>
|
|
296
270
|
|
|
297
271
|
**Formato:**
|
|
@@ -364,8 +338,8 @@
|
|
|
364
338
|
|
|
365
339
|
Opção B (entregar pro autopilot):
|
|
366
340
|
1. Rode: `/dw-autopilot --from-prd prd-bugfix-<slug>`
|
|
367
|
-
2. Autopilot roda aprovacao do PRD, TechSpec e Tasks,
|
|
368
|
-
3.
|
|
341
|
+
2. Autopilot roda aprovacao do PRD, TechSpec e Tasks, registra `status: plan_complete` e continua após aprovação das tasks/escolhas de execução.
|
|
342
|
+
3. A mesma invocação do autopilot retoma via `/dw-goal --from-autopilot prd-bugfix-<slug>` para Run, Review completo, QA/Fix e Review completo pos-QA antes de commit/PR.
|
|
369
343
|
|
|
370
344
|
O índice do bugfix continua queryable via `/dw-intel "bugfix history in <module>"`. Downstream `/dw-review --bugfix <slug>` e `/dw-qa --bugfix <slug>` ainda apontam para `.dw/bugfixes/NNN-<slug>/` quando quiser uma revisão focada apenas no patch cirúrgico final.
|
|
371
345
|
```
|
|
@@ -1,52 +1,35 @@
|
|
|
1
1
|
<system_instructions>
|
|
2
|
-
|
|
3
|
-
para implementar um prompt/spec já preparado, captura a execução inteira num log de auditoria durável, mantem uma
|
|
4
|
-
**sessão resumivel por tarefa**, da nota 0–10 a entrega, escala em caso de falha e **PARA para o gate**.
|
|
2
|
+
# Claude runner
|
|
5
3
|
|
|
6
|
-
|
|
7
|
-
<critical>NUNCA rode no checkout principal do repo — só worktree dedicada off main. ABORTE (`BLOCKED`) caso contrário.</critical>
|
|
8
|
-
<critical>NUNCA mergeie nem de push. Merge e decisão do dono, depois do gate.</critical>
|
|
4
|
+
Use `dw-cli-run` para o protocolo compartilhado. Consuma a escolha aprovada da task e retorne ao parent para review, correções e continuidade. Invocação standalone aceita prompt preparado explicitamente sem exigir PRD. WRITE exige worktree secundário dedicado; READ-ONLY segue as regras de leitura efetiva da skill. O worker nunca faz merge ou push.
|
|
9
5
|
|
|
10
|
-
|
|
6
|
+
Execute exemplos com cwd definido como `<WORKTREE>` pelo lançador. Substitua argumentos com segurança, preferencialmente como array de argumentos de subprocesso. Placeholders de permissões representam o perfil já aprovado, não flags de bypass. Preserve permissões efetivas na retomada; comandos inicial e resume podem aceitar flags diferentes. Confira ambos os helps antes do dispatch.
|
|
11
7
|
|
|
12
|
-
|
|
8
|
+
## Claude adapter table
|
|
9
|
+
|
|
10
|
+
| Slot | Value |
|
|
13
11
|
|---|---|
|
|
14
|
-
| `DISPATCH` | `
|
|
15
|
-
| `STREAM` | `--output-format stream-json --
|
|
16
|
-
| `MODEL` | `--model <MODEL
|
|
17
|
-
| `EFFORT` | `--effort <EFFORT
|
|
18
|
-
| `AUTO` |
|
|
19
|
-
| `AUTO_READONLY` | `--permission-mode plan
|
|
20
|
-
| `NO_MCP` |
|
|
21
|
-
| `RESUME <id>` | `
|
|
22
|
-
| `
|
|
23
|
-
| `
|
|
24
|
-
| `
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
`claude -c -p …` da mesma worktree.
|
|
38
|
-
|
|
39
|
-
## Variáveis de Input
|
|
40
|
-
| Variável | Descrição | Exemplo |
|
|
41
|
-
|----------|-----------|---------|
|
|
42
|
-
| `<WORKTREE>` | git worktree dedicada (off main) | `~/code/vizzita-billing-s10` |
|
|
43
|
-
| `<PROMPT>` | caminho do prompt/spec preparado | `.dw/spec/prd-billing-integrador/codex-prompt.md` |
|
|
44
|
-
| `<slug>` | chave da tarefa p/ arquivos de audit/sessão | `prd-billing-integrador` |
|
|
45
|
-
| `<AUDIT>` | dir de auditoria durável FORA da worktree | `~/code/vizzita/.dw/cli-run` |
|
|
46
|
-
| `<MODEL>` | tier do Claude ou id completo do modelo | `opus` / `sonnet` / `haiku` |
|
|
47
|
-
| `<EFFORT>` | budget de raciocínio (Claude CLI ≥ 2.1.206) | `low` / `medium` / `high` / `xhigh` / `max` |
|
|
48
|
-
|
|
49
|
-
Retorne pelo **Structured Return** da `dw-cli-run` (Status/Score/Scope/Evidence/Artifacts/Decisions/Risks/
|
|
50
|
-
Telemetria/Next Step), incluindo o `session-id` fixo (UUID), o caminho do sidecar, e o comando `RESUME` exato pra
|
|
51
|
-
continuar.
|
|
12
|
+
| `DISPATCH` | `claude -p --session-id "<SESSION_ID>" --model "<MODEL>" --effort "<EFFORT>" <PERMISSIONS> --output-format stream-json --include-partial-messages --verbose < "<PROMPT>" > "<AUDIT>/<slug>.log" 2>&1` |
|
|
13
|
+
| `STREAM` | `--output-format stream-json --verbose` |
|
|
14
|
+
| `MODEL` | `--model "<MODEL>"` |
|
|
15
|
+
| `EFFORT` | `--effort "<EFFORT>"` |
|
|
16
|
+
| `AUTO` | <PERMISSIONS> — perfil não interativo aprovado; preserve configuração existente |
|
|
17
|
+
| `AUTO_READONLY` | `--permission-mode plan --tools "Read,Grep,Glob" --strict-mcp-config` |
|
|
18
|
+
| `NO_MCP` | Selecione capacidades necessárias se suportado; caso contrário preserve configuração |
|
|
19
|
+
| `RESUME <id>` | `claude --resume "<SESSION_ID>" -p --model "<MODEL>" --effort "<EFFORT>" <RESUME_PERMISSIONS> --output-format stream-json --include-partial-messages --verbose < "<FOLLOWUP_PROMPT>" >> "<AUDIT>/<slug>.log" 2>&1` |
|
|
20
|
+
| `SESSION_ID` | UUID gerado antes do dispatch (`node -e "console.log(require('node:crypto').randomUUID())"`) → `<AUDIT>/<slug>.session` |
|
|
21
|
+
| `DONE_SIGNAL` | `result` com seu subtype |
|
|
22
|
+
| `USAGE` | `result.usage` e o valor reportado de `total_cost_usd` |
|
|
23
|
+
|
|
24
|
+
Crie/reutilize por `/dw-worktree create <slug>`; após integração autorizada, `/dw-worktree merge <slug>` conduz merge e limpeza segura. Workers retornam ao parent e nunca integram por conta própria.
|
|
25
|
+
|
|
26
|
+
## Seleção de modelo e retomada
|
|
27
|
+
|
|
28
|
+
Resolva modelo/esforço concretos na quebra de tasks usando `.dw/config/routing.json`, metadados atuais do provedor e ferramenta instalada. Não fixe lista de modelos do mais forte ao mais leve neste adapter. Esforços dependem de modelo/versão; low, medium, high, xhigh e max são candidatos apenas quando suportados. Sem escalada obrigatória ao máximo.
|
|
29
|
+
|
|
30
|
+
Registre task, provedor, worktree, escolha aprovada, ID de sessão e audit antes do handoff. Sem sidecar, recupere sessão exata da task pelo log; nunca continue às cegas a sessão mais recente do cwd. Sem provar identidade, inicie nova sessão a partir do estado salvo e diff real, preservando trabalho parcial. Sessões não são portáveis entre CLIs.
|
|
31
|
+
|
|
32
|
+
Retorne Structured Return do `dw-cli-run` com evidências e comando de retomada suportado exato. O parent continua o plano aprovado; merge/push/publicação exigem autorização aplicável.
|
|
33
|
+
|
|
34
|
+
Inspeção de capacidades: Claude Code 2.1.265.
|
|
52
35
|
</system_instructions>
|
|
@@ -1,51 +1,36 @@
|
|
|
1
1
|
<system_instructions>
|
|
2
|
-
|
|
3
|
-
implementar um prompt/spec já preparado, captura a execução inteira num log de auditoria durável, mantem uma
|
|
4
|
-
**sessão resumivel por tarefa**, da nota 0–10 a entrega, escala em caso de falha e **PARA para o gate**.
|
|
2
|
+
# Codex runner
|
|
5
3
|
|
|
6
|
-
|
|
7
|
-
<critical>NUNCA rode no checkout principal do repo — só worktree dedicada off main. ABORTE (`BLOCKED`) caso contrário.</critical>
|
|
8
|
-
<critical>NUNCA mergeie nem de push. Merge e decisão do dono, depois do gate.</critical>
|
|
4
|
+
Use `dw-cli-run` para o protocolo compartilhado. Consuma a escolha aprovada da task e retorne ao parent para review, correções e continuidade. Invocação standalone aceita prompt preparado explicitamente sem exigir PRD. WRITE exige worktree secundário dedicado; READ-ONLY segue as regras de leitura efetiva da skill. O worker nunca faz merge ou push.
|
|
9
5
|
|
|
10
|
-
|
|
6
|
+
Execute exemplos com cwd definido como `<WORKTREE>` pelo lançador. Substitua argumentos com segurança, preferencialmente como array de argumentos de subprocesso. Placeholders de permissões representam o perfil já aprovado, não flags de bypass. Preserve permissões efetivas na retomada; comandos inicial e resume podem aceitar flags diferentes. Confira ambos os helps antes do dispatch.
|
|
11
7
|
|
|
12
|
-
|
|
8
|
+
## Codex adapter table
|
|
9
|
+
|
|
10
|
+
| Slot | Value |
|
|
13
11
|
|---|---|
|
|
14
|
-
| `DISPATCH` | `
|
|
15
|
-
| `STREAM` | `--json`
|
|
16
|
-
| `MODEL` | `-m <MODEL
|
|
17
|
-
| `EFFORT` |
|
|
18
|
-
| `AUTO` |
|
|
19
|
-
| `AUTO_READONLY` | `--sandbox read-only`
|
|
20
|
-
| `NO_MCP` |
|
|
21
|
-
| `RESUME <id>` | `
|
|
22
|
-
| `
|
|
23
|
-
| `
|
|
24
|
-
| `
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
`codex exec resume --last` da mesma worktree.
|
|
39
|
-
|
|
40
|
-
## Variáveis de Input
|
|
41
|
-
| Variável | Descrição | Exemplo |
|
|
42
|
-
|----------|-----------|---------|
|
|
43
|
-
| `<WORKTREE>` | git worktree dedicada (off main) | `~/code/vizzita-billing-s10` |
|
|
44
|
-
| `<PROMPT>` | caminho do prompt/spec preparado | `.dw/spec/prd-billing-integrador/codex-prompt.md` |
|
|
45
|
-
| `<slug>` | chave da tarefa p/ arquivos de audit/sessão | `prd-billing-integrador` |
|
|
46
|
-
| `<AUDIT>` | dir de auditoria durável FORA da worktree | `~/code/vizzita/.dw/cli-run` |
|
|
47
|
-
|
|
48
|
-
Retorne pelo **Structured Return** da `dw-cli-run` (Status/Score/Scope/Evidence/Artifacts/Decisions/Risks/
|
|
49
|
-
Telemetria/Next Step), incluindo o `thread_id` capturado, o caminho do sidecar, e o comando `RESUME` exato pra
|
|
50
|
-
continuar. Testado: codex-cli 0.141.0.
|
|
12
|
+
| `DISPATCH` | `codex exec -m "<MODEL>" -c 'model_reasoning_effort="<EFFORT>"' <PERMISSIONS> --json -o "<AUDIT>/<slug>.last.md" - < "<PROMPT>" > "<AUDIT>/<slug>.log" 2>&1` |
|
|
13
|
+
| `STREAM` | `--json` |
|
|
14
|
+
| `MODEL` | `-m "<MODEL>"` |
|
|
15
|
+
| `EFFORT` | `-c 'model_reasoning_effort="<EFFORT>"'` |
|
|
16
|
+
| `AUTO` | <PERMISSIONS> — perfil não interativo aprovado; preserve configuração existente |
|
|
17
|
+
| `AUTO_READONLY` | `--sandbox read-only` |
|
|
18
|
+
| `NO_MCP` | Selecione capacidades necessárias se suportado; caso contrário preserve configuração |
|
|
19
|
+
| `RESUME <id>` | `codex exec resume "<SESSION_ID>" -m "<MODEL>" -c 'model_reasoning_effort="<EFFORT>"' <RESUME_PERMISSIONS> --json - < "<FOLLOWUP_PROMPT>" >> "<AUDIT>/<slug>.log" 2>&1` |
|
|
20
|
+
| `SESSION_ID` | `thread.started.thread_id` → `<AUDIT>/<slug>.session` |
|
|
21
|
+
| `DONE_SIGNAL` | `turn.completed` |
|
|
22
|
+
| `USAGE` | `turn.completed.usage` |
|
|
23
|
+
|
|
24
|
+
Crie/reutilize por `/dw-worktree create <slug>`; após integração autorizada, `/dw-worktree merge <slug>` conduz merge e limpeza segura. Workers retornam ao parent e nunca integram por conta própria.
|
|
25
|
+
|
|
26
|
+
## Seleção de modelo e retomada
|
|
27
|
+
|
|
28
|
+
Resolva modelo/esforço concretos na quebra de tasks usando `.dw/config/routing.json`, metadados atuais do provedor e ferramenta instalada. Não fixe lista de modelos do mais forte ao mais leve neste adapter. Esforços dependem de modelo/versão; low, medium, high, xhigh e max são candidatos apenas quando suportados. Sem escalada obrigatória ao máximo.
|
|
29
|
+
|
|
30
|
+
Registre task, provedor, worktree, escolha aprovada, ID de sessão e audit antes do handoff. Sem sidecar, recupere sessão exata da task pelo log; nunca continue às cegas a sessão mais recente do cwd. Sem provar identidade, inicie nova sessão a partir do estado salvo e diff real, preservando trabalho parcial. Sessões não são portáveis entre CLIs.
|
|
31
|
+
|
|
32
|
+
Retorne Structured Return do `dw-cli-run` com evidências e comando de retomada suportado exato. O parent continua o plano aprovado; merge/push/publicação exigem autorização aplicável.
|
|
33
|
+
|
|
34
|
+
Inspeção de capacidades: codex-cli 0.153.4.
|
|
35
|
+
O help atual de `exec resume` não expõe `--sandbox`; não copie flags iniciais às cegas nem acrescente bypass. Use perfil/configuração aprovado equivalente e suportado; caso contrário bloqueie esse modo de retomada e reconstrua sessão restrita nova. TOML `mcp_servers='{}'` sozinho não prova que entradas MCP herdadas foram desativadas.
|
|
51
36
|
</system_instructions>
|
|
@@ -7,23 +7,15 @@ Você é o auditor de orçamento de contexto do dev-workflow.
|
|
|
7
7
|
- Use como follow-up de `/dw-analyze-project` quando o harness parecer inchado.
|
|
8
8
|
|
|
9
9
|
## Processo
|
|
10
|
-
1.
|
|
11
|
-
2.
|
|
12
|
-
3.
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
- agentes acima de 8KB,
|
|
16
|
-
- agentes sem `output_budget_words` no `.dw/agent-registry.json` ou registry do scaffold,
|
|
17
|
-
- média de handoffs pendentes acima de 1200 palavras,
|
|
18
|
-
- agentes Copilot acima de 30k chars,
|
|
19
|
-
- mais de 10 MCP servers,
|
|
20
|
-
- nomes duplicados entre pastas de plataforma,
|
|
21
|
-
- agentes Claude/OpenCode com campos de tools ou permissions incompativeis com o provider.
|
|
22
|
-
4. Recomende as 5 maiores economias com caminhos concretos.
|
|
10
|
+
1. Separe três categorias: instruções permanentes do host ativo; metadados de descoberta (nomes/descrições de skills e comandos); e corpos de comandos/skills, referências e handoffs sob demanda. Inventário em disco não é consumo simultâneo de contexto. Conte só superfícies do host ativo; cópias entre plataformas não são duplicação de contexto por si só.
|
|
11
|
+
2. Identifique estimativas de prosa (`palavras * 1.3`, schema `chars / 4`) como estimativas, não tokens medidos. Reporte categorias separadamente e carregamentos observados só quando houver telemetria.
|
|
12
|
+
3. Confira budgets do projeto: bloco gerenciado instalado ≤6000 bytes por idioma; entrypoints de skills ≤8000 bytes; descrições ≤250 caracteres. Commands acima de 20KB e agentes acima de 8KB são sinais para revisão, não prova de carregamento. Confira gatilhos sobrepostos, referências incondicionais, links quebrados e metadados incompatíveis.
|
|
13
|
+
4. Neste repositório `npm run validate` aplica budgets e referências roteadas via `lib/instruction-health.js`. Em consumidor inspecione arquivos instalados; não exija código-fonte do pacote no projeto.
|
|
14
|
+
5. Reporte economias concretas prioritárias. Audite candidatos em `.dw/config/routing.json` contra informação atual do provedor, sinalizando escolhas antigas sem sobrescrever configuração do usuário.
|
|
23
15
|
|
|
24
16
|
## Parte B — Gasto em runtime (custo real de token)
|
|
25
17
|
|
|
26
|
-
O
|
|
18
|
+
O inventário acima estima contexto potencial; esta parte reporta uso observado nas sessões. Reporte a partir de `.dw/metrics/costs.jsonl` (append pelo hook `session-cost` de SessionEnd — uma linha por sessão com uso de tokens por modelo + USD estimado):
|
|
27
19
|
|
|
28
20
|
1. Leia `.dw/metrics/costs.jsonl` se existir. Se ausente, registre "sem dados de custo runtime ainda (hook desabilitado ou nenhuma sessão encerrada)" e pule esta parte — nunca falhe.
|
|
29
21
|
2. Deduplique por `session_id` (a linha mais recente por sessão vence).
|