Conversation
BEGIN_COMMIT_OVERRIDE fix(aztec-up): narrow PATH cleanup regex to avoid removing user PATH entries (#21828) fix: consolidate blob source test into single summary log with supernode detection (#21719) fix: use anchor block on getL1ToL2MsgWitness (#21872) fix: make sure queries are not made ahead of the anchor block (#21874) chore(docs): backport docs infrastructure changes to v4 (#21437) chore: backport PR #21836 (fix: explicitly handle initial block case for getBlockHashMembershipWitness) to v4-next (#21891) chore: backport PR #21813 (fix(aztec-up): strip leading v prefix from version strings) to v4-next (#21912) docs: document defi-wonderland immutable macro (#21764) fix: pin typescript and harden lockfile check in docs examples CI (v4 backport) (#21914) docs: expand circuit profiling guide and document kernel gate cost overhead (#21770) feat: cli-wallet (#21757) chore: sync backport staging with v4-next HEAD (#21931) fix: bot gas estimations (backport #21945) (#21947) refactor(aztec-nr): use logging wrappers in compute_note_hash_and_nullifier (#21897) fix: backport v4 next staging (#21934) fix: make PXE#getSyncedBlockHeader a concurrency=1 job to prevent IDB tx liveness issues (#21944) feat: add error page mapping for incompatible oracles (#21943) fix(aztec-up): validate semver in uninstall to prevent path traversal (#21892) chore: merge v4-next into backport staging (fix ancestry) (#21954) fix(aztec-up): add truncation protection to install scripts (#21896) fix: noir format in compute_note_hash_and_nullifier.nr (#21956) fix(stdlib): decode `EthAddress`, `FunctionSelector` and wrapped field structs in `AbiDecoder` (#21926) chore: update noir to nightly-2026-02-12-patch.1 (#21960) fix: ensure empty docs examples does not populate yarn lock backport (#21963) fix: docs examples does not build on simple bootstrap backport (#21964) fix: add rc/testnet version detection to API reference pages (#21966) docs: document EmbeddedWallet automatic gas estimation and private authwits (#21790) fix(pxe): robust error handling in message processing (backport #21093) (#21981) chore: manually recreate backport (#21969) chore: (A-779) load all accounts before calling LogService.#getSecretsForSenders (#21923) END_COMMIT_OVERRIDE
## Summary Backport of #21533 (feat!: scoped capsules) to v4-next. The automatic cherry-pick failed due to conflicts in 7 files. This PR preserves the full cherry-pick history: 1. **Cherry-pick with conflicts** — raw cherry-pick of `3029216084` with conflict markers committed as-is 2. **Conflict resolution** — resolved all 7 conflicted files: - `docs/docs-developers/docs/resources/migration_notes.md` — added new migration notes under TBD - `noir-projects/aztec-nr/aztec/src/macros/aztec.nr` — took PR's `$offchain_inbox_sync_option` macro variable + `scope` param - `noir-projects/aztec-nr/aztec/src/messages/discovery/mod.nr` — added `scope` param to `get_private_logs` call - `yarn-project/pxe/src/contract_function_simulator/noir-structs/message_tx_context.ts` — accepted deletion (PR removes this file) - `yarn-project/pxe/src/contract_function_simulator/oracle/utility_execution.test.ts` — renamed method + added scope param - `yarn-project/pxe/src/logs/log_service.ts` — took PR's simplified single-recipient approach, moved deduplication into `#getSecretsForSenders` - `yarn-project/pxe/src/oracle_version.ts` — took PR's oracle interface hash 3. **Build fixes** — added missing `offchain_inbox_sync_option` variable definition and updated `generate_sync_state` function signature in `aztec.nr` ClaudeBox log: https://claudebox.work/s/358dd3e35e1d8542?run=1
…tion (#21997) ## Summary In `SubProtocolRateLimiter.allow()`, the global rate limiter was checked first. `GCRARateLimiter.allow()` advances its virtual scheduling time (VST) as a side effect whenever it returns `true`, so a request that passed the global check but failed the per-peer check would silently consume a global quota token. A single spamming peer could therefore exhaust the global rate limit, starving all other peers on that sub-protocol. Fix: check the per-peer limit first. A peer that exceeds its individual quota is rejected immediately, without touching the shared global bucket. Fixes [A-758](https://linear.app/aztec-labs/issue/A-758) Made with [Cursor](https://cursor.com)
Conflicts resolved in 6 files: - archiver/src/factory.ts: keep ContractClassPublicWithCommitment from staging - archiver/src/modules/data_store_updater.ts: keep all imports (both branches needed) - archiver/src/store/kv_archiver_store.test.ts: take v4 describe block structure, use singular addProposedBlock API - aztec-node/src/aztec-node/server.ts: keep staging's block 0 check and getWorldState method - stdlib/src/tx/validator/error_texts.ts: keep staging's contract class error constants - world-state/src/synchronizer/server_world_state_synchronizer.ts: use verbose log level with v4's message
Cherry-pick of b0090ff with conflict markers preserved for review.
Resolved conflicts in oracle names: - aztec_utl_resolveMessageContexts → aztec_utl_getMessageContextsByTxHash - Bumped ORACLE_VERSION to 21 (both Noir and TS) - ORACLE_INTERFACE_HASH placeholder to be computed
Updated hash to match new oracle interface after rename. Bumped ORACLE_VERSION in both Noir and TypeScript.
Cherry-pick of 1c74bf6 with conflicts in yarn-project/pxe/src/oracle_version.ts
The oracle interface hash differs between next and v4-next due to different Oracle class signatures. Regenerated the hash for v4-next after cherry-pick.
The cherry-pick of PR #22020 modified domain separators in constants.nr but the generated files (constants.gen.ts, aztec_constants.hpp, constants_gen.pil) were not regenerated. Run remake-constants to sync.
This reverts commit e7f94df.
These are not allowed elsewhere, so we just add this early catch to prevent getting weirder errors down the stack.
The reorg simulation test is intermittently failing. Added to flake patterns with Martin as owner.
…ckport] (#22025) ## Summary Backport of #22020 to v4-next. The `getSharedSecret` oracle now app-silos the shared secret by hashing it with the calling contract's address, preventing cross-contract decryption attacks. Key derivation uses new domain separators (`DOM_SEP__APP_SILOED_ECDH_SHARED_SECRET`, `DOM_SEP__ECDH_SUBKEY`, `DOM_SEP__ECDH_FIELD_MASK`). ## Cherry-pick conflicts Only one conflict in `yarn-project/pxe/src/oracle_version.ts` — the oracle interface hash differs between `next` and `v4-next` because the Oracle class has diverged. Regenerated the hash for the v4-next Oracle interface. ## Commits 1. **Cherry-pick with conflicts** — raw cherry-pick of 1c74bf6 with conflict markers 2. **Conflict resolution** — resolved hash conflict in oracle_version.ts 3. **Build fix** — regenerated oracle interface hash for v4-next (`09ca7d52...`) ClaudeBox log: https://claudebox.work/s/c95bc78416dda66e?run=1
Cherry-pick of 52a0af8 with conflicts in: - yarn-project/aztec/scripts/aztec.sh
Kept v4-next base (no compile step) while applying the log filter rename from contract_log to contract.
Merged latest target branch which includes PR #22025 (app-silo getSharedSecret). Combined oracle interface now includes both renames and new oracle. Recomputed ORACLE_INTERFACE_HASH and bumped ORACLE_VERSION to 22.
…#22485) ## Summary Backport of #22393 (Update Noir to nightly-2026-04-10) to v4-next, plus 3 companion PRs needed for Noir compatibility since v4-next was still on nightly-2026-02-12. ## Companion PRs included Since v4-next hadn't updated Noir since nightly-2026-02-12 (~2 months behind), several intermediate Noir-adaptation PRs were also needed: 1. **#20702** — Remove unnecessary `comptime` qualifier from VK tree constants (Noir broke comptime globals used in non-comptime contexts) 2. **#20798** — Remove unnecessary `let mut` across noir-projects (newer Noir errors on this) 3. **#21801** — Replace deprecated Noir comptime APIs: `add_attribute()` → `add_abi()`, `set_body()`/`set_parameters()`/`set_return_public()` → `function.disable()`, update `fn_has_noinitcheck` to also check `is_fn_only_self()` ## Commits 1. **Cherry-pick with conflict markers** — raw cherry-pick of #22393 2. **Conflict resolution** — version bumps + reformatting resolved 3. **Cherry-pick #20702** — comptime globals + poseidon2 hash fix 4. **Cherry-pick #20798** — unnecessary mut removal (24 files) 5. **Cherry-pick #21801** — macro API migration (4 files) 6. **Remaining fixes** — private_context.nr mut + utils.nr style alignment
BEGIN_COMMIT_OVERRIDE cherry-pick: chore: Update Noir to nightly-2026-04-10 (#22393) chore: backport #22393 (Update Noir to nightly-2026-04-10) to v4-next (#22485) fix: add @aztec/accounts to backwards compatibility test infra (#22490) fix(aztec-nr): check_notes_order lexicographic multi-key sort (#21973) END_COMMIT_OVERRIDE
Backport staging PR. Body will be updated with commit list.
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
spalladino
approved these changes
Apr 14, 2026
Contributor
spalladino
left a comment
There was a problem hiding this comment.
Bene est mihi quia tibi bene est
spypsy
approved these changes
Apr 14, 2026
aminsammara
approved these changes
Apr 14, 2026
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.
.