Lockfiles do Bun e a Segurança da sua Cadeia de Suprimentos

Lockfiles binários são um imposto de segurança — você paga mais tarde, com juros.

O Bun costumava armazenar dependências em um arquivo binário chamado bun.lockb. Era rápido e pequeno, mas você não conseguia lê-lo. Você não conseguia fazer o diff em um pull request e não conseguia ver o que mudou.

Quando você não consegue revisar uma mudança de dependência, você não tem uma política — apenas uma intuição.

O Bun v1.2 altera o padrão para um bun.lock baseado em texto. Isso, por si só, já é uma grande vitória para a segurança.

Por que lockfiles baseados em texto são importantes

  • Diffs significativos – os revisores veem exatamente quais pacotes foram movidos ou alterados.
  • Verificações de política fáceis – o CI pode escanear padrões proibidos ou registros não confiáveis.
  • Forense mais rápido – o git log mostra o commit exato que introduziu um pacote malicioso.

Um lockfile garante integridade e reprodutibilidade, mas não é uma solução milagrosa. Ele não impedirá uma versão maliciosa que foi publicada legitimamente, nem um mantenedor comprometido.

O que o lockfile de texto adiciona é visibilidade. A visibilidade é a sua primeira linha de defesa.

Como proteger seu fluxo de trabalho com Bun

  • Execute bun install --frozen-lockfile no CI. O build falhará se o lockfile precisar de uma atualização.
  • Execute bun install --lockfile-only no CI. Você valida a resolução sem executar scripts de instalação pesados.
  • Migre quaisquer arquivos bun.lockb para bun.lock imediatamente.
  • Exija revisão humana para mudanças no lockfile. Adicione os proprietários apropriados ao CODEOWNERS para que os olhos certos vejam cada atualização de dependência.

Pare de confiar cegamente na ferramenta. Em vez disso, verifique cada mudança.

Fonte: https://dev.to/kunal_d6a8fea2309e1571ee7/bun-lockfile-bunlockb-format-threat-model-ci-checks-2026-4i3b