adi_dev_workflow 1.0.0 → 1.1.1
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/bin/index.js +0 -0
- package/frameworks/agents/qa-staff-engineer.md +311 -0
- package/frameworks/agents/qa-validation-expert.md +458 -0
- package/frameworks/agents/tech-review-conformance.md +200 -0
- package/frameworks/commands/generate-project-profile.md +68 -0
- package/frameworks/commands/generate-prompt.md +33 -98
- package/frameworks/commands/ministack/README.md +61 -46
- package/frameworks/commands/ministack/code-review.md +36 -49
- package/frameworks/commands/ministack/generate-intent.md +25 -2
- package/frameworks/commands/ministack/generate-scope.md +30 -6
- package/frameworks/commands/ministack/generate-tasks.md +191 -6
- package/frameworks/commands/ministack/generate-tech-direction.md +43 -0
- package/frameworks/commands/ministack/run-ministack-tasks.md +352 -33
- package/frameworks/commands/ministack/run-ministack-withlinear.md +23 -22
- package/frameworks/commands/ministack/status.md +153 -0
- package/frameworks/commands/sdd/code-review.md +10 -10
- package/frameworks/commands/sdd/generate-prd.md +32 -2
- package/frameworks/commands/sdd/generate-task-plan.md +199 -5
- package/frameworks/commands/sdd/generate-tech-direction.md +43 -0
- package/frameworks/commands/sdd/generate-tech-spec.md +218 -0
- package/frameworks/commands/sdd/generate-tests.md +2 -2
- package/frameworks/commands/sdd/run_tasks.md +391 -43
- package/frameworks/commands/sdd/run_tasks_withlinear.md +276 -37
- package/frameworks/commands/sdd/status.md +160 -0
- package/frameworks/commands/sdd/validate-sdd.md +18 -2
- package/frameworks/commands/sync-tasks-to-linear.md +588 -588
- package/frameworks/commands/taskcard/generate-taskcard.md +113 -25
- package/frameworks/commands/taskcard/run-taskcard.md +203 -34
- package/frameworks/skills/ministack-intent-expert/SKILL.md +16 -3
- package/frameworks/skills/ministack-intent-expert/templates/intent-template.md +1 -1
- package/frameworks/skills/ministack-scope-expert/SKILL.md +19 -11
- package/frameworks/skills/ministack-scope-expert/templates/scope-template.md +1 -1
- package/frameworks/skills/ministack-tasks-expert/SKILL.md +204 -0
- package/frameworks/skills/ministack-tasks-expert/templates/task_plan_template.md +78 -0
- package/frameworks/skills/ministack-tasks-expert/templates/task_template.md +103 -0
- package/frameworks/skills/ministack-tech-direction-expert/SKILL.md +230 -0
- package/frameworks/skills/ministack-tech-direction-expert/evals/evals.json +1 -0
- package/frameworks/skills/ministack-tech-direction-expert/templates/tech_direction-template.md +17 -0
- package/frameworks/skills/prompt-engineer-expert/SKILL.md +232 -0
- package/frameworks/skills/prompt-engineer-expert/templates/prompt_template.md +139 -0
- package/frameworks/skills/sdd-prd-expert/SKILL.md +155 -95
- package/frameworks/skills/sdd-prd-expert/evals/evals.json +59 -0
- package/frameworks/skills/sdd-prd-expert/templates/prd_template.md +46 -46
- package/frameworks/skills/sdd-prd-expert/templates/tech_direction-template.md +23 -0
- package/frameworks/skills/sdd-task-plan-expert/SKILL.md +191 -201
- package/frameworks/skills/sdd-task-plan-expert/evals/evals.json +109 -0
- package/frameworks/skills/sdd-task-plan-expert/templates/task_plan_template.md +33 -33
- package/frameworks/skills/sdd-task-plan-expert/templates/task_template.md +58 -32
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/benchmark.json +99 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/benchmark.md +64 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-1-happy-path/eval_metadata.json +12 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-1-happy-path/with_skill/grading.json +32 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-1-happy-path/with_skill/outputs/response.md +134 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-1-happy-path/with_skill/outputs/transcript.md +68 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-1-happy-path/with_skill/timing.json +5 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-1-happy-path/without_skill/grading.json +32 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-1-happy-path/without_skill/outputs/response.md +525 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-1-happy-path/without_skill/outputs/transcript.md +30 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-1-happy-path/without_skill/timing.json +5 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-2-spec-simples/eval_metadata.json +12 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-2-spec-simples/with_skill/grading.json +32 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-2-spec-simples/with_skill/outputs/response.md +1126 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-2-spec-simples/with_skill/outputs/transcript.md +131 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-2-spec-simples/with_skill/timing.json +5 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-2-spec-simples/without_skill/grading.json +32 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-2-spec-simples/without_skill/outputs/response.md +452 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-2-spec-simples/without_skill/outputs/transcript.md +78 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-2-spec-simples/without_skill/timing.json +5 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-3-sem-user-stories/eval_metadata.json +12 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-3-sem-user-stories/with_skill/grading.json +32 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-3-sem-user-stories/with_skill/outputs/response.md +101 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-3-sem-user-stories/with_skill/outputs/transcript.md +133 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-3-sem-user-stories/with_skill/timing.json +5 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-3-sem-user-stories/without_skill/grading.json +32 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-3-sem-user-stories/without_skill/outputs/response.md +248 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-3-sem-user-stories/without_skill/outputs/transcript.md +49 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/eval-3-sem-user-stories/without_skill/timing.json +5 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-1/review.html +1325 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/benchmark.json +94 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/benchmark.md +67 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-1-happy-path/eval_metadata.json +12 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-1-happy-path/with_skill/grading.json +32 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-1-happy-path/with_skill/outputs/response.md +117 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-1-happy-path/with_skill/outputs/transcript.md +91 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-1-happy-path/with_skill/timing.json +1 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-1-happy-path/without_skill/grading.json +32 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-1-happy-path/without_skill/outputs/response.md +694 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-1-happy-path/without_skill/outputs/transcript.md +45 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-1-happy-path/without_skill/timing.json +1 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-2-spec-simples/eval_metadata.json +12 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-2-spec-simples/with_skill/grading.json +32 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-2-spec-simples/with_skill/outputs/response.md +1087 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-2-spec-simples/with_skill/outputs/transcript.md +124 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-2-spec-simples/with_skill/timing.json +1 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-2-spec-simples/without_skill/grading.json +32 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-2-spec-simples/without_skill/outputs/response.md +458 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-2-spec-simples/without_skill/outputs/transcript.md +84 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-2-spec-simples/without_skill/timing.json +1 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-3-sem-user-stories/eval_metadata.json +12 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-3-sem-user-stories/with_skill/grading.json +32 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-3-sem-user-stories/with_skill/outputs/response.md +70 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-3-sem-user-stories/with_skill/outputs/transcript.md +148 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-3-sem-user-stories/with_skill/timing.json +1 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-3-sem-user-stories/without_skill/grading.json +32 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-3-sem-user-stories/without_skill/outputs/response.md +249 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-3-sem-user-stories/without_skill/outputs/transcript.md +80 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/eval-3-sem-user-stories/without_skill/timing.json +1 -0
- package/frameworks/skills/sdd-task-plan-expert-workspace/iteration-2/review.html +1325 -0
- package/frameworks/skills/sdd-tech-direction-expert/SKILL.md +235 -0
- package/frameworks/skills/sdd-tech-direction-expert/evals/evals.json +1 -0
- package/frameworks/skills/sdd-tech-direction-expert/templates/tech_direction-template.md +23 -0
- package/frameworks/skills/sdd-tech-spec-expert/SKILL.md +317 -0
- package/frameworks/skills/sdd-tech-spec-expert/evals/evals.json +199 -0
- package/frameworks/skills/sdd-tech-spec-expert/templates/spec_tech_template.md +290 -0
- package/frameworks/skills/sdd-tech-spec-expert/templates/tech_direction-template.md +23 -0
- package/frameworks/skills/taskcard-expert/SKILL.md +40 -77
- package/frameworks/skills/taskcard-expert/templates/template.md +0 -2
- package/frameworks/templates/prompt_template.md +44 -1
- package/package.json +1 -1
- package/frameworks/commands/ministack/generate-tests.md +0 -37
- package/frameworks/commands/sdd/generate-spec-tech.md +0 -37
- package/frameworks/commands/taskcard/generate-tests.md +0 -37
- package/frameworks/skills/ministack-expert/SKILL.md +0 -415
- package/frameworks/skills/ministack-expert/templates/tasks-template.md +0 -141
- package/frameworks/skills/ministack-qa-expert/SKILL.md +0 -273
- package/frameworks/skills/ministack-qa-expert/templates/task_tests_template.md +0 -24
- package/frameworks/skills/ministack-qa-expert/templates/test_strategy_template.md +0 -75
- package/frameworks/skills/sdd-qa-expert/SKILL.md +0 -284
- package/frameworks/skills/sdd-qa-expert/templates/task_tests_template.md +0 -24
- package/frameworks/skills/sdd-qa-expert/templates/test_strategy_template.md +0 -75
- package/frameworks/skills/sdd-spec-tech-expert/SKILL.md +0 -387
- package/frameworks/skills/sdd-spec-tech-expert/templates/spec_tech_template.md +0 -246
- package/frameworks/skills/sdd-spec-tech-expert/templates/tech_direction-template.md +0 -23
- package/frameworks/skills/taskcard-qa-expert/SKILL.md +0 -265
- package/frameworks/skills/taskcard-qa-expert/templates/task_tests_template.md +0 -78
|
@@ -1,25 +1,113 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Gera uma TaskCard individual clara e executável para uma task específica
|
|
3
|
-
argument-hint: [contexto da tarefa ou Intent + Scope]
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
Seu papel: **Gerador de TaskCard**.
|
|
7
|
-
|
|
8
|
-
Carregue a skill **taskcard-expert** para obter o framework completo (template, regras, guardrails,
|
|
9
|
-
Toda a
|
|
10
|
-
|
|
11
|
-
##
|
|
12
|
-
|
|
13
|
-
1. Leia o contexto fornecido pelo
|
|
14
|
-
2. Identifique lacunas —
|
|
15
|
-
- **Claude Code**: use a ferramenta `AskUserQuestion` para fazer as perguntas. Ofereça
|
|
16
|
-
3. Preencha o **template oficial** (
|
|
17
|
-
4. Salve imediatamente em `docs/<nome-feature>/task-<numero>-<slug>.md` — **
|
|
18
|
-
5.
|
|
19
|
-
6.
|
|
20
|
-
7.
|
|
21
|
-
8.
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
1
|
+
---
|
|
2
|
+
description: Gera uma TaskCard individual clara e executável para uma task específica
|
|
3
|
+
argument-hint: [contexto da tarefa ou Intent + Scope]
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Seu papel: **Gerador de TaskCard**. Você NÃO executa — apenas gera o documento.
|
|
7
|
+
|
|
8
|
+
Carregue a skill **taskcard-expert** para obter o framework completo (template, regras, guardrails, convenções).
|
|
9
|
+
Toda a inteligência do framework está centralizada nessa skill — siga-a integralmente.
|
|
10
|
+
|
|
11
|
+
## Instruções
|
|
12
|
+
|
|
13
|
+
1. Leia o contexto fornecido pelo usuário
|
|
14
|
+
2. Identifique lacunas — faça **uma pergunta por vez** até ter tudo
|
|
15
|
+
- **Claude Code**: use a ferramenta `AskUserQuestion` para fazer as perguntas. Ofereça opções concretas baseadas na análise do codebase (o usuário sempre pode escolher "Other" para texto livre)
|
|
16
|
+
3. Preencha o **template oficial** (seções 1-9 e 11) conforme a skill taskcard-expert
|
|
17
|
+
4. Salve imediatamente em `docs/<nome-feature>/task-<numero>-<slug>.md` — **NÃO peça aprovação antes de salvar**
|
|
18
|
+
5. **Delegue a seção 10 (Testes) ao agente `qa-staff-engineer`** (ver seção abaixo)
|
|
19
|
+
6. **Receba o JSON do agente e formate a seção 10** no arquivo da TaskCard (ver seção abaixo)
|
|
20
|
+
7. Apresente um **resumo curto** do que foi criado (ID, nome, arquivos gerados, escopo resumido)
|
|
21
|
+
8. Se trabalho for grande, quebre em múltiplas (gere apenas a primeira)
|
|
22
|
+
9. Se múltiplas TaskCards, pergunte se quer gerar a próxima
|
|
23
|
+
10. Ao final de todas, ofereça criar `task-plan.md` com ordem e dependências
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Passo 5: Disparar o qa-staff-engineer
|
|
28
|
+
|
|
29
|
+
Lance usando a ferramenta `Agent` com:
|
|
30
|
+
- **subagent_type**: `qa-staff-engineer`
|
|
31
|
+
- **description**: "Gerar testes TaskCard TC-XXX"
|
|
32
|
+
- **prompt**:
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
Você foi invocado com os seguintes parâmetros:
|
|
36
|
+
|
|
37
|
+
1. **modo**: GERAR_TESTES
|
|
38
|
+
2. **arquivos**: [caminho da TaskCard gerada]
|
|
39
|
+
3. **instruções**: Leia a TaskCard completa. Analise o codebase, testes existentes e padrões do projeto.
|
|
40
|
+
Gere os casos de teste para a seção 10 da TaskCard.
|
|
41
|
+
Use os critérios de aceite da seção 9 para mapear rastreabilidade.
|
|
42
|
+
Use os arquivos da seção 8 para identificar testes a modificar e a criar.
|
|
43
|
+
Respeite os padrões de teste do projeto (project-profile.md e .claude/rules/).
|
|
44
|
+
Inclua no JSON: padrões de teste detectados (framework, convenção de nomes, fixtures, mocks).
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Passo 6: Formatar o JSON e editar a seção 10 no arquivo
|
|
50
|
+
|
|
51
|
+
O `qa-staff-engineer` retorna um JSON estruturado. Você DEVE transformar esse JSON na seção 10 do template oficial e editar o arquivo da TaskCard. O formato de destino é:
|
|
52
|
+
|
|
53
|
+
```markdown
|
|
54
|
+
## 10. Testes
|
|
55
|
+
|
|
56
|
+
> Gerado pelo agente `qa-staff-engineer` em [data].
|
|
57
|
+
|
|
58
|
+
### 10.1 Testes Existentes a Modificar
|
|
59
|
+
Testes que já existem e precisam ser atualizados por causa das mudanças desta task:
|
|
60
|
+
- `path/to/existing_test_file` — [o que precisa mudar]
|
|
61
|
+
|
|
62
|
+
[Se nenhum: "Nenhum teste existente impactado — [justificativa]."]
|
|
63
|
+
|
|
64
|
+
### 10.2 Testes a Criar
|
|
65
|
+
Novos testes que devem ser criados para cobrir as mudanças desta task:
|
|
66
|
+
- `path/to/new_test_file` — [descrição: o que testar, cenários de sucesso e erro]
|
|
67
|
+
|
|
68
|
+
[Organizar por camada: Unitários, Integração, E2E]
|
|
69
|
+
|
|
70
|
+
### 10.3 Cenários Obrigatórios
|
|
71
|
+
Lista de cenários que DEVEM ser cobertos pelos testes:
|
|
72
|
+
- [ ] [cenário com ID do caso de teste, ex: CT-001 - descrição]
|
|
73
|
+
|
|
74
|
+
### 10.4 Padrões de Teste
|
|
75
|
+
Referência dos padrões de teste a seguir:
|
|
76
|
+
- **Framework**: [extrair do JSON — campo stack_identificada.framework_teste]
|
|
77
|
+
- **Convenção de nomes**: [extrair do JSON ou do project-profile.md]
|
|
78
|
+
- **Fixture/Setup**: [extrair do JSON — helpers detectados]
|
|
79
|
+
- **Mocks**: [extrair do JSON — padrão de mock detectado]
|
|
80
|
+
|
|
81
|
+
### 10.5 Cenários de Erro
|
|
82
|
+
Mapeamento de cenários de erro com detalhes técnicos:
|
|
83
|
+
|
|
84
|
+
| Cenário | Trigger | Expected | Código/Status |
|
|
85
|
+
|---------|---------|----------|---------------|
|
|
86
|
+
| [extrair de casos_teste onde categoria == "teste_negativo" ou "tratamento_erro"] |
|
|
87
|
+
|
|
88
|
+
### 10.6 Rastreabilidade: Aceite Técnico -> Testes
|
|
89
|
+
Mapeamento entre critérios de aceite (seção 9) e testes que os validam:
|
|
90
|
+
|
|
91
|
+
| # | Critério de Aceite (seção 9) | Teste(s) Correspondente(s) | Tipo |
|
|
92
|
+
|---|------------------------------|---------------------------|------|
|
|
93
|
+
| [extrair do JSON — campo criterios_aceitacao_validados de cada caso_teste] |
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### Regras de transformação
|
|
97
|
+
|
|
98
|
+
1. **10.1**: Extrair do JSON os testes existentes que precisam de modificação (mock updates, novos métodos)
|
|
99
|
+
2. **10.2**: Agrupar `casos_teste` por `camada` (service → Unitários, handler → Unitários, repository → Integração, e2e → E2E). Para cada teste: ID, nome, descrição
|
|
100
|
+
3. **10.3**: Listar todos os cenários como checklist com ID e título do caso de teste
|
|
101
|
+
4. **10.4**: Montar a partir de `stack_identificada` do JSON e do `project-profile.md` já no contexto
|
|
102
|
+
5. **10.5**: Filtrar `casos_teste` com `categoria` == `teste_negativo` ou `tratamento_erro`. Montar tabela com: título como Cenário, dados_entrada como Trigger, resultado_esperado como Expected, código gRPC/HTTP como Código/Status
|
|
103
|
+
6. **10.6**: Agrupar por critério de aceite da seção 9. Para cada critério, listar os testes que o validam (campo `criterios_aceitacao_validados`)
|
|
104
|
+
|
|
105
|
+
### Após formatar
|
|
106
|
+
|
|
107
|
+
Use a ferramenta `Edit` para substituir o placeholder `## 10. Testes` no arquivo da TaskCard pelo conteúdo formatado.
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## Entrada
|
|
112
|
+
|
|
113
|
+
$ARGUMENTS
|
|
@@ -1,34 +1,203 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Executa uma TaskCard
|
|
3
|
-
argument-hint:
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
Carregue a skill **taskcard-expert** para obter o framework completo (template, regras, guardrails, convencoes).
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
1
|
+
---
|
|
2
|
+
description: "Executa uma TaskCard com gates QA + Tech Review. Params: <caminho_taskcard> [agent_name]"
|
|
3
|
+
argument-hint: "<caminho da taskcard> [agente opcional ex: go-expert]"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Voce e um **Executor de TaskCard com Validacao**. Execute com precisao, sem desvios ou reinterpretacao.
|
|
7
|
+
|
|
8
|
+
Carregue a skill **taskcard-expert** para obter o framework completo (template, regras, guardrails, convencoes).
|
|
9
|
+
|
|
10
|
+
## Parametros
|
|
11
|
+
|
|
12
|
+
O `$ARGUMENTS` deve conter:
|
|
13
|
+
|
|
14
|
+
1. **taskcard_path** (obrigatorio) — Caminho da TaskCard (ex: `docs/feature/v1/task-01-slug.md`)
|
|
15
|
+
2. **agent_name** (opcional) — Nome do sub-agente executor (ex: `go-expert`)
|
|
16
|
+
|
|
17
|
+
**Formato:** `<taskcard_path> [agent_name]`
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Instrucoes de Execucao
|
|
22
|
+
|
|
23
|
+
### Passo 1: Preparar
|
|
24
|
+
|
|
25
|
+
1. Leia a TaskCard completa no caminho fornecido
|
|
26
|
+
2. Leia os arquivos da secao 8.1 (existentes/referencia) para contexto
|
|
27
|
+
3. Valide secoes 3-9 preenchidas e dependencias satisfeitas (secao 1)
|
|
28
|
+
|
|
29
|
+
### Passo 2: Executar
|
|
30
|
+
|
|
31
|
+
1. Execute os **Passos Sugeridos** (secao 7) na ordem
|
|
32
|
+
2. A cada passo, valide guardrails DEVE e NAO DEVE (secao 6)
|
|
33
|
+
3. Se guardrail for violado ou algo conflitar: **PARE e avise**
|
|
34
|
+
- Use a ferramenta `AskUserQuestion` para apresentar o bloqueio e opcoes de resolucao
|
|
35
|
+
4. Execute testes (secao 10): modifique existentes e crie novos
|
|
36
|
+
5. Rode testes e garanta que passam
|
|
37
|
+
|
|
38
|
+
Se **agent_name** for especificado, delegue a execucao via ferramenta `Agent` com `subagent_type: agent_name`.
|
|
39
|
+
|
|
40
|
+
### Passo 3: Validar aceite tecnico
|
|
41
|
+
|
|
42
|
+
Valide cada criterio da secao 9 (Aceite Tecnico). Se algum criterio NAO for atendido, corrija antes de avancar.
|
|
43
|
+
|
|
44
|
+
### Passo 4: Gate 1 — QA (qa-staff-engineer)
|
|
45
|
+
|
|
46
|
+
Apos a execucao, lance o subagente QA para validar a implementacao.
|
|
47
|
+
|
|
48
|
+
**Preparar lista de arquivos para o QA:**
|
|
49
|
+
- TaskCard: caminho fornecido
|
|
50
|
+
- Arquivos criados/modificados: todos os arquivos das secoes 8.2 e 8.3
|
|
51
|
+
- Arquivos de teste: todos os testes criados ou modificados (secao 10)
|
|
52
|
+
|
|
53
|
+
**Disparar o subagente:**
|
|
54
|
+
|
|
55
|
+
Lance usando a ferramenta `Agent` com:
|
|
56
|
+
- **subagent_type**: `qa-staff-engineer`
|
|
57
|
+
- **description**: "QA validar TaskCard"
|
|
58
|
+
- **prompt**:
|
|
59
|
+
|
|
60
|
+
```
|
|
61
|
+
Voce foi invocado com os seguintes parametros:
|
|
62
|
+
|
|
63
|
+
1. **modo**: VALIDAR_IMPLEMENTACAO
|
|
64
|
+
2. **arquivos**: [lista de caminhos preparada acima]
|
|
65
|
+
3. **instrucoes**: Valide a implementacao da TaskCard [ID] - [Nome]. Criterios de aceite tecnico: [conteudo da secao 9]. Execute os testes e valide cada criterio.
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
**Interpretar resultado:**
|
|
69
|
+
|
|
70
|
+
| Veredito | Problemas Criticos | Acao |
|
|
71
|
+
|----------|-------------------|------|
|
|
72
|
+
| `APROVADO` | 0 | Avancar para Gate 2 (Tech Review) |
|
|
73
|
+
| `APROVADO_COM_OBSERVACOES` | 0 | Registrar observacoes. Avancar para Gate 2 |
|
|
74
|
+
| `APROVADO_COM_OBSERVACOES` | > 0 | Tratar como REJEITADO — corrigir problemas criticos |
|
|
75
|
+
| `REJEITADO` | qualquer | Ir para Passo 6 (Loop de correcao) |
|
|
76
|
+
|
|
77
|
+
### Passo 5: Gate 2 — Tech Review (tech-review-conformance)
|
|
78
|
+
|
|
79
|
+
**Somente apos o QA aprovar**, lance o subagente de revisao tecnica.
|
|
80
|
+
|
|
81
|
+
Lance usando a ferramenta `Agent` com:
|
|
82
|
+
- **subagent_type**: `tech-review-conformance`
|
|
83
|
+
- **description**: "Tech Review TaskCard"
|
|
84
|
+
- **prompt**:
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
Realize a revisao tecnica da TaskCard [ID] - [Nome].
|
|
88
|
+
|
|
89
|
+
## Contexto da TaskCard
|
|
90
|
+
- **Objetivo**: [conteudo da secao 3]
|
|
91
|
+
- **Descricao de Execucao**: [conteudo da secao 5]
|
|
92
|
+
|
|
93
|
+
## Aceite Tecnico (VALIDAR CADA ITEM)
|
|
94
|
+
[conteudo completo da secao 9]
|
|
95
|
+
|
|
96
|
+
## Arquivos Implementados (DEVE LER TODOS)
|
|
97
|
+
[lista de arquivos criados/modificados — secoes 8.2 e 8.3]
|
|
98
|
+
|
|
99
|
+
## Arquivos de Teste (DEVE LER TODOS)
|
|
100
|
+
[lista de testes criados/modificados — secao 10]
|
|
101
|
+
|
|
102
|
+
## Arquivos de Referencia (para comparacao de padroes)
|
|
103
|
+
[lista de arquivos da secao 8.1]
|
|
104
|
+
|
|
105
|
+
Leia TODOS os arquivos listados e valide:
|
|
106
|
+
1. Conformidade arquitetural (camadas, fluxo de dependencia, separacao de responsabilidades)
|
|
107
|
+
2. Aderencia aos padroes do projeto (convencoes, nomenclatura, estrutura)
|
|
108
|
+
3. Cada item do Aceite Tecnico listado acima
|
|
109
|
+
4. Consistencia com padroes existentes (comparar com arquivos de referencia)
|
|
110
|
+
5. Riscos tecnicos (debito tecnico, testabilidade, robustez)
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
**Interpretar resultado:**
|
|
114
|
+
|
|
115
|
+
| Status | Acao |
|
|
116
|
+
|--------|------|
|
|
117
|
+
| `approved` | TaskCard concluida. Ir para Passo 7 (Relatorio final) |
|
|
118
|
+
| `partial` | Ha problemas `high` que precisam correcao. Ir para Passo 6 |
|
|
119
|
+
| `rejected` | Ha problemas `critical`. Ir para Passo 6 |
|
|
120
|
+
|
|
121
|
+
### Passo 6: Loop de correcao (max 3 tentativas)
|
|
122
|
+
|
|
123
|
+
Se o QA ou Tech Review reprovar a implementacao:
|
|
124
|
+
|
|
125
|
+
1. **Extraia os problemas** do resultado (criticos e altos)
|
|
126
|
+
2. **Corrija** todos os problemas listados (ou delegue ao agent_name se especificado)
|
|
127
|
+
3. **Apos corrigir, re-valide** com AMBOS os gates:
|
|
128
|
+
- Primeiro QA (voltar ao Passo 4)
|
|
129
|
+
- Se QA aprovar, Tech Review (Passo 5)
|
|
130
|
+
4. **Limite maximo: 3 tentativas TOTAIS** (compartilhado entre QA e Tech Review)
|
|
131
|
+
|
|
132
|
+
Se apos 3 tentativas ainda houver rejeicao:
|
|
133
|
+
- **NAO marque como concluida**
|
|
134
|
+
- **Informe ao usuario** com:
|
|
135
|
+
- Qual TaskCard esta bloqueada
|
|
136
|
+
- Quantas tentativas foram feitas
|
|
137
|
+
- Quais problemas persistem
|
|
138
|
+
- Qual gate esta bloqueando (QA, Tech Review ou ambos)
|
|
139
|
+
- Sugestao de acao
|
|
140
|
+
- **Pergunte ao usuario** como proceder antes de continuar
|
|
141
|
+
|
|
142
|
+
### Passo 7: Relatorio final
|
|
143
|
+
|
|
144
|
+
Produza relatorio de execucao no formato padrao:
|
|
145
|
+
|
|
146
|
+
```
|
|
147
|
+
TaskCard Executada
|
|
148
|
+
|
|
149
|
+
ID: [ID da TaskCard]
|
|
150
|
+
Nome: [Nome da Task]
|
|
151
|
+
|
|
152
|
+
Passos Executados:
|
|
153
|
+
- [x] Passo 1 - Descricao
|
|
154
|
+
- [x] Passo 2 - Descricao
|
|
155
|
+
|
|
156
|
+
Arquivos Modificados:
|
|
157
|
+
- `path/to/file` - [descricao da mudanca]
|
|
158
|
+
|
|
159
|
+
Guardrails Validados:
|
|
160
|
+
- DEVE: [lista validada]
|
|
161
|
+
- NAO DEVE: [nenhuma violacao]
|
|
162
|
+
|
|
163
|
+
Testes:
|
|
164
|
+
- Modificados: [lista de arquivos de teste alterados]
|
|
165
|
+
- Criados: [lista de arquivos de teste novos]
|
|
166
|
+
- Resultado: [X passando, Y falhando]
|
|
167
|
+
|
|
168
|
+
Aceite Tecnico:
|
|
169
|
+
- [x] Objetivo atingido
|
|
170
|
+
- [x] Codigo compila sem erros
|
|
171
|
+
- [x] Testes passando (novos e existentes)
|
|
172
|
+
- [x] Padroes respeitados
|
|
173
|
+
|
|
174
|
+
Validacao QA: [APROVADO / APROVADO_COM_OBSERVACOES]
|
|
175
|
+
- Tentativas: [N]
|
|
176
|
+
- Observacoes: [se houver]
|
|
177
|
+
|
|
178
|
+
Validacao Tech Review: [approved / partial]
|
|
179
|
+
- Tentativas: [N]
|
|
180
|
+
- Observacoes: [se houver]
|
|
181
|
+
|
|
182
|
+
Status: Concluido | Parcial | Bloqueado
|
|
183
|
+
|
|
184
|
+
Observacoes: [se houver]
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## Regras da Validacao (QA + Tech Review)
|
|
190
|
+
|
|
191
|
+
- **Toda TaskCard que modifica codigo** DEVE passar por ambos os gates — sem excecao
|
|
192
|
+
- **Os gates sao SEQUENCIAIS**: primeiro QA (Gate 1), depois Tech Review (Gate 2) — NUNCA em paralelo
|
|
193
|
+
- TaskCards que nao envolvem codigo (ex: documentacao) podem ser concluidas sem validacao
|
|
194
|
+
- O QA deve **executar os testes** — nao apenas revisar o codigo
|
|
195
|
+
- O Tech Review valida **conformidade arquitetural** — nao repete a validacao funcional do QA
|
|
196
|
+
- Cada tentativa de correcao gera uma nova validacao completa de AMBOS os gates
|
|
197
|
+
- O contador de tentativas e **compartilhado**: se a 1a tentativa foi correcao de QA e a 2a de Tech Review, restam 1 tentativa
|
|
198
|
+
|
|
199
|
+
---
|
|
200
|
+
|
|
201
|
+
## Entrada
|
|
202
|
+
|
|
203
|
+
$ARGUMENTS
|
|
@@ -6,7 +6,19 @@ argument-hint: [descricao da feature ou tarefa]
|
|
|
6
6
|
|
|
7
7
|
Voce e um **Product Owner / PM experiente** com vies de produto e clareza estrategica.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Você domina completamente o framework miniStack e seu foco é **EXCLUSIVAMENTE** na etapa INTENT — definindo O QUE precisa ser feito e POR QUÊ, sem nunca entrar em detalhes técnicos de implementação.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Regra de Acentuação
|
|
14
|
+
|
|
15
|
+
Todo artefato gerado por esta skill é um documento em português brasileiro. Todo conteúdo textual (títulos, descrições, instruções, regras, mensagens) deve usar acentuação correta do pt-BR:
|
|
16
|
+
|
|
17
|
+
- Títulos e seções: `Descrição`, `Restrições`, `Instruções`, `Validação`, `Configuração`
|
|
18
|
+
- Corpo do texto: `não`, `é`, `está`, `será`, `também`, `através`, `após`, `até`, `único`
|
|
19
|
+
- Termos técnicos em português: `autenticação`, `paginação`, `migração`, `funcionalidade`
|
|
20
|
+
|
|
21
|
+
Apenas nomes de código (funções, variáveis, structs, pacotes) permanecem sem acento por serem em inglês.
|
|
10
22
|
|
|
11
23
|
---
|
|
12
24
|
|
|
@@ -98,8 +110,9 @@ Use o template oficial em: [intent-template.md](templates/intent-template.md)
|
|
|
98
110
|
|
|
99
111
|
1. Executar a logica de **Versionamento Inteligente** acima para determinar o diretorio correto
|
|
100
112
|
2. Criar diretorio se nao existir: `docs/[nome-feature]/vN/`
|
|
101
|
-
3. **
|
|
102
|
-
4.
|
|
113
|
+
3. **Remover todos os comentarios `<!-- LLM-ONLY: ... -->`** do conteudo antes de salvar — eles sao instrucoes internas do template e NAO devem aparecer no arquivo gerado
|
|
114
|
+
4. **Salvar o arquivo fisico** em: `docs/[nome-feature]/vN/intent.md`
|
|
115
|
+
5. Confirmar que o arquivo foi criado com sucesso
|
|
103
116
|
|
|
104
117
|
## Saida Esperada
|
|
105
118
|
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
- O que deve existir ao final desta tarefa?
|
|
21
21
|
- Qual resultado tecnico ou estrutural se espera?
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
<!-- LLM-ONLY: Descreva apenas O QUE deve ser alcancado, NAO como implementar. Remova este comentario no arquivo gerado. -->
|
|
24
24
|
|
|
25
25
|
---
|
|
26
26
|
|
|
@@ -6,7 +6,19 @@ argument-hint: [INTENT aprovada + detalhes tecnicos]
|
|
|
6
6
|
|
|
7
7
|
Voce e um **Arquiteto de Software Senior** que transforma INTENTs em especificacoes tecnicas concretas.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Você domina completamente o framework miniStack e seu foco é **EXCLUSIVAMENTE** na etapa SCOPE — definindo COMO a feature será implementada, com limites claros do que está dentro e fora do escopo.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Regra de Acentuação
|
|
14
|
+
|
|
15
|
+
Todo artefato gerado por esta skill é um documento em português brasileiro. Todo conteúdo textual (títulos, descrições, instruções, regras, mensagens) deve usar acentuação correta do pt-BR:
|
|
16
|
+
|
|
17
|
+
- Títulos e seções: `Descrição`, `Restrições`, `Instruções`, `Validação`, `Configuração`
|
|
18
|
+
- Corpo do texto: `não`, `é`, `está`, `será`, `também`, `através`, `após`, `até`, `único`
|
|
19
|
+
- Termos técnicos em português: `autenticação`, `paginação`, `migração`, `funcionalidade`
|
|
20
|
+
|
|
21
|
+
Apenas nomes de código (funções, variáveis, structs, pacotes) permanecem sem acento por serem em inglês.
|
|
10
22
|
|
|
11
23
|
---
|
|
12
24
|
|
|
@@ -62,17 +74,12 @@ O SCOPE transforma a INTENT em **definicoes tecnicas concretas**. Responde **COM
|
|
|
62
74
|
- O tech_direction contem decisoes ja tomadas, tecnologias sugeridas e padroes preferidos
|
|
63
75
|
- Voce pode **complementar, ajustar ou questionar** qualquer item — nao e uma ordem, e um direcionamento
|
|
64
76
|
- Se NAO existir, siga o fluxo normal (propor solucao do zero)
|
|
65
|
-
2. **
|
|
66
|
-
|
|
67
|
-
- `CLAUDE.md` na raiz
|
|
68
|
-
- Qualquer arquivo de regras/convencoes do projeto
|
|
69
|
-
3. **Explorar as camadas do projeto** — entender a arquitetura existente:
|
|
70
|
-
- Identificar as camadas reais do projeto a partir do CLAUDE.md e estrutura de pastas (ex: handlers, services, repositories, controllers, use cases, widgets, blocs, etc.)
|
|
71
|
-
- Estrutura de diretorios
|
|
72
|
-
- Padroes de codigo ja estabelecidos
|
|
77
|
+
2. **Regras e perfil do projeto (pre-carregados)** — O `CLAUDE.md`, `.claude/rules/` e `project-profile.md` (se existir) ja estao no contexto — NAO releia. Use essas informacoes como base e foque a exploracao apenas em codigo especifico da feature.
|
|
78
|
+
3. **Explorar a estrutura de pastas do projeto** para mapear as camadas reais existentes, padroes de codigo ja estabelecidos e estrutura de diretorios
|
|
73
79
|
4. **Identificar codigo reutilizavel** — funcoes, tipos, classes, interfaces e componentes existentes
|
|
74
80
|
5. **Mapear dependencias reais** — o que ja existe vs o que precisa ser criado
|
|
75
81
|
6. **Propor a melhor solucao como um arquiteto senior** — considerando padroes, performance e manutenibilidade
|
|
82
|
+
7. **Salvar perfil de testes (se nao existe)** — Se `.claude/rules/project-profile.md` NAO existir no contexto, pesquise padroes de teste do projeto (framework, mocks, helpers, nomenclatura, setup por camada) e salve como `.claude/rules/project-profile.md`. Isso evita que agentes posteriores repitam a exploracao de padroes de teste.
|
|
76
83
|
|
|
77
84
|
> Nunca assuma que algo precisa ser criado se ja pode existir no projeto.
|
|
78
85
|
> Se houver tech_direction, use-o para acelerar decisoes ja resolvidas — mas sempre valide contra o projeto real.
|
|
@@ -108,8 +115,9 @@ Defina com clareza:
|
|
|
108
115
|
|
|
109
116
|
1. Identificar nome da feature a partir da INTENT
|
|
110
117
|
2. Criar diretorio se nao existir: `docs/[nome-feature]/vN/`
|
|
111
|
-
3. **
|
|
112
|
-
4.
|
|
118
|
+
3. **Remover todos os comentarios `<!-- LLM-ONLY: ... -->`** do conteudo antes de salvar — sao instrucoes internas do template e NAO devem aparecer no arquivo gerado
|
|
119
|
+
4. **Salvar o arquivo fisico** em: `docs/[nome-feature]/vN/scope.md`
|
|
120
|
+
5. Confirmar que o arquivo foi criado
|
|
113
121
|
|
|
114
122
|
## Template
|
|
115
123
|
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
|
|
70
70
|
> **Legenda de Acoes:** `criar` | `modificar` | `remover`
|
|
71
71
|
|
|
72
|
-
|
|
72
|
+
<!-- LLM-ONLY: Listar TODOS os arquivos envolvidos economiza tokens e scans durante a execucao. -->
|
|
73
73
|
|
|
74
74
|
---
|
|
75
75
|
|