--- name: diagnosticar-saude-backend description: > Diagnóstico sistemático de saúde do backend: rotas, queries, schemas, filas, CRONs e integrações antes de qualquer correção. scope: local --- # Skill: Diagnosticar Saúde do Backend ## Objetivo Analisar a saúde de um módulo backend para identificar problemas antes de corrigi-los. Produz relatório com causa raiz, severidade e plano de ação. ## Pré-condições - Acesso ao pacote `*-back` do módulo - Acesso ao pacote `*-comuns` (schemas de contrato) ## Etapas ### 1. Verificar Integridade de Schemas ```sh # Listar todos os schemas Zod do módulo rg "export const z" --include='*.ts' -comuns/src/tabelas/ -l # Verificar se schemas do comuns são usados no back rg "from.*comuns" --include='*.ts' -back/src/ | head -20 # Detectar schemas redefinidos no back (violação de fronteiras) rg "z\.object\(\{" --include='*.ts' -back/src/ -l ``` ### 2. Verificar Consistência de Rotas ```sh # Listar todas as rotas definidas rg "router\.(get|post|put|patch|delete)" --include='*.ts' -back/src/ -n # Verificar validação de entrada em cada rota rg "zod|parse|safeParse" --include='*.ts' -back/src/rotas/ -l # Detectar rotas sem validação Zod # (comparar lista de rotas vs lista de validações) ``` ### 3. Verificar Saúde de Queries ```sh # Detectar queries sem tratamento de erro rg "\.select\(|\.insert\(|\.update\(|\.delete\(" --include='*.ts' -back/src/ -n # Detectar possíveis N+1 (query dentro de loop) rg "for.*await|forEach.*await|map.*await" --include='*.ts' -back/src/ -n # Verificar transações (queries que deveriam ser atômicas) rg "\.transaction\(" --include='*.ts' -back/src/ -l ``` ### 4. Verificar Filas e CRONs ```sh # Listar processadores de fila rg "process|worker|queue" --include='*.ts' -back/src/filas/ -l # Verificar tratamento de falha em filas rg "catch|onFailed|failedReason" --include='*.ts' -back/src/filas/ -n # Listar CRONs agendados rg "cron|schedule|repeat" --include='*.ts' -back/src/ -n ``` ### 5. Verificar Tipagem e Build ```sh # Checar tipos sem gerar saída npx tsc --noEmit -p -back/tsconfig.json 2>&1 | head -30 # Detectar uso de any rg "as any|: any" --include='*.ts' -back/src/ -n ``` ### 6. Gerar Relatório ```markdown # Diagnóstico Backend — [nome do módulo] ## Resumo - **Rotas analisadas:** N - **Schemas verificados:** N - **Problemas encontrados:** N ## Problemas Detectados ### 🔴 Crítico | Arquivo | Problema | Causa | Ação | |---------|----------|-------|------| ### 🟡 Moderado | Arquivo | Problema | Causa | Ação | |---------|----------|-------|------| ### 🟢 Baixo | Arquivo | Problema | Causa | Ação | |---------|----------|-------|------| ## Plano de Correção (priorizado) 1. ... 2. ... ``` ## Referências - Rule: `global/rules/diagnostico-antes-correcao` - Skill: `global/skills/diagnosticar-antes-corrigir/SKILL` - Rule: `global/rules/zod-validacao-padrao`