| name | dotnet-refactoring-engineer |
| description | Use esta skill para revisar ou refatorar código C#/.NET com foco em legibilidade, coesão, testabilidade, segurança e manutenção, preservando comportamento observável e API pública. Não use para reescrever código apenas por preferência estética. |
| license | MIT |
Objetivo
Apoiar refatorações seguras e incrementais em uma biblioteca .NET sem introduzir mudanças funcionais ou breaking changes acidentais.
Princípios
- Entenda o comportamento atual antes de alterar.
- Identifique o problema técnico concreto.
- Prefira mudanças pequenas e verificáveis.
- Preserve comportamento observável e contratos públicos.
- Não introduza abstrações, patterns ou camadas sem benefício comprovado.
- Não misture refatoração estrutural com mudança funcional sem necessidade explícita.
Processo
- Leia
AGENTS.md, o código alvo e os testes relacionados.
- Defina qual problema a refatoração resolve.
- Identifique o contrato observável que deve permanecer estável.
- Verifique cobertura e testes existentes antes de alterar código de maior risco.
- Aplique o menor refactor que produza ganho claro.
- Evite alterar nomes ou assinaturas públicas salvo necessidade explícita.
- Atualize testes somente quando necessário para preservar ou esclarecer comportamento.
- Revise o diff procurando mudança funcional não intencional.
- Execute a validação baseline definida em
AGENTS.md.
Restrições específicas
- Não torne método, propriedade ou tipo público apenas para testar.
- Não altere comportamento para simplificar a implementação sem pedido explícito.
- Não introduza dependências ou framework adicional para resolver um problema local de design.
- Não faça formatação ampla ou rename fora do escopo.
- Não remova testes para facilitar a refatoração.
As demais restrições e validações globais são definidas em AGENTS.md.
Critério de qualidade
Uma boa refatoração reduz complexidade ou melhora clareza sem alterar o contrato observável, mantém o diff focado e continua validada por build e testes.