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

refactor: simplify sequencer and l1 communication #7989

Merged
merged 2 commits into from
Aug 19, 2024

Conversation

LHerskind
Copy link
Contributor

@LHerskind LHerskind commented Aug 14, 2024

Fixes #7821.

Looking to combine some of the components where there are interfaces that don't really seem to be useful as there would likely be only one implementation. When makes sense, I have joined the "wrapper" and the thing it wrapped because extra wrapping is just confusing.

Starting with changing the global variables builder, since that was low hanging. When looking at the viem-tx-sender it is more tedious as the tests are heavily abusing that had two separate components.

Getting rid of the gasEstimate steps as viem seems to perform that estimate step if no gas amount is provided, so might as well make it less verbose, https://viem.sh/docs/contract/writeContract#gas-optional.

  • Removes the viem-reader
  • Removes the viem-tx-sender
  • Removes the receiver
  • Alter the GlobalVariableBuilder to directly read values
  • Alter the L1Publisher to interact directly with the rollup and availability oracle.
  • Updates the tests

Copy link
Contributor Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @LHerskind and the rest of your teammates on Graphite Graphite

@LHerskind LHerskind changed the title refactor: simplify global variable builder setup refactor: simplify sequencer and l1 communication Aug 14, 2024
@AztecBot
Copy link
Collaborator

AztecBot commented Aug 14, 2024

Benchmark results

No metrics with a significant change found.

Detailed results

All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.

This benchmark source data is available in JSON format on S3 here.

Proof generation

Each column represents the number of threads used in proof generation.

Metric 1 threads 4 threads 16 threads 32 threads 64 threads
proof_construction_time_sha256_ms 5,780 1,561 708 (-1%) 757 (-2%) 767 (-3%)
proof_construction_time_sha256_30_ms 11,877 3,193 1,422 (-1%) 1,452 (-1%) 1,471 (-1%)
proof_construction_time_sha256_100_ms 45,472 12,020 (-2%) 5,461 (-1%) 5,436 (-1%) 5,367 (-1%)
proof_construction_time_poseidon_hash_ms 78.0 (-1%) 35.0 34.0 59.0 (+2%) 88.0 (-1%)
proof_construction_time_poseidon_hash_30_ms 1,536 426 202 (-1%) 225 (-5%) 267
proof_construction_time_poseidon_hash_100_ms 5,658 (-1%) 1,514 682 739 (+2%) 750 (-1%)

L2 block published to L1

Each column represents the number of txs on an L2 block published to L1.

Metric 4 txs 8 txs 16 txs
l1_rollup_calldata_size_in_bytes 4,324 7,844 14,852
l1_rollup_calldata_gas 49,720 92,512 177,536
l1_rollup_execution_gas 1,383,214 2,130,974 3,958,037
l2_block_processing_time_in_ms 256 (-2%) 443 (-2%) 805
l2_block_building_time_in_ms 9,292 18,209 36,246
l2_block_rollup_simulation_time_in_ms 9,291 18,209 36,246
l2_block_public_tx_process_time_in_ms 7,847 16,654 34,662

L2 chain processing

Each column represents the number of blocks on the L2 chain where each block has 8 txs.

Metric 3 blocks 5 blocks
node_history_sync_time_in_ms 2,918 (-2%) 3,868
node_database_size_in_bytes 12,648,528 16,769,104
pxe_database_size_in_bytes 16,254 26,813

Circuits stats

Stats on running time and I/O sizes collected for every kernel circuit run across all benchmarks.

Circuit simulation_time_in_ms witness_generation_time_in_ms input_size_in_bytes output_size_in_bytes proving_time_in_ms
private-kernel-init 97.3 (+7%) 397 (-1%) 21,673 44,858 N/A
private-kernel-inner 164 (-2%) 700 (-2%) 72,309 45,005 N/A
private-kernel-reset-tiny 513 (+3%) 877 (-3%) 65,974 44,844 N/A
private-kernel-tail 209 161 (-4%) 50,728 52,256 N/A
base-parity 5.56 (-1%) N/A 160 96.0 N/A
root-parity 33.3 N/A 69,084 96.0 N/A
base-rollup 2,858 N/A 187,817 664 N/A
root-rollup 38.6 (-1%) N/A 54,525 716 N/A
public-kernel-setup 96.5 (-2%) N/A 103,760 71,222 N/A
public-kernel-app-logic 104 N/A 103,599 71,222 N/A
public-kernel-tail 575 (-1%) N/A 409,190 16,414 N/A
private-kernel-reset-small 490 (-1%) N/A 66,085 45,629 N/A
private-kernel-tail-to-public 1,048 (+3%) 672 (+2%) 492,960 1,697 N/A
public-kernel-teardown 91.9 (-1%) N/A 104,005 71,222 N/A
merge-rollup 19.3 (+1%) N/A 35,742 664 N/A
undefined N/A N/A N/A N/A 68,767 (+4%)

Stats on running time collected for app circuits

Function input_size_in_bytes output_size_in_bytes witness_generation_time_in_ms
ContractClassRegisterer:register 1,344 11,731 342 (-1%)
ContractInstanceDeployer:deploy 1,408 11,731 18.1 (-1%)
MultiCallEntrypoint:entrypoint 1,920 11,731 423 (-1%)
FeeJuice:deploy 1,376 11,731 391 (-1%)
SchnorrAccount:constructor 1,312 11,731 105
SchnorrAccount:entrypoint 2,304 11,731 431
Token:privately_mint_private_note 1,280 11,731 142 (+2%)
FPC:fee_entrypoint_public 1,344 11,731 29.3 (+8%)
Token:transfer 1,312 11,731 271
Benchmarking:create_note 1,344 11,731 100
SchnorrAccount:verify_private_authwit 1,280 11,731 27.6
Token:unshield 1,376 11,731 552 (-2%)
FPC:fee_entrypoint_private 1,376 11,731 754 (-1%)

AVM Simulation

Time to simulate various public functions in the AVM.

Function time_ms bytecode_size_in_bytes
FeeJuice:_increase_public_balance 54.9 (-5%) 8,139
FeeJuice:set_portal 11.0 (+2%) 2,362
Token:constructor 90.3 (+12%) 31,107
FPC:constructor 54.1 (+2%) 22,380
FeeJuice:mint_public 38.6 (+1%) 6,150
Token:mint_public 42.8 (-5%) 11,720
Token:assert_minter_and_mint 68.2 (-1%) 8,028
AuthRegistry:set_authorized 36.6 (-11%) 4,537
FPC:prepare_fee 236 (-5%) 8,812
Token:transfer_public 30.9 (+9%) 47,358
FPC:pay_refund 56.3 (-4%) 12,082
Benchmarking:increment_balance 974 7,450
Token:_increase_public_balance 38.4 (-3%) 8,960
FPC:pay_refund_with_shielded_rebate 68.5 (+3%) 12,631

Public DB Access

Time to access various public DBs.

Function time_ms
get-nullifier-index 0.162 (+1%)

Tree insertion stats

The duration to insert a fixed batch of leaves into each tree type.

Metric 1 leaves 16 leaves 64 leaves 128 leaves 256 leaves 512 leaves 1024 leaves
batch_insert_into_append_only_tree_16_depth_ms 2.21 3.88 (-2%) N/A N/A N/A N/A N/A
batch_insert_into_append_only_tree_16_depth_hash_count 16.8 31.7 N/A N/A N/A N/A N/A
batch_insert_into_append_only_tree_16_depth_hash_ms 0.114 (-1%) 0.109 (-3%) N/A N/A N/A N/A N/A
batch_insert_into_append_only_tree_32_depth_ms N/A N/A 11.5 17.6 (-5%) 30.7 (-3%) 59.0 (-4%) 113
batch_insert_into_append_only_tree_32_depth_hash_count N/A N/A 95.9 159 287 543 1,055
batch_insert_into_append_only_tree_32_depth_hash_ms N/A N/A 0.110 (-1%) 0.102 (-4%) 0.100 (-3%) 0.101 (-4%) 0.101 (-1%)
batch_insert_into_indexed_tree_20_depth_ms N/A N/A 14.4 (-2%) 25.9 (-1%) 43.4 (-2%) 82.8 (-2%) 161
batch_insert_into_indexed_tree_20_depth_hash_count N/A N/A 109 207 355 691 1,363
batch_insert_into_indexed_tree_20_depth_hash_ms N/A N/A 0.108 (-3%) 0.104 (-1%) 0.105 (-2%) 0.102 (-2%) 0.102
batch_insert_into_indexed_tree_40_depth_ms N/A N/A 16.4 (-2%) N/A N/A N/A N/A
batch_insert_into_indexed_tree_40_depth_hash_count N/A N/A 132 N/A N/A N/A N/A
batch_insert_into_indexed_tree_40_depth_hash_ms N/A N/A 0.105 (-3%) N/A N/A N/A N/A

Miscellaneous

Transaction sizes based on how many contract classes are registered in the tx.

Metric 0 registered classes 1 registered classes
tx_size_in_bytes 64,779 668,997

Transaction size based on fee payment method

| Metric | |
| - | |

@LHerskind LHerskind force-pushed the lh/7821-sequencer-l1-communication branch from 6799199 to 0522880 Compare August 15, 2024 12:48
@LHerskind LHerskind marked this pull request as ready for review August 15, 2024 13:13
import { type GlobalVariableBuilder, SimpleTestGlobalVariableBuilder } from './global_builder.js';
import { ViemReader } from './viem-reader.js';

export { SimpleTestGlobalVariableBuilder as SimpleGlobalVariableBuilder } from './global_builder.js';
export { GlobalVariableBuilder } from './global_builder.js';
Copy link
Member

Choose a reason for hiding this comment

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

good riddance

@@ -361,7 +410,23 @@ export class L1Publisher implements L2BlockReceiver {
private async sendProcessTx(encodedData: L1ProcessArgs): Promise<string | undefined> {
Copy link
Member

Choose a reason for hiding this comment

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

the doc comments have been lost, as part of the deletion of the interface

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Can you elaborate a bit more?

The comments are gone because they were on the interface and you would like them to be added here? I did not move those as I thought the comments were not needed as the functions in here were already undocumented 🤷

Copy link
Member

@Maddiaa0 Maddiaa0 left a comment

Choose a reason for hiding this comment

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

Overall looks great, only comment is the loss of some of the doc comments

return await this.txSender.getSenderAddress();
// Computes who will be the L2 proposer at the next Ethereum block
// Using next Ethereum block so we do NOT need to wait for it being mined before seeing the effect
// @note Assumes that all ethereum slots have blocks
Copy link
Contributor

Choose a reason for hiding this comment

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

Is there an issue to fix this?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

What do you mean fix it? There is a tiny "diff" when slots are missed, but you don't really know if it will be missed or not before anything have even been broadcast so not sure how you would fix it.

The case where it is missed could likely handle the timing slightly better to compute the next potential block, but as long as there are plenty other issues it seems like a very tiny thing but can create an issue for it 🤷

@LHerskind LHerskind force-pushed the lh/7821-sequencer-l1-communication branch from 0522880 to 53d3bcf Compare August 19, 2024 10:06
@LHerskind LHerskind merged commit cee4eba into master Aug 19, 2024
96 checks passed
@LHerskind LHerskind deleted the lh/7821-sequencer-l1-communication branch August 19, 2024 11:09
PhilWindle pushed a commit that referenced this pull request Aug 22, 2024
🤖 I have created a release *beep* *boop*
---


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

##
[0.50.0](aztec-package-v0.49.2...aztec-package-v0.50.0)
(2024-08-22)


### Features

* Add a prover-node to the proving e2e tests
([#7952](#7952))
([ec5a5fb](ec5a5fb))
* Add max pending txs to bot
([#8046](#8046))
([7f5517e](7f5517e))
* Deterministic deployments for L1
([#8031](#8031))
([abc6b19](abc6b19))
* Introduce validator client
([#7854](#7854))
([e3be8e6](e3be8e6))
* JSON logging
([#8095](#8095))
([048fa12](048fa12))


### Bug Fixes

* Port option & extracting correct namespaced options
([#8097](#8097))
([e74c83e](e74c83e))
* Txe port and aztec start options
([#8071](#8071))
([23778c5](23778c5))


### Miscellaneous

* Configuration for bot on various networks
([#8063](#8063))
([453a096](453a096))
* Merge devnet fixes back to master
([#8149](#8149))
([6be2183](6be2183))
* Merge Provernet back to master
([#8070](#8070))
([82f3dc7](82f3dc7))
</details>

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

##
[0.50.0](barretenberg.js-v0.49.2...barretenberg.js-v0.50.0)
(2024-08-22)


### Miscellaneous

* Merge devnet fixes back to master
([#8149](#8149))
([6be2183](6be2183))
</details>

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

##
[0.50.0](aztec-packages-v0.49.2...aztec-packages-v0.50.0)
(2024-08-22)


### ⚠ BREAKING CHANGES

* replace public key fetching API
([#7996](#7996))

### Features

* (LSP) suggest names that match any part of the current prefix
(noir-lang/noir#5752)
([0379462](0379462))
* Add `Expr::as_any_integer` and `Expr::as_member_access`
(noir-lang/noir#5742)
([0379462](0379462))
* Add `Expr::as_array`, `Expr::as_repeated_element_array` and same for
slice (noir-lang/noir#5750)
([0379462](0379462))
* Add `Expr::as_binary_op` (noir-lang/noir#5734)
([0379462](0379462))
* Add `Expr::as_bool` (noir-lang/noir#5729)
([0379462](0379462))
* Add `Expr::as_unary` (noir-lang/noir#5731)
([0379462](0379462))
* Add `Expr` methods: `as_tuple`, `as_parenthesized`, `as_index`,
`as_if` (noir-lang/noir#5726)
([0379462](0379462))
* Add `TraitImpl::trait_generic_args` and `TraitImpl::methods`
(noir-lang/noir#5722)
([0379462](0379462))
* Add `unsafe` blocks for calling unconstrained code from constrained
functions (noir-lang/noir#4429)
([0379462](0379462))
* Add a prover-node to the proving e2e tests
([#7952](#7952))
([ec5a5fb](ec5a5fb))
* Add max pending txs to bot
([#8046](#8046))
([7f5517e](7f5517e))
* Add reusable procedures to brillig generation
([#7981](#7981))
([99d1131](99d1131))
* Automate verify_honk_proof input generation
([#8092](#8092))
([bf38d61](bf38d61))
* **avm:** Enable zeromorph in AVM verification
([#8111](#8111))
([b1f9fb6](b1f9fb6)),
closes
[#4944](#4944)
* Build for arm
([#7994](#7994))
([0dffe1b](0dffe1b))
* Completing MockNote
([#8059](#8059))
([05efe23](05efe23)),
closes
[#7636](#7636)
* Constant addresses as addresses
([#8056](#8056))
([1da5caf](1da5caf))
* Deterministic deployments for L1
([#8031](#8031))
([abc6b19](abc6b19))
* **docs:** Cookbook integration
([#8083](#8083))
([19bd8a9](19bd8a9))
* Enabling public and private bridging w/ cli
([#8011](#8011))
([f0f9c73](f0f9c73))
* Fault-tolerant parsing of `fn` and `impl`
(noir-lang/noir#5753)
([0379462](0379462))
* Flush sequencer
([#8050](#8050))
([8821e5f](8821e5f))
* Introduce blob circuit
([#8101](#8101))
([4bb3bac](4bb3bac))
* Introduce validator client
([#7854](#7854))
([e3be8e6](e3be8e6))
* JSON logging
([#8095](#8095))
([048fa12](048fa12))
* LSP auto-import completion
(noir-lang/noir#5741)
([0379462](0379462))
* LSP autocomplete constructor fields
(noir-lang/noir#5732)
([0379462](0379462))
* LSP signature help (noir-lang/noir#5725)
([0379462](0379462))
* Max pending jobs in prover node
([#8045](#8045))
([c857604](c857604))
* Move out_hash inside tx_effect_hash
([#7489](#7489))
([ff0effe](ff0effe))
* Native Merkle Trees
([#7037](#7037))
([8a1032e](8a1032e))
* Oink recursive verifier
([#8121](#8121))
([580708a](580708a))
* **optimization:** Follow past `array_set`s when optimizing
`array_get`s (noir-lang/noir#5772)
([0379462](0379462))
* Passes copy_cycles by const reference to avoid copying
([#8051](#8051))
([495d363](495d363))
* **perf:** Mem2reg function state for value loads to optimize across
blocks (noir-lang/noir#5757)
([0379462](0379462))
* PG recursive verifier constructors based on stdlib inputs
([#8052](#8052))
([4c568b0](4c568b0))
* Poseidon2 gates for Ultra arithmetisation
([#7494](#7494))
([d86577c](d86577c))
* Prover node metrics
([#8086](#8086))
([ab018ff](ab018ff))
* Removed socat, fixed aztec-run
([#8145](#8145))
([ff94aa2](ff94aa2))
* Removing redundant key fetching
([#8043](#8043))
([2bbcc7b](2bbcc7b))
* Replace public key fetching API
([#7996](#7996))
([73d6aa9](73d6aa9))
* Small optimization in toradix
([#8040](#8040))
([0dc7a50](0dc7a50))
* Some fixes and cleanup in PG recursive verifier
([#8053](#8053))
([5f2a9bd](5f2a9bd))
* Suggest trait methods in LSP completion
(noir-lang/noir#5735)
([0379462](0379462))
* Suggest tuple fields in LSP completion
(noir-lang/noir#5730)
([0379462](0379462))
* Track world state metrics
([#8109](#8109))
([ca58d94](ca58d94))
* Typing specific pub keys
([#8099](#8099))
([638793a](638793a))
* Unify all acir recursion constraints based on RecursionConstraint and
proof_type
([#7993](#7993))
([7cb39bc](7cb39bc))
* User `super::` in LSP autocompletion if possible
(noir-lang/noir#5751)
([0379462](0379462))
* Various token note improvements
([#8062](#8062))
([8f9dfd9](8f9dfd9))
* Zk sumcheck
([#7517](#7517))
([0e9a530](0e9a530))


### Bug Fixes

* (LSP) only add cached files relevant to workspace
(noir-lang/noir#5775)
([2d70215](2d70215))
* Add DEBUG and LOG_LEVEL to valid env vars
([#8094](#8094))
([70e61f9](70e61f9))
* Add link to l1-artifacts
([#7940](#7940))
([dcfd120](dcfd120))
* Add missing trait impls for integer types to stdlib
(noir-lang/noir#5738)
([0379462](0379462))
* Allow comptime code to use break without also being `unconstrained`
(noir-lang/noir#5744)
([0379462](0379462))
* **avm:** Real bytes finalization
([#8041](#8041))
([047461a](047461a))
* **ci:** Correctly run bb tests with asserts
([#7607](#7607))
([7b73f69](7b73f69))
* Correctly constrain get header at
([#7893](#7893))
([2ebba0d](2ebba0d))
* Deploy L1 rollup contract using salt if provided
([#8074](#8074))
([1e8eddf](1e8eddf))
* Flaky e2e_prover_node test
([#8116](#8116))
([9d97bd4](9d97bd4))
* **frontend:** Continue type check if we are missing an unsafe block
(noir-lang/noir#5720)
([0379462](0379462))
* Let LSP autocompletion work in more contexts
(noir-lang/noir#5719)
([0379462](0379462))
* Port option & extracting correct namespaced options
([#8097](#8097))
([e74c83e](e74c83e))
* Set prover node max pending jobs in tests
([#8055](#8055))
([403c26f](403c26f))
* Stop WorldStrateSynchronizer in prover node
([#8126](#8126))
([f724b07](f724b07))
* Txe port and aztec start options
([#8071](#8071))
([23778c5](23778c5))
* Unconstrained fn mismatch is now a warning
(noir-lang/noir#5764)
([0379462](0379462))
* Wallet fixes for devnet, testing and misc
([#8058](#8058))
([15f3e8c](15f3e8c))


### Miscellaneous

* Add Brillig loop bytecode size regression and update noir-gates-diff
report (noir-lang/noir#5747)
([0379462](0379462))
* Apply some new lints across workspace
(noir-lang/noir#5736)
([0379462](0379462))
* **avm:** Kernel trace and finalization
([#8049](#8049))
([d7edd24](d7edd24))
* **avm:** Separate alu finalization
([#8069](#8069))
([e8a9eb4](e8a9eb4))
* **bb:** IPA parallelization cleanup
([#8088](#8088))
([9227fa9](9227fa9))
* **bb:** Simplify parallel_for_if_effective
([#8079](#8079))
([5bff26b](5bff26b))
* **bb:** Small cleanup in protogalaxy prover
([#8072](#8072))
([4cb5c83](4cb5c83))
* **ci:** Only show last 50 master cpp benches
([#8075](#8075))
([96f35bc](96f35bc))
* Clarify Field use (noir-lang/noir#5740)
([0379462](0379462))
* CLI command to set latest block as proven
([#7987](#7987))
([80eaf1d](80eaf1d))
* Configuration for bot on various networks
([#8063](#8063))
([453a096](453a096))
* Count brillig opcodes in nargo info
(noir-lang/noir#5189)
([0379462](0379462))
* Deduplication in Protogalaxy
([#8067](#8067))
([a5cc3ba](a5cc3ba))
* **docs:** Expanding solidity verifier chain list
(noir-lang/noir#5587)
([0379462](0379462))
* Dont trail whitespace in vscode
([#5661](#5661))
([7595d91](7595d91))
* Handle constant output for ec add opcode
([#8108](#8108))
([2ee79d2](2ee79d2))
* Make spans non-optional on `UnresolvedType`
(noir-lang/noir#5773)
([2d70215](2d70215))
* Merge devnet fixes back to master
([#8149](#8149))
([6be2183](6be2183))
* Merge devnet to master
([#8044](#8044))
([f84950f](f84950f))
* Merge Provernet back to master
([#8070](#8070))
([82f3dc7](82f3dc7))
* Merging `TokenWithRefunds` with `Token`
([#8042](#8042))
([8b795eb](8b795eb))
* Modified devnet config
([#8087](#8087))
([854ab45](854ab45))
* Nuking old registry contract
([#8057](#8057))
([3bd08a8](3bd08a8)),
closes
[#7955](#7955)
* Pedersen hash related cleanup in aztec.nr
([#8009](#8009))
([3c4ac65](3c4ac65))
* Portal manager cli
([#8047](#8047))
([618e251](618e251))
* Proper portal setup for fees + test
([#7944](#7944))
([9fec67e](9fec67e))
* Public kernel
([#8061](#8061))
([617a69c](617a69c))
* Refactor ACIR function IDs from raw integers to struct
(noir-lang/noir#5748)
([0379462](0379462))
* Replace relative paths to noir-protocol-circuits
([5ddf0e6](5ddf0e6))
* Replace relative paths to noir-protocol-circuits
([ca77c17](ca77c17))
* Replace relative paths to noir-protocol-circuits
([fe73c93](fe73c93))
* Replace relative paths to noir-protocol-circuits
([576bc2f](576bc2f))
* Replace relative paths to noir-protocol-circuits
([0d05d6b](0d05d6b))
* Simplify sequencer and l1 communication
([#7989](#7989))
([cee4eba](cee4eba))
* Split LSP completion.rs into several files
(noir-lang/noir#5723)
([0379462](0379462))
* Split up stdlib/recursion
([#8054](#8054))
([ec03e40](ec03e40))
* **sync-noir:** Fix modify/delete conflicts automatically
([#8090](#8090))
([a09627c](a09627c))
* Use decider verifier in ultra verifier
([#8115](#8115))
([6c5ab2b](6c5ab2b))


### Documentation

* Fix typo overview.md
([#7908](#7908))
([3749211](3749211))
* Update installation info for bb and noir
([#8119](#8119))
([a744321](a744321))
</details>

<details><summary>barretenberg: 0.50.0</summary>

##
[0.50.0](barretenberg-v0.49.2...barretenberg-v0.50.0)
(2024-08-22)


### Features

* Add a prover-node to the proving e2e tests
([#7952](#7952))
([ec5a5fb](ec5a5fb))
* Automate verify_honk_proof input generation
([#8092](#8092))
([bf38d61](bf38d61))
* **avm:** Enable zeromorph in AVM verification
([#8111](#8111))
([b1f9fb6](b1f9fb6)),
closes
[#4944](#4944)
* Native Merkle Trees
([#7037](#7037))
([8a1032e](8a1032e))
* Oink recursive verifier
([#8121](#8121))
([580708a](580708a))
* Passes copy_cycles by const reference to avoid copying
([#8051](#8051))
([495d363](495d363))
* PG recursive verifier constructors based on stdlib inputs
([#8052](#8052))
([4c568b0](4c568b0))
* Poseidon2 gates for Ultra arithmetisation
([#7494](#7494))
([d86577c](d86577c))
* Some fixes and cleanup in PG recursive verifier
([#8053](#8053))
([5f2a9bd](5f2a9bd))
* Unify all acir recursion constraints based on RecursionConstraint and
proof_type
([#7993](#7993))
([7cb39bc](7cb39bc))
* Zk sumcheck
([#7517](#7517))
([0e9a530](0e9a530))


### Bug Fixes

* **avm:** Real bytes finalization
([#8041](#8041))
([047461a](047461a))
* **ci:** Correctly run bb tests with asserts
([#7607](#7607))
([7b73f69](7b73f69))


### Miscellaneous

* **avm:** Kernel trace and finalization
([#8049](#8049))
([d7edd24](d7edd24))
* **avm:** Separate alu finalization
([#8069](#8069))
([e8a9eb4](e8a9eb4))
* **bb:** IPA parallelization cleanup
([#8088](#8088))
([9227fa9](9227fa9))
* **bb:** Simplify parallel_for_if_effective
([#8079](#8079))
([5bff26b](5bff26b))
* **bb:** Small cleanup in protogalaxy prover
([#8072](#8072))
([4cb5c83](4cb5c83))
* Deduplication in Protogalaxy
([#8067](#8067))
([a5cc3ba](a5cc3ba))
* Handle constant output for ec add opcode
([#8108](#8108))
([2ee79d2](2ee79d2))
* Merge devnet fixes back to master
([#8149](#8149))
([6be2183](6be2183))
* Split up stdlib/recursion
([#8054](#8054))
([ec03e40](ec03e40))
* Use decider verifier in ultra verifier
([#8115](#8115))
([6c5ab2b](6c5ab2b))


### Documentation

* Update installation info for bb and noir
([#8119](#8119))
([a744321](a744321))
</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 Aug 23, 2024
🤖 I have created a release *beep* *boop*
---


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

##
[0.50.0](AztecProtocol/aztec-packages@aztec-package-v0.49.2...aztec-package-v0.50.0)
(2024-08-22)


### Features

* Add a prover-node to the proving e2e tests
([#7952](AztecProtocol/aztec-packages#7952))
([ec5a5fb](AztecProtocol/aztec-packages@ec5a5fb))
* Add max pending txs to bot
([#8046](AztecProtocol/aztec-packages#8046))
([7f5517e](AztecProtocol/aztec-packages@7f5517e))
* Deterministic deployments for L1
([#8031](AztecProtocol/aztec-packages#8031))
([abc6b19](AztecProtocol/aztec-packages@abc6b19))
* Introduce validator client
([#7854](AztecProtocol/aztec-packages#7854))
([e3be8e6](AztecProtocol/aztec-packages@e3be8e6))
* JSON logging
([#8095](AztecProtocol/aztec-packages#8095))
([048fa12](AztecProtocol/aztec-packages@048fa12))


### Bug Fixes

* Port option & extracting correct namespaced options
([#8097](AztecProtocol/aztec-packages#8097))
([e74c83e](AztecProtocol/aztec-packages@e74c83e))
* Txe port and aztec start options
([#8071](AztecProtocol/aztec-packages#8071))
([23778c5](AztecProtocol/aztec-packages@23778c5))


### Miscellaneous

* Configuration for bot on various networks
([#8063](AztecProtocol/aztec-packages#8063))
([453a096](AztecProtocol/aztec-packages@453a096))
* Merge devnet fixes back to master
([#8149](AztecProtocol/aztec-packages#8149))
([6be2183](AztecProtocol/aztec-packages@6be2183))
* Merge Provernet back to master
([#8070](AztecProtocol/aztec-packages#8070))
([82f3dc7](AztecProtocol/aztec-packages@82f3dc7))
</details>

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

##
[0.50.0](AztecProtocol/aztec-packages@barretenberg.js-v0.49.2...barretenberg.js-v0.50.0)
(2024-08-22)


### Miscellaneous

* Merge devnet fixes back to master
([#8149](AztecProtocol/aztec-packages#8149))
([6be2183](AztecProtocol/aztec-packages@6be2183))
</details>

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

##
[0.50.0](AztecProtocol/aztec-packages@aztec-packages-v0.49.2...aztec-packages-v0.50.0)
(2024-08-22)


### ⚠ BREAKING CHANGES

* replace public key fetching API
([#7996](AztecProtocol/aztec-packages#7996))

### Features

* (LSP) suggest names that match any part of the current prefix
(noir-lang/noir#5752)
([0379462](AztecProtocol/aztec-packages@0379462))
* Add `Expr::as_any_integer` and `Expr::as_member_access`
(noir-lang/noir#5742)
([0379462](AztecProtocol/aztec-packages@0379462))
* Add `Expr::as_array`, `Expr::as_repeated_element_array` and same for
slice (noir-lang/noir#5750)
([0379462](AztecProtocol/aztec-packages@0379462))
* Add `Expr::as_binary_op` (noir-lang/noir#5734)
([0379462](AztecProtocol/aztec-packages@0379462))
* Add `Expr::as_bool` (noir-lang/noir#5729)
([0379462](AztecProtocol/aztec-packages@0379462))
* Add `Expr::as_unary` (noir-lang/noir#5731)
([0379462](AztecProtocol/aztec-packages@0379462))
* Add `Expr` methods: `as_tuple`, `as_parenthesized`, `as_index`,
`as_if` (noir-lang/noir#5726)
([0379462](AztecProtocol/aztec-packages@0379462))
* Add `TraitImpl::trait_generic_args` and `TraitImpl::methods`
(noir-lang/noir#5722)
([0379462](AztecProtocol/aztec-packages@0379462))
* Add `unsafe` blocks for calling unconstrained code from constrained
functions (noir-lang/noir#4429)
([0379462](AztecProtocol/aztec-packages@0379462))
* Add a prover-node to the proving e2e tests
([#7952](AztecProtocol/aztec-packages#7952))
([ec5a5fb](AztecProtocol/aztec-packages@ec5a5fb))
* Add max pending txs to bot
([#8046](AztecProtocol/aztec-packages#8046))
([7f5517e](AztecProtocol/aztec-packages@7f5517e))
* Add reusable procedures to brillig generation
([#7981](AztecProtocol/aztec-packages#7981))
([99d1131](AztecProtocol/aztec-packages@99d1131))
* Automate verify_honk_proof input generation
([#8092](AztecProtocol/aztec-packages#8092))
([bf38d61](AztecProtocol/aztec-packages@bf38d61))
* **avm:** Enable zeromorph in AVM verification
([#8111](AztecProtocol/aztec-packages#8111))
([b1f9fb6](AztecProtocol/aztec-packages@b1f9fb6)),
closes
[#4944](AztecProtocol/aztec-packages#4944)
* Build for arm
([#7994](AztecProtocol/aztec-packages#7994))
([0dffe1b](AztecProtocol/aztec-packages@0dffe1b))
* Completing MockNote
([#8059](AztecProtocol/aztec-packages#8059))
([05efe23](AztecProtocol/aztec-packages@05efe23)),
closes
[#7636](AztecProtocol/aztec-packages#7636)
* Constant addresses as addresses
([#8056](AztecProtocol/aztec-packages#8056))
([1da5caf](AztecProtocol/aztec-packages@1da5caf))
* Deterministic deployments for L1
([#8031](AztecProtocol/aztec-packages#8031))
([abc6b19](AztecProtocol/aztec-packages@abc6b19))
* **docs:** Cookbook integration
([#8083](AztecProtocol/aztec-packages#8083))
([19bd8a9](AztecProtocol/aztec-packages@19bd8a9))
* Enabling public and private bridging w/ cli
([#8011](AztecProtocol/aztec-packages#8011))
([f0f9c73](AztecProtocol/aztec-packages@f0f9c73))
* Fault-tolerant parsing of `fn` and `impl`
(noir-lang/noir#5753)
([0379462](AztecProtocol/aztec-packages@0379462))
* Flush sequencer
([#8050](AztecProtocol/aztec-packages#8050))
([8821e5f](AztecProtocol/aztec-packages@8821e5f))
* Introduce blob circuit
([#8101](AztecProtocol/aztec-packages#8101))
([4bb3bac](AztecProtocol/aztec-packages@4bb3bac))
* Introduce validator client
([#7854](AztecProtocol/aztec-packages#7854))
([e3be8e6](AztecProtocol/aztec-packages@e3be8e6))
* JSON logging
([#8095](AztecProtocol/aztec-packages#8095))
([048fa12](AztecProtocol/aztec-packages@048fa12))
* LSP auto-import completion
(noir-lang/noir#5741)
([0379462](AztecProtocol/aztec-packages@0379462))
* LSP autocomplete constructor fields
(noir-lang/noir#5732)
([0379462](AztecProtocol/aztec-packages@0379462))
* LSP signature help (noir-lang/noir#5725)
([0379462](AztecProtocol/aztec-packages@0379462))
* Max pending jobs in prover node
([#8045](AztecProtocol/aztec-packages#8045))
([c857604](AztecProtocol/aztec-packages@c857604))
* Move out_hash inside tx_effect_hash
([#7489](AztecProtocol/aztec-packages#7489))
([ff0effe](AztecProtocol/aztec-packages@ff0effe))
* Native Merkle Trees
([#7037](AztecProtocol/aztec-packages#7037))
([8a1032e](AztecProtocol/aztec-packages@8a1032e))
* Oink recursive verifier
([#8121](AztecProtocol/aztec-packages#8121))
([580708a](AztecProtocol/aztec-packages@580708a))
* **optimization:** Follow past `array_set`s when optimizing
`array_get`s (noir-lang/noir#5772)
([0379462](AztecProtocol/aztec-packages@0379462))
* Passes copy_cycles by const reference to avoid copying
([#8051](AztecProtocol/aztec-packages#8051))
([495d363](AztecProtocol/aztec-packages@495d363))
* **perf:** Mem2reg function state for value loads to optimize across
blocks (noir-lang/noir#5757)
([0379462](AztecProtocol/aztec-packages@0379462))
* PG recursive verifier constructors based on stdlib inputs
([#8052](AztecProtocol/aztec-packages#8052))
([4c568b0](AztecProtocol/aztec-packages@4c568b0))
* Poseidon2 gates for Ultra arithmetisation
([#7494](AztecProtocol/aztec-packages#7494))
([d86577c](AztecProtocol/aztec-packages@d86577c))
* Prover node metrics
([#8086](AztecProtocol/aztec-packages#8086))
([ab018ff](AztecProtocol/aztec-packages@ab018ff))
* Removed socat, fixed aztec-run
([#8145](AztecProtocol/aztec-packages#8145))
([ff94aa2](AztecProtocol/aztec-packages@ff94aa2))
* Removing redundant key fetching
([#8043](AztecProtocol/aztec-packages#8043))
([2bbcc7b](AztecProtocol/aztec-packages@2bbcc7b))
* Replace public key fetching API
([#7996](AztecProtocol/aztec-packages#7996))
([73d6aa9](AztecProtocol/aztec-packages@73d6aa9))
* Small optimization in toradix
([#8040](AztecProtocol/aztec-packages#8040))
([0dc7a50](AztecProtocol/aztec-packages@0dc7a50))
* Some fixes and cleanup in PG recursive verifier
([#8053](AztecProtocol/aztec-packages#8053))
([5f2a9bd](AztecProtocol/aztec-packages@5f2a9bd))
* Suggest trait methods in LSP completion
(noir-lang/noir#5735)
([0379462](AztecProtocol/aztec-packages@0379462))
* Suggest tuple fields in LSP completion
(noir-lang/noir#5730)
([0379462](AztecProtocol/aztec-packages@0379462))
* Track world state metrics
([#8109](AztecProtocol/aztec-packages#8109))
([ca58d94](AztecProtocol/aztec-packages@ca58d94))
* Typing specific pub keys
([#8099](AztecProtocol/aztec-packages#8099))
([638793a](AztecProtocol/aztec-packages@638793a))
* Unify all acir recursion constraints based on RecursionConstraint and
proof_type
([#7993](AztecProtocol/aztec-packages#7993))
([7cb39bc](AztecProtocol/aztec-packages@7cb39bc))
* User `super::` in LSP autocompletion if possible
(noir-lang/noir#5751)
([0379462](AztecProtocol/aztec-packages@0379462))
* Various token note improvements
([#8062](AztecProtocol/aztec-packages#8062))
([8f9dfd9](AztecProtocol/aztec-packages@8f9dfd9))
* Zk sumcheck
([#7517](AztecProtocol/aztec-packages#7517))
([0e9a530](AztecProtocol/aztec-packages@0e9a530))


### Bug Fixes

* (LSP) only add cached files relevant to workspace
(noir-lang/noir#5775)
([2d70215](AztecProtocol/aztec-packages@2d70215))
* Add DEBUG and LOG_LEVEL to valid env vars
([#8094](AztecProtocol/aztec-packages#8094))
([70e61f9](AztecProtocol/aztec-packages@70e61f9))
* Add link to l1-artifacts
([#7940](AztecProtocol/aztec-packages#7940))
([dcfd120](AztecProtocol/aztec-packages@dcfd120))
* Add missing trait impls for integer types to stdlib
(noir-lang/noir#5738)
([0379462](AztecProtocol/aztec-packages@0379462))
* Allow comptime code to use break without also being `unconstrained`
(noir-lang/noir#5744)
([0379462](AztecProtocol/aztec-packages@0379462))
* **avm:** Real bytes finalization
([#8041](AztecProtocol/aztec-packages#8041))
([047461a](AztecProtocol/aztec-packages@047461a))
* **ci:** Correctly run bb tests with asserts
([#7607](AztecProtocol/aztec-packages#7607))
([7b73f69](AztecProtocol/aztec-packages@7b73f69))
* Correctly constrain get header at
([#7893](AztecProtocol/aztec-packages#7893))
([2ebba0d](AztecProtocol/aztec-packages@2ebba0d))
* Deploy L1 rollup contract using salt if provided
([#8074](AztecProtocol/aztec-packages#8074))
([1e8eddf](AztecProtocol/aztec-packages@1e8eddf))
* Flaky e2e_prover_node test
([#8116](AztecProtocol/aztec-packages#8116))
([9d97bd4](AztecProtocol/aztec-packages@9d97bd4))
* **frontend:** Continue type check if we are missing an unsafe block
(noir-lang/noir#5720)
([0379462](AztecProtocol/aztec-packages@0379462))
* Let LSP autocompletion work in more contexts
(noir-lang/noir#5719)
([0379462](AztecProtocol/aztec-packages@0379462))
* Port option & extracting correct namespaced options
([#8097](AztecProtocol/aztec-packages#8097))
([e74c83e](AztecProtocol/aztec-packages@e74c83e))
* Set prover node max pending jobs in tests
([#8055](AztecProtocol/aztec-packages#8055))
([403c26f](AztecProtocol/aztec-packages@403c26f))
* Stop WorldStrateSynchronizer in prover node
([#8126](AztecProtocol/aztec-packages#8126))
([f724b07](AztecProtocol/aztec-packages@f724b07))
* Txe port and aztec start options
([#8071](AztecProtocol/aztec-packages#8071))
([23778c5](AztecProtocol/aztec-packages@23778c5))
* Unconstrained fn mismatch is now a warning
(noir-lang/noir#5764)
([0379462](AztecProtocol/aztec-packages@0379462))
* Wallet fixes for devnet, testing and misc
([#8058](AztecProtocol/aztec-packages#8058))
([15f3e8c](AztecProtocol/aztec-packages@15f3e8c))


### Miscellaneous

* Add Brillig loop bytecode size regression and update noir-gates-diff
report (noir-lang/noir#5747)
([0379462](AztecProtocol/aztec-packages@0379462))
* Apply some new lints across workspace
(noir-lang/noir#5736)
([0379462](AztecProtocol/aztec-packages@0379462))
* **avm:** Kernel trace and finalization
([#8049](AztecProtocol/aztec-packages#8049))
([d7edd24](AztecProtocol/aztec-packages@d7edd24))
* **avm:** Separate alu finalization
([#8069](AztecProtocol/aztec-packages#8069))
([e8a9eb4](AztecProtocol/aztec-packages@e8a9eb4))
* **bb:** IPA parallelization cleanup
([#8088](AztecProtocol/aztec-packages#8088))
([9227fa9](AztecProtocol/aztec-packages@9227fa9))
* **bb:** Simplify parallel_for_if_effective
([#8079](AztecProtocol/aztec-packages#8079))
([5bff26b](AztecProtocol/aztec-packages@5bff26b))
* **bb:** Small cleanup in protogalaxy prover
([#8072](AztecProtocol/aztec-packages#8072))
([4cb5c83](AztecProtocol/aztec-packages@4cb5c83))
* **ci:** Only show last 50 master cpp benches
([#8075](AztecProtocol/aztec-packages#8075))
([96f35bc](AztecProtocol/aztec-packages@96f35bc))
* Clarify Field use (noir-lang/noir#5740)
([0379462](AztecProtocol/aztec-packages@0379462))
* CLI command to set latest block as proven
([#7987](AztecProtocol/aztec-packages#7987))
([80eaf1d](AztecProtocol/aztec-packages@80eaf1d))
* Configuration for bot on various networks
([#8063](AztecProtocol/aztec-packages#8063))
([453a096](AztecProtocol/aztec-packages@453a096))
* Count brillig opcodes in nargo info
(noir-lang/noir#5189)
([0379462](AztecProtocol/aztec-packages@0379462))
* Deduplication in Protogalaxy
([#8067](AztecProtocol/aztec-packages#8067))
([a5cc3ba](AztecProtocol/aztec-packages@a5cc3ba))
* **docs:** Expanding solidity verifier chain list
(noir-lang/noir#5587)
([0379462](AztecProtocol/aztec-packages@0379462))
* Dont trail whitespace in vscode
([#5661](AztecProtocol/aztec-packages#5661))
([7595d91](AztecProtocol/aztec-packages@7595d91))
* Handle constant output for ec add opcode
([#8108](AztecProtocol/aztec-packages#8108))
([2ee79d2](AztecProtocol/aztec-packages@2ee79d2))
* Make spans non-optional on `UnresolvedType`
(noir-lang/noir#5773)
([2d70215](AztecProtocol/aztec-packages@2d70215))
* Merge devnet fixes back to master
([#8149](AztecProtocol/aztec-packages#8149))
([6be2183](AztecProtocol/aztec-packages@6be2183))
* Merge devnet to master
([#8044](AztecProtocol/aztec-packages#8044))
([f84950f](AztecProtocol/aztec-packages@f84950f))
* Merge Provernet back to master
([#8070](AztecProtocol/aztec-packages#8070))
([82f3dc7](AztecProtocol/aztec-packages@82f3dc7))
* Merging `TokenWithRefunds` with `Token`
([#8042](AztecProtocol/aztec-packages#8042))
([8b795eb](AztecProtocol/aztec-packages@8b795eb))
* Modified devnet config
([#8087](AztecProtocol/aztec-packages#8087))
([854ab45](AztecProtocol/aztec-packages@854ab45))
* Nuking old registry contract
([#8057](AztecProtocol/aztec-packages#8057))
([3bd08a8](AztecProtocol/aztec-packages@3bd08a8)),
closes
[#7955](AztecProtocol/aztec-packages#7955)
* Pedersen hash related cleanup in aztec.nr
([#8009](AztecProtocol/aztec-packages#8009))
([3c4ac65](AztecProtocol/aztec-packages@3c4ac65))
* Portal manager cli
([#8047](AztecProtocol/aztec-packages#8047))
([618e251](AztecProtocol/aztec-packages@618e251))
* Proper portal setup for fees + test
([#7944](AztecProtocol/aztec-packages#7944))
([9fec67e](AztecProtocol/aztec-packages@9fec67e))
* Public kernel
([#8061](AztecProtocol/aztec-packages#8061))
([617a69c](AztecProtocol/aztec-packages@617a69c))
* Refactor ACIR function IDs from raw integers to struct
(noir-lang/noir#5748)
([0379462](AztecProtocol/aztec-packages@0379462))
* Replace relative paths to noir-protocol-circuits
([5ddf0e6](AztecProtocol/aztec-packages@5ddf0e6))
* Replace relative paths to noir-protocol-circuits
([ca77c17](AztecProtocol/aztec-packages@ca77c17))
* Replace relative paths to noir-protocol-circuits
([fe73c93](AztecProtocol/aztec-packages@fe73c93))
* Replace relative paths to noir-protocol-circuits
([576bc2f](AztecProtocol/aztec-packages@576bc2f))
* Replace relative paths to noir-protocol-circuits
([0d05d6b](AztecProtocol/aztec-packages@0d05d6b))
* Simplify sequencer and l1 communication
([#7989](AztecProtocol/aztec-packages#7989))
([cee4eba](AztecProtocol/aztec-packages@cee4eba))
* Split LSP completion.rs into several files
(noir-lang/noir#5723)
([0379462](AztecProtocol/aztec-packages@0379462))
* Split up stdlib/recursion
([#8054](AztecProtocol/aztec-packages#8054))
([ec03e40](AztecProtocol/aztec-packages@ec03e40))
* **sync-noir:** Fix modify/delete conflicts automatically
([#8090](AztecProtocol/aztec-packages#8090))
([a09627c](AztecProtocol/aztec-packages@a09627c))
* Use decider verifier in ultra verifier
([#8115](AztecProtocol/aztec-packages#8115))
([6c5ab2b](AztecProtocol/aztec-packages@6c5ab2b))


### Documentation

* Fix typo overview.md
([#7908](AztecProtocol/aztec-packages#7908))
([3749211](AztecProtocol/aztec-packages@3749211))
* Update installation info for bb and noir
([#8119](AztecProtocol/aztec-packages#8119))
([a744321](AztecProtocol/aztec-packages@a744321))
</details>

<details><summary>barretenberg: 0.50.0</summary>

##
[0.50.0](AztecProtocol/aztec-packages@barretenberg-v0.49.2...barretenberg-v0.50.0)
(2024-08-22)


### Features

* Add a prover-node to the proving e2e tests
([#7952](AztecProtocol/aztec-packages#7952))
([ec5a5fb](AztecProtocol/aztec-packages@ec5a5fb))
* Automate verify_honk_proof input generation
([#8092](AztecProtocol/aztec-packages#8092))
([bf38d61](AztecProtocol/aztec-packages@bf38d61))
* **avm:** Enable zeromorph in AVM verification
([#8111](AztecProtocol/aztec-packages#8111))
([b1f9fb6](AztecProtocol/aztec-packages@b1f9fb6)),
closes
[#4944](AztecProtocol/aztec-packages#4944)
* Native Merkle Trees
([#7037](AztecProtocol/aztec-packages#7037))
([8a1032e](AztecProtocol/aztec-packages@8a1032e))
* Oink recursive verifier
([#8121](AztecProtocol/aztec-packages#8121))
([580708a](AztecProtocol/aztec-packages@580708a))
* Passes copy_cycles by const reference to avoid copying
([#8051](AztecProtocol/aztec-packages#8051))
([495d363](AztecProtocol/aztec-packages@495d363))
* PG recursive verifier constructors based on stdlib inputs
([#8052](AztecProtocol/aztec-packages#8052))
([4c568b0](AztecProtocol/aztec-packages@4c568b0))
* Poseidon2 gates for Ultra arithmetisation
([#7494](AztecProtocol/aztec-packages#7494))
([d86577c](AztecProtocol/aztec-packages@d86577c))
* Some fixes and cleanup in PG recursive verifier
([#8053](AztecProtocol/aztec-packages#8053))
([5f2a9bd](AztecProtocol/aztec-packages@5f2a9bd))
* Unify all acir recursion constraints based on RecursionConstraint and
proof_type
([#7993](AztecProtocol/aztec-packages#7993))
([7cb39bc](AztecProtocol/aztec-packages@7cb39bc))
* Zk sumcheck
([#7517](AztecProtocol/aztec-packages#7517))
([0e9a530](AztecProtocol/aztec-packages@0e9a530))


### Bug Fixes

* **avm:** Real bytes finalization
([#8041](AztecProtocol/aztec-packages#8041))
([047461a](AztecProtocol/aztec-packages@047461a))
* **ci:** Correctly run bb tests with asserts
([#7607](AztecProtocol/aztec-packages#7607))
([7b73f69](AztecProtocol/aztec-packages@7b73f69))


### Miscellaneous

* **avm:** Kernel trace and finalization
([#8049](AztecProtocol/aztec-packages#8049))
([d7edd24](AztecProtocol/aztec-packages@d7edd24))
* **avm:** Separate alu finalization
([#8069](AztecProtocol/aztec-packages#8069))
([e8a9eb4](AztecProtocol/aztec-packages@e8a9eb4))
* **bb:** IPA parallelization cleanup
([#8088](AztecProtocol/aztec-packages#8088))
([9227fa9](AztecProtocol/aztec-packages@9227fa9))
* **bb:** Simplify parallel_for_if_effective
([#8079](AztecProtocol/aztec-packages#8079))
([5bff26b](AztecProtocol/aztec-packages@5bff26b))
* **bb:** Small cleanup in protogalaxy prover
([#8072](AztecProtocol/aztec-packages#8072))
([4cb5c83](AztecProtocol/aztec-packages@4cb5c83))
* Deduplication in Protogalaxy
([#8067](AztecProtocol/aztec-packages#8067))
([a5cc3ba](AztecProtocol/aztec-packages@a5cc3ba))
* Handle constant output for ec add opcode
([#8108](AztecProtocol/aztec-packages#8108))
([2ee79d2](AztecProtocol/aztec-packages@2ee79d2))
* Merge devnet fixes back to master
([#8149](AztecProtocol/aztec-packages#8149))
([6be2183](AztecProtocol/aztec-packages@6be2183))
* Split up stdlib/recursion
([#8054](AztecProtocol/aztec-packages#8054))
([ec03e40](AztecProtocol/aztec-packages@ec03e40))
* Use decider verifier in ultra verifier
([#8115](AztecProtocol/aztec-packages#8115))
([6c5ab2b](AztecProtocol/aztec-packages@6c5ab2b))


### Documentation

* Update installation info for bb and noir
([#8119](AztecProtocol/aztec-packages#8119))
([a744321](AztecProtocol/aztec-packages@a744321))
</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
Development

Successfully merging this pull request may close these issues.

refactor: sequencer communication with L1
4 participants