@brunosps00/dev-workflow 0.8.0 → 0.9.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/README.md +18 -14
- package/bin/dev-workflow.js +1 -1
- package/lib/constants.js +8 -2
- package/lib/init.js +6 -0
- package/lib/install-deps.js +0 -5
- package/lib/migrate-gsd.js +164 -0
- package/lib/uninstall.js +2 -2
- package/package.json +1 -1
- package/scaffold/en/commands/dw-analyze-project.md +6 -11
- package/scaffold/en/commands/dw-autopilot.md +6 -13
- package/scaffold/en/commands/dw-brainstorm.md +1 -1
- package/scaffold/en/commands/dw-code-review.md +6 -5
- package/scaffold/en/commands/dw-create-prd.md +5 -4
- package/scaffold/en/commands/dw-create-techspec.md +5 -4
- package/scaffold/en/commands/dw-execute-phase.md +149 -0
- package/scaffold/en/commands/dw-fix-qa.md +34 -13
- package/scaffold/en/commands/dw-help.md +5 -2
- package/scaffold/en/commands/dw-intel.md +98 -29
- package/scaffold/en/commands/dw-map-codebase.md +125 -0
- package/scaffold/en/commands/dw-new-project.md +1 -1
- package/scaffold/en/commands/dw-plan-checker.md +144 -0
- package/scaffold/en/commands/dw-quick.md +30 -12
- package/scaffold/en/commands/dw-redesign-ui.md +5 -9
- package/scaffold/en/commands/dw-refactoring-analysis.md +6 -5
- package/scaffold/en/commands/dw-resume.md +10 -8
- package/scaffold/en/commands/dw-run-plan.md +14 -20
- package/scaffold/en/commands/dw-run-qa.md +124 -23
- package/scaffold/en/commands/dw-run-task.md +5 -4
- package/scaffold/en/commands/dw-update.md +3 -1
- package/scaffold/en/templates/idea-onepager.md +1 -1
- package/scaffold/pt-br/commands/dw-analyze-project.md +6 -11
- package/scaffold/pt-br/commands/dw-autopilot.md +6 -13
- package/scaffold/pt-br/commands/dw-brainstorm.md +1 -1
- package/scaffold/pt-br/commands/dw-code-review.md +6 -5
- package/scaffold/pt-br/commands/dw-create-prd.md +5 -4
- package/scaffold/pt-br/commands/dw-create-techspec.md +5 -4
- package/scaffold/pt-br/commands/dw-execute-phase.md +149 -0
- package/scaffold/pt-br/commands/dw-fix-qa.md +34 -13
- package/scaffold/pt-br/commands/dw-help.md +5 -2
- package/scaffold/pt-br/commands/dw-intel.md +98 -29
- package/scaffold/pt-br/commands/dw-map-codebase.md +125 -0
- package/scaffold/pt-br/commands/dw-new-project.md +1 -1
- package/scaffold/pt-br/commands/dw-plan-checker.md +144 -0
- package/scaffold/pt-br/commands/dw-quick.md +30 -12
- package/scaffold/pt-br/commands/dw-redesign-ui.md +5 -9
- package/scaffold/pt-br/commands/dw-refactoring-analysis.md +6 -5
- package/scaffold/pt-br/commands/dw-resume.md +10 -8
- package/scaffold/pt-br/commands/dw-run-plan.md +16 -22
- package/scaffold/pt-br/commands/dw-run-qa.md +124 -23
- package/scaffold/pt-br/commands/dw-run-task.md +5 -4
- package/scaffold/pt-br/commands/dw-update.md +3 -1
- package/scaffold/pt-br/templates/idea-onepager.md +1 -1
- package/scaffold/skills/api-testing-recipes/SKILL.md +104 -0
- package/scaffold/skills/api-testing-recipes/recipes/dotnet-webapp-factory.md +168 -0
- package/scaffold/skills/api-testing-recipes/recipes/http-rest-client.md +130 -0
- package/scaffold/skills/api-testing-recipes/recipes/pytest-httpx.md +157 -0
- package/scaffold/skills/api-testing-recipes/recipes/rust-reqwest.md +173 -0
- package/scaffold/skills/api-testing-recipes/recipes/supertest-node.md +153 -0
- package/scaffold/skills/api-testing-recipes/references/auth-patterns.md +138 -0
- package/scaffold/skills/api-testing-recipes/references/log-conventions.md +117 -0
- package/scaffold/skills/api-testing-recipes/references/matrix-conventions.md +68 -0
- package/scaffold/skills/api-testing-recipes/references/openapi-driven.md +97 -0
- package/scaffold/skills/dw-codebase-intel/SKILL.md +101 -0
- package/scaffold/skills/dw-codebase-intel/agents/intel-updater.md +318 -0
- package/scaffold/skills/dw-codebase-intel/references/incremental-update.md +79 -0
- package/scaffold/skills/dw-codebase-intel/references/intel-format.md +208 -0
- package/scaffold/skills/dw-codebase-intel/references/query-patterns.md +148 -0
- package/scaffold/skills/dw-execute-phase/SKILL.md +133 -0
- package/scaffold/skills/dw-execute-phase/agents/executor.md +264 -0
- package/scaffold/skills/dw-execute-phase/agents/plan-checker.md +215 -0
- package/scaffold/skills/dw-execute-phase/references/atomic-commits.md +143 -0
- package/scaffold/skills/dw-execute-phase/references/plan-verification.md +156 -0
- package/scaffold/skills/dw-execute-phase/references/wave-coordination.md +102 -0
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
<system_instructions>
|
|
2
|
+
Voce e um orquestrador de inteligencia de codebase. Sua funcao e spawnar o agente `dw-intel-updater` (da skill bundled `dw-codebase-intel`) para ler os arquivos source do projeto e escrever um indice queryable em `.dw/intel/`. Outros comandos do dev-workflow (`/dw-intel`, `/dw-create-prd`, `/dw-create-techspec`, `/dw-code-review`, etc.) leem esse indice em vez de fazer exploracao cara do codebase em cada invocacao.
|
|
3
|
+
|
|
4
|
+
<critical>Este comando escreve so em `.dw/intel/`. Nunca modifica codigo da aplicacao.</critical>
|
|
5
|
+
<critical>Use o agente `dw-intel-updater` — NAO inline a logica de geracao do intel neste comando. O agente possui o contrato do schema.</critical>
|
|
6
|
+
|
|
7
|
+
## Quando Usar
|
|
8
|
+
|
|
9
|
+
- **Primeira analise**: projeto fresco sem `.dw/intel/`. Roda full scan.
|
|
10
|
+
- **Refresh incremental**: depois de uma branch / PR grande aterrissar e arquivos source mudaram. Roda com `--files <paths>` para atualizar so os entries afetados.
|
|
11
|
+
- **Refresh agendado**: a cada 1-4 semanas para manter o indice fresco; a heuristica de defasagem em `/dw-intel` avisa quando >7 dias.
|
|
12
|
+
- **Apos mudancas de dependencia**: `/dw-deps-audit --execute` atualiza lockfiles e pode tocar deps. Re-rode `/dw-map-codebase` depois para refrescar `deps.json`.
|
|
13
|
+
- NAO use para projetos greenfield sem source ainda — `/dw-new-project` ja semeia `.dw/rules/index.md` minimo; nao tem o que mapear.
|
|
14
|
+
|
|
15
|
+
## Posicao no Pipeline
|
|
16
|
+
|
|
17
|
+
**Antecessor:** qualquer projeto com source (rode apos `/dw-new-project` para greenfield, ou como primeiro comando em repo brownfield) | **Sucessor:** `/dw-intel "<query>"` para perguntas ad-hoc, ou `/dw-analyze-project` para enriquecer `.dw/rules/` com convencoes/anti-patterns derivados do intel
|
|
18
|
+
|
|
19
|
+
## Skills Complementares
|
|
20
|
+
|
|
21
|
+
| Skill | Gatilho |
|
|
22
|
+
|-------|---------|
|
|
23
|
+
| `dw-codebase-intel` | **SEMPRE** — fonte do agente `dw-intel-updater` e dos references (`intel-format.md`, `incremental-update.md`, `query-patterns.md`) |
|
|
24
|
+
|
|
25
|
+
## Variaveis de Entrada
|
|
26
|
+
|
|
27
|
+
| Variavel | Descricao | Exemplo |
|
|
28
|
+
|----------|-----------|---------|
|
|
29
|
+
| `{{FOCUS}}` | Opcional. `full` (default sem `--files`), `partial` (quando `--files` setado) | `partial` |
|
|
30
|
+
| `{{FILES}}` | Opcional. Lista space-separated de paths para refrescar (so com `--files`) | `src/auth/index.ts src/routes/auth.ts` |
|
|
31
|
+
| `{{SINCE}}` | Opcional alternativo a `--files`. Git ref para derivar arquivos mudados | `HEAD~5` ou `origin/main` |
|
|
32
|
+
|
|
33
|
+
## Flags
|
|
34
|
+
|
|
35
|
+
| Flag | Comportamento |
|
|
36
|
+
|------|---------------|
|
|
37
|
+
| (default) | Full scan se `.dw/intel/` faltando OU `.last-refresh.json` >30 dias; senao pergunta full/skip |
|
|
38
|
+
| `--full` | Forca full scan independente do estado |
|
|
39
|
+
| `--files <a> <b> ...` | Update parcial so para os paths listados |
|
|
40
|
+
| `--since <gitref>` | Update parcial para arquivos mudados desde `<gitref>` (usa `git diff --name-only <gitref>...HEAD`) |
|
|
41
|
+
|
|
42
|
+
## Localizacao dos Arquivos
|
|
43
|
+
|
|
44
|
+
- Indice de saida: `.dw/intel/{stack,files,apis,deps}.json` + `.dw/intel/arch.md`
|
|
45
|
+
- Metadados de refresh: `.dw/intel/.last-refresh.json`
|
|
46
|
+
- Fonte da skill: `.agents/skills/dw-codebase-intel/{SKILL.md, agents/intel-updater.md, references/*.md}`
|
|
47
|
+
|
|
48
|
+
## Comportamento Obrigatorio
|
|
49
|
+
|
|
50
|
+
### 1. Deteccao de estado
|
|
51
|
+
|
|
52
|
+
- Cheque `.dw/intel/.last-refresh.json` se existir.
|
|
53
|
+
- Compute estado: greenfield (sem source) → aborta com dica; brownfield sem `.dw/intel/` → primeira analise; com `.dw/intel/` existente → decida path de refresh.
|
|
54
|
+
|
|
55
|
+
### 2. Selecao de modo
|
|
56
|
+
|
|
57
|
+
| Condicao | Modo |
|
|
58
|
+
|----------|------|
|
|
59
|
+
| Sem `.dw/intel/` | full |
|
|
60
|
+
| Flag `--full` | full |
|
|
61
|
+
| Flag `--files <list>` | partial com lista explicita |
|
|
62
|
+
| Flag `--since <ref>` | partial com lista derivada de `git diff --name-only <ref>...HEAD` |
|
|
63
|
+
| `.last-refresh.json` >30 dias | prompt usuario: full / partial / skip |
|
|
64
|
+
| Caso contrario | partial desde ultimo refresh, derivado de `git log --name-only --since=<last_refresh_date>` |
|
|
65
|
+
|
|
66
|
+
### 3. Spawnar `dw-intel-updater`
|
|
67
|
+
|
|
68
|
+
Construa o spawn prompt do agente. Campos obrigatorios:
|
|
69
|
+
|
|
70
|
+
- `focus: full` ou `focus: partial --files <paths space-separated>`
|
|
71
|
+
- `project_root: <path absoluto>`
|
|
72
|
+
- Bloco `required_reading:` opcional listando SKILL.md e references (o agente le esses para contexto)
|
|
73
|
+
|
|
74
|
+
Spawne o agente e aguarde conclusao.
|
|
75
|
+
|
|
76
|
+
### 4. Verificar saida
|
|
77
|
+
|
|
78
|
+
Apos o agente retornar:
|
|
79
|
+
|
|
80
|
+
- Verifique `.dw/intel/{stack,files,apis,deps}.json` existem e parseiam como JSON valido.
|
|
81
|
+
- Verifique `.dw/intel/arch.md` existe.
|
|
82
|
+
- Verifique `.dw/intel/.last-refresh.json` foi escrito e os hashes batem com os arquivos recem-escritos.
|
|
83
|
+
- Se algum falhar, reporte a falha com a saida do agente e aborte com status `MAP-FAILED`.
|
|
84
|
+
|
|
85
|
+
### 5. Relatar
|
|
86
|
+
|
|
87
|
+
Imprima resumo tight:
|
|
88
|
+
|
|
89
|
+
```
|
|
90
|
+
## Mapa do Codebase Refrescado
|
|
91
|
+
|
|
92
|
+
Modo: full | partial (<N> arquivos)
|
|
93
|
+
Arquivos escritos:
|
|
94
|
+
- .dw/intel/stack.json (<bytes>) — <N> linguagens, <N> frameworks
|
|
95
|
+
- .dw/intel/files.json (<bytes>) — <N> entries
|
|
96
|
+
- .dw/intel/apis.json (<bytes>) — <N> endpoints
|
|
97
|
+
- .dw/intel/deps.json (<bytes>) — <N> deps (<producao>/<dev>)
|
|
98
|
+
- .dw/intel/arch.md (<linhas>) — <nome do padrao>
|
|
99
|
+
- .dw/intel/.last-refresh.json
|
|
100
|
+
|
|
101
|
+
Proximos passos:
|
|
102
|
+
- Consultar o indice: /dw-intel "<pergunta>"
|
|
103
|
+
- Construir rules legiveis: /dw-analyze-project
|
|
104
|
+
- Auditar deps: /dw-deps-audit --scan-only
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## Regras Criticas
|
|
108
|
+
|
|
109
|
+
- <critical>O agente possui o schema. Se schema precisa mudar, atualize o arquivo do agente em `.agents/skills/dw-codebase-intel/` primeiro; este comando so orquestra.</critical>
|
|
110
|
+
- <critical>NUNCA escreva `.dw/intel/` manualmente deste comando — sempre via o agente.</critical>
|
|
111
|
+
- <critical>Escrita atomica: o agente escreve em `.tmp` e renomeia. Se write parcial, o indice anterior fica preservado.</critical>
|
|
112
|
+
- NAO inclua secrets em saida nenhuma. A lista de forbidden-files do agente (`.env*`, `*.key`, `*.pem`, `id_rsa`, etc.) e enforced; se algo vazar, trate como bug CRITICAL.
|
|
113
|
+
|
|
114
|
+
## Tratamento de Erros
|
|
115
|
+
|
|
116
|
+
- Agente falha → print stdout/stderr, marca `.dw/intel/` como last-known-good (preservado por atomic write), exit nao-zero.
|
|
117
|
+
- Sem source no escopo → aborta: `"Sem arquivos source detectados (TS/JS/Python/C#/Rust). Rode /dw-new-project primeiro ou cheque o project root."`
|
|
118
|
+
- `git diff --since` falha (nao e git repo, ref ruim) → cai para full scan com aviso.
|
|
119
|
+
- Arquivo source referenciado em `.dw/intel/` ja nao existe → o agente remove o entry no proximo update parcial.
|
|
120
|
+
|
|
121
|
+
## Inspirado em
|
|
122
|
+
|
|
123
|
+
`dw-map-codebase` e dev-workflow-native. O padrao de orquestracao (spawn agente, espera, verifica, relata) e as convencoes de escopo de arquivos sao adaptados de [`get-shit-done-cc`](https://github.com/gsd-build/get-shit-done) (`/gsd-map-codebase` + `gsd-intel-updater`) por gsd-build (MIT). Especificos do dev-workflow: escreve em `.dw/intel/` (nao `.planning/intel/`), usa agente unico (intel-updater) em vez de varios mappers paralelos (a analise human-readable vive separada em `/dw-analyze-project`), e integra com `--since <gitref>` para updates parciais git-aware.
|
|
124
|
+
|
|
125
|
+
</system_instructions>
|
|
@@ -188,7 +188,7 @@ Adapte o `dev:db:migrate` por ORM (Prisma: `pnpm prisma migrate dev`; Alembic: `
|
|
|
188
188
|
|
|
189
189
|
Por stack, anexe ao que `create-*` gerou:
|
|
190
190
|
- `.gitignore` deve excluir `.env`.
|
|
191
|
-
-
|
|
191
|
+
- O diretorio `.dw/` e preservado entre updates pelo `/dw-update` (rules, spec, intel sao dados do usuario).
|
|
192
192
|
- `.dockerignore`: exclua `.git`, `node_modules`, `.dw`, `.agents`, `tests`, `*.md` (em imagens prod).
|
|
193
193
|
|
|
194
194
|
#### 3.7 Gerar GitHub Actions CI
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
<system_instructions>
|
|
2
|
+
Voce e um orquestrador de verificacao de plano. Sua funcao e spawnar o agente `dw-plan-checker` (da skill bundled `dw-execute-phase`) para verificar que o `tasks.md` de uma fase vai atingir o goal do PRD — ANTES de qualquer codigo ser tocado.
|
|
3
|
+
|
|
4
|
+
Este e um gate manual standalone. `/dw-execute-phase` e `/dw-autopilot` invocam o mesmo agente automaticamente; este comando deixa voce rodar so o gate para inspecionar a qualidade do plano sem se comprometer com execucao.
|
|
5
|
+
|
|
6
|
+
<critical>Este comando e somente leitura. Plan-checker NUNCA modifica arquivos.</critical>
|
|
7
|
+
<critical>Saida em um de tres veredictos: PASS, REVISE, BLOCK. Sem meio-termo.</critical>
|
|
8
|
+
|
|
9
|
+
## Quando Usar
|
|
10
|
+
|
|
11
|
+
- Antes de invocar `/dw-execute-phase` se voce quer inspecionar a qualidade do plano primeiro
|
|
12
|
+
- Apos uma execucao parcial para verificar se as tasks restantes ainda fazem sentido
|
|
13
|
+
- Apos edits manuais em `tasks.md` (sempre re-verifique antes de re-executar)
|
|
14
|
+
- Durante revisoes do `/dw-create-tasks` para confirmar que o planner enderecou issues REVISE anteriores
|
|
15
|
+
- NAO para verificar correcao de implementacao (use `/dw-run-qa`)
|
|
16
|
+
- NAO para review de qualidade de codigo (use `/dw-code-review`)
|
|
17
|
+
|
|
18
|
+
## Posicao no Pipeline
|
|
19
|
+
|
|
20
|
+
**Antecessor:** `/dw-create-tasks` (ou edits manuais em `tasks.md`) | **Sucessor:** `/dw-execute-phase` se PASS; `/dw-create-tasks --revise` se REVISE; intervencao manual se BLOCK
|
|
21
|
+
|
|
22
|
+
## Skills Complementares
|
|
23
|
+
|
|
24
|
+
| Skill | Gatilho |
|
|
25
|
+
|-------|---------|
|
|
26
|
+
| `dw-execute-phase` | **SEMPRE** — fonte do agente `dw-plan-checker` e `references/plan-verification.md` |
|
|
27
|
+
| `dw-codebase-intel` | Opcional — agente le `.dw/intel/` para verificar plano contra fatos reais do codebase |
|
|
28
|
+
|
|
29
|
+
## Variaveis de Entrada
|
|
30
|
+
|
|
31
|
+
| Variavel | Descricao | Exemplo |
|
|
32
|
+
|----------|-----------|---------|
|
|
33
|
+
| `{{PRD_PATH}}` | Caminho da pasta do PRD com `tasks.md` | `.dw/spec/prd-checkout-v2` |
|
|
34
|
+
|
|
35
|
+
## Localizacao dos Arquivos
|
|
36
|
+
|
|
37
|
+
- Inputs (somente leitura): `{{PRD_PATH}}/{prd.md, techspec.md, tasks.md, <NN>_task.md}`, `.dw/rules/*.md`, `.dw/intel/*` (se existir), `./CLAUDE.md`
|
|
38
|
+
- Audit log (append-only): `.dw/audit/plan-checks-<YYYY-MM-DD>.log` (registra cada veredito para audit trail do `--skip-check`)
|
|
39
|
+
|
|
40
|
+
## Comportamento Obrigatorio
|
|
41
|
+
|
|
42
|
+
### 1. Carregar contexto
|
|
43
|
+
|
|
44
|
+
Verifique que o caminho do PRD existe e contem `tasks.md`. Leia `prd.md`, `techspec.md`, `tasks.md`, e quaisquer arquivos `<NN>_task.md` referenciados.
|
|
45
|
+
|
|
46
|
+
### 2. Spawnar o agente
|
|
47
|
+
|
|
48
|
+
Spawne agente `dw-plan-checker` com:
|
|
49
|
+
|
|
50
|
+
- `prd_path: {{PRD_PATH}}`
|
|
51
|
+
- Bloco `required_reading:` citando `.agents/skills/dw-execute-phase/SKILL.md` e `.agents/skills/dw-execute-phase/references/plan-verification.md`
|
|
52
|
+
|
|
53
|
+
O agente roda a verificacao de 6 dimensoes:
|
|
54
|
+
|
|
55
|
+
1. **Requirement Coverage** — todo RF-XX tem uma task
|
|
56
|
+
2. **Task Completeness** — files / action / verification / done presentes
|
|
57
|
+
3. **Dependency Soundness** — sem ciclos, sem refs quebradas, waves ≤ 8 de largura
|
|
58
|
+
4. **Artifact Wiring** — todo artefato produzido e consumido downstream ou referenciado no PRD
|
|
59
|
+
5. **Context Budget** — ≤ 12 tasks, ≤ 30 arquivos agregados
|
|
60
|
+
6. **Constraint Compliance** — sem violacoes de `.dw/rules/`, CONTEXT.md `## Decisions`, CLAUDE.md
|
|
61
|
+
|
|
62
|
+
### 3. Processar veredito
|
|
63
|
+
|
|
64
|
+
**PASS:**
|
|
65
|
+
|
|
66
|
+
- Append em `.dw/audit/plan-checks-<YYYY-MM-DD>.log`:
|
|
67
|
+
```
|
|
68
|
+
<ISO-8601> PASS {{PRD_PATH}} <task_count> tasks, <wave_count> waves
|
|
69
|
+
```
|
|
70
|
+
- Imprime: `Verificacao do plano PASS — siga para /dw-execute-phase {{PRD_PATH}}`
|
|
71
|
+
|
|
72
|
+
**REVISE:**
|
|
73
|
+
|
|
74
|
+
- Append em audit log com veredito `REVISE`
|
|
75
|
+
- Imprime os issues por dimensao
|
|
76
|
+
- Sugere: `/dw-create-tasks --revise --issues <arquivo-de-issues-gerado>` OU edits manuais
|
|
77
|
+
- Exit status: `PLAN-CHECK-REVISE`
|
|
78
|
+
|
|
79
|
+
**BLOCK:**
|
|
80
|
+
|
|
81
|
+
- Append em audit log com veredito `BLOCK`
|
|
82
|
+
- Imprime os issues conflitantes com file:line
|
|
83
|
+
- Sugere: resolver o conflito de locked-decision (update CONTEXT.md, OU mudar o plano para honrar)
|
|
84
|
+
- Exit status: `PLAN-CHECK-BLOCK`
|
|
85
|
+
|
|
86
|
+
### 4. Formato de saida
|
|
87
|
+
|
|
88
|
+
```markdown
|
|
89
|
+
# Verificacao do Plano — <prd-slug>
|
|
90
|
+
|
|
91
|
+
**Veredito:** PASS | REVISE | BLOCK
|
|
92
|
+
**PRD:** {{PRD_PATH}}
|
|
93
|
+
**Arquivo tasks:** {{PRD_PATH}}/tasks.md (<N> tasks em <M> waves)
|
|
94
|
+
**Verificado em:** <ISO-8601>
|
|
95
|
+
|
|
96
|
+
## Dimensoes
|
|
97
|
+
|
|
98
|
+
| # | Dimensao | Status | Issues |
|
|
99
|
+
|---|----------|--------|--------|
|
|
100
|
+
| 1 | Requirement Coverage | ✓ / ✗ | <count> |
|
|
101
|
+
| 2 | Task Completeness | ✓ / ✗ | <count> |
|
|
102
|
+
| 3 | Dependency Soundness | ✓ / ✗ | <count> |
|
|
103
|
+
| 4 | Artifact Wiring | ✓ / ✗ | <count> |
|
|
104
|
+
| 5 | Context Budget | ✓ / ✗ | <count> |
|
|
105
|
+
| 6 | Constraint Compliance | ✓ / ✗ | <count> |
|
|
106
|
+
|
|
107
|
+
## Issues (so REVISE/BLOCK)
|
|
108
|
+
|
|
109
|
+
[issues detalhados por dimensao; cite file:line]
|
|
110
|
+
|
|
111
|
+
## Recomendacao
|
|
112
|
+
|
|
113
|
+
- PASS → `/dw-execute-phase {{PRD_PATH}}`
|
|
114
|
+
- REVISE → `/dw-create-tasks --revise` e rerode este comando
|
|
115
|
+
- BLOCK → resolve [lista de conflitos de locked-decision] depois re-planeje
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## Regras Criticas
|
|
119
|
+
|
|
120
|
+
- <critical>O agente possui a logica de verificacao. NUNCA inline checks neste comando.</critical>
|
|
121
|
+
- <critical>Somente leitura. Plan-checker NAO PODE modificar nenhum arquivo do projeto.</critical>
|
|
122
|
+
- <critical>Audit log e append-only. NUNCA edite entries anteriores.</critical>
|
|
123
|
+
- <critical>BLOCK e reservado para conflitos hard (locked decisions, ciclos). REVISE e para issues fixaveis.</critical>
|
|
124
|
+
- NAO auto-dispare `/dw-create-tasks` em REVISE. O usuario decide se re-roda.
|
|
125
|
+
|
|
126
|
+
## Tratamento de Erros
|
|
127
|
+
|
|
128
|
+
- `tasks.md` faltando → exit `PLAN-CHECK-FAILED` com dica: "Rode `/dw-create-tasks {{PRD_PATH}}` primeiro"
|
|
129
|
+
- `prd.md` faltando → exit `PLAN-CHECK-FAILED`: "PRD nao encontrado; o caminho esta correto?"
|
|
130
|
+
- Agente timeout (>5 min) → exit `PLAN-CHECK-TIMEOUT`: "Plano grande demais; considere split via `/dw-create-tasks --split`"
|
|
131
|
+
- Ciclo detectado em dependencias → BLOCK com o caminho do ciclo; NAO tente quebrar automaticamente
|
|
132
|
+
|
|
133
|
+
## Integracao com Outros dw-* Commands
|
|
134
|
+
|
|
135
|
+
- **`/dw-create-tasks`** — antecessor; produz o `tasks.md` que este comando verifica
|
|
136
|
+
- **`/dw-execute-phase`** — embrulha este comando como gate antes de execucao
|
|
137
|
+
- **`/dw-autopilot`** — embrulha `/dw-create-tasks` → este comando → `/dw-execute-phase` com gates hard entre
|
|
138
|
+
- **`/dw-resume`** — ao resumir apos checkpoint, este comando verifica que tasks restantes ainda satisfazem o goal
|
|
139
|
+
|
|
140
|
+
## Inspirado em
|
|
141
|
+
|
|
142
|
+
`dw-plan-checker` e dev-workflow-native. O protocolo de verificacao goal-backward em 6 dimensoes e adaptado de [`get-shit-done-cc`](https://github.com/gsd-build/get-shit-done) (`/gsd-plan-phase`, `gsd-plan-checker`) por gsd-build (licenca MIT). Especificos do dev-workflow: verifica `tasks.md` (nao PLAN.md do GSD), usa vocabulario PRD/TechSpec/Tasks do dev-workflow, audit log para trail do `--skip-check`.
|
|
143
|
+
|
|
144
|
+
</system_instructions>
|
|
@@ -38,26 +38,44 @@ Voce e um executor de tasks rapidas. Este comando existe para implementar mudanc
|
|
|
38
38
|
8. Invoque `dw-verify` e inclua o VERIFICATION REPORT no output antes de commitar. Sem PASS, NAO commit.
|
|
39
39
|
9. Crie commit atomico semantico com a mudanca
|
|
40
40
|
|
|
41
|
-
##
|
|
41
|
+
## Tracking de Task
|
|
42
42
|
|
|
43
|
-
<critical>
|
|
43
|
+
<critical>Toda execução de `/dw-quick` escreve um entry de tracking em `.dw/spec/quick/<slug>.md` para a mudança ser descoberta depois.</critical>
|
|
44
44
|
|
|
45
|
-
|
|
46
|
-
- Delegue para `/gsd-quick` para tracking em `.planning/quick/`
|
|
47
|
-
- A task fica registrada no historico para consulta futura via `/dw-intel`
|
|
45
|
+
Formato de tracking (um arquivo por quick task):
|
|
48
46
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
-
|
|
47
|
+
```markdown
|
|
48
|
+
---
|
|
49
|
+
type: quick-task
|
|
50
|
+
schema_version: "1.0"
|
|
51
|
+
status: COMPLETE | PARTIAL | ABORTED
|
|
52
|
+
date: YYYY-MM-DD
|
|
53
|
+
files_touched: [...]
|
|
54
|
+
commit: <SHA>
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
# Quick Task — <slug>
|
|
58
|
+
|
|
59
|
+
## Descrição
|
|
60
|
+
<descrição de uma linha do prompt do usuário>
|
|
61
|
+
|
|
62
|
+
## Arquivos
|
|
63
|
+
<lista>
|
|
64
|
+
|
|
65
|
+
## Verificação
|
|
66
|
+
<excerto do report do dw-verify>
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Queries subsequentes do `/dw-intel` surfaceam essas entries via index de arquivos.
|
|
52
70
|
|
|
53
71
|
## Inteligencia do Codebase
|
|
54
72
|
|
|
55
|
-
Se `.
|
|
56
|
-
- Execute internamente: `/
|
|
73
|
+
Se `.dw/intel/` existir, consulte antes de implementar:
|
|
74
|
+
- Execute internamente: `/dw-intel "implementation patterns in [target area]"`
|
|
57
75
|
- Siga os padroes encontrados
|
|
58
76
|
|
|
59
|
-
Se `.
|
|
60
|
-
- Use apenas `.dw/rules/` como contexto
|
|
77
|
+
Se `.dw/intel/` NAO existir:
|
|
78
|
+
- Use apenas `.dw/rules/` como contexto (ou grep direto se `.dw/rules/` também faltar)
|
|
61
79
|
|
|
62
80
|
## Formato de Resposta
|
|
63
81
|
|
|
@@ -64,17 +64,13 @@ Utilize ferramentas de diagnóstico conforme o framework do projeto:
|
|
|
64
64
|
7. **VALIDAR**: capture estado depois em AMBAS as resoluções (mobile e desktop), compare antes/depois, verifique acessibilidade (WCAG 2.2 via `ui-ux-pro-max`), rode react-doctor `--diff` se React. Se `webapp-testing` disponível, capture screenshots em viewport 375px (mobile) e 1440px (desktop).
|
|
65
65
|
8. **PERSISTIR CONTRATO**: se o usuário aprovou uma direção, gere `design-contract.md` no diretório do PRD (`.dw/spec/prd-[nome]/design-contract.md`) com: direção aprovada, paleta de cores, par tipográfico, regras de layout, regras de acessibilidade e regras de componentes. Este contrato será lido por `dw-run-task` e `dw-run-plan` para garantir consistência visual.
|
|
66
66
|
|
|
67
|
-
##
|
|
67
|
+
## Inteligência do Codebase
|
|
68
68
|
|
|
69
|
-
<critical>
|
|
69
|
+
<critical>Se `.dw/intel/` existir, a consulta via `/dw-intel` é OBRIGATÓRIA na fase de auditoria para identificar UI patterns existentes.</critical>
|
|
70
70
|
|
|
71
|
-
|
|
72
|
-
-
|
|
73
|
-
-
|
|
74
|
-
|
|
75
|
-
Se o GSD NÃO estiver instalado:
|
|
76
|
-
- O design contract funciona normalmente (file-based em `.dw/spec/`)
|
|
77
|
-
- Auditoria usa apenas `.dw/rules/` para contexto
|
|
71
|
+
- Fase de auditoria: execute internamente `/dw-intel "componentes UI, padrões de design, convenções de layout"` antes de propor direções de redesign
|
|
72
|
+
- O design contract (`.dw/spec/prd-[nome]/design-contract.md`) é a fonte única de verdade para consistência visual — lido por `/dw-run-task` e `/dw-run-plan` e persiste cross-sessão naturalmente (sem registro separado)
|
|
73
|
+
- Se `.dw/intel/` NÃO existir, caia para `.dw/rules/` e grep direto sobre `apps/web/src/` (ou frontend root equivalente)
|
|
78
74
|
|
|
79
75
|
## Formato de Resposta Preferido
|
|
80
76
|
|
|
@@ -31,13 +31,14 @@ Para projetos Angular, use `ng lint` como complemento analítico.
|
|
|
31
31
|
|
|
32
32
|
## Inteligência do Codebase
|
|
33
33
|
|
|
34
|
-
<critical>Se `.
|
|
35
|
-
- Execute internamente: `/
|
|
36
|
-
- Contextualize findings com decisões já documentadas
|
|
34
|
+
<critical>Se `.dw/intel/` existir, a consulta via `/dw-intel` é OBRIGATÓRIA antes de sinalizar oportunidades de refactoring. NÃO pule este passo.</critical>
|
|
35
|
+
- Execute internamente: `/dw-intel "tech debt e decisões técnicas conhecidas"`
|
|
36
|
+
- Contextualize findings com decisões já documentadas em `.dw/rules/`
|
|
37
37
|
- Evite sinalizar como smell algo que é uma decisão intencional registrada
|
|
38
38
|
|
|
39
|
-
Se `.
|
|
40
|
-
- Use `.dw/rules/` como contexto
|
|
39
|
+
Se `.dw/intel/` NÃO existir:
|
|
40
|
+
- Use `.dw/rules/` como contexto, caindo para grep
|
|
41
|
+
- Sugira rodar `/dw-map-codebase` para enriquecer contexto downstream
|
|
41
42
|
|
|
42
43
|
## Variáveis de Entrada
|
|
43
44
|
|
|
@@ -40,17 +40,19 @@ Voce e um assistente de continuidade de sessao. Este comando existe para restaur
|
|
|
40
40
|
6. Apresente o resumo no formato abaixo (incluindo bullets de "Do ponto onde paramos" com base na memory)
|
|
41
41
|
7. Sugira o proximo comando a executar
|
|
42
42
|
|
|
43
|
-
##
|
|
43
|
+
## Estado Cross-Sessao
|
|
44
44
|
|
|
45
|
-
<critical>
|
|
45
|
+
<critical>Se `.dw/spec/active-session.md` existir (escrito pelo `/dw-execute-phase` em checkpoint), a leitura e OBRIGATORIA para restaurar a ultima posicao conhecida.</critical>
|
|
46
46
|
|
|
47
|
-
|
|
48
|
-
- Delegue para `/gsd-resume-work` para restaurar estado cross-sessao de `.planning/STATE.md`
|
|
49
|
-
- Incorpore contexto adicional: threads persistentes, backlog, notas
|
|
47
|
+
Ordem de leitura para contexto cross-sessao:
|
|
50
48
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
49
|
+
1. `.dw/spec/active-session.md` — ultima task completa, proxima task, blockers, deviations abertas (escrito pelo `/dw-execute-phase` em checkpoint a 70% de budget de contexto OU quando o usuario sinaliza stop)
|
|
50
|
+
2. `.dw/spec/prd-*/SUMMARY.md` — resumos de fases concluidas (mais recentes)
|
|
51
|
+
3. Commits recentes via `git log --oneline -20` — o que aterrissou na branch atual
|
|
52
|
+
4. Deviations abertas via `.dw/spec/prd-*/deviations.md` — Rule 1/2/3 entries nao resolvidas
|
|
53
|
+
5. Deteccao de PRD ativo — diretorio sob `.dw/spec/` cujo `tasks.md` tem a task uncompleted mais recente
|
|
54
|
+
|
|
55
|
+
Se `.dw/spec/active-session.md` esta ausente (sem checkpoint escrito; boundary limpa de sessao), caia para git log + estado de `tasks.md` em PRDs ativos.
|
|
54
56
|
|
|
55
57
|
## Formato de Resposta
|
|
56
58
|
|
|
@@ -152,36 +152,30 @@ Se uma tarefa FALHAR durante a execução:
|
|
|
152
152
|
4. Aguardar intervenção manual do usuário
|
|
153
153
|
5. **NÃO** continuar automaticamente para próxima task
|
|
154
154
|
|
|
155
|
-
##
|
|
155
|
+
## Verificação de Plano + Execução Paralela
|
|
156
156
|
|
|
157
|
-
<critical>
|
|
157
|
+
<critical>Verificação de plano e execução paralela em waves são OBRIGATÓRIAS, não opcionais. Ambas são agora nativas no dev-workflow via skill bundled `dw-execute-phase`.</critical>
|
|
158
158
|
|
|
159
159
|
### Verificação de Plano (Pré-Execução)
|
|
160
160
|
|
|
161
|
-
|
|
162
|
-
-
|
|
163
|
-
-
|
|
164
|
-
- Se
|
|
165
|
-
- Se
|
|
166
|
-
|
|
167
|
-
Se o GSD NÃO estiver instalado:
|
|
168
|
-
- Pule a verificação e execute diretamente (comportamento atual)
|
|
161
|
+
Antes de iniciar execução, delegue para `/dw-plan-checker {{PRD_PATH}}`:
|
|
162
|
+
- O agente plan-checker verifica as 6 dimensões (cobertura de requisitos, completude da task, soundness de dependência, wiring de artefatos, budget de contexto, compliance de constraints)
|
|
163
|
+
- Se REVISE: apresente os issues e sugira correções. Máximo 3 ciclos via `/dw-create-tasks --revise`
|
|
164
|
+
- Se BLOCK: suba o conflito para o usuário, NÃO auto-replan
|
|
165
|
+
- Se PASS: prossiga para execução
|
|
169
166
|
|
|
170
167
|
### Execução Paralela (Wave-Based)
|
|
171
168
|
|
|
172
|
-
|
|
173
|
-
-
|
|
174
|
-
-
|
|
175
|
-
- Wave 1: tasks sem dependências (
|
|
176
|
-
- Wave 2: tasks que dependem
|
|
169
|
+
Após PASS do plan-checker, delegue para `/dw-execute-phase {{PRD_PATH}}`:
|
|
170
|
+
- O agente executor analisa o campo `Depends on:` de cada task para montar o grafo de dependências
|
|
171
|
+
- Agrupa tasks em waves:
|
|
172
|
+
- Wave 1: tasks sem dependências (rodam em paralelo)
|
|
173
|
+
- Wave 2: tasks que dependem das tasks da Wave 1
|
|
177
174
|
- Wave N: assim por diante
|
|
178
|
-
-
|
|
179
|
-
-
|
|
180
|
-
-
|
|
181
|
-
-
|
|
182
|
-
|
|
183
|
-
Se o GSD NÃO estiver instalado:
|
|
184
|
-
- Execute sequencialmente como hoje (comportamento atual)
|
|
175
|
+
- Cada wave dispatcha subagentes em paralelo (um por task)
|
|
176
|
+
- Resultados mergeados após a wave completar
|
|
177
|
+
- Se qualquer task em uma wave falha permanentemente (deviation Rule 3): pausa a wave, reporta, aguarda decisão do usuário
|
|
178
|
+
- O executor commita atomicamente por task e escreve `SUMMARY.md` após a wave final
|
|
185
179
|
|
|
186
180
|
### Design Contracts
|
|
187
181
|
|