
O teto que eu não escrevi
Um pip install resolveu. Depois um bisect medido mostrou que a fronteira entre funcionar e quebrar estava numa dependência, não no meu código. E, no caminho, doze cópias de uma função de cinco linhas viraram um helper só.
4 posts

Um pip install resolveu. Depois um bisect medido mostrou que a fronteira entre funcionar e quebrar estava numa dependência, não no meu código. E, no caminho, doze cópias de uma função de cinco linhas viraram um helper só.

Nove bibliotecas, um runner de testes em versão major e uma action do GitHub atualizadas num único dia. Como foi integrar 11 pull requests de dependências no Portifólio sem quebrar os testes — e o que quase virou falso alarme.

O alarme caça, o portão bloqueia, o cão ataca. Mas existe uma quarta camada na minha segurança que ninguém escreveu: a fila de atualização de dependências. Em 31 de agosto, o bot entregou cinco propostas de correção. Três dias depois, todas as cinco continuam abertas. A fila virou a superfície.

O pnpm audit do Portfólio gritava 61 vulnerabilidades. Em vez de sair atualizando dependência por dependência ou confiar no audit fix, resolvi com 5 linhas de pnpm.overrides no package.json. Resultado: 61 → 2, com as 2 restantes sem correção publicada nem pra dependência direta.