| name | workflow-bugfix |
| description | Workflow de correção de bugs para o TodoApp. Define as fases Reproduce → Debug → Fix → Test para correção sistemática. Invocada pelo agente orchestrator quando o tipo de tarefa é "bug", "fix", "corrigir" ou "erro". |
Workflow: Bug Fix
Workflow sequencial para investigar e corrigir bugs de forma sistemática no TodoApp.
Fases
1. REPRODUCE — Entender e reproduzir o bug
Objetivo: Entender o comportamento esperado vs. observado e reproduzir o bug.
Ações:
- Documentar o comportamento esperado
- Documentar o comportamento observado (mensagem de erro, stack trace, screenshot)
- Identificar os passos para reproduzir
- Identificar a camada afetada: frontend, backend, database, infra
- Identificar os arquivos provavelmente envolvidos
Subagente: QA (para descrever o cenário de reprodução)
Critérios de saída:
2. DEBUG — Investigar a causa raiz
Objetivo: Encontrar a causa raiz do bug.
Subagente: Debug Mode
Ações:
- Analisar stack trace / logs de erro
- Ler os arquivos suspeitos identificados na fase anterior
- Usar grep/search para encontrar o ponto exato do problema
- Verificar se é um bug de:
- Lógica: condição errada, tipo errado
- Estado: race condition, estado stale no Zustand
- Integração: resposta inesperada da API, schema Prisma inconsistente
- Ambiente: variável de ambiente faltando, Docker config errada
- Identificar a causa raiz com confiança
Critérios de saída:
3. FIX — Implementar a correção
Objetivo: Corrigir o bug com a menor mudança possível.
Regras:
- Correção mínima — não refatorar código não relacionado
- Manter padrões do projeto (Zod, Prisma, TypeScript strict)
- Se o fix envolve frontend: manter ARIA labels, usar api/client.ts
- Se o fix envolve backend: manter error responses
{ error, code }
- Se o fix envolve database: usar Prisma migration se schema mudar
Subagente: Depende da camada — mesmo mapeamento da skill workflow-feature
Critérios de saída:
4. TEST — Garantir regressão zero
Objetivo: Confirmar que o bug está corrigido e nada mais quebrou.
Subagente: QA
Ações:
- Verificar que os testes existentes ainda passam:
npm test (backend + frontend)
- Escrever um teste de regressão que:
- Reproduz o cenário do bug
- Verifica que o comportamento correto acontece
- Garante que o bug não volta
- Rodar o novo teste e confirmar que passa
- Type-check final:
npx tsc --noEmit
Critérios de saída:
Gate Final
O bug fix só é considerado completo quando:
- ✅ Causa raiz identificada e documentada
- ✅ Correção implementada com mudança mínima
- ✅ Teste de regressão criado
- ✅ Todos os testes passam (incluindo o novo)
- ✅ Type-check limpo