Skip to content

fix: include standard-contracts artifacts in release image#23753

Merged
Thunkar merged 1 commit into
nextfrom
cb/b19bc30b22f7
May 31, 2026
Merged

fix: include standard-contracts artifacts in release image#23753
Thunkar merged 1 commit into
nextfrom
cb/b19bc30b22f7

Conversation

@AztecBot

Copy link
Copy Markdown
Collaborator

Problem

V5 / next net deployments crash on startup with:

Error [ERR_MODULE_NOT_FOUND]: Cannot find module
'/usr/src/yarn-project/standard-contracts/artifacts/AuthRegistry.json'
imported from /usr/src/yarn-project/standard-contracts/dest/auth-registry/index.js

Root cause

release-image/Dockerfile.dockerignore is an allowlist (* ignores everything, then !-includes specific paths). It explicitly re-includes the artifacts/ directory for protocol-contracts, noir-contracts.js, accounts, simulator, etc., and copies every dest/ via !/yarn-project/*/dest/ — but it has no entry for standard-contracts/artifacts/.

When auth-registry (and later public-checks / multi-call-entrypoint) was demoted into the new standard-contracts package (#23106), the allowlist was never updated. So the image ships standard-contracts/dest/ but not its artifacts. At container startup the eager import in dest/auth-registry/index.js (import '../../artifacts/AuthRegistry.json') resolves to a file that was excluded from the build context → ERR_MODULE_NOT_FOUND.

This only affects the Docker release image. The npm tarball is unaffected because it uses package.json's files field (which includes artifacts), a different mechanism — which is why npm pack @aztec/standard-contracts contains AuthRegistry.json while the deployed image does not.

Fix

Add standard-contracts/artifacts/ to the dockerignore allowlist, matching the other contract-artifact packages. One line; same pattern as the existing protocol-contracts/noir-contracts.js entries.

Verification

  • npm pack @aztec/standard-contracts@latest already contains artifacts/AuthRegistry.json, PublicChecks.json (confirms source/files are correct; the gap is image-only).
  • After this change the dockerignore re-includes standard-contracts/artifacts/, so the JSON artifacts are copied to /usr/src/yarn-project/standard-contracts/artifacts/ alongside dest/, resolving the eager import.

Created by claudebox · group: slackbot

@AztecBot AztecBot added the claudebox Owned by claudebox. it can push to this PR. label May 31, 2026
@Thunkar Thunkar marked this pull request as ready for review May 31, 2026 17:26
@Thunkar Thunkar requested a review from charlielye as a code owner May 31, 2026 17:26
@Thunkar Thunkar requested review from alexghr and removed request for charlielye May 31, 2026 17:26
@Thunkar Thunkar self-assigned this May 31, 2026
@Thunkar Thunkar added this pull request to the merge queue May 31, 2026
@AztecBot

Copy link
Copy Markdown
Collaborator Author

Flakey Tests

🤖 says: This CI run detected 1 tests that failed, but were tolerated due to a .test_patterns.yml entry.

\033FLAKED\033 (8;;http://ci.aztec-labs.com/8c6da6e4a74a936f�8c6da6e4a74a936f8;;�): yarn-project/end-to-end/scripts/run_test.sh ha src/composed/ha/e2e_ha_full.test.ts (281s) (code: 0)

Merged via the queue into next with commit 8f34701 May 31, 2026
43 of 45 checks passed
@Thunkar Thunkar deleted the cb/b19bc30b22f7 branch May 31, 2026 19:18
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