Skip to content

feat: add pinned-build support for protocol contracts in noir-contracts (v4)#20982

Merged
ludamad merged 1 commit intobackport-to-v4-stagingfrom
claudebox/412ab8f570f945d9-2
Feb 28, 2026
Merged

feat: add pinned-build support for protocol contracts in noir-contracts (v4)#20982
ludamad merged 1 commit intobackport-to-v4-stagingfrom
claudebox/412ab8f570f945d9-2

Conversation

@AztecBot
Copy link
Collaborator

@AztecBot AztecBot commented Feb 28, 2026

Problem: The mainnet_compatibility.test.ts test checks that protocolContractsHash matches a hardcoded mainnet value. We missed protocol contracts while pinning protocol circuits.

Solution:

  • When pinned-protocol-contracts.tar.gz exists in the noir-contracts/ directory, the build extracts pre-compiled protocol contract artifacts and skips compiling them
  • Adds ./bootstrap.sh pin-protocol-contracts command to build protocol contracts and create the tarball

Adds a mechanism to pin protocol contract artifacts via
pinned-protocol-contracts.tar.gz, mirroring the existing pinned-build
support in noir-protocol-circuits.

When the tarball is present, the build extracts pre-compiled protocol
contract artifacts and skips their compilation. This prevents changes
to aztec-nr from altering the protocol contracts hash, which must
remain stable for mainnet compatibility.

Usage: ./bootstrap.sh pin-protocol-contracts
This builds only the protocol contracts and creates the tarball.
Commit pinned-protocol-contracts.tar.gz to freeze the artifacts.
@AztecBot AztecBot added the claudebox Owned by claudebox. it can push to this PR. label Feb 28, 2026
@ludamad ludamad marked this pull request as ready for review February 28, 2026 01:05
@ludamad ludamad merged commit e654e8a into backport-to-v4-staging Feb 28, 2026
28 of 34 checks passed
@ludamad ludamad deleted the claudebox/412ab8f570f945d9-2 branch February 28, 2026 01:06
@ludamad ludamad restored the claudebox/412ab8f570f945d9-2 branch February 28, 2026 01:06
@ludamad ludamad deleted the claudebox/412ab8f570f945d9-2 branch February 28, 2026 01:07
ludamad added a commit that referenced this pull request Mar 3, 2026
BEGIN_COMMIT_OVERRIDE
fix(aztec-nr): account for AES PKCS#7 padding in message plaintext
length (#20840)
feat: remove epk sign from message payload (#20926)
chore: increase mainnet local ejection threshold to 190k (#20884)
feat: add pinned-build support for protocol contracts in noir-contracts
(v4) (#20982)
fix!: undo bad fix (#20987)
chore: backport #20967 to v4 (metric on how many epochs validator has
been on committee) (#20989)
chore(sequencer): e2e tests for invalid signature recovery in checkpoint
attestations (#20971)
feat: allow custom addresses to be prefunded with fee juice in local
network (backport #21000) (#21004)
chore: increase max fee bots use in tests (#20867)
END_COMMIT_OVERRIDE
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

claudebox Owned by claudebox. it can push to this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants