-
Notifications
You must be signed in to change notification settings - Fork 234
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
docs(yellow-paper): Update keys and addresses #3707
Conversation
7235952
to
7d70360
Compare
dd918ac
to
d7e2c70
Compare
They are now in private message delivery
d7e2c70
to
a46a8ea
Compare
### Doing this inside an app circuit | ||
|
||
Here's how an app circuit could constrain the app-siloed outgoing viewing secret key ($\ovskapp$) to be correct: | ||
|
||
The app circuit exposes, as public inputs, an "outgoing viewing key validation request": | ||
|
||
<!-- prettier-ignore --> | ||
| Thing | Derivation | Name | Comments | | ||
|---|---|---|---| | ||
`outgoing_viewing_key_validation_request` | app_address: app_address,<br />hardened_child_sk: $\nskapp$,<br />claimed_parent_pk: $\Npkm$ | | ||
|
||
The kernel circuit can then validate the request (having been given $\ovskm$ as a private input to the kernel circuit): | ||
|
||
<!-- prettier-ignore --> | ||
| Thing | Derivation | Name | Comments | | ||
|---|---|---|---| | ||
$\ovskapp$ | $h(\ovskm, \text{app\_address})$ | | ||
$\Ovpkm$ | $\ovskm \cdot G$ | Outgoing viewing public key | | ||
| | | | Copy-constrain $\ovskm$ with $\ovskm$. | | ||
|
||
If the kernel circuit succeeds in these calculations, then the $\ovskapp$ has been validated as the correct app-siled secret key for $\Ovpkm$. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Commenting here even though it just got merged (sorry!)
This deleted section is still relevant, right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are we going with this approach, or with the pokodl_request
described at the end?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think probably this approach (rather than the pokodl approach). It's more conventional and more closely aligned with bip32.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added back this approach and removed the appendix with the alternative key derivation and pokodl request in #3837.
Keeps the specification that Mike wrote (removing app-siloed incoming viewing keys), changes private message delivery, and adds new sections on precompiles, registry, sending guidelines, diversified and stealth accounts, batched and unconstrained calls, etc.
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-packages: 0.17.0</summary> ## [0.17.0](aztec-packages-v0.16.9...aztec-packages-v0.17.0) (2024-01-09) ### ⚠ BREAKING CHANGES * Remove aggregation objects from RecursionConstraint ([#3885](#3885)) * Noir development branch (serialization changes) ([#3858](#3858)) * **aztec.js:** Move accounts out of aztec.js into new package ([#3844](#3844)) * Add Side effect counter struct for ordering ([#3608](#3608)) * typing partial address, deduplicating `Point`, `Point` -> `GrumpkinPoint` ([#3814](#3814)) * moving `compute_selector` to `FunctionSelector` ([#3806](#3806)) * moving compute_address func to AztecAddress ([#3801](#3801)) * updated note hash and nullifier macro ([#3777](#3777)) * return full verification contract from `AcirComposer::get_solidity_verifier` ([#3735](#3735)) * deduplicating circuit types + typing everything ([#3594](#3594)) ### Features * A script which runs `nargo fmt` in all packages + running it ([#3803](#3803)) ([5f0ebd6](5f0ebd6)) * Add new metrics ([#3855](#3855)) ([a2b267b](a2b267b)) * Adding option to set initial and max memory ([#3265](#3265)) ([0ad75fe](0ad75fe)) * **avm-main:** Pil -> permutations ([#3650](#3650)) ([c52acf6](c52acf6)) * **avm-mini:** Call and return opcodes ([#3704](#3704)) ([e534204](e534204)) * **avm:** Add standalone jump opcode ([#3781](#3781)) ([b1b2e7c](b1b2e7c)) * **avm:** VM circuit handles tagged memory ([#3725](#3725)) ([739fe90](739fe90)), closes [#3644](#3644) * **aztec.js:** Move accounts out of aztec.js into new package ([#3844](#3844)) ([afd7b6d](afd7b6d)), closes [#3807](#3807) * Barretenberg doxygen CI ([#3818](#3818)) ([022a918](022a918)) * Bb uses goblin ([#3636](#3636)) ([d093266](d093266)) * Compile base rollup as a circuit ([#3739](#3739)) ([5118d44](5118d44)) * Contract inclusion proof ([#3680](#3680)) ([43aa603](43aa603)) * Correct circuit construction from acir ([#3757](#3757)) ([a876ab8](a876ab8)) * Deduplicating circuit types + typing everything ([#3594](#3594)) ([fcb04a7](fcb04a7)), closes [#3592](#3592) [#3059](#3059) * Goblin and eccvm bench ([#3606](#3606)) ([1fe63b2](1fe63b2)) * Goblinize the final ecc ops in ZM ([#3741](#3741)) ([3048d08](3048d08)) * Launch the monorepo in a codespace. ([#3829](#3829)) ([f5a4a78](f5a4a78)) * Moving `compute_selector` to `FunctionSelector` ([#3806](#3806)) ([bbaebf4](bbaebf4)), closes [#3681](#3681) * Moving compute_address func to AztecAddress ([#3801](#3801)) ([3107aad](3107aad)), closes [#3794](#3794) * Node version check in `yarn-project/bootstrap.sh` ([#3780](#3780)) ([c29e4ee](c29e4ee)) * Noir development branch (serialization changes) ([#3858](#3858)) ([d2ae2cd](d2ae2cd)) * Only one tx per base rollup ([#3742](#3742)) ([9eef247](9eef247)) * ProverPolynomials owns its memory ([#3560](#3560)) ([a4aba00](a4aba00)) * Public data tree as indexed tree ([#3566](#3566)) ([4711ef7](4711ef7)) * PXE adds note processors for stored accounts ([#3673](#3673)) ([93f9315](93f9315)) * Return full verification contract from `AcirComposer::get_solidity_verifier` ([#3735](#3735)) ([bd5614c](bd5614c)) * Serialize synchronize and simulateTx calls by the pxe via SerialQueue ([#3817](#3817)) ([e893675](e893675)) * Specific membership witness functions in aztec-nr ([#3674](#3674)) ([3403877](3403877)), closes [#3663](#3663) * Tree ids in noir ([#3809](#3809)) ([ec2e36e](ec2e36e)) * Txpool persistence ([#3672](#3672)) ([4dd076c](4dd076c)), closes [#3365](#3365) * Typing partial address, deduplicating `Point`, `Point` -> `GrumpkinPoint` ([#3814](#3814)) ([44458be](44458be)), closes [#3682](#3682) * Update to latest noir and update noir compiler ([#3696](#3696)) ([62a17a4](62a17a4)) * Updated note hash and nullifier macro ([#3777](#3777)) ([e83dd2b](e83dd2b)), closes [#3669](#3669) ### Bug Fixes * AWS deploy_service regex + faucet dockerfile ([#3699](#3699)) ([260c7c3](260c7c3)) * Broken aztec-nr imports ([#3693](#3693)) ([7c8814e](7c8814e)) * Build scripts if statements ([#3700](#3700)) ([4847c19](4847c19)) * **ci:** Contracts_deployed check ([#3703](#3703)) ([6c4bf75](6c4bf75)) * **ci:** Redeploy triggers ([#3677](#3677)) ([cc515da](cc515da)) * CRS not needed for gate_count. Grumpkin not needed for non-goblin. ([#3872](#3872)) ([8cda00d](8cda00d)) * Deploy l1 contracts script ([#3713](#3713)) ([309be4b](309be4b)) * Disable goblin bbjs tests ([#3836](#3836)) ([1f5b2c6](1f5b2c6)) * Docker user permissions ([#3711](#3711)) ([35316fc](35316fc)) * **docs:** Fix docs build during releases ([#3815](#3815)) ([2e0776a](2e0776a)) * **docs:** Force docs build using latest released code always ([#3762](#3762)) ([5545ee6](5545ee6)) * **docs:** Make git repo available when building docs ([#3761](#3761)) ([bce2d99](bce2d99)) * **docs:** Show latest released code on published site ([#3716](#3716)) ([f1eb6d5](f1eb6d5)) * Event macro ([#3784](#3784)) ([3af2438](3af2438)), closes [#3655](#3655) * Fix for faucet and node deployment config ([#3722](#3722)) ([a60b71a](a60b71a)) * Flaky e2e-p2p test ([#3831](#3831)) ([5b1e9f2](5b1e9f2)) * Issue with `run_nargo_fmt.sh` + minor yellow paper naming improvements ([#3833](#3833)) ([8e692c1](8e692c1)) * Map relative path to protocol circuits ([#3694](#3694)) ([125ab1d](125ab1d)) * Noir-protocol circuits ([#3734](#3734)) ([34e2505](34e2505)) * Reenable goblin bbjs for a single test ([#3838](#3838)) ([30e47a0](30e47a0)) * Setup aztec-cli cache ([#3698](#3698)) ([48b7474](48b7474)) * Stale pseudocode in yellow paper process func ([#3869](#3869)) ([4a73e3d](4a73e3d)) * Subrepo commit ([b5bfb0b](b5bfb0b)) * There is no main.js ([#3691](#3691)) ([58ba060](58ba060)) * Unpick world state circulars. ([#3721](#3721)) ([84f4671](84f4671)) * Update for new p2p bootstrap node names ([#3710](#3710)) ([c7b29b3](c7b29b3)) * Update toy to new master ([78cf525](78cf525)) * Use lookup instead of resolve to ensure consider /etc/hosts ([#3720](#3720)) ([eb8413e](eb8413e)) ### Miscellaneous * Add GH action to notify gate count differences ([#3724](#3724)) ([c0a24fb](c0a24fb)), closes [#3467](#3467) * Add Side effect counter struct for ordering ([#3608](#3608)) ([c58b197](c58b197)) * Add small how to diagram section ([#3804](#3804)) ([df581f0](df581f0)) * Added cryptography section to yellow paper ([#3647](#3647)) ([286028b](286028b)) * Adding some clarification after a question on discourse ([#3823](#3823)) ([f3d37d7](f3d37d7)) * Align bb.js testing ([#3840](#3840)) ([c489727](c489727)) * **avm:** Avm memory trace building ([#3835](#3835)) ([b7766d6](b7766d6)) * Aztec js circulars ([#3723](#3723)) ([378407d](378407d)) * Bring boxes back to CI. Build and run using docker/docker-compose. ([#3727](#3727)) ([4a1c0df](4a1c0df)) * Build protocol circuits on CI and stop committing artifacts ([#3816](#3816)) ([fa1c456](fa1c456)) * Checking noir formatting in CI ([#3828](#3828)) ([b53bacf](b53bacf)), closes [#3825](#3825) * Cleaning inconsistency ([#3851](#3851)) ([9bbd70a](9bbd70a)) * Cleanup recursion interface ([#3744](#3744)) ([fde0ac3](fde0ac3)) * **docs:** Add block productions ([#3770](#3770)) ([f091f49](f091f49)) * **docs:** Add high level overview of a tx ([#3763](#3763)) ([9a55e57](9a55e57)) * **docs:** Remove npm reference section from testing page ([#3719](#3719)) ([1484c11](1484c11)) * **docs:** Remove references to npm packages ([#3676](#3676)) ([bd5355f](bd5355f)) * **docs:** Starting a migration notes section ([#3853](#3853)) ([060f39a](060f39a)) * **docs:** Update deps in tutorials ([#3708](#3708)) ([f3d93aa](f3d93aa)) * **docs:** Update install script ([#3847](#3847)) ([7003853](7003853)) * **docs:** Update reference link ([#3768](#3768)) ([18edb98](18edb98)) * **docs:** Update testing pages ([#3733](#3733)) ([1c68e3b](1c68e3b)) * **docs:** Update token bridge tutorial ([#3773](#3773)) ([764cb46](764cb46)) * **docs:** Update trees page ([#3732](#3732)) ([b265531](b265531)) * **dsl:** Abstract nested aggregation object from ACIR ([#3765](#3765)) ([92f72e4](92f72e4)) * Increase benchmark warning threshold for trial decrypt ([#3602](#3602)) ([913943e](913943e)) * Just nargo compile. ([#3775](#3775)) ([3d08ef9](3d08ef9)) * Move boxes out of yarn-project ([#3688](#3688)) ([472596c](472596c)) * Noir sync ([#3884](#3884)) ([217de09](217de09)) * Remove aggregation objects from RecursionConstraint ([#3885](#3885)) ([9a80008](9a80008)) * Remove HashToField128Security ACIR opcode ([#3631](#3631)) ([1d6d3c9](1d6d3c9)) * Removing leaf data type + related cleanup ([#3794](#3794)) ([3030cc8](3030cc8)) * Rename generate-ts/nr commands to codegen. ([#3843](#3843)) ([1fcb964](1fcb964)) * Replace relative paths to noir-protocol-circuits ([c2fed18](c2fed18)) * Replace relative paths to noir-protocol-circuits ([3accd8a](3accd8a)) * Replace relative paths to noir-protocol-circuits ([346590b](346590b)) * Replace relative paths to noir-protocol-circuits ([861d928](861d928)) * Show noir tag alongside commit on sandbox startup ([#3750](#3750)) ([009f66d](009f66d)) * Update governance vote ballot ([#3789](#3789)) ([f8976ad](f8976ad)) * Update how_to_contribute.md ([#3759](#3759)) ([4567ec4](4567ec4)) * Update privacy main.md ([#3760](#3760)) ([c3d8b5d](c3d8b5d)) * Use repo BB for gate diff ([#3852](#3852)) ([506e719](506e719)) * Use simple "flat" CRS. ([#3748](#3748)) ([5c6c2ca](5c6c2ca)) * Use traits in noir-protocol-circuits ([#3832](#3832)) ([88fcf8d](88fcf8d)) ### Documentation * A layout of logs section of yellow paper ([#3582](#3582)) ([8c759f6](8c759f6)) * Add current thinking on upgrades ([#3743](#3743)) ([9f3d972](9f3d972)) * Add da doc ([#3736](#3736)) ([193f3f2](193f3f2)), closes [#3645](#3645) * Bytecode ([#3701](#3701)) ([912df7e](912df7e)) * Extend state documentation ([#3731](#3731)) ([a99cbd6](a99cbd6)) * Remove mentions of noir-compiler ([#3702](#3702)) ([ea7cd50](ea7cd50)) * Yellow paper rollup circuits and state update ([#3558](#3558)) ([b2d6376](b2d6376)) * **yellow-paper:** Circuits ([#3782](#3782)) ([a935ca3](a935ca3)) * **yellow-paper:** Contract deployment ([#3624](#3624)) ([b282867](b282867)), closes [#3104](#3104) * **yellow-paper:** Drop pokodl request in key derivation ([#3837](#3837)) ([a3920fb](a3920fb)) * **yellow-paper:** Update keys and addresses ([#3707](#3707)) ([56992ae](56992ae)) * **yellowpaper:** AVM high-level execution ([#3717](#3717)) ([2ded221](2ded221)) * **yellowpaper:** AVM intro sections ([#3692](#3692)) ([c48e76c](c48e76c)) * **yellowpaper:** Avm nested call returns, updating calling context ([#3749](#3749)) ([a1c701d](a1c701d)) * **yellowpaper:** Finish AVM Context definitions ([#3709](#3709)) ([4cfb427](4cfb427)) * **yellowpaper:** Private kernel circuits ([#3559](#3559)) ([056e553](056e553)) </details> <details><summary>barretenberg.js: 0.17.0</summary> ## [0.17.0](barretenberg.js-v0.16.9...barretenberg.js-v0.17.0) (2024-01-09) ### ⚠ BREAKING CHANGES * return full verification contract from `AcirComposer::get_solidity_verifier` ([#3735](#3735)) ### Features * Adding option to set initial and max memory ([#3265](#3265)) ([0ad75fe](0ad75fe)) * Bb uses goblin ([#3636](#3636)) ([d093266](d093266)) * Correct circuit construction from acir ([#3757](#3757)) ([a876ab8](a876ab8)) * Return full verification contract from `AcirComposer::get_solidity_verifier` ([#3735](#3735)) ([bd5614c](bd5614c)) ### Miscellaneous * Remove HashToField128Security ACIR opcode ([#3631](#3631)) ([1d6d3c9](1d6d3c9)) * Use simple "flat" CRS. ([#3748](#3748)) ([5c6c2ca](5c6c2ca)) </details> <details><summary>barretenberg: 0.17.0</summary> ## [0.17.0](barretenberg-v0.16.9...barretenberg-v0.17.0) (2024-01-09) ### ⚠ BREAKING CHANGES * Remove aggregation objects from RecursionConstraint ([#3885](#3885)) * Noir development branch (serialization changes) ([#3858](#3858)) * Add Side effect counter struct for ordering ([#3608](#3608)) * return full verification contract from `AcirComposer::get_solidity_verifier` ([#3735](#3735)) ### Features * Adding option to set initial and max memory ([#3265](#3265)) ([0ad75fe](0ad75fe)) * **avm-main:** Pil -> permutations ([#3650](#3650)) ([c52acf6](c52acf6)) * **avm-mini:** Call and return opcodes ([#3704](#3704)) ([e534204](e534204)) * **avm:** Add standalone jump opcode ([#3781](#3781)) ([b1b2e7c](b1b2e7c)) * **avm:** VM circuit handles tagged memory ([#3725](#3725)) ([739fe90](739fe90)), closes [#3644](#3644) * Barretenberg doxygen CI ([#3818](#3818)) ([022a918](022a918)) * Bb uses goblin ([#3636](#3636)) ([d093266](d093266)) * Correct circuit construction from acir ([#3757](#3757)) ([a876ab8](a876ab8)) * Goblin and eccvm bench ([#3606](#3606)) ([1fe63b2](1fe63b2)) * Goblinize the final ecc ops in ZM ([#3741](#3741)) ([3048d08](3048d08)) * Noir development branch (serialization changes) ([#3858](#3858)) ([d2ae2cd](d2ae2cd)) * ProverPolynomials owns its memory ([#3560](#3560)) ([a4aba00](a4aba00)) * Return full verification contract from `AcirComposer::get_solidity_verifier` ([#3735](#3735)) ([bd5614c](bd5614c)) ### Bug Fixes * CRS not needed for gate_count. Grumpkin not needed for non-goblin. ([#3872](#3872)) ([8cda00d](8cda00d)) * Disable goblin bbjs tests ([#3836](#3836)) ([1f5b2c6](1f5b2c6)) * Reenable goblin bbjs for a single test ([#3838](#3838)) ([30e47a0](30e47a0)) * Update toy to new master ([78cf525](78cf525)) ### Miscellaneous * Add Side effect counter struct for ordering ([#3608](#3608)) ([c58b197](c58b197)) * Align bb.js testing ([#3840](#3840)) ([c489727](c489727)) * **avm:** Avm memory trace building ([#3835](#3835)) ([b7766d6](b7766d6)) * Bring boxes back to CI. Build and run using docker/docker-compose. ([#3727](#3727)) ([4a1c0df](4a1c0df)) * Cleanup recursion interface ([#3744](#3744)) ([fde0ac3](fde0ac3)) * **dsl:** Abstract nested aggregation object from ACIR ([#3765](#3765)) ([92f72e4](92f72e4)) * Remove aggregation objects from RecursionConstraint ([#3885](#3885)) ([9a80008](9a80008)) * Remove HashToField128Security ACIR opcode ([#3631](#3631)) ([1d6d3c9](1d6d3c9)) * Use simple "flat" CRS. ([#3748](#3748)) ([5c6c2ca](5c6c2ca)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-packages: 0.17.0</summary> ## [0.17.0](AztecProtocol/aztec-packages@aztec-packages-v0.16.9...aztec-packages-v0.17.0) (2024-01-09) ### ⚠ BREAKING CHANGES * Remove aggregation objects from RecursionConstraint ([#3885](AztecProtocol/aztec-packages#3885)) * Noir development branch (serialization changes) ([#3858](AztecProtocol/aztec-packages#3858)) * **aztec.js:** Move accounts out of aztec.js into new package ([#3844](AztecProtocol/aztec-packages#3844)) * Add Side effect counter struct for ordering ([#3608](AztecProtocol/aztec-packages#3608)) * typing partial address, deduplicating `Point`, `Point` -> `GrumpkinPoint` ([#3814](AztecProtocol/aztec-packages#3814)) * moving `compute_selector` to `FunctionSelector` ([#3806](AztecProtocol/aztec-packages#3806)) * moving compute_address func to AztecAddress ([#3801](AztecProtocol/aztec-packages#3801)) * updated note hash and nullifier macro ([#3777](AztecProtocol/aztec-packages#3777)) * return full verification contract from `AcirComposer::get_solidity_verifier` ([#3735](AztecProtocol/aztec-packages#3735)) * deduplicating circuit types + typing everything ([#3594](AztecProtocol/aztec-packages#3594)) ### Features * A script which runs `nargo fmt` in all packages + running it ([#3803](AztecProtocol/aztec-packages#3803)) ([5f0ebd6](AztecProtocol/aztec-packages@5f0ebd6)) * Add new metrics ([#3855](AztecProtocol/aztec-packages#3855)) ([a2b267b](AztecProtocol/aztec-packages@a2b267b)) * Adding option to set initial and max memory ([#3265](AztecProtocol/aztec-packages#3265)) ([0ad75fe](AztecProtocol/aztec-packages@0ad75fe)) * **avm-main:** Pil -> permutations ([#3650](AztecProtocol/aztec-packages#3650)) ([c52acf6](AztecProtocol/aztec-packages@c52acf6)) * **avm-mini:** Call and return opcodes ([#3704](AztecProtocol/aztec-packages#3704)) ([e534204](AztecProtocol/aztec-packages@e534204)) * **avm:** Add standalone jump opcode ([#3781](AztecProtocol/aztec-packages#3781)) ([b1b2e7c](AztecProtocol/aztec-packages@b1b2e7c)) * **avm:** VM circuit handles tagged memory ([#3725](AztecProtocol/aztec-packages#3725)) ([739fe90](AztecProtocol/aztec-packages@739fe90)), closes [#3644](AztecProtocol/aztec-packages#3644) * **aztec.js:** Move accounts out of aztec.js into new package ([#3844](AztecProtocol/aztec-packages#3844)) ([afd7b6d](AztecProtocol/aztec-packages@afd7b6d)), closes [#3807](AztecProtocol/aztec-packages#3807) * Barretenberg doxygen CI ([#3818](AztecProtocol/aztec-packages#3818)) ([022a918](AztecProtocol/aztec-packages@022a918)) * Bb uses goblin ([#3636](AztecProtocol/aztec-packages#3636)) ([d093266](AztecProtocol/aztec-packages@d093266)) * Compile base rollup as a circuit ([#3739](AztecProtocol/aztec-packages#3739)) ([5118d44](AztecProtocol/aztec-packages@5118d44)) * Contract inclusion proof ([#3680](AztecProtocol/aztec-packages#3680)) ([43aa603](AztecProtocol/aztec-packages@43aa603)) * Correct circuit construction from acir ([#3757](AztecProtocol/aztec-packages#3757)) ([a876ab8](AztecProtocol/aztec-packages@a876ab8)) * Deduplicating circuit types + typing everything ([#3594](AztecProtocol/aztec-packages#3594)) ([fcb04a7](AztecProtocol/aztec-packages@fcb04a7)), closes [#3592](AztecProtocol/aztec-packages#3592) [#3059](AztecProtocol/aztec-packages#3059) * Goblin and eccvm bench ([#3606](AztecProtocol/aztec-packages#3606)) ([1fe63b2](AztecProtocol/aztec-packages@1fe63b2)) * Goblinize the final ecc ops in ZM ([#3741](AztecProtocol/aztec-packages#3741)) ([3048d08](AztecProtocol/aztec-packages@3048d08)) * Launch the monorepo in a codespace. ([#3829](AztecProtocol/aztec-packages#3829)) ([f5a4a78](AztecProtocol/aztec-packages@f5a4a78)) * Moving `compute_selector` to `FunctionSelector` ([#3806](AztecProtocol/aztec-packages#3806)) ([bbaebf4](AztecProtocol/aztec-packages@bbaebf4)), closes [#3681](AztecProtocol/aztec-packages#3681) * Moving compute_address func to AztecAddress ([#3801](AztecProtocol/aztec-packages#3801)) ([3107aad](AztecProtocol/aztec-packages@3107aad)), closes [#3794](AztecProtocol/aztec-packages#3794) * Node version check in `yarn-project/bootstrap.sh` ([#3780](AztecProtocol/aztec-packages#3780)) ([c29e4ee](AztecProtocol/aztec-packages@c29e4ee)) * Noir development branch (serialization changes) ([#3858](AztecProtocol/aztec-packages#3858)) ([d2ae2cd](AztecProtocol/aztec-packages@d2ae2cd)) * Only one tx per base rollup ([#3742](AztecProtocol/aztec-packages#3742)) ([9eef247](AztecProtocol/aztec-packages@9eef247)) * ProverPolynomials owns its memory ([#3560](AztecProtocol/aztec-packages#3560)) ([a4aba00](AztecProtocol/aztec-packages@a4aba00)) * Public data tree as indexed tree ([#3566](AztecProtocol/aztec-packages#3566)) ([4711ef7](AztecProtocol/aztec-packages@4711ef7)) * PXE adds note processors for stored accounts ([#3673](AztecProtocol/aztec-packages#3673)) ([93f9315](AztecProtocol/aztec-packages@93f9315)) * Return full verification contract from `AcirComposer::get_solidity_verifier` ([#3735](AztecProtocol/aztec-packages#3735)) ([bd5614c](AztecProtocol/aztec-packages@bd5614c)) * Serialize synchronize and simulateTx calls by the pxe via SerialQueue ([#3817](AztecProtocol/aztec-packages#3817)) ([e893675](AztecProtocol/aztec-packages@e893675)) * Specific membership witness functions in aztec-nr ([#3674](AztecProtocol/aztec-packages#3674)) ([3403877](AztecProtocol/aztec-packages@3403877)), closes [#3663](AztecProtocol/aztec-packages#3663) * Tree ids in noir ([#3809](AztecProtocol/aztec-packages#3809)) ([ec2e36e](AztecProtocol/aztec-packages@ec2e36e)) * Txpool persistence ([#3672](AztecProtocol/aztec-packages#3672)) ([4dd076c](AztecProtocol/aztec-packages@4dd076c)), closes [#3365](AztecProtocol/aztec-packages#3365) * Typing partial address, deduplicating `Point`, `Point` -> `GrumpkinPoint` ([#3814](AztecProtocol/aztec-packages#3814)) ([44458be](AztecProtocol/aztec-packages@44458be)), closes [#3682](AztecProtocol/aztec-packages#3682) * Update to latest noir and update noir compiler ([#3696](AztecProtocol/aztec-packages#3696)) ([62a17a4](AztecProtocol/aztec-packages@62a17a4)) * Updated note hash and nullifier macro ([#3777](AztecProtocol/aztec-packages#3777)) ([e83dd2b](AztecProtocol/aztec-packages@e83dd2b)), closes [#3669](AztecProtocol/aztec-packages#3669) ### Bug Fixes * AWS deploy_service regex + faucet dockerfile ([#3699](AztecProtocol/aztec-packages#3699)) ([260c7c3](AztecProtocol/aztec-packages@260c7c3)) * Broken aztec-nr imports ([#3693](AztecProtocol/aztec-packages#3693)) ([7c8814e](AztecProtocol/aztec-packages@7c8814e)) * Build scripts if statements ([#3700](AztecProtocol/aztec-packages#3700)) ([4847c19](AztecProtocol/aztec-packages@4847c19)) * **ci:** Contracts_deployed check ([#3703](AztecProtocol/aztec-packages#3703)) ([6c4bf75](AztecProtocol/aztec-packages@6c4bf75)) * **ci:** Redeploy triggers ([#3677](AztecProtocol/aztec-packages#3677)) ([cc515da](AztecProtocol/aztec-packages@cc515da)) * CRS not needed for gate_count. Grumpkin not needed for non-goblin. ([#3872](AztecProtocol/aztec-packages#3872)) ([8cda00d](AztecProtocol/aztec-packages@8cda00d)) * Deploy l1 contracts script ([#3713](AztecProtocol/aztec-packages#3713)) ([309be4b](AztecProtocol/aztec-packages@309be4b)) * Disable goblin bbjs tests ([#3836](AztecProtocol/aztec-packages#3836)) ([1f5b2c6](AztecProtocol/aztec-packages@1f5b2c6)) * Docker user permissions ([#3711](AztecProtocol/aztec-packages#3711)) ([35316fc](AztecProtocol/aztec-packages@35316fc)) * **docs:** Fix docs build during releases ([#3815](AztecProtocol/aztec-packages#3815)) ([2e0776a](AztecProtocol/aztec-packages@2e0776a)) * **docs:** Force docs build using latest released code always ([#3762](AztecProtocol/aztec-packages#3762)) ([5545ee6](AztecProtocol/aztec-packages@5545ee6)) * **docs:** Make git repo available when building docs ([#3761](AztecProtocol/aztec-packages#3761)) ([bce2d99](AztecProtocol/aztec-packages@bce2d99)) * **docs:** Show latest released code on published site ([#3716](AztecProtocol/aztec-packages#3716)) ([f1eb6d5](AztecProtocol/aztec-packages@f1eb6d5)) * Event macro ([#3784](AztecProtocol/aztec-packages#3784)) ([3af2438](AztecProtocol/aztec-packages@3af2438)), closes [#3655](AztecProtocol/aztec-packages#3655) * Fix for faucet and node deployment config ([#3722](AztecProtocol/aztec-packages#3722)) ([a60b71a](AztecProtocol/aztec-packages@a60b71a)) * Flaky e2e-p2p test ([#3831](AztecProtocol/aztec-packages#3831)) ([5b1e9f2](AztecProtocol/aztec-packages@5b1e9f2)) * Issue with `run_nargo_fmt.sh` + minor yellow paper naming improvements ([#3833](AztecProtocol/aztec-packages#3833)) ([8e692c1](AztecProtocol/aztec-packages@8e692c1)) * Map relative path to protocol circuits ([#3694](AztecProtocol/aztec-packages#3694)) ([125ab1d](AztecProtocol/aztec-packages@125ab1d)) * Noir-protocol circuits ([#3734](AztecProtocol/aztec-packages#3734)) ([34e2505](AztecProtocol/aztec-packages@34e2505)) * Reenable goblin bbjs for a single test ([#3838](AztecProtocol/aztec-packages#3838)) ([30e47a0](AztecProtocol/aztec-packages@30e47a0)) * Setup aztec-cli cache ([#3698](AztecProtocol/aztec-packages#3698)) ([48b7474](AztecProtocol/aztec-packages@48b7474)) * Stale pseudocode in yellow paper process func ([#3869](AztecProtocol/aztec-packages#3869)) ([4a73e3d](AztecProtocol/aztec-packages@4a73e3d)) * Subrepo commit ([b5bfb0b](AztecProtocol/aztec-packages@b5bfb0b)) * There is no main.js ([#3691](AztecProtocol/aztec-packages#3691)) ([58ba060](AztecProtocol/aztec-packages@58ba060)) * Unpick world state circulars. ([#3721](AztecProtocol/aztec-packages#3721)) ([84f4671](AztecProtocol/aztec-packages@84f4671)) * Update for new p2p bootstrap node names ([#3710](AztecProtocol/aztec-packages#3710)) ([c7b29b3](AztecProtocol/aztec-packages@c7b29b3)) * Update toy to new master ([78cf525](AztecProtocol/aztec-packages@78cf525)) * Use lookup instead of resolve to ensure consider /etc/hosts ([#3720](AztecProtocol/aztec-packages#3720)) ([eb8413e](AztecProtocol/aztec-packages@eb8413e)) ### Miscellaneous * Add GH action to notify gate count differences ([#3724](AztecProtocol/aztec-packages#3724)) ([c0a24fb](AztecProtocol/aztec-packages@c0a24fb)), closes [#3467](AztecProtocol/aztec-packages#3467) * Add Side effect counter struct for ordering ([#3608](AztecProtocol/aztec-packages#3608)) ([c58b197](AztecProtocol/aztec-packages@c58b197)) * Add small how to diagram section ([#3804](AztecProtocol/aztec-packages#3804)) ([df581f0](AztecProtocol/aztec-packages@df581f0)) * Added cryptography section to yellow paper ([#3647](AztecProtocol/aztec-packages#3647)) ([286028b](AztecProtocol/aztec-packages@286028b)) * Adding some clarification after a question on discourse ([#3823](AztecProtocol/aztec-packages#3823)) ([f3d37d7](AztecProtocol/aztec-packages@f3d37d7)) * Align bb.js testing ([#3840](AztecProtocol/aztec-packages#3840)) ([c489727](AztecProtocol/aztec-packages@c489727)) * **avm:** Avm memory trace building ([#3835](AztecProtocol/aztec-packages#3835)) ([b7766d6](AztecProtocol/aztec-packages@b7766d6)) * Aztec js circulars ([#3723](AztecProtocol/aztec-packages#3723)) ([378407d](AztecProtocol/aztec-packages@378407d)) * Bring boxes back to CI. Build and run using docker/docker-compose. ([#3727](AztecProtocol/aztec-packages#3727)) ([4a1c0df](AztecProtocol/aztec-packages@4a1c0df)) * Build protocol circuits on CI and stop committing artifacts ([#3816](AztecProtocol/aztec-packages#3816)) ([fa1c456](AztecProtocol/aztec-packages@fa1c456)) * Checking noir formatting in CI ([#3828](AztecProtocol/aztec-packages#3828)) ([b53bacf](AztecProtocol/aztec-packages@b53bacf)), closes [#3825](AztecProtocol/aztec-packages#3825) * Cleaning inconsistency ([#3851](AztecProtocol/aztec-packages#3851)) ([9bbd70a](AztecProtocol/aztec-packages@9bbd70a)) * Cleanup recursion interface ([#3744](AztecProtocol/aztec-packages#3744)) ([fde0ac3](AztecProtocol/aztec-packages@fde0ac3)) * **docs:** Add block productions ([#3770](AztecProtocol/aztec-packages#3770)) ([f091f49](AztecProtocol/aztec-packages@f091f49)) * **docs:** Add high level overview of a tx ([#3763](AztecProtocol/aztec-packages#3763)) ([9a55e57](AztecProtocol/aztec-packages@9a55e57)) * **docs:** Remove npm reference section from testing page ([#3719](AztecProtocol/aztec-packages#3719)) ([1484c11](AztecProtocol/aztec-packages@1484c11)) * **docs:** Remove references to npm packages ([#3676](AztecProtocol/aztec-packages#3676)) ([bd5355f](AztecProtocol/aztec-packages@bd5355f)) * **docs:** Starting a migration notes section ([#3853](AztecProtocol/aztec-packages#3853)) ([060f39a](AztecProtocol/aztec-packages@060f39a)) * **docs:** Update deps in tutorials ([#3708](AztecProtocol/aztec-packages#3708)) ([f3d93aa](AztecProtocol/aztec-packages@f3d93aa)) * **docs:** Update install script ([#3847](AztecProtocol/aztec-packages#3847)) ([7003853](AztecProtocol/aztec-packages@7003853)) * **docs:** Update reference link ([#3768](AztecProtocol/aztec-packages#3768)) ([18edb98](AztecProtocol/aztec-packages@18edb98)) * **docs:** Update testing pages ([#3733](AztecProtocol/aztec-packages#3733)) ([1c68e3b](AztecProtocol/aztec-packages@1c68e3b)) * **docs:** Update token bridge tutorial ([#3773](AztecProtocol/aztec-packages#3773)) ([764cb46](AztecProtocol/aztec-packages@764cb46)) * **docs:** Update trees page ([#3732](AztecProtocol/aztec-packages#3732)) ([b265531](AztecProtocol/aztec-packages@b265531)) * **dsl:** Abstract nested aggregation object from ACIR ([#3765](AztecProtocol/aztec-packages#3765)) ([92f72e4](AztecProtocol/aztec-packages@92f72e4)) * Increase benchmark warning threshold for trial decrypt ([#3602](AztecProtocol/aztec-packages#3602)) ([913943e](AztecProtocol/aztec-packages@913943e)) * Just nargo compile. ([#3775](AztecProtocol/aztec-packages#3775)) ([3d08ef9](AztecProtocol/aztec-packages@3d08ef9)) * Move boxes out of yarn-project ([#3688](AztecProtocol/aztec-packages#3688)) ([472596c](AztecProtocol/aztec-packages@472596c)) * Noir sync ([#3884](AztecProtocol/aztec-packages#3884)) ([217de09](AztecProtocol/aztec-packages@217de09)) * Remove aggregation objects from RecursionConstraint ([#3885](AztecProtocol/aztec-packages#3885)) ([9a80008](AztecProtocol/aztec-packages@9a80008)) * Remove HashToField128Security ACIR opcode ([#3631](AztecProtocol/aztec-packages#3631)) ([1d6d3c9](AztecProtocol/aztec-packages@1d6d3c9)) * Removing leaf data type + related cleanup ([#3794](AztecProtocol/aztec-packages#3794)) ([3030cc8](AztecProtocol/aztec-packages@3030cc8)) * Rename generate-ts/nr commands to codegen. ([#3843](AztecProtocol/aztec-packages#3843)) ([1fcb964](AztecProtocol/aztec-packages@1fcb964)) * Replace relative paths to noir-protocol-circuits ([c2fed18](AztecProtocol/aztec-packages@c2fed18)) * Replace relative paths to noir-protocol-circuits ([3accd8a](AztecProtocol/aztec-packages@3accd8a)) * Replace relative paths to noir-protocol-circuits ([346590b](AztecProtocol/aztec-packages@346590b)) * Replace relative paths to noir-protocol-circuits ([861d928](AztecProtocol/aztec-packages@861d928)) * Show noir tag alongside commit on sandbox startup ([#3750](AztecProtocol/aztec-packages#3750)) ([009f66d](AztecProtocol/aztec-packages@009f66d)) * Update governance vote ballot ([#3789](AztecProtocol/aztec-packages#3789)) ([f8976ad](AztecProtocol/aztec-packages@f8976ad)) * Update how_to_contribute.md ([#3759](AztecProtocol/aztec-packages#3759)) ([4567ec4](AztecProtocol/aztec-packages@4567ec4)) * Update privacy main.md ([#3760](AztecProtocol/aztec-packages#3760)) ([c3d8b5d](AztecProtocol/aztec-packages@c3d8b5d)) * Use repo BB for gate diff ([#3852](AztecProtocol/aztec-packages#3852)) ([506e719](AztecProtocol/aztec-packages@506e719)) * Use simple "flat" CRS. ([#3748](AztecProtocol/aztec-packages#3748)) ([5c6c2ca](AztecProtocol/aztec-packages@5c6c2ca)) * Use traits in noir-protocol-circuits ([#3832](AztecProtocol/aztec-packages#3832)) ([88fcf8d](AztecProtocol/aztec-packages@88fcf8d)) ### Documentation * A layout of logs section of yellow paper ([#3582](AztecProtocol/aztec-packages#3582)) ([8c759f6](AztecProtocol/aztec-packages@8c759f6)) * Add current thinking on upgrades ([#3743](AztecProtocol/aztec-packages#3743)) ([9f3d972](AztecProtocol/aztec-packages@9f3d972)) * Add da doc ([#3736](AztecProtocol/aztec-packages#3736)) ([193f3f2](AztecProtocol/aztec-packages@193f3f2)), closes [#3645](AztecProtocol/aztec-packages#3645) * Bytecode ([#3701](AztecProtocol/aztec-packages#3701)) ([912df7e](AztecProtocol/aztec-packages@912df7e)) * Extend state documentation ([#3731](AztecProtocol/aztec-packages#3731)) ([a99cbd6](AztecProtocol/aztec-packages@a99cbd6)) * Remove mentions of noir-compiler ([#3702](AztecProtocol/aztec-packages#3702)) ([ea7cd50](AztecProtocol/aztec-packages@ea7cd50)) * Yellow paper rollup circuits and state update ([#3558](AztecProtocol/aztec-packages#3558)) ([b2d6376](AztecProtocol/aztec-packages@b2d6376)) * **yellow-paper:** Circuits ([#3782](AztecProtocol/aztec-packages#3782)) ([a935ca3](AztecProtocol/aztec-packages@a935ca3)) * **yellow-paper:** Contract deployment ([#3624](AztecProtocol/aztec-packages#3624)) ([b282867](AztecProtocol/aztec-packages@b282867)), closes [#3104](AztecProtocol/aztec-packages#3104) * **yellow-paper:** Drop pokodl request in key derivation ([#3837](AztecProtocol/aztec-packages#3837)) ([a3920fb](AztecProtocol/aztec-packages@a3920fb)) * **yellow-paper:** Update keys and addresses ([#3707](AztecProtocol/aztec-packages#3707)) ([56992ae](AztecProtocol/aztec-packages@56992ae)) * **yellowpaper:** AVM high-level execution ([#3717](AztecProtocol/aztec-packages#3717)) ([2ded221](AztecProtocol/aztec-packages@2ded221)) * **yellowpaper:** AVM intro sections ([#3692](AztecProtocol/aztec-packages#3692)) ([c48e76c](AztecProtocol/aztec-packages@c48e76c)) * **yellowpaper:** Avm nested call returns, updating calling context ([#3749](AztecProtocol/aztec-packages#3749)) ([a1c701d](AztecProtocol/aztec-packages@a1c701d)) * **yellowpaper:** Finish AVM Context definitions ([#3709](AztecProtocol/aztec-packages#3709)) ([4cfb427](AztecProtocol/aztec-packages@4cfb427)) * **yellowpaper:** Private kernel circuits ([#3559](AztecProtocol/aztec-packages#3559)) ([056e553](AztecProtocol/aztec-packages@056e553)) </details> <details><summary>barretenberg.js: 0.17.0</summary> ## [0.17.0](AztecProtocol/aztec-packages@barretenberg.js-v0.16.9...barretenberg.js-v0.17.0) (2024-01-09) ### ⚠ BREAKING CHANGES * return full verification contract from `AcirComposer::get_solidity_verifier` ([#3735](AztecProtocol/aztec-packages#3735)) ### Features * Adding option to set initial and max memory ([#3265](AztecProtocol/aztec-packages#3265)) ([0ad75fe](AztecProtocol/aztec-packages@0ad75fe)) * Bb uses goblin ([#3636](AztecProtocol/aztec-packages#3636)) ([d093266](AztecProtocol/aztec-packages@d093266)) * Correct circuit construction from acir ([#3757](AztecProtocol/aztec-packages#3757)) ([a876ab8](AztecProtocol/aztec-packages@a876ab8)) * Return full verification contract from `AcirComposer::get_solidity_verifier` ([#3735](AztecProtocol/aztec-packages#3735)) ([bd5614c](AztecProtocol/aztec-packages@bd5614c)) ### Miscellaneous * Remove HashToField128Security ACIR opcode ([#3631](AztecProtocol/aztec-packages#3631)) ([1d6d3c9](AztecProtocol/aztec-packages@1d6d3c9)) * Use simple "flat" CRS. ([#3748](AztecProtocol/aztec-packages#3748)) ([5c6c2ca](AztecProtocol/aztec-packages@5c6c2ca)) </details> <details><summary>barretenberg: 0.17.0</summary> ## [0.17.0](AztecProtocol/aztec-packages@barretenberg-v0.16.9...barretenberg-v0.17.0) (2024-01-09) ### ⚠ BREAKING CHANGES * Remove aggregation objects from RecursionConstraint ([#3885](AztecProtocol/aztec-packages#3885)) * Noir development branch (serialization changes) ([#3858](AztecProtocol/aztec-packages#3858)) * Add Side effect counter struct for ordering ([#3608](AztecProtocol/aztec-packages#3608)) * return full verification contract from `AcirComposer::get_solidity_verifier` ([#3735](AztecProtocol/aztec-packages#3735)) ### Features * Adding option to set initial and max memory ([#3265](AztecProtocol/aztec-packages#3265)) ([0ad75fe](AztecProtocol/aztec-packages@0ad75fe)) * **avm-main:** Pil -> permutations ([#3650](AztecProtocol/aztec-packages#3650)) ([c52acf6](AztecProtocol/aztec-packages@c52acf6)) * **avm-mini:** Call and return opcodes ([#3704](AztecProtocol/aztec-packages#3704)) ([e534204](AztecProtocol/aztec-packages@e534204)) * **avm:** Add standalone jump opcode ([#3781](AztecProtocol/aztec-packages#3781)) ([b1b2e7c](AztecProtocol/aztec-packages@b1b2e7c)) * **avm:** VM circuit handles tagged memory ([#3725](AztecProtocol/aztec-packages#3725)) ([739fe90](AztecProtocol/aztec-packages@739fe90)), closes [#3644](AztecProtocol/aztec-packages#3644) * Barretenberg doxygen CI ([#3818](AztecProtocol/aztec-packages#3818)) ([022a918](AztecProtocol/aztec-packages@022a918)) * Bb uses goblin ([#3636](AztecProtocol/aztec-packages#3636)) ([d093266](AztecProtocol/aztec-packages@d093266)) * Correct circuit construction from acir ([#3757](AztecProtocol/aztec-packages#3757)) ([a876ab8](AztecProtocol/aztec-packages@a876ab8)) * Goblin and eccvm bench ([#3606](AztecProtocol/aztec-packages#3606)) ([1fe63b2](AztecProtocol/aztec-packages@1fe63b2)) * Goblinize the final ecc ops in ZM ([#3741](AztecProtocol/aztec-packages#3741)) ([3048d08](AztecProtocol/aztec-packages@3048d08)) * Noir development branch (serialization changes) ([#3858](AztecProtocol/aztec-packages#3858)) ([d2ae2cd](AztecProtocol/aztec-packages@d2ae2cd)) * ProverPolynomials owns its memory ([#3560](AztecProtocol/aztec-packages#3560)) ([a4aba00](AztecProtocol/aztec-packages@a4aba00)) * Return full verification contract from `AcirComposer::get_solidity_verifier` ([#3735](AztecProtocol/aztec-packages#3735)) ([bd5614c](AztecProtocol/aztec-packages@bd5614c)) ### Bug Fixes * CRS not needed for gate_count. Grumpkin not needed for non-goblin. ([#3872](AztecProtocol/aztec-packages#3872)) ([8cda00d](AztecProtocol/aztec-packages@8cda00d)) * Disable goblin bbjs tests ([#3836](AztecProtocol/aztec-packages#3836)) ([1f5b2c6](AztecProtocol/aztec-packages@1f5b2c6)) * Reenable goblin bbjs for a single test ([#3838](AztecProtocol/aztec-packages#3838)) ([30e47a0](AztecProtocol/aztec-packages@30e47a0)) * Update toy to new master ([78cf525](AztecProtocol/aztec-packages@78cf525)) ### Miscellaneous * Add Side effect counter struct for ordering ([#3608](AztecProtocol/aztec-packages#3608)) ([c58b197](AztecProtocol/aztec-packages@c58b197)) * Align bb.js testing ([#3840](AztecProtocol/aztec-packages#3840)) ([c489727](AztecProtocol/aztec-packages@c489727)) * **avm:** Avm memory trace building ([#3835](AztecProtocol/aztec-packages#3835)) ([b7766d6](AztecProtocol/aztec-packages@b7766d6)) * Bring boxes back to CI. Build and run using docker/docker-compose. ([#3727](AztecProtocol/aztec-packages#3727)) ([4a1c0df](AztecProtocol/aztec-packages@4a1c0df)) * Cleanup recursion interface ([#3744](AztecProtocol/aztec-packages#3744)) ([fde0ac3](AztecProtocol/aztec-packages@fde0ac3)) * **dsl:** Abstract nested aggregation object from ACIR ([#3765](AztecProtocol/aztec-packages#3765)) ([92f72e4](AztecProtocol/aztec-packages@92f72e4)) * Remove aggregation objects from RecursionConstraint ([#3885](AztecProtocol/aztec-packages#3885)) ([9a80008](AztecProtocol/aztec-packages@9a80008)) * Remove HashToField128Security ACIR opcode ([#3631](AztecProtocol/aztec-packages#3631)) ([1d6d3c9](AztecProtocol/aztec-packages@1d6d3c9)) * Use simple "flat" CRS. ([#3748](AztecProtocol/aztec-packages#3748)) ([5c6c2ca](AztecProtocol/aztec-packages@5c6c2ca)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
Keeps the specification that Mike wrote (removing app-siloed incoming viewing keys), changes private message delivery, and adds new sections on precompiles, registry, sending guidelines, diversified and stealth accounts, batched and unconstrained calls, etc.
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-packages: 0.17.0</summary> ## [0.17.0](AztecProtocol/aztec-packages@aztec-packages-v0.16.9...aztec-packages-v0.17.0) (2024-01-09) ### ⚠ BREAKING CHANGES * Remove aggregation objects from RecursionConstraint ([AztecProtocol#3885](AztecProtocol#3885)) * Noir development branch (serialization changes) ([AztecProtocol#3858](AztecProtocol#3858)) * **aztec.js:** Move accounts out of aztec.js into new package ([AztecProtocol#3844](AztecProtocol#3844)) * Add Side effect counter struct for ordering ([AztecProtocol#3608](AztecProtocol#3608)) * typing partial address, deduplicating `Point`, `Point` -> `GrumpkinPoint` ([AztecProtocol#3814](AztecProtocol#3814)) * moving `compute_selector` to `FunctionSelector` ([AztecProtocol#3806](AztecProtocol#3806)) * moving compute_address func to AztecAddress ([AztecProtocol#3801](AztecProtocol#3801)) * updated note hash and nullifier macro ([AztecProtocol#3777](AztecProtocol#3777)) * return full verification contract from `AcirComposer::get_solidity_verifier` ([AztecProtocol#3735](AztecProtocol#3735)) * deduplicating circuit types + typing everything ([AztecProtocol#3594](AztecProtocol#3594)) ### Features * A script which runs `nargo fmt` in all packages + running it ([AztecProtocol#3803](AztecProtocol#3803)) ([5f0ebd6](AztecProtocol@5f0ebd6)) * Add new metrics ([AztecProtocol#3855](AztecProtocol#3855)) ([a2b267b](AztecProtocol@a2b267b)) * Adding option to set initial and max memory ([AztecProtocol#3265](AztecProtocol#3265)) ([0ad75fe](AztecProtocol@0ad75fe)) * **avm-main:** Pil -> permutations ([AztecProtocol#3650](AztecProtocol#3650)) ([c52acf6](AztecProtocol@c52acf6)) * **avm-mini:** Call and return opcodes ([AztecProtocol#3704](AztecProtocol#3704)) ([e534204](AztecProtocol@e534204)) * **avm:** Add standalone jump opcode ([AztecProtocol#3781](AztecProtocol#3781)) ([b1b2e7c](AztecProtocol@b1b2e7c)) * **avm:** VM circuit handles tagged memory ([AztecProtocol#3725](AztecProtocol#3725)) ([739fe90](AztecProtocol@739fe90)), closes [AztecProtocol#3644](AztecProtocol#3644) * **aztec.js:** Move accounts out of aztec.js into new package ([AztecProtocol#3844](AztecProtocol#3844)) ([afd7b6d](AztecProtocol@afd7b6d)), closes [AztecProtocol#3807](AztecProtocol#3807) * Barretenberg doxygen CI ([AztecProtocol#3818](AztecProtocol#3818)) ([022a918](AztecProtocol@022a918)) * Bb uses goblin ([AztecProtocol#3636](AztecProtocol#3636)) ([d093266](AztecProtocol@d093266)) * Compile base rollup as a circuit ([AztecProtocol#3739](AztecProtocol#3739)) ([5118d44](AztecProtocol@5118d44)) * Contract inclusion proof ([AztecProtocol#3680](AztecProtocol#3680)) ([43aa603](AztecProtocol@43aa603)) * Correct circuit construction from acir ([AztecProtocol#3757](AztecProtocol#3757)) ([a876ab8](AztecProtocol@a876ab8)) * Deduplicating circuit types + typing everything ([AztecProtocol#3594](AztecProtocol#3594)) ([fcb04a7](AztecProtocol@fcb04a7)), closes [AztecProtocol#3592](AztecProtocol#3592) [AztecProtocol#3059](AztecProtocol#3059) * Goblin and eccvm bench ([AztecProtocol#3606](AztecProtocol#3606)) ([1fe63b2](AztecProtocol@1fe63b2)) * Goblinize the final ecc ops in ZM ([AztecProtocol#3741](AztecProtocol#3741)) ([3048d08](AztecProtocol@3048d08)) * Launch the monorepo in a codespace. ([AztecProtocol#3829](AztecProtocol#3829)) ([f5a4a78](AztecProtocol@f5a4a78)) * Moving `compute_selector` to `FunctionSelector` ([AztecProtocol#3806](AztecProtocol#3806)) ([bbaebf4](AztecProtocol@bbaebf4)), closes [AztecProtocol#3681](AztecProtocol#3681) * Moving compute_address func to AztecAddress ([AztecProtocol#3801](AztecProtocol#3801)) ([3107aad](AztecProtocol@3107aad)), closes [AztecProtocol#3794](AztecProtocol#3794) * Node version check in `yarn-project/bootstrap.sh` ([AztecProtocol#3780](AztecProtocol#3780)) ([c29e4ee](AztecProtocol@c29e4ee)) * Noir development branch (serialization changes) ([AztecProtocol#3858](AztecProtocol#3858)) ([d2ae2cd](AztecProtocol@d2ae2cd)) * Only one tx per base rollup ([AztecProtocol#3742](AztecProtocol#3742)) ([9eef247](AztecProtocol@9eef247)) * ProverPolynomials owns its memory ([AztecProtocol#3560](AztecProtocol#3560)) ([a4aba00](AztecProtocol@a4aba00)) * Public data tree as indexed tree ([AztecProtocol#3566](AztecProtocol#3566)) ([4711ef7](AztecProtocol@4711ef7)) * PXE adds note processors for stored accounts ([AztecProtocol#3673](AztecProtocol#3673)) ([93f9315](AztecProtocol@93f9315)) * Return full verification contract from `AcirComposer::get_solidity_verifier` ([AztecProtocol#3735](AztecProtocol#3735)) ([bd5614c](AztecProtocol@bd5614c)) * Serialize synchronize and simulateTx calls by the pxe via SerialQueue ([AztecProtocol#3817](AztecProtocol#3817)) ([e893675](AztecProtocol@e893675)) * Specific membership witness functions in aztec-nr ([AztecProtocol#3674](AztecProtocol#3674)) ([3403877](AztecProtocol@3403877)), closes [AztecProtocol#3663](AztecProtocol#3663) * Tree ids in noir ([AztecProtocol#3809](AztecProtocol#3809)) ([ec2e36e](AztecProtocol@ec2e36e)) * Txpool persistence ([AztecProtocol#3672](AztecProtocol#3672)) ([4dd076c](AztecProtocol@4dd076c)), closes [AztecProtocol#3365](AztecProtocol#3365) * Typing partial address, deduplicating `Point`, `Point` -> `GrumpkinPoint` ([AztecProtocol#3814](AztecProtocol#3814)) ([44458be](AztecProtocol@44458be)), closes [AztecProtocol#3682](AztecProtocol#3682) * Update to latest noir and update noir compiler ([AztecProtocol#3696](AztecProtocol#3696)) ([62a17a4](AztecProtocol@62a17a4)) * Updated note hash and nullifier macro ([AztecProtocol#3777](AztecProtocol#3777)) ([e83dd2b](AztecProtocol@e83dd2b)), closes [AztecProtocol#3669](AztecProtocol#3669) ### Bug Fixes * AWS deploy_service regex + faucet dockerfile ([AztecProtocol#3699](AztecProtocol#3699)) ([260c7c3](AztecProtocol@260c7c3)) * Broken aztec-nr imports ([AztecProtocol#3693](AztecProtocol#3693)) ([7c8814e](AztecProtocol@7c8814e)) * Build scripts if statements ([AztecProtocol#3700](AztecProtocol#3700)) ([4847c19](AztecProtocol@4847c19)) * **ci:** Contracts_deployed check ([AztecProtocol#3703](AztecProtocol#3703)) ([6c4bf75](AztecProtocol@6c4bf75)) * **ci:** Redeploy triggers ([AztecProtocol#3677](AztecProtocol#3677)) ([cc515da](AztecProtocol@cc515da)) * CRS not needed for gate_count. Grumpkin not needed for non-goblin. ([AztecProtocol#3872](AztecProtocol#3872)) ([8cda00d](AztecProtocol@8cda00d)) * Deploy l1 contracts script ([AztecProtocol#3713](AztecProtocol#3713)) ([309be4b](AztecProtocol@309be4b)) * Disable goblin bbjs tests ([AztecProtocol#3836](AztecProtocol#3836)) ([1f5b2c6](AztecProtocol@1f5b2c6)) * Docker user permissions ([AztecProtocol#3711](AztecProtocol#3711)) ([35316fc](AztecProtocol@35316fc)) * **docs:** Fix docs build during releases ([AztecProtocol#3815](AztecProtocol#3815)) ([2e0776a](AztecProtocol@2e0776a)) * **docs:** Force docs build using latest released code always ([AztecProtocol#3762](AztecProtocol#3762)) ([5545ee6](AztecProtocol@5545ee6)) * **docs:** Make git repo available when building docs ([AztecProtocol#3761](AztecProtocol#3761)) ([bce2d99](AztecProtocol@bce2d99)) * **docs:** Show latest released code on published site ([AztecProtocol#3716](AztecProtocol#3716)) ([f1eb6d5](AztecProtocol@f1eb6d5)) * Event macro ([AztecProtocol#3784](AztecProtocol#3784)) ([3af2438](AztecProtocol@3af2438)), closes [AztecProtocol#3655](AztecProtocol#3655) * Fix for faucet and node deployment config ([AztecProtocol#3722](AztecProtocol#3722)) ([a60b71a](AztecProtocol@a60b71a)) * Flaky e2e-p2p test ([AztecProtocol#3831](AztecProtocol#3831)) ([5b1e9f2](AztecProtocol@5b1e9f2)) * Issue with `run_nargo_fmt.sh` + minor yellow paper naming improvements ([AztecProtocol#3833](AztecProtocol#3833)) ([8e692c1](AztecProtocol@8e692c1)) * Map relative path to protocol circuits ([AztecProtocol#3694](AztecProtocol#3694)) ([125ab1d](AztecProtocol@125ab1d)) * Noir-protocol circuits ([AztecProtocol#3734](AztecProtocol#3734)) ([34e2505](AztecProtocol@34e2505)) * Reenable goblin bbjs for a single test ([AztecProtocol#3838](AztecProtocol#3838)) ([30e47a0](AztecProtocol@30e47a0)) * Setup aztec-cli cache ([AztecProtocol#3698](AztecProtocol#3698)) ([48b7474](AztecProtocol@48b7474)) * Stale pseudocode in yellow paper process func ([AztecProtocol#3869](AztecProtocol#3869)) ([4a73e3d](AztecProtocol@4a73e3d)) * Subrepo commit ([b5bfb0b](AztecProtocol@b5bfb0b)) * There is no main.js ([AztecProtocol#3691](AztecProtocol#3691)) ([58ba060](AztecProtocol@58ba060)) * Unpick world state circulars. ([AztecProtocol#3721](AztecProtocol#3721)) ([84f4671](AztecProtocol@84f4671)) * Update for new p2p bootstrap node names ([AztecProtocol#3710](AztecProtocol#3710)) ([c7b29b3](AztecProtocol@c7b29b3)) * Update toy to new master ([78cf525](AztecProtocol@78cf525)) * Use lookup instead of resolve to ensure consider /etc/hosts ([AztecProtocol#3720](AztecProtocol#3720)) ([eb8413e](AztecProtocol@eb8413e)) ### Miscellaneous * Add GH action to notify gate count differences ([AztecProtocol#3724](AztecProtocol#3724)) ([c0a24fb](AztecProtocol@c0a24fb)), closes [AztecProtocol#3467](AztecProtocol#3467) * Add Side effect counter struct for ordering ([AztecProtocol#3608](AztecProtocol#3608)) ([c58b197](AztecProtocol@c58b197)) * Add small how to diagram section ([AztecProtocol#3804](AztecProtocol#3804)) ([df581f0](AztecProtocol@df581f0)) * Added cryptography section to yellow paper ([AztecProtocol#3647](AztecProtocol#3647)) ([286028b](AztecProtocol@286028b)) * Adding some clarification after a question on discourse ([AztecProtocol#3823](AztecProtocol#3823)) ([f3d37d7](AztecProtocol@f3d37d7)) * Align bb.js testing ([AztecProtocol#3840](AztecProtocol#3840)) ([c489727](AztecProtocol@c489727)) * **avm:** Avm memory trace building ([AztecProtocol#3835](AztecProtocol#3835)) ([b7766d6](AztecProtocol@b7766d6)) * Aztec js circulars ([AztecProtocol#3723](AztecProtocol#3723)) ([378407d](AztecProtocol@378407d)) * Bring boxes back to CI. Build and run using docker/docker-compose. ([AztecProtocol#3727](AztecProtocol#3727)) ([4a1c0df](AztecProtocol@4a1c0df)) * Build protocol circuits on CI and stop committing artifacts ([AztecProtocol#3816](AztecProtocol#3816)) ([fa1c456](AztecProtocol@fa1c456)) * Checking noir formatting in CI ([AztecProtocol#3828](AztecProtocol#3828)) ([b53bacf](AztecProtocol@b53bacf)), closes [AztecProtocol#3825](AztecProtocol#3825) * Cleaning inconsistency ([AztecProtocol#3851](AztecProtocol#3851)) ([9bbd70a](AztecProtocol@9bbd70a)) * Cleanup recursion interface ([AztecProtocol#3744](AztecProtocol#3744)) ([fde0ac3](AztecProtocol@fde0ac3)) * **docs:** Add block productions ([AztecProtocol#3770](AztecProtocol#3770)) ([f091f49](AztecProtocol@f091f49)) * **docs:** Add high level overview of a tx ([AztecProtocol#3763](AztecProtocol#3763)) ([9a55e57](AztecProtocol@9a55e57)) * **docs:** Remove npm reference section from testing page ([AztecProtocol#3719](AztecProtocol#3719)) ([1484c11](AztecProtocol@1484c11)) * **docs:** Remove references to npm packages ([AztecProtocol#3676](AztecProtocol#3676)) ([bd5355f](AztecProtocol@bd5355f)) * **docs:** Starting a migration notes section ([AztecProtocol#3853](AztecProtocol#3853)) ([060f39a](AztecProtocol@060f39a)) * **docs:** Update deps in tutorials ([AztecProtocol#3708](AztecProtocol#3708)) ([f3d93aa](AztecProtocol@f3d93aa)) * **docs:** Update install script ([AztecProtocol#3847](AztecProtocol#3847)) ([7003853](AztecProtocol@7003853)) * **docs:** Update reference link ([AztecProtocol#3768](AztecProtocol#3768)) ([18edb98](AztecProtocol@18edb98)) * **docs:** Update testing pages ([AztecProtocol#3733](AztecProtocol#3733)) ([1c68e3b](AztecProtocol@1c68e3b)) * **docs:** Update token bridge tutorial ([AztecProtocol#3773](AztecProtocol#3773)) ([764cb46](AztecProtocol@764cb46)) * **docs:** Update trees page ([AztecProtocol#3732](AztecProtocol#3732)) ([b265531](AztecProtocol@b265531)) * **dsl:** Abstract nested aggregation object from ACIR ([AztecProtocol#3765](AztecProtocol#3765)) ([92f72e4](AztecProtocol@92f72e4)) * Increase benchmark warning threshold for trial decrypt ([AztecProtocol#3602](AztecProtocol#3602)) ([913943e](AztecProtocol@913943e)) * Just nargo compile. ([AztecProtocol#3775](AztecProtocol#3775)) ([3d08ef9](AztecProtocol@3d08ef9)) * Move boxes out of yarn-project ([AztecProtocol#3688](AztecProtocol#3688)) ([472596c](AztecProtocol@472596c)) * Noir sync ([AztecProtocol#3884](AztecProtocol#3884)) ([217de09](AztecProtocol@217de09)) * Remove aggregation objects from RecursionConstraint ([AztecProtocol#3885](AztecProtocol#3885)) ([9a80008](AztecProtocol@9a80008)) * Remove HashToField128Security ACIR opcode ([AztecProtocol#3631](AztecProtocol#3631)) ([1d6d3c9](AztecProtocol@1d6d3c9)) * Removing leaf data type + related cleanup ([AztecProtocol#3794](AztecProtocol#3794)) ([3030cc8](AztecProtocol@3030cc8)) * Rename generate-ts/nr commands to codegen. ([AztecProtocol#3843](AztecProtocol#3843)) ([1fcb964](AztecProtocol@1fcb964)) * Replace relative paths to noir-protocol-circuits ([c2fed18](AztecProtocol@c2fed18)) * Replace relative paths to noir-protocol-circuits ([3accd8a](AztecProtocol@3accd8a)) * Replace relative paths to noir-protocol-circuits ([346590b](AztecProtocol@346590b)) * Replace relative paths to noir-protocol-circuits ([861d928](AztecProtocol@861d928)) * Show noir tag alongside commit on sandbox startup ([AztecProtocol#3750](AztecProtocol#3750)) ([009f66d](AztecProtocol@009f66d)) * Update governance vote ballot ([AztecProtocol#3789](AztecProtocol#3789)) ([f8976ad](AztecProtocol@f8976ad)) * Update how_to_contribute.md ([AztecProtocol#3759](AztecProtocol#3759)) ([4567ec4](AztecProtocol@4567ec4)) * Update privacy main.md ([AztecProtocol#3760](AztecProtocol#3760)) ([c3d8b5d](AztecProtocol@c3d8b5d)) * Use repo BB for gate diff ([AztecProtocol#3852](AztecProtocol#3852)) ([506e719](AztecProtocol@506e719)) * Use simple "flat" CRS. ([AztecProtocol#3748](AztecProtocol#3748)) ([5c6c2ca](AztecProtocol@5c6c2ca)) * Use traits in noir-protocol-circuits ([AztecProtocol#3832](AztecProtocol#3832)) ([88fcf8d](AztecProtocol@88fcf8d)) ### Documentation * A layout of logs section of yellow paper ([AztecProtocol#3582](AztecProtocol#3582)) ([8c759f6](AztecProtocol@8c759f6)) * Add current thinking on upgrades ([AztecProtocol#3743](AztecProtocol#3743)) ([9f3d972](AztecProtocol@9f3d972)) * Add da doc ([AztecProtocol#3736](AztecProtocol#3736)) ([193f3f2](AztecProtocol@193f3f2)), closes [AztecProtocol#3645](AztecProtocol#3645) * Bytecode ([AztecProtocol#3701](AztecProtocol#3701)) ([912df7e](AztecProtocol@912df7e)) * Extend state documentation ([AztecProtocol#3731](AztecProtocol#3731)) ([a99cbd6](AztecProtocol@a99cbd6)) * Remove mentions of noir-compiler ([AztecProtocol#3702](AztecProtocol#3702)) ([ea7cd50](AztecProtocol@ea7cd50)) * Yellow paper rollup circuits and state update ([AztecProtocol#3558](AztecProtocol#3558)) ([b2d6376](AztecProtocol@b2d6376)) * **yellow-paper:** Circuits ([AztecProtocol#3782](AztecProtocol#3782)) ([a935ca3](AztecProtocol@a935ca3)) * **yellow-paper:** Contract deployment ([AztecProtocol#3624](AztecProtocol#3624)) ([b282867](AztecProtocol@b282867)), closes [AztecProtocol#3104](AztecProtocol#3104) * **yellow-paper:** Drop pokodl request in key derivation ([AztecProtocol#3837](AztecProtocol#3837)) ([a3920fb](AztecProtocol@a3920fb)) * **yellow-paper:** Update keys and addresses ([AztecProtocol#3707](AztecProtocol#3707)) ([56992ae](AztecProtocol@56992ae)) * **yellowpaper:** AVM high-level execution ([AztecProtocol#3717](AztecProtocol#3717)) ([2ded221](AztecProtocol@2ded221)) * **yellowpaper:** AVM intro sections ([AztecProtocol#3692](AztecProtocol#3692)) ([c48e76c](AztecProtocol@c48e76c)) * **yellowpaper:** Avm nested call returns, updating calling context ([AztecProtocol#3749](AztecProtocol#3749)) ([a1c701d](AztecProtocol@a1c701d)) * **yellowpaper:** Finish AVM Context definitions ([AztecProtocol#3709](AztecProtocol#3709)) ([4cfb427](AztecProtocol@4cfb427)) * **yellowpaper:** Private kernel circuits ([AztecProtocol#3559](AztecProtocol#3559)) ([056e553](AztecProtocol@056e553)) </details> <details><summary>barretenberg.js: 0.17.0</summary> ## [0.17.0](AztecProtocol/aztec-packages@barretenberg.js-v0.16.9...barretenberg.js-v0.17.0) (2024-01-09) ### ⚠ BREAKING CHANGES * return full verification contract from `AcirComposer::get_solidity_verifier` ([AztecProtocol#3735](AztecProtocol#3735)) ### Features * Adding option to set initial and max memory ([AztecProtocol#3265](AztecProtocol#3265)) ([0ad75fe](AztecProtocol@0ad75fe)) * Bb uses goblin ([AztecProtocol#3636](AztecProtocol#3636)) ([d093266](AztecProtocol@d093266)) * Correct circuit construction from acir ([AztecProtocol#3757](AztecProtocol#3757)) ([a876ab8](AztecProtocol@a876ab8)) * Return full verification contract from `AcirComposer::get_solidity_verifier` ([AztecProtocol#3735](AztecProtocol#3735)) ([bd5614c](AztecProtocol@bd5614c)) ### Miscellaneous * Remove HashToField128Security ACIR opcode ([AztecProtocol#3631](AztecProtocol#3631)) ([1d6d3c9](AztecProtocol@1d6d3c9)) * Use simple "flat" CRS. ([AztecProtocol#3748](AztecProtocol#3748)) ([5c6c2ca](AztecProtocol@5c6c2ca)) </details> <details><summary>barretenberg: 0.17.0</summary> ## [0.17.0](AztecProtocol/aztec-packages@barretenberg-v0.16.9...barretenberg-v0.17.0) (2024-01-09) ### ⚠ BREAKING CHANGES * Remove aggregation objects from RecursionConstraint ([AztecProtocol#3885](AztecProtocol#3885)) * Noir development branch (serialization changes) ([AztecProtocol#3858](AztecProtocol#3858)) * Add Side effect counter struct for ordering ([AztecProtocol#3608](AztecProtocol#3608)) * return full verification contract from `AcirComposer::get_solidity_verifier` ([AztecProtocol#3735](AztecProtocol#3735)) ### Features * Adding option to set initial and max memory ([AztecProtocol#3265](AztecProtocol#3265)) ([0ad75fe](AztecProtocol@0ad75fe)) * **avm-main:** Pil -> permutations ([AztecProtocol#3650](AztecProtocol#3650)) ([c52acf6](AztecProtocol@c52acf6)) * **avm-mini:** Call and return opcodes ([AztecProtocol#3704](AztecProtocol#3704)) ([e534204](AztecProtocol@e534204)) * **avm:** Add standalone jump opcode ([AztecProtocol#3781](AztecProtocol#3781)) ([b1b2e7c](AztecProtocol@b1b2e7c)) * **avm:** VM circuit handles tagged memory ([AztecProtocol#3725](AztecProtocol#3725)) ([739fe90](AztecProtocol@739fe90)), closes [AztecProtocol#3644](AztecProtocol#3644) * Barretenberg doxygen CI ([AztecProtocol#3818](AztecProtocol#3818)) ([022a918](AztecProtocol@022a918)) * Bb uses goblin ([AztecProtocol#3636](AztecProtocol#3636)) ([d093266](AztecProtocol@d093266)) * Correct circuit construction from acir ([AztecProtocol#3757](AztecProtocol#3757)) ([a876ab8](AztecProtocol@a876ab8)) * Goblin and eccvm bench ([AztecProtocol#3606](AztecProtocol#3606)) ([1fe63b2](AztecProtocol@1fe63b2)) * Goblinize the final ecc ops in ZM ([AztecProtocol#3741](AztecProtocol#3741)) ([3048d08](AztecProtocol@3048d08)) * Noir development branch (serialization changes) ([AztecProtocol#3858](AztecProtocol#3858)) ([d2ae2cd](AztecProtocol@d2ae2cd)) * ProverPolynomials owns its memory ([AztecProtocol#3560](AztecProtocol#3560)) ([a4aba00](AztecProtocol@a4aba00)) * Return full verification contract from `AcirComposer::get_solidity_verifier` ([AztecProtocol#3735](AztecProtocol#3735)) ([bd5614c](AztecProtocol@bd5614c)) ### Bug Fixes * CRS not needed for gate_count. Grumpkin not needed for non-goblin. ([AztecProtocol#3872](AztecProtocol#3872)) ([8cda00d](AztecProtocol@8cda00d)) * Disable goblin bbjs tests ([AztecProtocol#3836](AztecProtocol#3836)) ([1f5b2c6](AztecProtocol@1f5b2c6)) * Reenable goblin bbjs for a single test ([AztecProtocol#3838](AztecProtocol#3838)) ([30e47a0](AztecProtocol@30e47a0)) * Update toy to new master ([78cf525](AztecProtocol@78cf525)) ### Miscellaneous * Add Side effect counter struct for ordering ([AztecProtocol#3608](AztecProtocol#3608)) ([c58b197](AztecProtocol@c58b197)) * Align bb.js testing ([AztecProtocol#3840](AztecProtocol#3840)) ([c489727](AztecProtocol@c489727)) * **avm:** Avm memory trace building ([AztecProtocol#3835](AztecProtocol#3835)) ([b7766d6](AztecProtocol@b7766d6)) * Bring boxes back to CI. Build and run using docker/docker-compose. ([AztecProtocol#3727](AztecProtocol#3727)) ([4a1c0df](AztecProtocol@4a1c0df)) * Cleanup recursion interface ([AztecProtocol#3744](AztecProtocol#3744)) ([fde0ac3](AztecProtocol@fde0ac3)) * **dsl:** Abstract nested aggregation object from ACIR ([AztecProtocol#3765](AztecProtocol#3765)) ([92f72e4](AztecProtocol@92f72e4)) * Remove aggregation objects from RecursionConstraint ([AztecProtocol#3885](AztecProtocol#3885)) ([9a80008](AztecProtocol@9a80008)) * Remove HashToField128Security ACIR opcode ([AztecProtocol#3631](AztecProtocol#3631)) ([1d6d3c9](AztecProtocol@1d6d3c9)) * Use simple "flat" CRS. ([AztecProtocol#3748](AztecProtocol#3748)) ([5c6c2ca](AztecProtocol@5c6c2ca)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
Keeps the specification that Mike wrote (removing app-siloed incoming viewing keys), changes private message delivery, and adds new sections on precompiles, registry, sending guidelines, diversified and stealth accounts, batched and unconstrained calls, etc.