refactor(authwit): split into utils/private/public#23214
Draft
dbanks12 wants to merge 16 commits into
Draft
Conversation
7f08022 to
3746717
Compare
This was referenced May 12, 2026
Contributor
Author
This was referenced May 12, 2026
46be8da to
3aa310c
Compare
3aa310c to
2a9f5a2
Compare
caf7ccf to
e07ba01
Compare
2a9f5a2 to
061c06b
Compare
e07ba01 to
d2f6d24
Compare
061c06b to
7324ae0
Compare
7324ae0 to
8e7c296
Compare
8e7c296 to
e04739f
Compare
3702cda to
c291b97
Compare
e04739f to
20bd4d9
Compare
c291b97 to
91cba07
Compare
20bd4d9 to
5ea28bf
Compare
91cba07 to
991fe58
Compare
5ea28bf to
04a5762
Compare
991fe58 to
c312b64
Compare
4c835f9 to
d6e9df3
Compare
d66c264 to
8f3cc74
Compare
d6e9df3 to
86d275f
Compare
8f3cc74 to
affed80
Compare
86d275f to
9e247a0
Compare
affed80 to
9d6c7b8
Compare
77567be to
22d9842
Compare
267bd1d to
72a2ae7
Compare
22d9842 to
b17d197
Compare
72a2ae7 to
4791e9f
Compare
5c65007 to
f753b35
Compare
…ulticall-entrypoint)
…ad provider method EmbeddedWallet now registers the MultiCallEntrypoint instance with PXE on creation (mirroring registerAuthRegistry), so DefaultMultiCallEntrypoint works post-demotion. Removed unused getMulticallContract from the account contracts provider interface and impls.
multi_call_entrypoint is now a standard (non-protocol) contract. The SDK's self-paid account deploy flow (DeployAccountMethod with from = NO_FROM) routes its payload through the multi-call entrypoint, so a PXE that does not know about it fails contract sync with an opaque "no contract instance" error. The PXE now preloads the multi-call entrypoint at init via an injected MultiCallEntrypointProvider, registered through registerContract right after the protocol contracts. Routing through registerContract (rather than writing to the contract store directly) also registers the contract's public function signatures with the node, keeping that invariant intact. Includes the supporting changes that were split across the squashed commits: - rename standard-contracts multi-call-entrypoint/address.ts -> constants.ts and export STANDARD_MULTI_CALL_ENTRYPOINT_SALT - stamp the multi-call entrypoint address into the Noir standard_addresses constants - preload the multi-call entrypoint in EmbeddedWallet (and parallelize its registration) - refresh yarn.lock after the rebase
…COL_CONTRACTS unchanged)
…eproducibility check
…ne iterating file Replaces three near-identical per-contract reproducibility.test.ts files with a single src/reproducibility.test.ts that iterates standardContracts[] from contract_data.ts. Pinned artifacts move from src/<slug>/pinned/ to a flat src/pinned/ directory. Adding a new standard contract is now strictly one row in standardContracts[] plus one pinned JSON; no test-file edits needed.
…arball substitution
Replaces the per-contract pinned JSON + sha256 reproducibility test with the same
mechanism v4 uses for protocol contracts: a single committed
pinned-standard-contracts.tar.gz whose presence at build time causes
noir-contracts/bootstrap.sh to extract the pinned artifacts into target/ and skip
recompilation of contracts under contracts/standard/.
The tarball is intentionally not committed in this PR. Its absence makes the
extraction block a no-op on next; the mechanism activates when a release branch
(e.g. v5) is cut and someone runs `./bootstrap.sh pin-standard-build` and commits
the resulting tarball.
Adds:
- noir-projects/noir-contracts/standard_contracts.json (manifest mirroring
protocol_contracts.json)
- extraction block in build() gated on tarball presence
- pin-standard-build function + case arm
Removes:
- yarn-project/standard-contracts/src/reproducibility.test.ts
- yarn-project/standard-contracts/src/pinned/*.json (three pinned artifacts)
- the matching .prettierignore entry
- schnorr/simulated_schnorr account contracts and uniswap_contract still imported authwit::common::*; rename the path to authwit::utils::* to match the split. - app_subscription_contract: revert the spurious 'use public_checks::utils::privately_check_block_number' (the public_checks crate is no longer a separate crate after #23215 moved the helpers into aztec-nr) back to 'use aztec::public_checks::privately_check_block_number'.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Splits aztec-nr/aztec/src/authwit/auth.nr into common/private/public submodules. No behavior change.