Por que uma atualização de patch em uma dependência ainda quebra meu app em produção?
Oportunidade
Versionamento semântico é uma convenção, não um contrato. Análises sistemáticas de ecossistemas de software confirmam que versões de patch e minor rotineiramente introduzem quebras comportamentais que nenhuma ferramenta de análise estática detecta, e 68% das quebras observadas no npm se enquadram nessa categoria comportamental, a mais difícil de capturar automaticamente. O impacto recai principalmente sobre dependências transitivas, das quais apenas 21% possuem alguma cobertura de testes em uso real. Scanners de dependências sinalizam CVEs de segurança, mas não têm mecanismo para detectar incompatibilidades semânticas dois níveis abaixo. Um desenvolvedor que atualiza uma dependência direta hoje não dispõe de nenhuma ferramenta que indique qual comportamento em produção vai mudar.
Por que importa
Detectar quebras comportamentais em dependências transitivas antes que cheguem ao CI é a camada ausente entre o travamento de versões e atualizações seguras.
Como avalio a oportunidade
A Pontuação de Oportunidade é minha própria leitura, não uma medição: o quanto dói, com que frequência aparece e o quanto pouco existe para resolvê-lo hoje. Quanto maior, mais vale a pena construir, na minha opinião.
O quanto de dor causa quando aparece.
Com que frequência as pessoas realmente se deparam com isso.
O quanto pouco de boas ferramentas existe para isso hoje.
Mais problemas que merecem ser resolvidos
Por que o software do qual mais dependemos é o pior para usar?
TechPor que ainda não sou dono de nenhum dos dados que gero?
TechPor que não consigo um comprovante que prove que meus dados foram realmente excluídos?
TechPor que não consigo saber se o que está em execução corresponde ao que meu SBOM declarou?
TechPor que toda cadeia de proveniência C2PA se rompe no momento em que o conteúdo chega às redes sociais?
TechPor que não consigo rastrear uma falha em produção que cruzou uma fila de mensagens?