Executando verificação de segurança...
2

Já passei por coisas parecidas. Perdi madrugadas com mudanças que "não deveriam ter quebrado nada". Dois casos que me marcaram:

Renomear Utils para utils: No Windows são a mesma pasta. No Linux (runner do CI), não são. O git mv no Windows nem registra a mudança de case. O build no CI falha com file not found e você gasta 2 horas achando que é cache. A solução é forçar em dois passos:

git mv Utils temp && git mv temp utils

Emoji no nome da branch: Um dev criou fix/🐛-null-ref. O Azure DevOps aceitou. O GitHub Actions aceitou. O script de deploy que usava o nome da branch como tag do Docker container... não aceitou. O registry rejeitou a tag silenciosamente. Deploy não aconteceu. Sem erro — simplesmente não fez nada.

O padrão que conecta esses casos: a pipeline assume que o input é "normal" e não valida na entrada. Hoje eu coloco um step de sanity check antes de tudo:

  • Validar nome da branch com regex
  • dotnet format --verify-no-changes (pega formatação alterada por acidente)
  • Flag quando o diff tem mais de X arquivos (review manual obrigatório)

Pipeline resiliente não é a que nunca quebra — é a que te diz exatamente o que quebrou em menos de 30 segundos.

Carregando publicação patrocinada...
1

Pô, que dahora! O do case sensitivity já passei por igual, é osso. Mas o emoji na branch é nova pra mim... e é a cara de IA colocar emoji em branch hehe xD

Valeu por compartilhar! 🤝