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: refactor key rotate and address comments from 6405 #6450

Conversation

sklppy88
Copy link
Contributor

@sklppy88 sklppy88 commented May 16, 2024

Addresses comments from #6405, refactors key rotate

@AztecBot
Copy link
Collaborator

AztecBot commented May 16, 2024

Benchmark results

Metrics with a significant change:

  • protocol_circuit_input_size_in_bytes (public-kernel-setup): 112,995 (-18%)
  • tx_pxe_processing_time_ms (0): 21,150 (-29%)
  • tx_sequencer_processing_time_ms (0): 1,072 (-35%)
  • app_circuit_proving_time_in_ms (FPC:fee_entrypoint_public): 8,585 (-48%)
  • protocol_circuit_witness_generation_time_in_ms (private-kernel-tail): 2,879 (-28%)
  • protocol_circuit_witness_generation_time_in_ms (base-parity): 662 (-60%)
  • protocol_circuit_witness_generation_time_in_ms (public-kernel-app-logic): 808 (+294%)
  • protocol_circuit_witness_generation_time_in_ms (base-rollup): 6,177 (+113%)
  • protocol_circuit_witness_generation_time_in_ms (root-parity): 226 (+67%)
  • protocol_circuit_witness_generation_time_in_ms (public-kernel-setup): 297 (-65%)
  • protocol_circuit_witness_generation_time_in_ms (merge-rollup): 126 (-31%)
  • protocol_circuit_witness_generation_time_in_ms (root-rollup): 157 (+31%)
  • protocol_circuit_proving_time_in_ms (base-parity): 8,108 (+166%)
  • protocol_circuit_proving_time_in_ms (public-kernel-app-logic): 622 (-27%)
  • protocol_circuit_proving_time_in_ms (root-parity): 98,440 (+132%)
  • protocol_circuit_proving_time_in_ms (public-kernel-setup): 610 (-31%)
  • protocol_circuit_proving_time_in_ms (base-rollup): 91,533 (+111%)
  • protocol_circuit_proving_time_in_ms (public-kernel-tail): 740 (-27%)
  • protocol_circuit_proving_time_in_ms (public-kernel-teardown): 698 (-22%)
  • protocol_circuit_proving_time_in_ms (merge-rollup): 2,518 (+57%)
  • protocol_circuit_proving_time_in_ms (root-rollup): 11,937 (+44%)
  • protocol_circuit_proof_size_in_bytes (public-kernel-app-logic): 90,393 (-22%)
  • protocol_circuit_proof_size_in_bytes (public-kernel-setup): 89,725 (-23%)
  • protocol_circuit_proof_size_in_bytes (public-kernel-teardown): 94,736 (-19%)
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 5,690 1,541 715 760 776

L2 block published to L1

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

Metric 8 txs 32 txs 64 txs
l1_rollup_calldata_size_in_bytes 772 772 772
l1_rollup_calldata_gas 6,844 6,868 6,868
l1_rollup_execution_gas 587,384 587,408 587,408
l2_block_processing_time_in_ms 1,348 (-1%) 5,063 (-1%) 10,069 (-1%)
l2_block_building_time_in_ms 33,244 (-1%) 130,736 (-2%) 261,011 (-1%)
l2_block_rollup_simulation_time_in_ms 33,062 (-1%) 130,096 (-2%) 259,753 (-1%)
l2_block_public_tx_process_time_in_ms 20,425 (-1%) 82,149 (-2%) 164,202 (-1%)

L2 chain processing

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

Metric 5 blocks 10 blocks
node_history_sync_time_in_ms 15,176 (-1%) 28,256 (-1%)
node_database_size_in_bytes 21,413,968 38,101,072
pxe_database_size_in_bytes 29,868 59,425

Circuits stats

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

Circuit protocol_circuit_simulation_time_in_ms protocol_circuit_witness_generation_time_in_ms protocol_circuit_proving_time_in_ms protocol_circuit_input_size_in_bytes protocol_circuit_output_size_in_bytes protocol_circuit_proof_size_in_bytes protocol_circuit_num_public_inputs protocol_circuit_size_in_gates
private-kernel-init 157 (-2%) 3,693 (+1%) 22,506 (+4%) 19,911 61,150 (-1%) 86,720 2,643 1,048,576
private-kernel-inner 593 (-4%) 5,236 (+10%) 40,521 (-1%) 87,936 (-1%) 60,971 (-2%) 86,720 2,643 2,097,152
private-kernel-reset-small 574 (-1%) 2,448 (+4%) 23,461 (+1%) 117,961 61,999 86,720 2,643 1,048,576
private-kernel-tail 529 (-1%) ⚠️ 2,879 (-28%) 40,190 (+7%) 86,849 79,454 10,688 267 2,097,152
base-parity 8.31 (+9%) ⚠️ 662 (-60%) ⚠️ 8,108 (+166%) 128 64.0 2,208 2.00 131,072
root-parity 50.3 (-1%) ⚠️ 226 (+67%) ⚠️ 98,440 (+132%) 27,064 64.0 2,720 18.0 2,097,152
base-rollup 800 (+1%) ⚠️ 6,177 (+113%) ⚠️ 91,533 (+111%) 111,154 955 3,120 (-1%) 31.0 2,097,152
root-rollup 91.1 (-3%) ⚠️ 157 (+31%) ⚠️ 11,937 (+44%) 11,507 815 (-1%) 3,440 41.0 524,288
public-kernel-app-logic 243 (-1%) ⚠️ 808 (+294%) ⚠️ 622 (-27%) 96,448 (-1%) 84,613 (-1%) ⚠️ 90,393 (-22%) 3,572 4,096
public-kernel-tail 862 (-1%) 597 (-11%) ⚠️ 740 (-27%) 380,752 (-2%) 7,752 10,144 251 512
public-kernel-setup 186 (-19%) ⚠️ 297 (-65%) ⚠️ 610 (-31%) ⚠️ 112,995 (-18%) 75,762 (-11%) ⚠️ 89,725 (-23%) 3,572 4,096
public-kernel-teardown 192 (-13%) 246 (+7%) ⚠️ 698 (-22%) 121,999 (-15%) 77,762 (-9%) ⚠️ 94,736 (-19%) 3,572 4,096
private-kernel-reset 616 N/A N/A 210,456 41,446 N/A N/A N/A
private-kernel-ordering 343 N/A N/A 61,368 39,490 N/A N/A N/A
merge-rollup 6.58 ⚠️ 126 (-31%) ⚠️ 2,518 (+57%) 2,760 957 3,120 (-1%) 31.0 65,536
private-kernel-tail-to-public N/A 10,165 (+4%) 72,925 (+1%) N/A N/A 116,960 3,588 4,194,304

Stats on running time collected for app circuits

Function app_circuit_proof_size_in_bytes app_circuit_proving_time_in_ms app_circuit_size_in_gates app_circuit_num_public_inputs
SchnorrAccount:entrypoint 16,128 48,689 (+2%) 2,097,152 437
Test:emit_nullifier 16,128 2,516 (-8%) 65,536 437
FPC:fee_entrypoint_public 16,128 ⚠️ 8,585 (-48%) 524,288 437
FPC:fee_entrypoint_private 16,128 8,899 (-1%) 524,288 437
Token:unshield 16,128 50,181 (+4%) 2,097,152 437
SchnorrAccount:spend_private_authwit 16,128 2,662 (-1%) 131,072 437
Token:transfer 16,128 34,957 2,097,152 437

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 512 leaves 1024 leaves 2048 leaves 4096 leaves 32 leaves
batch_insert_into_append_only_tree_16_depth_ms 11.5 (+2%) 18.7 (+1%) N/A N/A N/A N/A N/A N/A N/A
batch_insert_into_append_only_tree_16_depth_hash_count 16.7 31.8 N/A N/A N/A N/A N/A N/A N/A
batch_insert_into_append_only_tree_16_depth_hash_ms 0.672 (+2%) 0.575 (+2%) N/A N/A N/A N/A N/A N/A N/A
batch_insert_into_append_only_tree_32_depth_ms N/A N/A 52.8 81.0 262 505 (-1%) 987 1,952 N/A
batch_insert_into_append_only_tree_32_depth_hash_count N/A N/A 95.9 159 543 1,055 2,079 4,127 N/A
batch_insert_into_append_only_tree_32_depth_hash_ms N/A N/A 0.541 0.499 0.476 0.471 (-1%) 0.468 0.466 N/A
batch_insert_into_indexed_tree_20_depth_ms N/A N/A 63.6 119 (-1%) 377 740 (-1%) 1,469 2,927 N/A
batch_insert_into_indexed_tree_20_depth_hash_count N/A N/A 106 208 692 1,363 2,707 5,395 N/A
batch_insert_into_indexed_tree_20_depth_hash_ms N/A N/A 0.550 0.536 0.512 0.509 (-1%) 0.509 0.509 N/A
batch_insert_into_indexed_tree_40_depth_ms N/A N/A N/A N/A N/A N/A N/A N/A 68.2
batch_insert_into_indexed_tree_40_depth_hash_count N/A N/A N/A N/A N/A N/A N/A N/A 109 (+1%)
batch_insert_into_indexed_tree_40_depth_hash_ms N/A N/A N/A N/A N/A N/A N/A N/A 0.595

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 83,802 (-1%) 765,739 (+14%)

Transaction size based on fee payment method

| Metric | |
| - | |

Transaction processing duration by data writes.

Metric 0 new note hashes 1 new note hashes 2 new note hashes
tx_pxe_processing_time_ms ⚠️ 21,150 (-29%) 4,257 (-1%) 100,809 (+1%)
Metric 0 public data writes 1 public data writes 2 public data writes 4 public data writes 8 public data writes
tx_sequencer_processing_time_ms ⚠️ 1,072 (-35%) 2,663 (-1%) 1,750 (-14%) 2,857 (-13%) 1,750 (-12%)

@@ -69,8 +69,8 @@ export abstract class BaseWallet implements Wallet {
registerAccount(secretKey: Fr, partialAddress: PartialAddress): Promise<CompleteAddress> {
return this.pxe.registerAccount(secretKey, partialAddress);
}
rotateMasterNullifierKey(account: AztecAddress, secretKey: Fq): Promise<void> {
return this.pxe.rotateMasterNullifierKey(account, secretKey);
rotateNskMPxe(address: AztecAddress, secretKey: Fq) {
Copy link
Contributor Author

@sklppy88 sklppy88 May 17, 2024

Choose a reason for hiding this comment

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

I don't like this but don't see another way as BaseWallet impls PXE

Copy link
Contributor

Choose a reason for hiding this comment

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

Why not just rotateNskM instead of rotateNskMPxe?

Copy link
Contributor Author

@sklppy88 sklppy88 May 17, 2024

Choose a reason for hiding this comment

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

The AccountWallet would think we're overriding rotateNskM on BaseWallet / PXE if we have the same names (rotateNskM), but they have different signatures, the AccountWallet impl takes only the new key, but the PXE needs the address as well. I went for the cleaner approach on the AccountWallet trading off cleanliness at the PXE level.

Other options include renaming the AccountWallet fns to rotateNskMPxe or something along those lines, or doing shenanigans with the params—both not ideal to me, but they could work.

For the record, I don't like this interaction at all. Do you have any ideas ? Maybe I've forgotten something.

Copy link
Contributor

Choose a reason for hiding this comment

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

Yes, the inheritance here is just weird and not sure if we should continue having BaseWallet inherit from PXE given that it makes sense that it modifies the signature of many methods of PXE (given that they are account-scoped in that context).

But anyway we could improve it now by having PXE.rotateNskMForAccount and refactor all the inheritance later if we decide to do so.

yarn-project/circuit-types/src/interfaces/pxe.ts Outdated Show resolved Hide resolved
yarn-project/end-to-end/src/e2e_key_rotation.test.ts Outdated Show resolved Hide resolved
@@ -69,8 +69,8 @@ export abstract class BaseWallet implements Wallet {
registerAccount(secretKey: Fr, partialAddress: PartialAddress): Promise<CompleteAddress> {
return this.pxe.registerAccount(secretKey, partialAddress);
}
rotateMasterNullifierKey(account: AztecAddress, secretKey: Fq): Promise<void> {
return this.pxe.rotateMasterNullifierKey(account, secretKey);
rotateNskMPxe(address: AztecAddress, secretKey: Fq) {
Copy link
Contributor

Choose a reason for hiding this comment

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

Yes, the inheritance here is just weird and not sure if we should continue having BaseWallet inherit from PXE given that it makes sense that it modifies the signature of many methods of PXE (given that they are account-scoped in that context).

But anyway we could improve it now by having PXE.rotateNskMForAccount and refactor all the inheritance later if we decide to do so.

let walletA: Wallet;
let walletB: Wallet;
let walletA: AccountWallet;
let walletB: AccountWallet;
Copy link
Contributor

Choose a reason for hiding this comment

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

Being forced to replace interface with an instance seems incorrect. Why not update the Wallet interface?

Copy link
Contributor Author

@sklppy88 sklppy88 May 17, 2024

Choose a reason for hiding this comment

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

I saw how it was being used in e2e_authwit, transfer_private.test, and transfer_public.test, because what is returned from createAccounts and setup is an AccountWallet and not a Wallet. You bring a good point though. I have changes and can address in a downstream PR if you need this PR in now, or right after scrum and I'll commit changes now.

Copy link
Contributor

Choose a reason for hiding this comment

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

Ok ok, yes sounds good doing that in another PR.

Copy link
Contributor Author

@sklppy88 sklppy88 May 17, 2024

Choose a reason for hiding this comment

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

Whoops false alarm, talked to @LHerskind and we came to an agreement that we probably want to have one encapsulated call. At this point I had already finished the interface changes, so snuck it in and it should be all good to go.

@@ -54,6 +54,8 @@ export abstract class BaseWallet implements Wallet {
},
): Promise<AuthWitness>;

abstract rotateNullifierKeys(newNskM: Fq): Promise<void>;
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This is abstract so this can still implement wallet

@@ -69,8 +71,8 @@ export abstract class BaseWallet implements Wallet {
registerAccount(secretKey: Fr, partialAddress: PartialAddress): Promise<CompleteAddress> {
return this.pxe.registerAccount(secretKey, partialAddress);
}
rotateMasterNullifierKey(account: AztecAddress, secretKey: Fq): Promise<void> {
return this.pxe.rotateMasterNullifierKey(account, secretKey);
rotateNskM(address: AztecAddress, secretKey: Fq) {
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This is gross but here because wallet implements PXE.

Copy link
Contributor

@LHerskind LHerskind left a comment

Choose a reason for hiding this comment

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

I think this is fine to get in 👍

/**
* Handler for interfacing with an account's ability to rotate its keys.
*/
export interface AccountKeyRotationInterface {
Copy link
Contributor

Choose a reason for hiding this comment

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

Should this be similar to the authwitprovider? KeyRotationInterface and then have the usual AccountInterface also implement that?

So it is something that it possible from all of the accounts, so might be similar to the authwit in that sense 🤷

Copy link
Contributor Author

@sklppy88 sklppy88 May 20, 2024

Choose a reason for hiding this comment

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

Not sure if I like it right now as this makes AccountInterface requires access to the PXE / key store and we'd have to change a lot. Probably would be better refactored when we figure out exactly how we want our classes to look like here because there is a lot of jank as is.

* This does not hinder our ability to spend notes tied to a previous master nullifier public key, provided we have the master nullifier secret key for it.
*/
public async rotateNullifierKeys(newNskM: Fq = Fq.random()): Promise<void> {
// We rotate our secret key in the keystore first, because if the subsequent interaction fails, there are no bad side-effects.
Copy link
Contributor

Choose a reason for hiding this comment

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

In the cases that it happens a lot it might use a lot of storage. But it can quite easily be "cleaned" later by looping over the keys and simply checking which either maps the address preimage or that the matching public was in the registry at some point, but don't think it is meaningful for us to really look into now 🤷

@@ -59,14 +59,14 @@ export class TestKeyStore implements KeyStore {
// We save the keys to db associated with the account address
await this.#keys.set(`${accountAddress.toString()}-public_keys_hash`, publicKeysHash.toBuffer());

// Naming of keys is as follows ${from}-${to}_m
// Naming of keys is as follows ${from}-${to}_m${_s if multiple}
Copy link
Contributor

Choose a reason for hiding this comment

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

🫡

@sklppy88 sklppy88 force-pushed the ek/refactor/refactor-key-rotate-call-and-address-comments-from-6405 branch from 3378ac0 to 6044733 Compare May 21, 2024 10:23
Copy link
Contributor Author

@AztecBot
Copy link
Collaborator

AztecBot commented May 21, 2024

Docs Preview

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

@sklppy88 sklppy88 force-pushed the ek/refactor/refactor-key-rotate-call-and-address-comments-from-6405 branch from 557c4c5 to 7bbed9e Compare May 21, 2024 11:20
Copy link
Contributor

Changes to circuit sizes

Generated at commit: e9d87ee9398d80bacac89477b1920603f7d94c6c, compared to commit: 8bbbbb645e7f12b535b1dc683b5ab5aea0b73e5b

🧾 Summary (100% most significant diffs)

Program ACIR opcodes (+/-) % Circuit size (+/-) %
private_kernel_inner -1 ✅ -0.00% -311 ✅ -0.02%
public_kernel_teardown -1 ✅ -0.00% -309 ✅ -0.05%
public_kernel_setup -1 ✅ -0.00% -309 ✅ -0.05%
public_kernel_app_logic -1 ✅ -0.00% -590 ✅ -0.07%
private_kernel_init -2 ✅ -0.00% -900 ✅ -0.11%

Full diff report 👇
Program ACIR opcodes (+/-) % Circuit size (+/-) %
private_kernel_inner 262,668 (-1) -0.00% 1,712,375 (-311) -0.02%
public_kernel_teardown 223,523 (-1) -0.00% 667,881 (-309) -0.05%
public_kernel_setup 223,317 (-1) -0.00% 667,588 (-309) -0.05%
public_kernel_app_logic 251,897 (-1) -0.00% 796,956 (-590) -0.07%
private_kernel_init 228,119 (-2) -0.00% 835,753 (-900) -0.11%

@sklppy88 sklppy88 dismissed benesjan’s stale review May 21, 2024 14:12

Have addressed changes / stale

@sklppy88 sklppy88 merged commit 6f3dab8 into master May 21, 2024
74 checks passed
@sklppy88 sklppy88 deleted the ek/refactor/refactor-key-rotate-call-and-address-comments-from-6405 branch May 21, 2024 14:12
rahul-kothari pushed a commit that referenced this pull request May 21, 2024
🤖 I have created a release *beep* *boop*
---


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

##
[0.41.0](aztec-package-v0.40.1...aztec-package-v0.41.0)
(2024-05-21)


### Miscellaneous

* **aztec-package:** Synchronize aztec-packages versions
</details>

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

##
[0.41.0](barretenberg.js-v0.40.1...barretenberg.js-v0.41.0)
(2024-05-21)


### Features

* Vk_as_fields, proof_as_fields flows for honk
([#6406](#6406))
([a6100ad](a6100ad))


### Miscellaneous

* Remove acvmInfo from bb.js CLI
([#6507](#6507))
([e298c76](e298c76))
</details>

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

##
[0.41.0](aztec-packages-v0.40.1...aztec-packages-v0.41.0)
(2024-05-21)


### ⚠ BREAKING CHANGES

* compile-time incorrect exec environment errors
([#6442](#6442))
* add is_infinite to curve addition opcode
([#6384](#6384))
* remove backend interactions from `nargo`
([#6320](#6320))

### Features

* `npk_m_hash` in all notes + key rotation test
([#6405](#6405))
([74e98d4](74e98d4))
* Add encrypted log outgoing body
([#6334](#6334))
([fa9f442](fa9f442))
* Add first version of kernel reset circuit
([#6393](#6393))
([ed6df8e](ed6df8e))
* Add is_infinite to curve addition opcode
([#6384](#6384))
([75d81c5](75d81c5))
* Add native rust implementations of pedersen functions
(noir-lang/noir#4871)
([8bbbbb6](8bbbbb6))
* Add nullifying key to Token Note
([#6130](#6130))
([95c6b4a](95c6b4a))
* Adding autogenerated variants for the reset circuit
([#6508](#6508))
([8e8d2dd](8e8d2dd))
* **avm-simulator:** Cap gas for external calls
([#6479](#6479))
([c8771ba](c8771ba))
* **avm:** Gzip avm bytecode
([#6475](#6475))
([29559bd](29559bd))
* **avm:** To_radix gadget
([#6368](#6368))
([89dd25f](89dd25f))
* Benchmark private proving
([#6409](#6409))
([e9e5526](e9e5526))
* Compile-time incorrect exec environment errors
([#6442](#6442))
([0f75efd](0f75efd))
* Do not return databus returndata, keep it private.
(noir-lang/noir#5023)
([26f2197](26f2197))
* **docs:** Authwit how tos
([#6220](#6220))
([78f13d9](78f13d9))
* **docs:** Key rotation / owner -&gt; nullifier key docs
([#6538](#6538))
([2453ba8](2453ba8))
* Full encryption and decryption of log in ts
([#6348](#6348))
([0ac83dc](0ac83dc))
* Generic key validation request
([#6474](#6474))
([948ec38](948ec38))
* Improved ClientIvc
([#6429](#6429))
([f360b3f](f360b3f))
* Laying out a new recursion constraint for honk
([#6489](#6489))
([af9fea4](af9fea4))
* New docs structure
([#6195](#6195))
([9cca814](9cca814))
* Pay out arbitrary fee to coinbase on L1
([#6436](#6436))
([1b99de8](1b99de8))
* Remove total logs len from pre tail kernels + add to L1
([#6466](#6466))
([66a2d43](66a2d43))
* Run benchmarks for ACIR proving
([#6155](#6155))
([ebf6fc2](ebf6fc2))
* Squash transient note logs
([#6268](#6268))
([4574877](4574877))
* Sum transaction fees and pay on l1
([#6522](#6522))
([bf441da](bf441da))
* Translator recursive verifier
([#6327](#6327))
([9321aef](9321aef))
* Update the encrypted note log format
([#6411](#6411))
([e5cc9dc](e5cc9dc))
* Validate counters
([#6365](#6365))
([1f28b3a](1f28b3a))
* View functions with static context enforcing
([#6338](#6338))
([22ad5a5](22ad5a5))
* Vk_as_fields, proof_as_fields flows for honk
([#6406](#6406))
([a6100ad](a6100ad))


### Bug Fixes

* Arm ci
([#6480](#6480))
([237952e](237952e))
* Asset struct serialization does not match Noir internal serialization
([#6494](#6494))
([9e6a4c3](9e6a4c3))
* **avm-simulator:** Actually wrap oracles
([#6449](#6449))
([8685acc](8685acc))
* **avm-simulator:** Nested calls should preserve static context
([#6414](#6414))
([44d7916](44d7916))
* **avm-simulator:** Pending storage and nullifiers should be accessible
in grandchild nested calls
([#6428](#6428))
([84d2e1f](84d2e1f))
* Buggy e2e key registry test setup
([#6496](#6496))
([52d85d1](52d85d1))
* **ci:** ARM
([#6521](#6521))
([d1095f6](d1095f6))
* **ci:** Arm concurrency
([#6564](#6564))
([a265da0](a265da0))
* Disable buggy ClientIVC tests
([#6546](#6546))
([b61dea3](b61dea3))
* Disk attach edge case
([#6430](#6430))
([2366ad3](2366ad3))
* **docs:** Clarify content on portals
([#6431](#6431))
([869df4d](869df4d))
* Don't start multiple runners during RequestLimitExceeded
([#6444](#6444))
([7c4c822](7c4c822))
* Dont start multiple builders
([#6437](#6437))
([d67ab1c](d67ab1c))
* Fix no predicates for brillig with intermediate functions
(noir-lang/noir#5015)
([26f2197](26f2197))
* Fixed several vulnerabilities in U128, added some tests
(noir-lang/noir#5024)
([26f2197](26f2197))
* Increase N_max in Zeromorph
([#6415](#6415))
([9e643b4](9e643b4))
* Quick fix of
[#6405](#6405) by
removing context from value note utils
([#6509](#6509))
([3a4d828](3a4d828))
* Removed plain from path in array args of contract interfaces
([#6497](#6497))
([2b37729](2b37729))
* Runs-on inconsistency and simplify concurrency keys
([#6433](#6433))
([80674d9](80674d9))
* Spot retry fixup
([#6476](#6476))
([784d784](784d784))


### Miscellaneous

* Add benchmarks for pedersen and schnorr verification
(noir-lang/noir#5056)
([8bbbbb6](8bbbbb6))
* Add c++ tests for generator derivation
([#6528](#6528))
([72931bd](72931bd))
* Add script to print lines of code
(noir-lang/noir#4991)
([26f2197](26f2197))
* Add some docs on syncing noir
([#6340](#6340))
([bb68fcd](bb68fcd))
* Anvil kill wrapper now supports mac
([#6520](#6520))
([2a5d975](2a5d975))
* **avm:** Wrap oracles with unconstrained fns
([#6421](#6421))
([3e7e094](3e7e094))
* Bump earthly
([#6419](#6419))
([3d78751](3d78751))
* Bump maximum nullifier read requests (necessary for e2e tests in AVM)
([#6462](#6462))
([26eac62](26eac62))
* Bump maximum nullifier read requests (necessary for e2e tests in AVM)
([#6495](#6495))
([90d8092](90d8092))
* Change some error messages for avm switch
([#6447](#6447))
([74d6519](74d6519))
* **ci:** Better retry defaults
([#6472](#6472))
([b23f1fd](b23f1fd))
* **ci:** Consistency as external check
([#6460](#6460))
([6793a75](6793a75))
* **ci:** Dont detach ebs
([#6441](#6441))
([f933fc0](f933fc0))
* **ci:** Fix on-demand starting
([#6434](#6434))
([c3efb9c](c3efb9c))
* **ci:** Increase timeouts
([#6426](#6426))
([44986fe](44986fe))
* **ci:** Only run circleci on master
([#6525](#6525))
([c75fbd4](c75fbd4))
* **ci:** Push l1-contracts tests off of critical path
([#6400](#6400))
([ce0ae6d](ce0ae6d))
* **ci:** Reenable arm build
([#6455](#6455))
([2862767](2862767))
* **ci:** Require setup in merge-check
([#6454](#6454))
([ad73061](ad73061))
* **ci:** Spot capacity and reaping
([#6561](#6561))
([8c639b5](8c639b5))
* Clean up kernel types by removing is_static from function_data
([#6557](#6557))
([83ba29f](83ba29f))
* Cleanup the encrypted log incoming body
([#6325](#6325))
([e88c209](e88c209))
* Copy subset of constants to cpp
([#6544](#6544))
([21dc72a](21dc72a))
* Do not rebuild yarn-projects on bench-comment
([#6396](#6396))
([797115b](797115b))
* **docs:** Adding analytics
([#6350](#6350))
([6417cd9](6417cd9))
* **docs:** Restructure improvs
([#6502](#6502))
([c3b573e](c3b573e))
* Fix linter issues in AVM
([#6057](#6057))
([c2e72b1](c2e72b1))
* Fix logs upload to S3
([#6401](#6401))
([9df0602](9df0602))
* Fix migration notes
([#6458](#6458))
([bee85a9](bee85a9))
* Fix migration notes
([#6551](#6551))
([89bc350](89bc350))
* Fix notes 0.41.0
([#6461](#6461))
([04b0ec5](04b0ec5))
* Fix poor performance and long compile times in value_note.derement()
([#6523](#6523))
([002b4aa](002b4aa))
* Fix tester image copy pattern
([#6438](#6438))
([b892eae](b892eae))
* Get_nullifier_keys cleanup
([#6451](#6451))
([8a71fd5](8a71fd5))
* Lower max public bytecode to 20k
([#6477](#6477))
([ce192f0](ce192f0))
* Move `UPLOAD_LOGS` into root earthfile
([#6424](#6424))
([d723da9](d723da9))
* Nuking `KeyStore` and `KeyPair` interfaces
([#6553](#6553))
([23e0518](23e0518))
* Parameterise cycle_group by `Builder` rather than `Composer`
([#6565](#6565))
([ea36bf9](ea36bf9))
* Prefetch noir deps in earthly for caching
([#6556](#6556))
([8ee9060](8ee9060))
* Private call validation
([#6510](#6510))
([07dc072](07dc072))
* Purge secret and open keywords
([#6501](#6501))
([f9c74c4](f9c74c4)),
closes
[#5538](#5538)
* Recommend Noir and rust plugin
([#6558](#6558))
([298561f](298561f))
* Refactor key rotate and address comments from 6405
([#6450](#6450))
([6f3dab8](6f3dab8))
* Remove acvmInfo from bb.js CLI
([#6507](#6507))
([e298c76](e298c76))
* Remove backend interactions from `nargo`
([#6320](#6320))
([7a31896](7a31896))
* Replace relative paths to noir-protocol-circuits
([94ab877](94ab877))
* Replace relative paths to noir-protocol-circuits
([9f04bfe](9f04bfe))
* Replace relative paths to noir-protocol-circuits
([67f29e5](67f29e5))
* Replace relative paths to noir-protocol-circuits
([a7a4b86](a7a4b86))
* Replace relative paths to noir-protocol-circuits
([c6f61a4](c6f61a4))
* Share decider with ultra_prover
([#5467](#5467))
([b3b7376](b3b7376))
* Switch over to constructing gates report in bash
([#6491](#6491))
([1fa5963](1fa5963))
* **tests:** Change error messages in preparation for AVM
([#6422](#6422))
([6616dc6](6616dc6))


### Documentation

* Sumcheck documentation
([#5841](#5841))
([116eef0](116eef0))
* Updating key docs in concepts section
([#6387](#6387))
([921a7f4](921a7f4))
</details>

<details><summary>barretenberg: 0.41.0</summary>

##
[0.41.0](barretenberg-v0.40.1...barretenberg-v0.41.0)
(2024-05-21)


### ⚠ BREAKING CHANGES

* add is_infinite to curve addition opcode
([#6384](#6384))

### Features

* Add is_infinite to curve addition opcode
([#6384](#6384))
([75d81c5](75d81c5))
* **avm-simulator:** Cap gas for external calls
([#6479](#6479))
([c8771ba](c8771ba))
* **avm:** Gzip avm bytecode
([#6475](#6475))
([29559bd](29559bd))
* **avm:** To_radix gadget
([#6368](#6368))
([89dd25f](89dd25f))
* Full encryption and decryption of log in ts
([#6348](#6348))
([0ac83dc](0ac83dc))
* Improved ClientIvc
([#6429](#6429))
([f360b3f](f360b3f))
* Laying out a new recursion constraint for honk
([#6489](#6489))
([af9fea4](af9fea4))
* Remove total logs len from pre tail kernels + add to L1
([#6466](#6466))
([66a2d43](66a2d43))
* Run benchmarks for ACIR proving
([#6155](#6155))
([ebf6fc2](ebf6fc2))
* Squash transient note logs
([#6268](#6268))
([4574877](4574877))
* Sum transaction fees and pay on l1
([#6522](#6522))
([bf441da](bf441da))
* Translator recursive verifier
([#6327](#6327))
([9321aef](9321aef))
* View functions with static context enforcing
([#6338](#6338))
([22ad5a5](22ad5a5))
* Vk_as_fields, proof_as_fields flows for honk
([#6406](#6406))
([a6100ad](a6100ad))


### Bug Fixes

* Disable buggy ClientIVC tests
([#6546](#6546))
([b61dea3](b61dea3))
* Increase N_max in Zeromorph
([#6415](#6415))
([9e643b4](9e643b4))


### Miscellaneous

* Add c++ tests for generator derivation
([#6528](#6528))
([72931bd](72931bd))
* Bump maximum nullifier read requests (necessary for e2e tests in AVM)
([#6462](#6462))
([26eac62](26eac62))
* Bump maximum nullifier read requests (necessary for e2e tests in AVM)
([#6495](#6495))
([90d8092](90d8092))
* Copy subset of constants to cpp
([#6544](#6544))
([21dc72a](21dc72a))
* Lower max public bytecode to 20k
([#6477](#6477))
([ce192f0](ce192f0))
* Parameterise cycle_group by `Builder` rather than `Composer`
([#6565](#6565))
([ea36bf9](ea36bf9))
* Private call validation
([#6510](#6510))
([07dc072](07dc072))
* Share decider with ultra_prover
([#5467](#5467))
([b3b7376](b3b7376))


### Documentation

* Sumcheck documentation
([#5841](#5841))
([116eef0](116eef0))
</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 May 22, 2024
🤖 I have created a release *beep* *boop*
---


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

##
[0.41.0](AztecProtocol/aztec-packages@aztec-package-v0.40.1...aztec-package-v0.41.0)
(2024-05-21)


### Miscellaneous

* **aztec-package:** Synchronize aztec-packages versions
</details>

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

##
[0.41.0](AztecProtocol/aztec-packages@barretenberg.js-v0.40.1...barretenberg.js-v0.41.0)
(2024-05-21)


### Features

* Vk_as_fields, proof_as_fields flows for honk
([#6406](AztecProtocol/aztec-packages#6406))
([a6100ad](AztecProtocol/aztec-packages@a6100ad))


### Miscellaneous

* Remove acvmInfo from bb.js CLI
([#6507](AztecProtocol/aztec-packages#6507))
([e298c76](AztecProtocol/aztec-packages@e298c76))
</details>

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

##
[0.41.0](AztecProtocol/aztec-packages@aztec-packages-v0.40.1...aztec-packages-v0.41.0)
(2024-05-21)


### ⚠ BREAKING CHANGES

* compile-time incorrect exec environment errors
([#6442](AztecProtocol/aztec-packages#6442))
* add is_infinite to curve addition opcode
([#6384](AztecProtocol/aztec-packages#6384))
* remove backend interactions from `nargo`
([#6320](AztecProtocol/aztec-packages#6320))

### Features

* `npk_m_hash` in all notes + key rotation test
([#6405](AztecProtocol/aztec-packages#6405))
([74e98d4](AztecProtocol/aztec-packages@74e98d4))
* Add encrypted log outgoing body
([#6334](AztecProtocol/aztec-packages#6334))
([fa9f442](AztecProtocol/aztec-packages@fa9f442))
* Add first version of kernel reset circuit
([#6393](AztecProtocol/aztec-packages#6393))
([ed6df8e](AztecProtocol/aztec-packages@ed6df8e))
* Add is_infinite to curve addition opcode
([#6384](AztecProtocol/aztec-packages#6384))
([75d81c5](AztecProtocol/aztec-packages@75d81c5))
* Add native rust implementations of pedersen functions
(noir-lang/noir#4871)
([8bbbbb6](AztecProtocol/aztec-packages@8bbbbb6))
* Add nullifying key to Token Note
([#6130](AztecProtocol/aztec-packages#6130))
([95c6b4a](AztecProtocol/aztec-packages@95c6b4a))
* Adding autogenerated variants for the reset circuit
([#6508](AztecProtocol/aztec-packages#6508))
([8e8d2dd](AztecProtocol/aztec-packages@8e8d2dd))
* **avm-simulator:** Cap gas for external calls
([#6479](AztecProtocol/aztec-packages#6479))
([c8771ba](AztecProtocol/aztec-packages@c8771ba))
* **avm:** Gzip avm bytecode
([#6475](AztecProtocol/aztec-packages#6475))
([29559bd](AztecProtocol/aztec-packages@29559bd))
* **avm:** To_radix gadget
([#6368](AztecProtocol/aztec-packages#6368))
([89dd25f](AztecProtocol/aztec-packages@89dd25f))
* Benchmark private proving
([#6409](AztecProtocol/aztec-packages#6409))
([e9e5526](AztecProtocol/aztec-packages@e9e5526))
* Compile-time incorrect exec environment errors
([#6442](AztecProtocol/aztec-packages#6442))
([0f75efd](AztecProtocol/aztec-packages@0f75efd))
* Do not return databus returndata, keep it private.
(noir-lang/noir#5023)
([26f2197](AztecProtocol/aztec-packages@26f2197))
* **docs:** Authwit how tos
([#6220](AztecProtocol/aztec-packages#6220))
([78f13d9](AztecProtocol/aztec-packages@78f13d9))
* **docs:** Key rotation / owner -&gt; nullifier key docs
([#6538](AztecProtocol/aztec-packages#6538))
([2453ba8](AztecProtocol/aztec-packages@2453ba8))
* Full encryption and decryption of log in ts
([#6348](AztecProtocol/aztec-packages#6348))
([0ac83dc](AztecProtocol/aztec-packages@0ac83dc))
* Generic key validation request
([#6474](AztecProtocol/aztec-packages#6474))
([948ec38](AztecProtocol/aztec-packages@948ec38))
* Improved ClientIvc
([#6429](AztecProtocol/aztec-packages#6429))
([f360b3f](AztecProtocol/aztec-packages@f360b3f))
* Laying out a new recursion constraint for honk
([#6489](AztecProtocol/aztec-packages#6489))
([af9fea4](AztecProtocol/aztec-packages@af9fea4))
* New docs structure
([#6195](AztecProtocol/aztec-packages#6195))
([9cca814](AztecProtocol/aztec-packages@9cca814))
* Pay out arbitrary fee to coinbase on L1
([#6436](AztecProtocol/aztec-packages#6436))
([1b99de8](AztecProtocol/aztec-packages@1b99de8))
* Remove total logs len from pre tail kernels + add to L1
([#6466](AztecProtocol/aztec-packages#6466))
([66a2d43](AztecProtocol/aztec-packages@66a2d43))
* Run benchmarks for ACIR proving
([#6155](AztecProtocol/aztec-packages#6155))
([ebf6fc2](AztecProtocol/aztec-packages@ebf6fc2))
* Squash transient note logs
([#6268](AztecProtocol/aztec-packages#6268))
([4574877](AztecProtocol/aztec-packages@4574877))
* Sum transaction fees and pay on l1
([#6522](AztecProtocol/aztec-packages#6522))
([bf441da](AztecProtocol/aztec-packages@bf441da))
* Translator recursive verifier
([#6327](AztecProtocol/aztec-packages#6327))
([9321aef](AztecProtocol/aztec-packages@9321aef))
* Update the encrypted note log format
([#6411](AztecProtocol/aztec-packages#6411))
([e5cc9dc](AztecProtocol/aztec-packages@e5cc9dc))
* Validate counters
([#6365](AztecProtocol/aztec-packages#6365))
([1f28b3a](AztecProtocol/aztec-packages@1f28b3a))
* View functions with static context enforcing
([#6338](AztecProtocol/aztec-packages#6338))
([22ad5a5](AztecProtocol/aztec-packages@22ad5a5))
* Vk_as_fields, proof_as_fields flows for honk
([#6406](AztecProtocol/aztec-packages#6406))
([a6100ad](AztecProtocol/aztec-packages@a6100ad))


### Bug Fixes

* Arm ci
([#6480](AztecProtocol/aztec-packages#6480))
([237952e](AztecProtocol/aztec-packages@237952e))
* Asset struct serialization does not match Noir internal serialization
([#6494](AztecProtocol/aztec-packages#6494))
([9e6a4c3](AztecProtocol/aztec-packages@9e6a4c3))
* **avm-simulator:** Actually wrap oracles
([#6449](AztecProtocol/aztec-packages#6449))
([8685acc](AztecProtocol/aztec-packages@8685acc))
* **avm-simulator:** Nested calls should preserve static context
([#6414](AztecProtocol/aztec-packages#6414))
([44d7916](AztecProtocol/aztec-packages@44d7916))
* **avm-simulator:** Pending storage and nullifiers should be accessible
in grandchild nested calls
([#6428](AztecProtocol/aztec-packages#6428))
([84d2e1f](AztecProtocol/aztec-packages@84d2e1f))
* Buggy e2e key registry test setup
([#6496](AztecProtocol/aztec-packages#6496))
([52d85d1](AztecProtocol/aztec-packages@52d85d1))
* **ci:** ARM
([#6521](AztecProtocol/aztec-packages#6521))
([d1095f6](AztecProtocol/aztec-packages@d1095f6))
* **ci:** Arm concurrency
([#6564](AztecProtocol/aztec-packages#6564))
([a265da0](AztecProtocol/aztec-packages@a265da0))
* Disable buggy ClientIVC tests
([#6546](AztecProtocol/aztec-packages#6546))
([b61dea3](AztecProtocol/aztec-packages@b61dea3))
* Disk attach edge case
([#6430](AztecProtocol/aztec-packages#6430))
([2366ad3](AztecProtocol/aztec-packages@2366ad3))
* **docs:** Clarify content on portals
([#6431](AztecProtocol/aztec-packages#6431))
([869df4d](AztecProtocol/aztec-packages@869df4d))
* Don't start multiple runners during RequestLimitExceeded
([#6444](AztecProtocol/aztec-packages#6444))
([7c4c822](AztecProtocol/aztec-packages@7c4c822))
* Dont start multiple builders
([#6437](AztecProtocol/aztec-packages#6437))
([d67ab1c](AztecProtocol/aztec-packages@d67ab1c))
* Fix no predicates for brillig with intermediate functions
(noir-lang/noir#5015)
([26f2197](AztecProtocol/aztec-packages@26f2197))
* Fixed several vulnerabilities in U128, added some tests
(noir-lang/noir#5024)
([26f2197](AztecProtocol/aztec-packages@26f2197))
* Increase N_max in Zeromorph
([#6415](AztecProtocol/aztec-packages#6415))
([9e643b4](AztecProtocol/aztec-packages@9e643b4))
* Quick fix of
[#6405](AztecProtocol/aztec-packages#6405) by
removing context from value note utils
([#6509](AztecProtocol/aztec-packages#6509))
([3a4d828](AztecProtocol/aztec-packages@3a4d828))
* Removed plain from path in array args of contract interfaces
([#6497](AztecProtocol/aztec-packages#6497))
([2b37729](AztecProtocol/aztec-packages@2b37729))
* Runs-on inconsistency and simplify concurrency keys
([#6433](AztecProtocol/aztec-packages#6433))
([80674d9](AztecProtocol/aztec-packages@80674d9))
* Spot retry fixup
([#6476](AztecProtocol/aztec-packages#6476))
([784d784](AztecProtocol/aztec-packages@784d784))


### Miscellaneous

* Add benchmarks for pedersen and schnorr verification
(noir-lang/noir#5056)
([8bbbbb6](AztecProtocol/aztec-packages@8bbbbb6))
* Add c++ tests for generator derivation
([#6528](AztecProtocol/aztec-packages#6528))
([72931bd](AztecProtocol/aztec-packages@72931bd))
* Add script to print lines of code
(noir-lang/noir#4991)
([26f2197](AztecProtocol/aztec-packages@26f2197))
* Add some docs on syncing noir
([#6340](AztecProtocol/aztec-packages#6340))
([bb68fcd](AztecProtocol/aztec-packages@bb68fcd))
* Anvil kill wrapper now supports mac
([#6520](AztecProtocol/aztec-packages#6520))
([2a5d975](AztecProtocol/aztec-packages@2a5d975))
* **avm:** Wrap oracles with unconstrained fns
([#6421](AztecProtocol/aztec-packages#6421))
([3e7e094](AztecProtocol/aztec-packages@3e7e094))
* Bump earthly
([#6419](AztecProtocol/aztec-packages#6419))
([3d78751](AztecProtocol/aztec-packages@3d78751))
* Bump maximum nullifier read requests (necessary for e2e tests in AVM)
([#6462](AztecProtocol/aztec-packages#6462))
([26eac62](AztecProtocol/aztec-packages@26eac62))
* Bump maximum nullifier read requests (necessary for e2e tests in AVM)
([#6495](AztecProtocol/aztec-packages#6495))
([90d8092](AztecProtocol/aztec-packages@90d8092))
* Change some error messages for avm switch
([#6447](AztecProtocol/aztec-packages#6447))
([74d6519](AztecProtocol/aztec-packages@74d6519))
* **ci:** Better retry defaults
([#6472](AztecProtocol/aztec-packages#6472))
([b23f1fd](AztecProtocol/aztec-packages@b23f1fd))
* **ci:** Consistency as external check
([#6460](AztecProtocol/aztec-packages#6460))
([6793a75](AztecProtocol/aztec-packages@6793a75))
* **ci:** Dont detach ebs
([#6441](AztecProtocol/aztec-packages#6441))
([f933fc0](AztecProtocol/aztec-packages@f933fc0))
* **ci:** Fix on-demand starting
([#6434](AztecProtocol/aztec-packages#6434))
([c3efb9c](AztecProtocol/aztec-packages@c3efb9c))
* **ci:** Increase timeouts
([#6426](AztecProtocol/aztec-packages#6426))
([44986fe](AztecProtocol/aztec-packages@44986fe))
* **ci:** Only run circleci on master
([#6525](AztecProtocol/aztec-packages#6525))
([c75fbd4](AztecProtocol/aztec-packages@c75fbd4))
* **ci:** Push l1-contracts tests off of critical path
([#6400](AztecProtocol/aztec-packages#6400))
([ce0ae6d](AztecProtocol/aztec-packages@ce0ae6d))
* **ci:** Reenable arm build
([#6455](AztecProtocol/aztec-packages#6455))
([2862767](AztecProtocol/aztec-packages@2862767))
* **ci:** Require setup in merge-check
([#6454](AztecProtocol/aztec-packages#6454))
([ad73061](AztecProtocol/aztec-packages@ad73061))
* **ci:** Spot capacity and reaping
([#6561](AztecProtocol/aztec-packages#6561))
([8c639b5](AztecProtocol/aztec-packages@8c639b5))
* Clean up kernel types by removing is_static from function_data
([#6557](AztecProtocol/aztec-packages#6557))
([83ba29f](AztecProtocol/aztec-packages@83ba29f))
* Cleanup the encrypted log incoming body
([#6325](AztecProtocol/aztec-packages#6325))
([e88c209](AztecProtocol/aztec-packages@e88c209))
* Copy subset of constants to cpp
([#6544](AztecProtocol/aztec-packages#6544))
([21dc72a](AztecProtocol/aztec-packages@21dc72a))
* Do not rebuild yarn-projects on bench-comment
([#6396](AztecProtocol/aztec-packages#6396))
([797115b](AztecProtocol/aztec-packages@797115b))
* **docs:** Adding analytics
([#6350](AztecProtocol/aztec-packages#6350))
([6417cd9](AztecProtocol/aztec-packages@6417cd9))
* **docs:** Restructure improvs
([#6502](AztecProtocol/aztec-packages#6502))
([c3b573e](AztecProtocol/aztec-packages@c3b573e))
* Fix linter issues in AVM
([#6057](AztecProtocol/aztec-packages#6057))
([c2e72b1](AztecProtocol/aztec-packages@c2e72b1))
* Fix logs upload to S3
([#6401](AztecProtocol/aztec-packages#6401))
([9df0602](AztecProtocol/aztec-packages@9df0602))
* Fix migration notes
([#6458](AztecProtocol/aztec-packages#6458))
([bee85a9](AztecProtocol/aztec-packages@bee85a9))
* Fix migration notes
([#6551](AztecProtocol/aztec-packages#6551))
([89bc350](AztecProtocol/aztec-packages@89bc350))
* Fix notes 0.41.0
([#6461](AztecProtocol/aztec-packages#6461))
([04b0ec5](AztecProtocol/aztec-packages@04b0ec5))
* Fix poor performance and long compile times in value_note.derement()
([#6523](AztecProtocol/aztec-packages#6523))
([002b4aa](AztecProtocol/aztec-packages@002b4aa))
* Fix tester image copy pattern
([#6438](AztecProtocol/aztec-packages#6438))
([b892eae](AztecProtocol/aztec-packages@b892eae))
* Get_nullifier_keys cleanup
([#6451](AztecProtocol/aztec-packages#6451))
([8a71fd5](AztecProtocol/aztec-packages@8a71fd5))
* Lower max public bytecode to 20k
([#6477](AztecProtocol/aztec-packages#6477))
([ce192f0](AztecProtocol/aztec-packages@ce192f0))
* Move `UPLOAD_LOGS` into root earthfile
([#6424](AztecProtocol/aztec-packages#6424))
([d723da9](AztecProtocol/aztec-packages@d723da9))
* Nuking `KeyStore` and `KeyPair` interfaces
([#6553](AztecProtocol/aztec-packages#6553))
([23e0518](AztecProtocol/aztec-packages@23e0518))
* Parameterise cycle_group by `Builder` rather than `Composer`
([#6565](AztecProtocol/aztec-packages#6565))
([ea36bf9](AztecProtocol/aztec-packages@ea36bf9))
* Prefetch noir deps in earthly for caching
([#6556](AztecProtocol/aztec-packages#6556))
([8ee9060](AztecProtocol/aztec-packages@8ee9060))
* Private call validation
([#6510](AztecProtocol/aztec-packages#6510))
([07dc072](AztecProtocol/aztec-packages@07dc072))
* Purge secret and open keywords
([#6501](AztecProtocol/aztec-packages#6501))
([f9c74c4](AztecProtocol/aztec-packages@f9c74c4)),
closes
[#5538](AztecProtocol/aztec-packages#5538)
* Recommend Noir and rust plugin
([#6558](AztecProtocol/aztec-packages#6558))
([298561f](AztecProtocol/aztec-packages@298561f))
* Refactor key rotate and address comments from 6405
([#6450](AztecProtocol/aztec-packages#6450))
([6f3dab8](AztecProtocol/aztec-packages@6f3dab8))
* Remove acvmInfo from bb.js CLI
([#6507](AztecProtocol/aztec-packages#6507))
([e298c76](AztecProtocol/aztec-packages@e298c76))
* Remove backend interactions from `nargo`
([#6320](AztecProtocol/aztec-packages#6320))
([7a31896](AztecProtocol/aztec-packages@7a31896))
* Replace relative paths to noir-protocol-circuits
([94ab877](AztecProtocol/aztec-packages@94ab877))
* Replace relative paths to noir-protocol-circuits
([9f04bfe](AztecProtocol/aztec-packages@9f04bfe))
* Replace relative paths to noir-protocol-circuits
([67f29e5](AztecProtocol/aztec-packages@67f29e5))
* Replace relative paths to noir-protocol-circuits
([a7a4b86](AztecProtocol/aztec-packages@a7a4b86))
* Replace relative paths to noir-protocol-circuits
([c6f61a4](AztecProtocol/aztec-packages@c6f61a4))
* Share decider with ultra_prover
([#5467](AztecProtocol/aztec-packages#5467))
([b3b7376](AztecProtocol/aztec-packages@b3b7376))
* Switch over to constructing gates report in bash
([#6491](AztecProtocol/aztec-packages#6491))
([1fa5963](AztecProtocol/aztec-packages@1fa5963))
* **tests:** Change error messages in preparation for AVM
([#6422](AztecProtocol/aztec-packages#6422))
([6616dc6](AztecProtocol/aztec-packages@6616dc6))


### Documentation

* Sumcheck documentation
([#5841](AztecProtocol/aztec-packages#5841))
([116eef0](AztecProtocol/aztec-packages@116eef0))
* Updating key docs in concepts section
([#6387](AztecProtocol/aztec-packages#6387))
([921a7f4](AztecProtocol/aztec-packages@921a7f4))
</details>

<details><summary>barretenberg: 0.41.0</summary>

##
[0.41.0](AztecProtocol/aztec-packages@barretenberg-v0.40.1...barretenberg-v0.41.0)
(2024-05-21)


### ⚠ BREAKING CHANGES

* add is_infinite to curve addition opcode
([#6384](AztecProtocol/aztec-packages#6384))

### Features

* Add is_infinite to curve addition opcode
([#6384](AztecProtocol/aztec-packages#6384))
([75d81c5](AztecProtocol/aztec-packages@75d81c5))
* **avm-simulator:** Cap gas for external calls
([#6479](AztecProtocol/aztec-packages#6479))
([c8771ba](AztecProtocol/aztec-packages@c8771ba))
* **avm:** Gzip avm bytecode
([#6475](AztecProtocol/aztec-packages#6475))
([29559bd](AztecProtocol/aztec-packages@29559bd))
* **avm:** To_radix gadget
([#6368](AztecProtocol/aztec-packages#6368))
([89dd25f](AztecProtocol/aztec-packages@89dd25f))
* Full encryption and decryption of log in ts
([#6348](AztecProtocol/aztec-packages#6348))
([0ac83dc](AztecProtocol/aztec-packages@0ac83dc))
* Improved ClientIvc
([#6429](AztecProtocol/aztec-packages#6429))
([f360b3f](AztecProtocol/aztec-packages@f360b3f))
* Laying out a new recursion constraint for honk
([#6489](AztecProtocol/aztec-packages#6489))
([af9fea4](AztecProtocol/aztec-packages@af9fea4))
* Remove total logs len from pre tail kernels + add to L1
([#6466](AztecProtocol/aztec-packages#6466))
([66a2d43](AztecProtocol/aztec-packages@66a2d43))
* Run benchmarks for ACIR proving
([#6155](AztecProtocol/aztec-packages#6155))
([ebf6fc2](AztecProtocol/aztec-packages@ebf6fc2))
* Squash transient note logs
([#6268](AztecProtocol/aztec-packages#6268))
([4574877](AztecProtocol/aztec-packages@4574877))
* Sum transaction fees and pay on l1
([#6522](AztecProtocol/aztec-packages#6522))
([bf441da](AztecProtocol/aztec-packages@bf441da))
* Translator recursive verifier
([#6327](AztecProtocol/aztec-packages#6327))
([9321aef](AztecProtocol/aztec-packages@9321aef))
* View functions with static context enforcing
([#6338](AztecProtocol/aztec-packages#6338))
([22ad5a5](AztecProtocol/aztec-packages@22ad5a5))
* Vk_as_fields, proof_as_fields flows for honk
([#6406](AztecProtocol/aztec-packages#6406))
([a6100ad](AztecProtocol/aztec-packages@a6100ad))


### Bug Fixes

* Disable buggy ClientIVC tests
([#6546](AztecProtocol/aztec-packages#6546))
([b61dea3](AztecProtocol/aztec-packages@b61dea3))
* Increase N_max in Zeromorph
([#6415](AztecProtocol/aztec-packages#6415))
([9e643b4](AztecProtocol/aztec-packages@9e643b4))


### Miscellaneous

* Add c++ tests for generator derivation
([#6528](AztecProtocol/aztec-packages#6528))
([72931bd](AztecProtocol/aztec-packages@72931bd))
* Bump maximum nullifier read requests (necessary for e2e tests in AVM)
([#6462](AztecProtocol/aztec-packages#6462))
([26eac62](AztecProtocol/aztec-packages@26eac62))
* Bump maximum nullifier read requests (necessary for e2e tests in AVM)
([#6495](AztecProtocol/aztec-packages#6495))
([90d8092](AztecProtocol/aztec-packages@90d8092))
* Copy subset of constants to cpp
([#6544](AztecProtocol/aztec-packages#6544))
([21dc72a](AztecProtocol/aztec-packages@21dc72a))
* Lower max public bytecode to 20k
([#6477](AztecProtocol/aztec-packages#6477))
([ce192f0](AztecProtocol/aztec-packages@ce192f0))
* Parameterise cycle_group by `Builder` rather than `Composer`
([#6565](AztecProtocol/aztec-packages#6565))
([ea36bf9](AztecProtocol/aztec-packages@ea36bf9))
* Private call validation
([#6510](AztecProtocol/aztec-packages#6510))
([07dc072](AztecProtocol/aztec-packages@07dc072))
* Share decider with ultra_prover
([#5467](AztecProtocol/aztec-packages#5467))
([b3b7376](AztecProtocol/aztec-packages@b3b7376))


### Documentation

* Sumcheck documentation
([#5841](AztecProtocol/aztec-packages#5841))
([116eef0](AztecProtocol/aztec-packages@116eef0))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
madztheo pushed a commit to madztheo/aztec-packages that referenced this pull request Jun 26, 2024
🤖 I have created a release *beep* *boop*
---

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

[0.41.0](AztecProtocol/aztec-packages@aztec-package-v0.40.1...aztec-package-v0.41.0)
(2024-05-21)

* **aztec-package:** Synchronize aztec-packages versions
</details>

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

[0.41.0](AztecProtocol/aztec-packages@barretenberg.js-v0.40.1...barretenberg.js-v0.41.0)
(2024-05-21)

* Vk_as_fields, proof_as_fields flows for honk
([AztecProtocol#6406](AztecProtocol#6406))
([a6100ad](AztecProtocol@a6100ad))

* Remove acvmInfo from bb.js CLI
([AztecProtocol#6507](AztecProtocol#6507))
([e298c76](AztecProtocol@e298c76))
</details>

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

[0.41.0](AztecProtocol/aztec-packages@aztec-packages-v0.40.1...aztec-packages-v0.41.0)
(2024-05-21)

* compile-time incorrect exec environment errors
([AztecProtocol#6442](AztecProtocol#6442))
* add is_infinite to curve addition opcode
([AztecProtocol#6384](AztecProtocol#6384))
* remove backend interactions from `nargo`
([AztecProtocol#6320](AztecProtocol#6320))

* `npk_m_hash` in all notes + key rotation test
([AztecProtocol#6405](AztecProtocol#6405))
([74e98d4](AztecProtocol@74e98d4))
* Add encrypted log outgoing body
([AztecProtocol#6334](AztecProtocol#6334))
([fa9f442](AztecProtocol@fa9f442))
* Add first version of kernel reset circuit
([AztecProtocol#6393](AztecProtocol#6393))
([ed6df8e](AztecProtocol@ed6df8e))
* Add is_infinite to curve addition opcode
([AztecProtocol#6384](AztecProtocol#6384))
([75d81c5](AztecProtocol@75d81c5))
* Add native rust implementations of pedersen functions
(noir-lang/noir#4871)
([8bbbbb6](AztecProtocol@8bbbbb6))
* Add nullifying key to Token Note
([AztecProtocol#6130](AztecProtocol#6130))
([95c6b4a](AztecProtocol@95c6b4a))
* Adding autogenerated variants for the reset circuit
([AztecProtocol#6508](AztecProtocol#6508))
([8e8d2dd](AztecProtocol@8e8d2dd))
* **avm-simulator:** Cap gas for external calls
([AztecProtocol#6479](AztecProtocol#6479))
([c8771ba](AztecProtocol@c8771ba))
* **avm:** Gzip avm bytecode
([AztecProtocol#6475](AztecProtocol#6475))
([29559bd](AztecProtocol@29559bd))
* **avm:** To_radix gadget
([AztecProtocol#6368](AztecProtocol#6368))
([89dd25f](AztecProtocol@89dd25f))
* Benchmark private proving
([AztecProtocol#6409](AztecProtocol#6409))
([e9e5526](AztecProtocol@e9e5526))
* Compile-time incorrect exec environment errors
([AztecProtocol#6442](AztecProtocol#6442))
([0f75efd](AztecProtocol@0f75efd))
* Do not return databus returndata, keep it private.
(noir-lang/noir#5023)
([26f2197](AztecProtocol@26f2197))
* **docs:** Authwit how tos
([AztecProtocol#6220](AztecProtocol#6220))
([78f13d9](AztecProtocol@78f13d9))
* **docs:** Key rotation / owner -&gt; nullifier key docs
([AztecProtocol#6538](AztecProtocol#6538))
([2453ba8](AztecProtocol@2453ba8))
* Full encryption and decryption of log in ts
([AztecProtocol#6348](AztecProtocol#6348))
([0ac83dc](AztecProtocol@0ac83dc))
* Generic key validation request
([AztecProtocol#6474](AztecProtocol#6474))
([948ec38](AztecProtocol@948ec38))
* Improved ClientIvc
([AztecProtocol#6429](AztecProtocol#6429))
([f360b3f](AztecProtocol@f360b3f))
* Laying out a new recursion constraint for honk
([AztecProtocol#6489](AztecProtocol#6489))
([af9fea4](AztecProtocol@af9fea4))
* New docs structure
([AztecProtocol#6195](AztecProtocol#6195))
([9cca814](AztecProtocol@9cca814))
* Pay out arbitrary fee to coinbase on L1
([AztecProtocol#6436](AztecProtocol#6436))
([1b99de8](AztecProtocol@1b99de8))
* Remove total logs len from pre tail kernels + add to L1
([AztecProtocol#6466](AztecProtocol#6466))
([66a2d43](AztecProtocol@66a2d43))
* Run benchmarks for ACIR proving
([AztecProtocol#6155](AztecProtocol#6155))
([ebf6fc2](AztecProtocol@ebf6fc2))
* Squash transient note logs
([AztecProtocol#6268](AztecProtocol#6268))
([4574877](AztecProtocol@4574877))
* Sum transaction fees and pay on l1
([AztecProtocol#6522](AztecProtocol#6522))
([bf441da](AztecProtocol@bf441da))
* Translator recursive verifier
([AztecProtocol#6327](AztecProtocol#6327))
([9321aef](AztecProtocol@9321aef))
* Update the encrypted note log format
([AztecProtocol#6411](AztecProtocol#6411))
([e5cc9dc](AztecProtocol@e5cc9dc))
* Validate counters
([AztecProtocol#6365](AztecProtocol#6365))
([1f28b3a](AztecProtocol@1f28b3a))
* View functions with static context enforcing
([AztecProtocol#6338](AztecProtocol#6338))
([22ad5a5](AztecProtocol@22ad5a5))
* Vk_as_fields, proof_as_fields flows for honk
([AztecProtocol#6406](AztecProtocol#6406))
([a6100ad](AztecProtocol@a6100ad))

* Arm ci
([AztecProtocol#6480](AztecProtocol#6480))
([237952e](AztecProtocol@237952e))
* Asset struct serialization does not match Noir internal serialization
([AztecProtocol#6494](AztecProtocol#6494))
([9e6a4c3](AztecProtocol@9e6a4c3))
* **avm-simulator:** Actually wrap oracles
([AztecProtocol#6449](AztecProtocol#6449))
([8685acc](AztecProtocol@8685acc))
* **avm-simulator:** Nested calls should preserve static context
([AztecProtocol#6414](AztecProtocol#6414))
([44d7916](AztecProtocol@44d7916))
* **avm-simulator:** Pending storage and nullifiers should be accessible
in grandchild nested calls
([AztecProtocol#6428](AztecProtocol#6428))
([84d2e1f](AztecProtocol@84d2e1f))
* Buggy e2e key registry test setup
([AztecProtocol#6496](AztecProtocol#6496))
([52d85d1](AztecProtocol@52d85d1))
* **ci:** ARM
([AztecProtocol#6521](AztecProtocol#6521))
([d1095f6](AztecProtocol@d1095f6))
* **ci:** Arm concurrency
([AztecProtocol#6564](AztecProtocol#6564))
([a265da0](AztecProtocol@a265da0))
* Disable buggy ClientIVC tests
([AztecProtocol#6546](AztecProtocol#6546))
([b61dea3](AztecProtocol@b61dea3))
* Disk attach edge case
([AztecProtocol#6430](AztecProtocol#6430))
([2366ad3](AztecProtocol@2366ad3))
* **docs:** Clarify content on portals
([AztecProtocol#6431](AztecProtocol#6431))
([869df4d](AztecProtocol@869df4d))
* Don't start multiple runners during RequestLimitExceeded
([AztecProtocol#6444](AztecProtocol#6444))
([7c4c822](AztecProtocol@7c4c822))
* Dont start multiple builders
([AztecProtocol#6437](AztecProtocol#6437))
([d67ab1c](AztecProtocol@d67ab1c))
* Fix no predicates for brillig with intermediate functions
(noir-lang/noir#5015)
([26f2197](AztecProtocol@26f2197))
* Fixed several vulnerabilities in U128, added some tests
(noir-lang/noir#5024)
([26f2197](AztecProtocol@26f2197))
* Increase N_max in Zeromorph
([AztecProtocol#6415](AztecProtocol#6415))
([9e643b4](AztecProtocol@9e643b4))
* Quick fix of
[AztecProtocol#6405](AztecProtocol#6405) by
removing context from value note utils
([AztecProtocol#6509](AztecProtocol#6509))
([3a4d828](AztecProtocol@3a4d828))
* Removed plain from path in array args of contract interfaces
([AztecProtocol#6497](AztecProtocol#6497))
([2b37729](AztecProtocol@2b37729))
* Runs-on inconsistency and simplify concurrency keys
([AztecProtocol#6433](AztecProtocol#6433))
([80674d9](AztecProtocol@80674d9))
* Spot retry fixup
([AztecProtocol#6476](AztecProtocol#6476))
([784d784](AztecProtocol@784d784))

* Add benchmarks for pedersen and schnorr verification
(noir-lang/noir#5056)
([8bbbbb6](AztecProtocol@8bbbbb6))
* Add c++ tests for generator derivation
([AztecProtocol#6528](AztecProtocol#6528))
([72931bd](AztecProtocol@72931bd))
* Add script to print lines of code
(noir-lang/noir#4991)
([26f2197](AztecProtocol@26f2197))
* Add some docs on syncing noir
([AztecProtocol#6340](AztecProtocol#6340))
([bb68fcd](AztecProtocol@bb68fcd))
* Anvil kill wrapper now supports mac
([AztecProtocol#6520](AztecProtocol#6520))
([2a5d975](AztecProtocol@2a5d975))
* **avm:** Wrap oracles with unconstrained fns
([AztecProtocol#6421](AztecProtocol#6421))
([3e7e094](AztecProtocol@3e7e094))
* Bump earthly
([AztecProtocol#6419](AztecProtocol#6419))
([3d78751](AztecProtocol@3d78751))
* Bump maximum nullifier read requests (necessary for e2e tests in AVM)
([AztecProtocol#6462](AztecProtocol#6462))
([26eac62](AztecProtocol@26eac62))
* Bump maximum nullifier read requests (necessary for e2e tests in AVM)
([AztecProtocol#6495](AztecProtocol#6495))
([90d8092](AztecProtocol@90d8092))
* Change some error messages for avm switch
([AztecProtocol#6447](AztecProtocol#6447))
([74d6519](AztecProtocol@74d6519))
* **ci:** Better retry defaults
([AztecProtocol#6472](AztecProtocol#6472))
([b23f1fd](AztecProtocol@b23f1fd))
* **ci:** Consistency as external check
([AztecProtocol#6460](AztecProtocol#6460))
([6793a75](AztecProtocol@6793a75))
* **ci:** Dont detach ebs
([AztecProtocol#6441](AztecProtocol#6441))
([f933fc0](AztecProtocol@f933fc0))
* **ci:** Fix on-demand starting
([AztecProtocol#6434](AztecProtocol#6434))
([c3efb9c](AztecProtocol@c3efb9c))
* **ci:** Increase timeouts
([AztecProtocol#6426](AztecProtocol#6426))
([44986fe](AztecProtocol@44986fe))
* **ci:** Only run circleci on master
([AztecProtocol#6525](AztecProtocol#6525))
([c75fbd4](AztecProtocol@c75fbd4))
* **ci:** Push l1-contracts tests off of critical path
([AztecProtocol#6400](AztecProtocol#6400))
([ce0ae6d](AztecProtocol@ce0ae6d))
* **ci:** Reenable arm build
([AztecProtocol#6455](AztecProtocol#6455))
([2862767](AztecProtocol@2862767))
* **ci:** Require setup in merge-check
([AztecProtocol#6454](AztecProtocol#6454))
([ad73061](AztecProtocol@ad73061))
* **ci:** Spot capacity and reaping
([AztecProtocol#6561](AztecProtocol#6561))
([8c639b5](AztecProtocol@8c639b5))
* Clean up kernel types by removing is_static from function_data
([AztecProtocol#6557](AztecProtocol#6557))
([83ba29f](AztecProtocol@83ba29f))
* Cleanup the encrypted log incoming body
([AztecProtocol#6325](AztecProtocol#6325))
([e88c209](AztecProtocol@e88c209))
* Copy subset of constants to cpp
([AztecProtocol#6544](AztecProtocol#6544))
([21dc72a](AztecProtocol@21dc72a))
* Do not rebuild yarn-projects on bench-comment
([AztecProtocol#6396](AztecProtocol#6396))
([797115b](AztecProtocol@797115b))
* **docs:** Adding analytics
([AztecProtocol#6350](AztecProtocol#6350))
([6417cd9](AztecProtocol@6417cd9))
* **docs:** Restructure improvs
([AztecProtocol#6502](AztecProtocol#6502))
([c3b573e](AztecProtocol@c3b573e))
* Fix linter issues in AVM
([AztecProtocol#6057](AztecProtocol#6057))
([c2e72b1](AztecProtocol@c2e72b1))
* Fix logs upload to S3
([AztecProtocol#6401](AztecProtocol#6401))
([9df0602](AztecProtocol@9df0602))
* Fix migration notes
([AztecProtocol#6458](AztecProtocol#6458))
([bee85a9](AztecProtocol@bee85a9))
* Fix migration notes
([AztecProtocol#6551](AztecProtocol#6551))
([89bc350](AztecProtocol@89bc350))
* Fix notes 0.41.0
([AztecProtocol#6461](AztecProtocol#6461))
([04b0ec5](AztecProtocol@04b0ec5))
* Fix poor performance and long compile times in value_note.derement()
([AztecProtocol#6523](AztecProtocol#6523))
([002b4aa](AztecProtocol@002b4aa))
* Fix tester image copy pattern
([AztecProtocol#6438](AztecProtocol#6438))
([b892eae](AztecProtocol@b892eae))
* Get_nullifier_keys cleanup
([AztecProtocol#6451](AztecProtocol#6451))
([8a71fd5](AztecProtocol@8a71fd5))
* Lower max public bytecode to 20k
([AztecProtocol#6477](AztecProtocol#6477))
([ce192f0](AztecProtocol@ce192f0))
* Move `UPLOAD_LOGS` into root earthfile
([AztecProtocol#6424](AztecProtocol#6424))
([d723da9](AztecProtocol@d723da9))
* Nuking `KeyStore` and `KeyPair` interfaces
([AztecProtocol#6553](AztecProtocol#6553))
([23e0518](AztecProtocol@23e0518))
* Parameterise cycle_group by `Builder` rather than `Composer`
([AztecProtocol#6565](AztecProtocol#6565))
([ea36bf9](AztecProtocol@ea36bf9))
* Prefetch noir deps in earthly for caching
([AztecProtocol#6556](AztecProtocol#6556))
([8ee9060](AztecProtocol@8ee9060))
* Private call validation
([AztecProtocol#6510](AztecProtocol#6510))
([07dc072](AztecProtocol@07dc072))
* Purge secret and open keywords
([AztecProtocol#6501](AztecProtocol#6501))
([f9c74c4](AztecProtocol@f9c74c4)),
closes
[AztecProtocol#5538](AztecProtocol#5538)
* Recommend Noir and rust plugin
([AztecProtocol#6558](AztecProtocol#6558))
([298561f](AztecProtocol@298561f))
* Refactor key rotate and address comments from 6405
([AztecProtocol#6450](AztecProtocol#6450))
([6f3dab8](AztecProtocol@6f3dab8))
* Remove acvmInfo from bb.js CLI
([AztecProtocol#6507](AztecProtocol#6507))
([e298c76](AztecProtocol@e298c76))
* Remove backend interactions from `nargo`
([AztecProtocol#6320](AztecProtocol#6320))
([7a31896](AztecProtocol@7a31896))
* Replace relative paths to noir-protocol-circuits
([94ab877](AztecProtocol@94ab877))
* Replace relative paths to noir-protocol-circuits
([9f04bfe](AztecProtocol@9f04bfe))
* Replace relative paths to noir-protocol-circuits
([67f29e5](AztecProtocol@67f29e5))
* Replace relative paths to noir-protocol-circuits
([a7a4b86](AztecProtocol@a7a4b86))
* Replace relative paths to noir-protocol-circuits
([c6f61a4](AztecProtocol@c6f61a4))
* Share decider with ultra_prover
([AztecProtocol#5467](AztecProtocol#5467))
([b3b7376](AztecProtocol@b3b7376))
* Switch over to constructing gates report in bash
([AztecProtocol#6491](AztecProtocol#6491))
([1fa5963](AztecProtocol@1fa5963))
* **tests:** Change error messages in preparation for AVM
([AztecProtocol#6422](AztecProtocol#6422))
([6616dc6](AztecProtocol@6616dc6))

* Sumcheck documentation
([AztecProtocol#5841](AztecProtocol#5841))
([116eef0](AztecProtocol@116eef0))
* Updating key docs in concepts section
([AztecProtocol#6387](AztecProtocol#6387))
([921a7f4](AztecProtocol@921a7f4))
</details>

<details><summary>barretenberg: 0.41.0</summary>

[0.41.0](AztecProtocol/aztec-packages@barretenberg-v0.40.1...barretenberg-v0.41.0)
(2024-05-21)

* add is_infinite to curve addition opcode
([AztecProtocol#6384](AztecProtocol#6384))

* Add is_infinite to curve addition opcode
([AztecProtocol#6384](AztecProtocol#6384))
([75d81c5](AztecProtocol@75d81c5))
* **avm-simulator:** Cap gas for external calls
([AztecProtocol#6479](AztecProtocol#6479))
([c8771ba](AztecProtocol@c8771ba))
* **avm:** Gzip avm bytecode
([AztecProtocol#6475](AztecProtocol#6475))
([29559bd](AztecProtocol@29559bd))
* **avm:** To_radix gadget
([AztecProtocol#6368](AztecProtocol#6368))
([89dd25f](AztecProtocol@89dd25f))
* Full encryption and decryption of log in ts
([AztecProtocol#6348](AztecProtocol#6348))
([0ac83dc](AztecProtocol@0ac83dc))
* Improved ClientIvc
([AztecProtocol#6429](AztecProtocol#6429))
([f360b3f](AztecProtocol@f360b3f))
* Laying out a new recursion constraint for honk
([AztecProtocol#6489](AztecProtocol#6489))
([af9fea4](AztecProtocol@af9fea4))
* Remove total logs len from pre tail kernels + add to L1
([AztecProtocol#6466](AztecProtocol#6466))
([66a2d43](AztecProtocol@66a2d43))
* Run benchmarks for ACIR proving
([AztecProtocol#6155](AztecProtocol#6155))
([ebf6fc2](AztecProtocol@ebf6fc2))
* Squash transient note logs
([AztecProtocol#6268](AztecProtocol#6268))
([4574877](AztecProtocol@4574877))
* Sum transaction fees and pay on l1
([AztecProtocol#6522](AztecProtocol#6522))
([bf441da](AztecProtocol@bf441da))
* Translator recursive verifier
([AztecProtocol#6327](AztecProtocol#6327))
([9321aef](AztecProtocol@9321aef))
* View functions with static context enforcing
([AztecProtocol#6338](AztecProtocol#6338))
([22ad5a5](AztecProtocol@22ad5a5))
* Vk_as_fields, proof_as_fields flows for honk
([AztecProtocol#6406](AztecProtocol#6406))
([a6100ad](AztecProtocol@a6100ad))

* Disable buggy ClientIVC tests
([AztecProtocol#6546](AztecProtocol#6546))
([b61dea3](AztecProtocol@b61dea3))
* Increase N_max in Zeromorph
([AztecProtocol#6415](AztecProtocol#6415))
([9e643b4](AztecProtocol@9e643b4))

* Add c++ tests for generator derivation
([AztecProtocol#6528](AztecProtocol#6528))
([72931bd](AztecProtocol@72931bd))
* Bump maximum nullifier read requests (necessary for e2e tests in AVM)
([AztecProtocol#6462](AztecProtocol#6462))
([26eac62](AztecProtocol@26eac62))
* Bump maximum nullifier read requests (necessary for e2e tests in AVM)
([AztecProtocol#6495](AztecProtocol#6495))
([90d8092](AztecProtocol@90d8092))
* Copy subset of constants to cpp
([AztecProtocol#6544](AztecProtocol#6544))
([21dc72a](AztecProtocol@21dc72a))
* Lower max public bytecode to 20k
([AztecProtocol#6477](AztecProtocol#6477))
([ce192f0](AztecProtocol@ce192f0))
* Parameterise cycle_group by `Builder` rather than `Composer`
([AztecProtocol#6565](AztecProtocol#6565))
([ea36bf9](AztecProtocol@ea36bf9))
* Private call validation
([AztecProtocol#6510](AztecProtocol#6510))
([07dc072](AztecProtocol@07dc072))
* Share decider with ultra_prover
([AztecProtocol#5467](AztecProtocol#5467))
([b3b7376](AztecProtocol@b3b7376))

* Sumcheck documentation
([AztecProtocol#5841](AztecProtocol#5841))
([116eef0](AztecProtocol@116eef0))
</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: add a call to registry in rotate nullifying key in wallet and clean the rest of comments on #6405
4 participants