Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat!: using WithHash<T> in SharedMutable + fixing slot allocation #11716

Conversation

benesjan
Copy link
Contributor

@benesjan benesjan commented Feb 4, 2025

With the introduction of WithHash<T> it made sense to use it in SharedMutable as well. Given that I was dealing with storage I decided to tackle other SharedMutable related issues.

Fixes #5492
Fixes #5491

Copy link
Contributor Author

benesjan commented Feb 4, 2025

@benesjan benesjan changed the title feat: using WithHash<T> in SharedMutable + fixing slotallocation feat: using WithHash<T> in SharedMutable + fixing slot allocation Feb 4, 2025
@benesjan benesjan added the e2e-all CI: Enables this CI job. label Feb 4, 2025
@benesjan benesjan marked this pull request as ready for review February 4, 2025 12:42
@benesjan benesjan marked this pull request as draft February 4, 2025 15:20
@benesjan benesjan force-pushed the 08-15-_do_not_merge_feat_optimizing_sharedimmutable branch from bb6e548 to 30bfe9c Compare February 4, 2025 15:29
@benesjan benesjan force-pushed the 02-04-feat_using_withhash_t_in_sharedmutable_fixing_slotallocation branch 9 times, most recently from 5e7fc3f to 5553ac3 Compare February 5, 2025 09:47
@benesjan benesjan changed the title feat: using WithHash<T> in SharedMutable + fixing slot allocation feat!: using WithHash<T> in SharedMutable + fixing slot allocation Feb 5, 2025
@benesjan benesjan force-pushed the 08-15-_do_not_merge_feat_optimizing_sharedimmutable branch from faac2b8 to e6b47b8 Compare February 5, 2025 15:33
@benesjan benesjan force-pushed the 02-04-feat_using_withhash_t_in_sharedmutable_fixing_slotallocation branch 2 times, most recently from 3cb4e85 to 6f11f09 Compare February 5, 2025 15:35
Base automatically changed from 08-15-_do_not_merge_feat_optimizing_sharedimmutable to master February 5, 2025 16:10
@benesjan benesjan force-pushed the 02-04-feat_using_withhash_t_in_sharedmutable_fixing_slotallocation branch from 6f11f09 to 98c0571 Compare February 5, 2025 16:22
@benesjan benesjan marked this pull request as ready for review February 5, 2025 16:23
@AztecBot
Copy link
Collaborator

AztecBot commented Feb 5, 2025

Docs Preview

Hey there! 👋 You can check your preview at https://67a4aed4fdbdfc1bf677d60a--aztec-docs-dev.netlify.app

@benesjan benesjan requested a review from nventuro February 5, 2025 16:51
Copy link
Contributor

github-actions bot commented Feb 5, 2025

Changes to public function bytecode sizes

Generated at commit: 57105b27bf97c5f9ac5198b564db4bf5f2150bba, compared to commit: 7820cb7b373370f16fed249beed07809da6998cc

🧾 Summary (100% most significant diffs)

Program Bytecode size in bytes (+/-) %
TokenBlacklist::transfer_public -135 ✅ -2.43%
TokenBlacklist::shield -157 ✅ -2.80%
TokenBlacklist::burn_public -148 ✅ -2.99%
TokenBlacklist::public_dispatch -1,861 ✅ -7.27%
TokenBlacklist::mint_private -318 ✅ -8.57%
TokenBlacklist::mint_public -338 ✅ -9.57%
TokenBlacklist::get_roles -333 ✅ -12.31%
Auth::public_dispatch -1,787 ✅ -18.85%
TokenBlacklist::constructor -1,685 ✅ -25.05%
TokenBlacklist::update_roles -1,748 ✅ -27.24%
Auth::set_authorized_delay -1,889 ✅ -38.10%
Auth::set_authorized -1,887 ✅ -38.83%
Auth::get_authorized -883 ✅ -47.68%
Auth::get_scheduled_authorized -889 ✅ -50.68%
Auth::get_authorized_delay -1,299 ✅ -65.61%

Full diff report 👇
Program Bytecode size in bytes (+/-) %
TokenBlacklist::transfer_public 5,430 (-135) -2.43%
TokenBlacklist::shield 5,445 (-157) -2.80%
TokenBlacklist::burn_public 4,807 (-148) -2.99%
TokenBlacklist::public_dispatch 23,725 (-1,861) -7.27%
TokenBlacklist::mint_private 3,394 (-318) -8.57%
TokenBlacklist::mint_public 3,194 (-338) -9.57%
TokenBlacklist::get_roles 2,372 (-333) -12.31%
Auth::public_dispatch 7,693 (-1,787) -18.85%
TokenBlacklist::constructor 5,041 (-1,685) -25.05%
TokenBlacklist::update_roles 4,669 (-1,748) -27.24%
Auth::set_authorized_delay 3,069 (-1,889) -38.10%
Auth::set_authorized 2,973 (-1,887) -38.83%
Auth::get_authorized 969 (-883) -47.68%
Auth::get_scheduled_authorized 865 (-889) -50.68%
Auth::get_authorized_delay 681 (-1,299) -65.61%

@@ -142,7 +144,7 @@ impl<let INITIAL_DELAY: u32> Packable<1> for ScheduledDelayChange<INITIAL_DELAY>
[packed.to_integer()]
}

fn unpack(input: [Field; 1]) -> Self {
fn unpack(input: [Field; SCHEDULED_DELAY_CHANGE_PCKD_LEN]) -> Self {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Insted of defining packable for svc and sdc, we can create the struct that contains both and just implement packable for that. If we do this, we can combine sdc and svc, since svc has a block of change (32 bits) that can be merged into sdc. Then we'd have 2N+1 total instead of 2N+2, which makes public writes cheaper and private reads a bit cheaper (less hashing).

We can do this in a separate PR.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We discussed 2 days ago that we want to be able to read svc and sdc individually in public. For this reason they each need to implement packable (storage_read requires it). Here is where we read it individually.

But when writing both values get written at once as they are wrapped in SharedMutableValues.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we wanted to be really nasty we can have a manual storage_read where we read a single field at the base slot plus offset of the field in which we combine these, and then manually unpack just that field. We do save a storaage write with this approach.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't understand

@benesjan benesjan marked this pull request as draft February 6, 2025 11:39
@benesjan benesjan force-pushed the 02-04-feat_using_withhash_t_in_sharedmutable_fixing_slotallocation branch from 8d1b517 to c386ccf Compare February 6, 2025 11:42
@benesjan benesjan requested a review from nventuro February 6, 2025 12:00
@benesjan benesjan removed the e2e-all CI: Enables this CI job. label Feb 6, 2025
@benesjan benesjan marked this pull request as ready for review February 6, 2025 12:01
@benesjan benesjan force-pushed the 02-04-feat_using_withhash_t_in_sharedmutable_fixing_slotallocation branch from 806e647 to 69aa267 Compare February 6, 2025 12:23
@nventuro nventuro merged commit 952615b into master Feb 6, 2025
53 checks passed
@nventuro nventuro deleted the 02-04-feat_using_withhash_t_in_sharedmutable_fixing_slotallocation branch February 6, 2025 18:20
sklppy88 pushed a commit that referenced this pull request Feb 10, 2025
🤖 I have created a release *beep* *boop*
---


<details><summary>aztec-package: 0.76.0</summary>

##
[0.76.0](aztec-package-v0.75.0...aztec-package-v0.76.0)
(2025-02-10)


### Features

* **spartan:** Blob sink in spartan
([#11307](#11307))
([d8e5bcc](d8e5bcc))


### Miscellaneous

* Check versioning
([#11611](#11611))
([b33f1da](b33f1da))
* **p2p:** Remove min peers option
([#11789](#11789))
([cfb6797](cfb6797))
</details>

<details><summary>barretenberg.js: 0.76.0</summary>

##
[0.76.0](barretenberg.js-v0.75.0...barretenberg.js-v0.76.0)
(2025-02-10)


### Bug Fixes

* **bb.js:** Make wasm imports bundleable
([#11812](#11812))
([1af69a9](1af69a9))
* Remove unnecessary console.log
([#11810](#11810))
([8a320bf](8a320bf))
</details>

<details><summary>aztec-packages: 0.76.0</summary>

##
[0.76.0](aztec-packages-v0.75.0...aztec-packages-v0.76.0)
(2025-02-10)


### ⚠ BREAKING CHANGES

* check abi integer input is within signed range
(noir-lang/noir#7316)
* using `WithHash<T>` in `SharedMutable` + fixing slot allocation
([#11716](#11716))

### Features

* `assert` and `assert_eq` are now expressions
(noir-lang/noir#7313)
([b883911](b883911))
* `assert` and `assert_eq` are now expressions
(noir-lang/noir#7313)
([3840e8e](3840e8e))
* **avm:** Add skippable condition for interactions
([#11800](#11800))
([67aec61](67aec61))
* **avm:** Range check opt via aliases
([#11846](#11846))
([ce6a5bf](ce6a5bf))
* **avm:** Restrict bytecode bytes
([#11798](#11798))
([be382bc](be382bc))
* **aztec-nr:** Do not compile functions with a private public macro and
unconstrained
([#11815](#11815))
([afb52e3](afb52e3))
* **blob-lib:** Make blob lib and fix encoding test flake
([#11782](#11782))
([753f505](753f505))
* Broker sends back job after accepting result
([#11754](#11754))
([62e5de7](62e5de7))
* **docs:** Notes page
([#11746](#11746))
([117200e](117200e))
* **docs:** Reindex typesense in CI
([#11791](#11791))
([6af8d54](6af8d54))
* Infer lambda parameter types from return type and let type
(noir-lang/noir#7267)
([b883911](b883911))
* Infer lambda parameter types from return type and let type
(noir-lang/noir#7267)
([3840e8e](3840e8e))
* Optimizing contract with config pattern
([#11756](#11756))
([7820cb7](7820cb7))
* **p2p:** Test bench scaffold
([#11758](#11758))
([48dc491](48dc491))
* Partial note handling in aztec-nr
([#11641](#11641))
([1c1a33b](1c1a33b))
* **perf:** Speed up TS AVM core simulator
([#11794](#11794))
([bb58c87](bb58c87))
* **reqresp:** Send status messages along with reqresp responses
([#11727](#11727))
([b212490](b212490))
* Simplify `Ord` implementation for arrays
(noir-lang/noir#7305)
([b883911](b883911))
* Simplify `Ord` implementation for arrays
(noir-lang/noir#7305)
([3840e8e](3840e8e))
* **spartan:** Blob sink in spartan
([#11307](#11307))
([d8e5bcc](d8e5bcc))
* Suport deploying contracts with public keys in txe
([#11882](#11882))
([94bdc85](94bdc85)),
closes
[#11881](#11881)
* Sync from aztec-packages (noir-lang/noir#7293)
([b883911](b883911))
* Sync from aztec-packages (noir-lang/noir#7293)
([3840e8e](3840e8e))
* Trust tree roots from the AVM in public base
([#11823](#11823))
([5d12f94](5d12f94))
* Using `WithHash&lt;T&gt;` in `SharedMutable` + fixing slot allocation
([#11716](#11716))
([952615b](952615b))


### Bug Fixes

* Add missing return in main
([#11786](#11786))
([8c1d477](8c1d477))
* Allows for infinite brillig loops
(noir-lang/noir#7296)
([b883911](b883911))
* Always normalize ssa when priting at least one pass
(noir-lang/noir#7299)
([b883911](b883911))
* Always normalize ssa when priting at least one pass
(noir-lang/noir#7299)
([3840e8e](3840e8e))
* Avoid recomputing contractclassid
([#11783](#11783))
([f8448bf](f8448bf))
* Avoid stack overflow on many comments in a row
(noir-lang/noir#7325)
([b883911](b883911))
* Aztec wallet partial address display on deployment
([#11866](#11866))
([eef5302](eef5302)),
closes
[#11864](#11864)
* **bb.js:** Make wasm imports bundleable
([#11812](#11812))
([1af69a9](1af69a9))
* Beacon chain doesn't eat mainframe
([#11854](#11854))
([ebbdbc7](ebbdbc7))
* Check abi integer input is within signed range
(noir-lang/noir#7316)
([b883911](b883911))
* **ci:** Enforce boxes-test on merge
([#11841](#11841))
([e26a288](e26a288))
* Downgrade to mainframe-compatible KIND
([#11883](#11883))
([9239b4f](9239b4f))
* Error on if without else when type mismatch
(noir-lang/noir#7302)
([b883911](b883911))
* Error on if without else when type mismatch
(noir-lang/noir#7302)
([3840e8e](3840e8e))
* Error on trailing doc comment
(noir-lang/noir#7300)
([b883911](b883911))
* Error on trailing doc comment
(noir-lang/noir#7300)
([3840e8e](3840e8e))
* Formatting in master
([#11879](#11879))
([fff0f04](fff0f04))
* Mark field division and modulo as requiring predicate for all
necessary types (noir-lang/noir#7290)
([b883911](b883911))
* Mark field division and modulo as requiring predicate for all
necessary types (noir-lang/noir#7290)
([3840e8e](3840e8e))
* Playground use new unbundled aztec.js
([#11780](#11780))
([fe2b666](fe2b666))
* Prover-client test
([#11853](#11853))
([e950c76](e950c76))
* Publish telemetry-client
([#11777](#11777))
([8634f6e](8634f6e))
* Pxe release
([#11877](#11877))
([4c0d2f2](4c0d2f2))
* Re exposing intent inner hash
([#11865](#11865))
([9638792](9638792)),
closes
[#11795](#11795)
* Remove unnecessary console.log
([#11810](#11810))
([8a320bf](8a320bf))
* Revert "feat: partial note handling in aztec-nr
([#11641](#11641))"
([#11797](#11797))
([c5c3f09](c5c3f09))
* Skip orchestrator_workflow test (see
[#11870](#11870))
([#11872](#11872))
([f8e7e4e](f8e7e4e))
* Skip vite browser test until
[#11874](#11874)
([#11876](#11876))
([e1adf23](e1adf23))
* **ssa:** Unused functions removals post folding constant Brillig calls
(noir-lang/noir#7265)
([b883911](b883911))
* **ssa:** Unused functions removals post folding constant Brillig calls
(noir-lang/noir#7265)
([3840e8e](3840e8e))
* Tracy run
([#11819](#11819))
([fde135d](fde135d))
* Txe block headers
([#11710](#11710))
([4f6b76f](4f6b76f))


### Miscellaneous

* Add sha256 library to test suite
(noir-lang/noir#7278)
([b883911](b883911))
* Add sha256 library to test suite
(noir-lang/noir#7278)
([3840e8e](3840e8e))
* Add timeouts to reports CI
(noir-lang/noir#7317)
([b883911](b883911))
* Aggregate with short scalars in UH Recursion
([#11478](#11478))
([a6fcdb0](a6fcdb0))
* **avm:** Remove some parentheses in codegen relations
([#11766](#11766))
([f2f2634](f2f2634))
* Bump noir_bigcurve timeout
(noir-lang/noir#7322)
([b883911](b883911))
* Check versioning
([#11611](#11611))
([b33f1da](b33f1da))
* Cleanup in AVM test fixture
([#11850](#11850))
([4526059](4526059))
* Create a CI action to download nargo and add to path
(noir-lang/noir#7281)
([b883911](b883911))
* Create a CI action to download nargo and add to path
(noir-lang/noir#7281)
([3840e8e](3840e8e))
* Disable exp-2 from nightly deployments
([#11880](#11880))
([bc42b60](bc42b60))
* Do not differentiate variable vs fixed length for Poseidon2
([#11740](#11740))
([ee5fc45](ee5fc45))
* Fix memory reports in CI (noir-lang/noir#7311)
([b883911](b883911))
* Fix memory reports in CI (noir-lang/noir#7311)
([3840e8e](3840e8e))
* **p2p:** Remove min peers option
([#11789](#11789))
([cfb6797](cfb6797))
* Push inlining info code into a submodule
(noir-lang/noir#7266)
([b883911](b883911))
* Push inlining info code into a submodule
(noir-lang/noir#7266)
([3840e8e](3840e8e))
* Reduce number of benchmarking scripts
(noir-lang/noir#7285)
([b883911](b883911))
* Reduce number of benchmarking scripts
(noir-lang/noir#7285)
([3840e8e](3840e8e))
* Remove dead code
([#11809](#11809))
([51ad298](51ad298))
* Remove Recoverable (noir-lang/noir#7307)
([b883911](b883911))
* Remove Recoverable (noir-lang/noir#7307)
([3840e8e](3840e8e))
* Replace benchmarks on fast test suites with a cut-off
(noir-lang/noir#7276)
([b883911](b883911))
* Replace benchmarks on fast test suites with a cut-off
(noir-lang/noir#7276)
([3840e8e](3840e8e))
* Replace relative paths to noir-protocol-circuits
([330f613](330f613))
* Replace relative paths to noir-protocol-circuits
([501ec66](501ec66))
* Replace relative paths to noir-protocol-circuits
([3fa986a](3fa986a))
* Sepolia mnemonic, e2e & ignition chain
([#11759](#11759))
([ff1536a](ff1536a))
* Simplify handling of pub inputs block
([#11747](#11747))
([4a8136c](4a8136c))
* **spartan:** Give services label names
([#11609](#11609))
([2da39df](2da39df))
* **spartan:** Update ethereum external host values
([#11590](#11590))
([f17a8f3](f17a8f3))
* Update migration_notes.md
([#11801](#11801))
([baa69a2](baa69a2))


### Documentation

* Some blob docs
([#11729](#11729))
([b1d65f1](b1d65f1))
</details>

<details><summary>barretenberg: 0.76.0</summary>

##
[0.76.0](barretenberg-v0.75.0...barretenberg-v0.76.0)
(2025-02-10)


### Features

* **avm:** Add skippable condition for interactions
([#11800](#11800))
([67aec61](67aec61))
* **avm:** Range check opt via aliases
([#11846](#11846))
([ce6a5bf](ce6a5bf))
* **avm:** Restrict bytecode bytes
([#11798](#11798))
([be382bc](be382bc))


### Bug Fixes

* Add missing return in main
([#11786](#11786))
([8c1d477](8c1d477))
* Tracy run
([#11819](#11819))
([fde135d](fde135d))


### Miscellaneous

* Aggregate with short scalars in UH Recursion
([#11478](#11478))
([a6fcdb0](a6fcdb0))
* **avm:** Remove some parentheses in codegen relations
([#11766](#11766))
([f2f2634](f2f2634))
* Do not differentiate variable vs fixed length for Poseidon2
([#11740](#11740))
([ee5fc45](ee5fc45))
* Simplify handling of pub inputs block
([#11747](#11747))
([4a8136c](4a8136c))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
AztecBot added a commit to AztecProtocol/barretenberg that referenced this pull request Feb 11, 2025
🤖 I have created a release *beep* *boop*
---


<details><summary>aztec-package: 0.76.0</summary>

##
[0.76.0](AztecProtocol/aztec-packages@aztec-package-v0.75.0...aztec-package-v0.76.0)
(2025-02-10)


### Features

* **spartan:** Blob sink in spartan
([#11307](AztecProtocol/aztec-packages#11307))
([d8e5bcc](AztecProtocol/aztec-packages@d8e5bcc))


### Miscellaneous

* Check versioning
([#11611](AztecProtocol/aztec-packages#11611))
([b33f1da](AztecProtocol/aztec-packages@b33f1da))
* **p2p:** Remove min peers option
([#11789](AztecProtocol/aztec-packages#11789))
([cfb6797](AztecProtocol/aztec-packages@cfb6797))
</details>

<details><summary>barretenberg.js: 0.76.0</summary>

##
[0.76.0](AztecProtocol/aztec-packages@barretenberg.js-v0.75.0...barretenberg.js-v0.76.0)
(2025-02-10)


### Bug Fixes

* **bb.js:** Make wasm imports bundleable
([#11812](AztecProtocol/aztec-packages#11812))
([1af69a9](AztecProtocol/aztec-packages@1af69a9))
* Remove unnecessary console.log
([#11810](AztecProtocol/aztec-packages#11810))
([8a320bf](AztecProtocol/aztec-packages@8a320bf))
</details>

<details><summary>aztec-packages: 0.76.0</summary>

##
[0.76.0](AztecProtocol/aztec-packages@aztec-packages-v0.75.0...aztec-packages-v0.76.0)
(2025-02-10)


### ⚠ BREAKING CHANGES

* check abi integer input is within signed range
(noir-lang/noir#7316)
* using `WithHash<T>` in `SharedMutable` + fixing slot allocation
([#11716](AztecProtocol/aztec-packages#11716))

### Features

* `assert` and `assert_eq` are now expressions
(noir-lang/noir#7313)
([b883911](AztecProtocol/aztec-packages@b883911))
* `assert` and `assert_eq` are now expressions
(noir-lang/noir#7313)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* **avm:** Add skippable condition for interactions
([#11800](AztecProtocol/aztec-packages#11800))
([67aec61](AztecProtocol/aztec-packages@67aec61))
* **avm:** Range check opt via aliases
([#11846](AztecProtocol/aztec-packages#11846))
([ce6a5bf](AztecProtocol/aztec-packages@ce6a5bf))
* **avm:** Restrict bytecode bytes
([#11798](AztecProtocol/aztec-packages#11798))
([be382bc](AztecProtocol/aztec-packages@be382bc))
* **aztec-nr:** Do not compile functions with a private public macro and
unconstrained
([#11815](AztecProtocol/aztec-packages#11815))
([afb52e3](AztecProtocol/aztec-packages@afb52e3))
* **blob-lib:** Make blob lib and fix encoding test flake
([#11782](AztecProtocol/aztec-packages#11782))
([753f505](AztecProtocol/aztec-packages@753f505))
* Broker sends back job after accepting result
([#11754](AztecProtocol/aztec-packages#11754))
([62e5de7](AztecProtocol/aztec-packages@62e5de7))
* **docs:** Notes page
([#11746](AztecProtocol/aztec-packages#11746))
([117200e](AztecProtocol/aztec-packages@117200e))
* **docs:** Reindex typesense in CI
([#11791](AztecProtocol/aztec-packages#11791))
([6af8d54](AztecProtocol/aztec-packages@6af8d54))
* Infer lambda parameter types from return type and let type
(noir-lang/noir#7267)
([b883911](AztecProtocol/aztec-packages@b883911))
* Infer lambda parameter types from return type and let type
(noir-lang/noir#7267)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Optimizing contract with config pattern
([#11756](AztecProtocol/aztec-packages#11756))
([7820cb7](AztecProtocol/aztec-packages@7820cb7))
* **p2p:** Test bench scaffold
([#11758](AztecProtocol/aztec-packages#11758))
([48dc491](AztecProtocol/aztec-packages@48dc491))
* Partial note handling in aztec-nr
([#11641](AztecProtocol/aztec-packages#11641))
([1c1a33b](AztecProtocol/aztec-packages@1c1a33b))
* **perf:** Speed up TS AVM core simulator
([#11794](AztecProtocol/aztec-packages#11794))
([bb58c87](AztecProtocol/aztec-packages@bb58c87))
* **reqresp:** Send status messages along with reqresp responses
([#11727](AztecProtocol/aztec-packages#11727))
([b212490](AztecProtocol/aztec-packages@b212490))
* Simplify `Ord` implementation for arrays
(noir-lang/noir#7305)
([b883911](AztecProtocol/aztec-packages@b883911))
* Simplify `Ord` implementation for arrays
(noir-lang/noir#7305)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* **spartan:** Blob sink in spartan
([#11307](AztecProtocol/aztec-packages#11307))
([d8e5bcc](AztecProtocol/aztec-packages@d8e5bcc))
* Suport deploying contracts with public keys in txe
([#11882](AztecProtocol/aztec-packages#11882))
([94bdc85](AztecProtocol/aztec-packages@94bdc85)),
closes
[#11881](AztecProtocol/aztec-packages#11881)
* Sync from aztec-packages (noir-lang/noir#7293)
([b883911](AztecProtocol/aztec-packages@b883911))
* Sync from aztec-packages (noir-lang/noir#7293)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Trust tree roots from the AVM in public base
([#11823](AztecProtocol/aztec-packages#11823))
([5d12f94](AztecProtocol/aztec-packages@5d12f94))
* Using `WithHash&lt;T&gt;` in `SharedMutable` + fixing slot allocation
([#11716](AztecProtocol/aztec-packages#11716))
([952615b](AztecProtocol/aztec-packages@952615b))


### Bug Fixes

* Add missing return in main
([#11786](AztecProtocol/aztec-packages#11786))
([8c1d477](AztecProtocol/aztec-packages@8c1d477))
* Allows for infinite brillig loops
(noir-lang/noir#7296)
([b883911](AztecProtocol/aztec-packages@b883911))
* Always normalize ssa when priting at least one pass
(noir-lang/noir#7299)
([b883911](AztecProtocol/aztec-packages@b883911))
* Always normalize ssa when priting at least one pass
(noir-lang/noir#7299)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Avoid recomputing contractclassid
([#11783](AztecProtocol/aztec-packages#11783))
([f8448bf](AztecProtocol/aztec-packages@f8448bf))
* Avoid stack overflow on many comments in a row
(noir-lang/noir#7325)
([b883911](AztecProtocol/aztec-packages@b883911))
* Aztec wallet partial address display on deployment
([#11866](AztecProtocol/aztec-packages#11866))
([eef5302](AztecProtocol/aztec-packages@eef5302)),
closes
[#11864](AztecProtocol/aztec-packages#11864)
* **bb.js:** Make wasm imports bundleable
([#11812](AztecProtocol/aztec-packages#11812))
([1af69a9](AztecProtocol/aztec-packages@1af69a9))
* Beacon chain doesn't eat mainframe
([#11854](AztecProtocol/aztec-packages#11854))
([ebbdbc7](AztecProtocol/aztec-packages@ebbdbc7))
* Check abi integer input is within signed range
(noir-lang/noir#7316)
([b883911](AztecProtocol/aztec-packages@b883911))
* **ci:** Enforce boxes-test on merge
([#11841](AztecProtocol/aztec-packages#11841))
([e26a288](AztecProtocol/aztec-packages@e26a288))
* Downgrade to mainframe-compatible KIND
([#11883](AztecProtocol/aztec-packages#11883))
([9239b4f](AztecProtocol/aztec-packages@9239b4f))
* Error on if without else when type mismatch
(noir-lang/noir#7302)
([b883911](AztecProtocol/aztec-packages@b883911))
* Error on if without else when type mismatch
(noir-lang/noir#7302)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Error on trailing doc comment
(noir-lang/noir#7300)
([b883911](AztecProtocol/aztec-packages@b883911))
* Error on trailing doc comment
(noir-lang/noir#7300)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Formatting in master
([#11879](AztecProtocol/aztec-packages#11879))
([fff0f04](AztecProtocol/aztec-packages@fff0f04))
* Mark field division and modulo as requiring predicate for all
necessary types (noir-lang/noir#7290)
([b883911](AztecProtocol/aztec-packages@b883911))
* Mark field division and modulo as requiring predicate for all
necessary types (noir-lang/noir#7290)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Playground use new unbundled aztec.js
([#11780](AztecProtocol/aztec-packages#11780))
([fe2b666](AztecProtocol/aztec-packages@fe2b666))
* Prover-client test
([#11853](AztecProtocol/aztec-packages#11853))
([e950c76](AztecProtocol/aztec-packages@e950c76))
* Publish telemetry-client
([#11777](AztecProtocol/aztec-packages#11777))
([8634f6e](AztecProtocol/aztec-packages@8634f6e))
* Pxe release
([#11877](AztecProtocol/aztec-packages#11877))
([4c0d2f2](AztecProtocol/aztec-packages@4c0d2f2))
* Re exposing intent inner hash
([#11865](AztecProtocol/aztec-packages#11865))
([9638792](AztecProtocol/aztec-packages@9638792)),
closes
[#11795](AztecProtocol/aztec-packages#11795)
* Remove unnecessary console.log
([#11810](AztecProtocol/aztec-packages#11810))
([8a320bf](AztecProtocol/aztec-packages@8a320bf))
* Revert "feat: partial note handling in aztec-nr
([#11641](AztecProtocol/aztec-packages#11641))"
([#11797](AztecProtocol/aztec-packages#11797))
([c5c3f09](AztecProtocol/aztec-packages@c5c3f09))
* Skip orchestrator_workflow test (see
[#11870](AztecProtocol/aztec-packages#11870))
([#11872](AztecProtocol/aztec-packages#11872))
([f8e7e4e](AztecProtocol/aztec-packages@f8e7e4e))
* Skip vite browser test until
[#11874](AztecProtocol/aztec-packages#11874)
([#11876](AztecProtocol/aztec-packages#11876))
([e1adf23](AztecProtocol/aztec-packages@e1adf23))
* **ssa:** Unused functions removals post folding constant Brillig calls
(noir-lang/noir#7265)
([b883911](AztecProtocol/aztec-packages@b883911))
* **ssa:** Unused functions removals post folding constant Brillig calls
(noir-lang/noir#7265)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Tracy run
([#11819](AztecProtocol/aztec-packages#11819))
([fde135d](AztecProtocol/aztec-packages@fde135d))
* Txe block headers
([#11710](AztecProtocol/aztec-packages#11710))
([4f6b76f](AztecProtocol/aztec-packages@4f6b76f))


### Miscellaneous

* Add sha256 library to test suite
(noir-lang/noir#7278)
([b883911](AztecProtocol/aztec-packages@b883911))
* Add sha256 library to test suite
(noir-lang/noir#7278)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Add timeouts to reports CI
(noir-lang/noir#7317)
([b883911](AztecProtocol/aztec-packages@b883911))
* Aggregate with short scalars in UH Recursion
([#11478](AztecProtocol/aztec-packages#11478))
([a6fcdb0](AztecProtocol/aztec-packages@a6fcdb0))
* **avm:** Remove some parentheses in codegen relations
([#11766](AztecProtocol/aztec-packages#11766))
([f2f2634](AztecProtocol/aztec-packages@f2f2634))
* Bump noir_bigcurve timeout
(noir-lang/noir#7322)
([b883911](AztecProtocol/aztec-packages@b883911))
* Check versioning
([#11611](AztecProtocol/aztec-packages#11611))
([b33f1da](AztecProtocol/aztec-packages@b33f1da))
* Cleanup in AVM test fixture
([#11850](AztecProtocol/aztec-packages#11850))
([4526059](AztecProtocol/aztec-packages@4526059))
* Create a CI action to download nargo and add to path
(noir-lang/noir#7281)
([b883911](AztecProtocol/aztec-packages@b883911))
* Create a CI action to download nargo and add to path
(noir-lang/noir#7281)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Disable exp-2 from nightly deployments
([#11880](AztecProtocol/aztec-packages#11880))
([bc42b60](AztecProtocol/aztec-packages@bc42b60))
* Do not differentiate variable vs fixed length for Poseidon2
([#11740](AztecProtocol/aztec-packages#11740))
([ee5fc45](AztecProtocol/aztec-packages@ee5fc45))
* Fix memory reports in CI (noir-lang/noir#7311)
([b883911](AztecProtocol/aztec-packages@b883911))
* Fix memory reports in CI (noir-lang/noir#7311)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* **p2p:** Remove min peers option
([#11789](AztecProtocol/aztec-packages#11789))
([cfb6797](AztecProtocol/aztec-packages@cfb6797))
* Push inlining info code into a submodule
(noir-lang/noir#7266)
([b883911](AztecProtocol/aztec-packages@b883911))
* Push inlining info code into a submodule
(noir-lang/noir#7266)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Reduce number of benchmarking scripts
(noir-lang/noir#7285)
([b883911](AztecProtocol/aztec-packages@b883911))
* Reduce number of benchmarking scripts
(noir-lang/noir#7285)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Remove dead code
([#11809](AztecProtocol/aztec-packages#11809))
([51ad298](AztecProtocol/aztec-packages@51ad298))
* Remove Recoverable (noir-lang/noir#7307)
([b883911](AztecProtocol/aztec-packages@b883911))
* Remove Recoverable (noir-lang/noir#7307)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Replace benchmarks on fast test suites with a cut-off
(noir-lang/noir#7276)
([b883911](AztecProtocol/aztec-packages@b883911))
* Replace benchmarks on fast test suites with a cut-off
(noir-lang/noir#7276)
([3840e8e](AztecProtocol/aztec-packages@3840e8e))
* Replace relative paths to noir-protocol-circuits
([330f613](AztecProtocol/aztec-packages@330f613))
* Replace relative paths to noir-protocol-circuits
([501ec66](AztecProtocol/aztec-packages@501ec66))
* Replace relative paths to noir-protocol-circuits
([3fa986a](AztecProtocol/aztec-packages@3fa986a))
* Sepolia mnemonic, e2e & ignition chain
([#11759](AztecProtocol/aztec-packages#11759))
([ff1536a](AztecProtocol/aztec-packages@ff1536a))
* Simplify handling of pub inputs block
([#11747](AztecProtocol/aztec-packages#11747))
([4a8136c](AztecProtocol/aztec-packages@4a8136c))
* **spartan:** Give services label names
([#11609](AztecProtocol/aztec-packages#11609))
([2da39df](AztecProtocol/aztec-packages@2da39df))
* **spartan:** Update ethereum external host values
([#11590](AztecProtocol/aztec-packages#11590))
([f17a8f3](AztecProtocol/aztec-packages@f17a8f3))
* Update migration_notes.md
([#11801](AztecProtocol/aztec-packages#11801))
([baa69a2](AztecProtocol/aztec-packages@baa69a2))


### Documentation

* Some blob docs
([#11729](AztecProtocol/aztec-packages#11729))
([b1d65f1](AztecProtocol/aztec-packages@b1d65f1))
</details>

<details><summary>barretenberg: 0.76.0</summary>

##
[0.76.0](AztecProtocol/aztec-packages@barretenberg-v0.75.0...barretenberg-v0.76.0)
(2025-02-10)


### Features

* **avm:** Add skippable condition for interactions
([#11800](AztecProtocol/aztec-packages#11800))
([67aec61](AztecProtocol/aztec-packages@67aec61))
* **avm:** Range check opt via aliases
([#11846](AztecProtocol/aztec-packages#11846))
([ce6a5bf](AztecProtocol/aztec-packages@ce6a5bf))
* **avm:** Restrict bytecode bytes
([#11798](AztecProtocol/aztec-packages#11798))
([be382bc](AztecProtocol/aztec-packages@be382bc))


### Bug Fixes

* Add missing return in main
([#11786](AztecProtocol/aztec-packages#11786))
([8c1d477](AztecProtocol/aztec-packages@8c1d477))
* Tracy run
([#11819](AztecProtocol/aztec-packages#11819))
([fde135d](AztecProtocol/aztec-packages@fde135d))


### Miscellaneous

* Aggregate with short scalars in UH Recursion
([#11478](AztecProtocol/aztec-packages#11478))
([a6fcdb0](AztecProtocol/aztec-packages@a6fcdb0))
* **avm:** Remove some parentheses in codegen relations
([#11766](AztecProtocol/aztec-packages#11766))
([f2f2634](AztecProtocol/aztec-packages@f2f2634))
* Do not differentiate variable vs fixed length for Poseidon2
([#11740](AztecProtocol/aztec-packages#11740))
([ee5fc45](AztecProtocol/aztec-packages@ee5fc45))
* Simplify handling of pub inputs block
([#11747](AztecProtocol/aztec-packages#11747))
([4a8136c](AztecProtocol/aztec-packages@4a8136c))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants