Skip to content

fix(release): bind publishable artifacts to source provenance - #41

Merged
zackpratamaa merged 2 commits into
mainfrom
fix/bind-release-artifacts-v2
Oct 21, 2026
Merged

zackpratamaa merged 2 commits into
mainfrom
fix/bind-release-artifacts-v2

Conversation

@zackpratamaa

Copy link
Copy Markdown
Owner

Problem

Release jobs could consume artifacts without one exact manifest binding every published file to the source commit and workflow run that produced it.

Fix

  • build an exact release-bound/ artifact set
  • bind root/native tarballs, SBOM, self-evidence, and checksums in a SHA-256 manifest
  • validate source SHA, workflow run ID, version, file set/order, sizes, hashes, package metadata, native binaries, optional dependencies, and evidence checksum
  • require the same bound set for dry-run, registry publication, and GitHub release assets

Regression coverage

  • valid complete binding
  • mutation after manifest creation is rejected
  • mismatched source/run provenance is rejected

Local lint, build, full tests, tarball binding tests, and diff check passed. No release approval or publishing guard was weakened.

@zackpratamaa
zackpratamaa merged commit 05410a1 into main Oct 21, 2026
27 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant