Commit 5f63954
authored
chore: backport noir sync PRs to backport-to-v4-next-staging (#23148)
## Summary
Backports the 8 noir sync PRs merged to `next` after #22393 (which was
already cherry-picked onto `backport-to-v4-next-staging`).
Cherry-picked in chronological order:
- #22572 — Update Noir to nightly-2026-04-15
- #22594 — Update Noir to nightly-2026-04-16
- #22633 — Update Noir to nightly-2026-04-17
- #22653 — Update Noir to nightly-2026-04-23 (resolved
`avm-transpiler/Cargo.lock` conflict by taking the incoming version)
- #22755 — Update Noir to nightly-2026-04-28
- #22836 — Update Noir to nightly-2026-05-01
- #22911 — Update Noir to nightly-2026-05-05
- #23023 — Update Noir to nightly-2026-05-11 (resolved
`.test_patterns.yml` and `yarn-project/kv-store/package.json` conflicts:
kept backport branch's extra dev deps for chai/mocha/sinon)
Final `noir/noir-repo` submodule pointer matches `next`:
`1d9727a6e0a9df75a71bb9c87daacbe30659ba09`.
Label `ci-no-squash` is set to preserve the 8 individual commits.
## Contract snapshot updates
A follow-up commit regenerates `noir-projects/contract-snapshots`
snapshots that drifted due to the new noir version. All 60 snapshot
tests pass locally after the update. The drift is purely from noir-side
changes — no semantic change in our code:
- `compile_failure/authorization_selector_collision`: noir removed a
redundant `check_parent_traits_are_implemented: missing trait ID` error,
so the total error count went from 6 to 5.
- 6 × `expand/*` snapshots (`amm_contract`, `avm_gadgets_test_contract`,
`avm_test_contract`, `public_fns_with_emit_repro_contract`,
`storage_proof_test_contract`, `token_contract`): `nargo expand` now
prints the full `unconstrained fn(AztecAddress, u64, u64,
BoundedVec<Field, 11>, MessageContext, AztecAddress)` type instead of
the `CustomMessageHandler<()>` alias.
- `expand/token_contract`, `expand/amm_contract`,
`expand/avm_test_contract`: `nargo expand` emits functions in a new
deterministic order (e.g. `constructor` / `_reduce_total_supply` /
`_recurse_subtract_balance` / `private_get_symbol` were moved within
their impl blocks; `add_args_return` likewise on the AVM contract;
`swap_exact_tokens_for_tokens` / `swap_tokens_for_exact_tokens` swapped
order on AMM).
## Test plan
- CI on `backport-to-v4-next-staging` flow passes16 files changed
Lines changed: 377 additions & 441 deletions
File tree
- avm-transpiler
- noir-projects
- aztec-nr/aztec/src/test
- helpers
- mocks
- contract-snapshots/tests/snapshots
- compile_failure/authorization_selector_collision
- expand
- amm_contract
- avm_gadgets_test_contract
- avm_test_contract
- public_fns_with_emit_repro_contract
- storage_proof_test_contract
- token_contract
- noir-contracts/contracts
- app/card_game_contract/src
- test/test_contract/src
- noir
- yarn-project
- end-to-end/src
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
369 | 369 | | |
370 | 370 | | |
371 | 371 | | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
0 commit comments