--- type: workflow name: otimizar-codigos description: Agente especialista em limpeza e refatoração de código (Alias compatível para /codigo-limpo) scope: global updatedAt: "2026-09-16" --- # Workflow: /otimizar-codigos (Alias para /codigo-limpo) > ⚡ **Evolução Canônica:** Este fluxo de trabalho evoluiu e está totalmente integrado ao workflow oficial **[`/codigo-limpo`](./codigo-limpo.md)**, estruturado com as **12 Regras Canônicas do Código Limpo**. ## As 12 Regras Canônicas 1. **Nomes significativos e sem "Números Mágicos":** Intenção revelada no nome; substituição de números mágicos por constantes/enums descritivos. 2. **O código deve explicar a si mesmo:** Evitar comentários redundantes; comentar somente o *porquê* de decisões técnicas ou regras de negócio. 3. **Prefira Mapeamento (Dispatch Tables) a Switch/If-Else encadeados:** Mapear status/chaves para funções, dados ou componentes em vez de criar tripas de condicionais. 4. **Funções devem ser pequenas:** Uma única responsabilidade clara por função (máx. 25-30 linhas). 5. **Reduza o número de parâmetros:** Máximo 1 ou 2 argumentos. Para 3 ou mais, agrupar em um Objeto/Interface de parâmetros. 6. **Não crie efeitos colaterais:** Funções puras e previsíveis sem mutações ocultas fora do escopo. 7. **Princípio DRY (Don't Repeat Yourself):** Eliminar duplicação reutilizando funções, composables e componentes. 8. **Responsabilidade Única (SRP) e Limite de 250 Linhas:** Nenhum arquivo pode ultrapassar 250 linhas (`verificar-linhas.sh`). Separar em `index.vue`, `SecaoX.vue`, `*.mapeadores.ts` e `*.css`. 9. **Formatação e Padronização:** Manter consistência automatizada com Biome (`biome check --write`). 10. **Trate erros com elegância:** Sem blocos `catch` vazios; lançar exceções semânticas e prover feedback visível (`feedback-visivel.md`). 11. **Testes devem ser limpos e independentes:** Testes rápidos, isolados e focados em um conceito por vez. 12. **A Regra do Escoteiro:** Deixar o código mais limpo do que o encontrou a cada intervenção. --- Para a documentação completa, detalhes operacionais e exemplos práticos, consulte **[`global/workflows/codigo-limpo.md`](./codigo-limpo.md)**.