O que Code Bloat Triage faz?
Objetivo
Reduzir complexidade injustificada sem sacrificar corretude, tratamento necessário de falhas, acessibilidade, segurança, evidência ou manutenibilidade.
Fluxo de trabalho de triagem
- Identifique o requisito real voltado ao usuário ou de pesquisa e seus testes suportados. Trate funcionalidade e segurança como restrições.
- Faça um inventário de candidatos a inchaço: lógica duplicada, ramos mortos, dependências não utilizadas, camadas desnecessárias, configuração especulativa, wrappers redundantes e arquivos gerados superdimensionados.
- Meça apenas o que é significativo: complexidade cognitiva, dependências introduzidas, churn de código, cobertura duplicada, carga de revisão e estabilidade. Linhas de código sozinhas não são uma métrica de qualidade.
- Para cada candidato, pergunte: Que requisito ou falha isso suporta? Rastreie até a evidência; mantenha se necessário, mesmo que verboso.
- Ordene as mudanças: excluir não utilizado, consolidar duplicado, simplificar abstrações, depois otimizar caminhos críticos. Evite uma reescrita abrangente quando uma correção local for suficiente.
- Faça a menor alteração reversível sob testes; realize verificações positivas e de regressão. Preserve o comportamento e os contratos observados externamente.
- Relate benefícios e trade-offs. Se a remoção enfraquecer a cobertura ou obscurecer o comportamento, não mescle a simplificação.
Guardrails
Não excluir proveniência de pesquisa, validações, limites de aprovação, verificações de segurança ou exemplos de falha conhecidos meramente para reduzir a contagem de arquivos. Nenhuma nova biblioteca injustificada para recursos pequenos. Não alterar semânticas de benchmark congeladas sob o rótulo de refatoração.
Saída
Registro de decisões com candidatos, motivo, prova, risco da mudança e salvaguardas retidas.
Critérios de sucesso
Um revisor pode justificar cada remoção e confirmar que o comportamento suportado e os limites de confiança permanecem inalterados.