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

Kernel and ordering circuit should require that 0th nullifier be nonzero #1329

Closed
dbanks12 opened this issue Jul 31, 2023 · 0 comments · Fixed by #2576 or #2422
Closed

Kernel and ordering circuit should require that 0th nullifier be nonzero #1329

dbanks12 opened this issue Jul 31, 2023 · 0 comments · Fixed by #2576 or #2422
Assignees
Labels
C-protocol-circuits Component: Protocol circuits (kernel & rollup)

Comments

@dbanks12
Copy link
Contributor

No description provided.

@github-project-automation github-project-automation bot moved this to Todo in A3 Jul 31, 2023
@dbanks12 dbanks12 added the C-protocol-circuits Component: Protocol circuits (kernel & rollup) label Jul 31, 2023
iAmMichaelConnor pushed a commit that referenced this issue Aug 3, 2023
# Description

The way nonces work now, there can be inconsistencies in nonce
assignment in the simulator vs the private kernel. Furthermore, you
cannot know during function execution what the full set of commitments
will be for the whole TX as some new commitments may be nullified and
squashed. But we still want the ability to determine nonces and
therefore uniqueNoteHashes from L1 calldata alone. I am sure I am not
explaining all of the issues well enough, but it was determined that the
current nonce paradigm will not work and therefore we must rework it.

Rework nonces so that siloing by contract address happens first and
uniqueness comes later. For now, nonces are injeced by the private
ordering circuit (vs suggestion which was base rollup circuit). Pending
notes and their reads have no nonces when processed in kernel. The
public kernel (and therefore all commitments created in public
functions) does not use nonces.

Here was Mike's proposal for the rework:

![image](https://github.com/AztecProtocol/aztec-packages/assets/47112877/7b20c886-1e92-452c-a886-c3da5ed64e17)

Why not just use leaf index as nonce?

![image](https://github.com/AztecProtocol/aztec-packages/assets/47112877/e6337107-ac93-4a3b-b83c-27213cb5133d)

## Followup tasks
* #1029
* #1194
* #1329
* #1407
* #1408
* #1409
* #1410
* Future enhancement: The root rollup circuit could insert all messages
at the very beginning of the root rollup circuit, so that txs within the
rollup can refer to that state root and read L1>L2 messages immediately.
* #1383
* #1386
* We should implement subscription / polling methods for Aztec logs
* We should maybe write rpc functions which allow calldata to be
subscribed-to, keyed by tx_hash.
* If a dapp wants to write a note from a public function, a lot of honus
will be on a dapp developer to retain preimage information, query the
blockchain, and derive the nonce. We should provide some examples to
demonstrate this pattern.
AztecBot pushed a commit to AztecProtocol/docs that referenced this issue Aug 3, 2023
# Description

The way nonces work now, there can be inconsistencies in nonce
assignment in the simulator vs the private kernel. Furthermore, you
cannot know during function execution what the full set of commitments
will be for the whole TX as some new commitments may be nullified and
squashed. But we still want the ability to determine nonces and
therefore uniqueNoteHashes from L1 calldata alone. I am sure I am not
explaining all of the issues well enough, but it was determined that the
current nonce paradigm will not work and therefore we must rework it.

Rework nonces so that siloing by contract address happens first and
uniqueness comes later. For now, nonces are injeced by the private
ordering circuit (vs suggestion which was base rollup circuit). Pending
notes and their reads have no nonces when processed in kernel. The
public kernel (and therefore all commitments created in public
functions) does not use nonces.

Here was Mike's proposal for the rework:

![image](https://github.com/AztecProtocol/aztec-packages/assets/47112877/7b20c886-1e92-452c-a886-c3da5ed64e17)

Why not just use leaf index as nonce?

![image](https://github.com/AztecProtocol/aztec-packages/assets/47112877/e6337107-ac93-4a3b-b83c-27213cb5133d)

## Followup tasks
* AztecProtocol/aztec-packages#1029
* AztecProtocol/aztec-packages#1194
* AztecProtocol/aztec-packages#1329
* AztecProtocol/aztec-packages#1407
* AztecProtocol/aztec-packages#1408
* AztecProtocol/aztec-packages#1409
* AztecProtocol/aztec-packages#1410
* Future enhancement: The root rollup circuit could insert all messages
at the very beginning of the root rollup circuit, so that txs within the
rollup can refer to that state root and read L1>L2 messages immediately.
* AztecProtocol/aztec-packages#1383
* AztecProtocol/aztec-packages#1386
* We should implement subscription / polling methods for Aztec logs
* We should maybe write rpc functions which allow calldata to be
subscribed-to, keyed by tx_hash.
* If a dapp wants to write a note from a public function, a lot of honus
will be on a dapp developer to retain preimage information, query the
blockchain, and derive the nonce. We should provide some examples to
demonstrate this pattern.
@jeanmon jeanmon self-assigned this Sep 28, 2023
@jeanmon jeanmon moved this from Todo to In Progress in A3 Sep 28, 2023
@jeanmon jeanmon moved this from In Progress to In Review in A3 Sep 28, 2023
dbanks12 pushed a commit that referenced this issue Sep 28, 2023
#2576)

We enforce the constraint in inner and ordering native private kernel
circuit that the 0th nullifier is non-zero. This nullifier is actually
set in the init private kernel circuit and therefore the check is not
needed here.

Resolves #1329
@github-project-automation github-project-automation bot moved this from In Review to Done in A3 Sep 28, 2023
kevaundray pushed a commit that referenced this issue Oct 3, 2023
🤖 I have created a release *beep* *boop*
---


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

##
[0.8.0](aztec-packages-v0.7.10...aztec-packages-v0.8.0)
(2023-10-03)


### ⚠ BREAKING CHANGES

* Gates command should always return 8 bytes
([#2631](#2631))

### Features

* **1090:** Validate that some arrays are zero-padded on the right
([#2519](#2519))
([0327b54](0327b54))
* Add --wait/--no-wait flags to certain cli commands
([#2378](#2378))
([57a2f10](57a2f10))
* Add boxes to CI
([#2456](#2456))
([a90a185](a90a185))
* Add selector to call_context
([#2626](#2626))
([8e317be](8e317be))
* AddNote api
([#2535](#2535))
([bb004f4](bb004f4))
* **aztec_noir:** Abstract storage initialisation
([#2406](#2406))
([974b037](974b037))
* **aztec.js:** Support AddressLike parameters
([#2430](#2430))
([5b5f139](5b5f139))
* Barretenberg/crypto/blake3s supports compile-time hashing
([#2556](#2556))
([da05dd7](da05dd7))
* **bb:** Add `bb --version` command
([#2482](#2482))
([530676f](530676f))
* **bb:** Avoid initializing CRS for `bb info` command
([#2425](#2425))
([d22c7b1](d22c7b1))
* Benchmarks
([#2605](#2605))
([37d9f9c](37d9f9c))
* Bootstrap_docker skips build it can pull from ecr.
([#2545](#2545))
([466a517](466a517))
* **cli:** Reenable CLI version check
([#2441](#2441))
([c6ddd23](c6ddd23))
* Collapse interfaces for single implementation
([#2599](#2599))
([860f340](860f340))
* Consistent pedersen hash (work in progress)
([#1945](#1945))
([b4ad8f3](b4ad8f3))
* Deprecate assert_contains_and_remove
([#2594](#2594))
([d225d56](d225d56))
* **docs:** Allow raw code interpolation
([#2447](#2447))
([e078ff4](e078ff4))
* **docs:** Load current aztec version for aztec.nr dependencies in docs
([#2440](#2440))
([63cf415](63cf415))
* **docs:** Reenable typedoc for aztec-rpc and aztec.js
([#2452](#2452))
([85e504c](85e504c)),
closes
[#2045](#2045)
[#2415](#2415)
* **docs:** Use preprocessor syntax for including versions
([#2462](#2462))
([7d315cd](7d315cd))
* **docs:** Use released version of code snippets in docs
([#2439](#2439))
([76fc2cf](76fc2cf))
* **docs:** Warn if snippet is grabbed from master
([#2544](#2544))
([36896e7](36896e7))
* **e2e:** Public flow for uniswap
([#2596](#2596))
([2f871ee](2f871ee))
* Enforce that 0th nullifier is non-zero in private kernel circuit
([#2576](#2576))
([458a4fe](458a4fe)),
closes
[#1329](#1329)
* Expose registry address in `getNodeInfo`
([#2478](#2478))
([652bb04](652bb04))
* Expose transaction data from AztecRPC
([#2469](#2469))
([fc00553](fc00553))
* Extend function documentation
([#2408](#2408))
([6a75fd0](6a75fd0))
* Goblin op queue transcript aggregation
([#2257](#2257))
([b7f627a](b7f627a))
* Json type by default in `JsonRpcServer`
([#2504](#2504))
([be38fcc](be38fcc)),
closes
[#2479](#2479)
* Listing expected args in CLI
([#2423](#2423))
([b2243ad](b2243ad))
* Log topic and contract address in unencrypted logs
([#2595](#2595))
([a5b763f](a5b763f)),
closes
[#2580](#2580)
[#2581](#2581)
[#2586](#2586)
[#2587](#2587)
* Parallelization update for polynomials
([#2311](#2311))
([922fc99](922fc99))
* Restore latest block number
([#2474](#2474))
([6dc2da7](6dc2da7))
* Serialise L2Block to JSON
([#2496](#2496))
([714c727](714c727))
* Standalone Aztec Node and RPC Server
([#2522](#2522))
([8e355bc](8e355bc))
* Unbox empty box
([#2387](#2387))
([3e3930c](3e3930c))
* Uniswap private flow
([#2559](#2559))
([39f3a91](39f3a91))
* Update to protogalaxy interfaces
([#2498](#2498))
([9a3d265](9a3d265))
* YML manifest. Simplify YBP.
([#2353](#2353))
([bf73bc3](bf73bc3))


### Bug Fixes

* Add aztec/overview redirect
([#2424](#2424))
([4e30dcd](4e30dcd))
* Add redirects from old docs site urls to new site urls
([#2429](#2429))
([18fe88a](18fe88a))
* **barretenberg:** Brittle headers caused error compiling for clang-16
on mainframe
([#2547](#2547))
([cc909da](cc909da))
* Bb rebuild patterns
([#2499](#2499))
([868cceb](868cceb))
* Bootstrap.sh
([#2524](#2524))
([bb1fb90](bb1fb90))
* Box injected sandbox tag
([#2555](#2555))
([069bdc7](069bdc7))
* **build-system:** Don't wait 30s+ always
([#2494](#2494))
([89d700d](89d700d))
* **build:** CI fixes from previous merges
([#2579](#2579))
([a9e5d05](a9e5d05))
* Bump foundry version
([#2553](#2553))
([0dde3d5](0dde3d5))
* Call public fn in contract constructor
([#2549](#2549))
([14ab6d6](14ab6d6))
* Canary image build
([#2480](#2480))
([6366be5](6366be5))
* Cli type check arguments and options
([#2571](#2571))
([ecffc36](ecffc36))
* **cli:** Typos in cli output
([#2428](#2428))
([08acf90](08acf90))
* Docs: Token tutorial, update links and add note on imports
([#2604](#2604))
([003d801](003d801))
* **docs:** 'command not found: export'
([#2443](#2443))
([f56aa02](f56aa02))
* **docs:** Docs correction
([#2437](#2437))
([6499248](6499248))
* **docs:** Fix imports in token contract tutorial
([#2432](#2432))
([34ed663](34ed663))
* Drop txs with duplicate nullifiers from the same block
([#2511](#2511))
([d9ca1d8](d9ca1d8)),
closes
[#2502](#2502)
* E2e browser tests
([#2531](#2531))
([adf2b1e](adf2b1e)),
closes
[#2527](#2527)
* Fix working dir bug causing stdlib-tests to not run.
([#2495](#2495))
([6b3402c](6b3402c))
* Foundry
([#2611](#2611))
([9830fbf](9830fbf))
* Gates command should always return 8 bytes
([#2631](#2631))
([9668165](9668165))
* JSON-RPC server returns spec-compliant errors
([#2590](#2590))
([5eafa3d](5eafa3d))
* Loading salt into buffer in the cli
([#2467](#2467))
([753ac49](753ac49))
* **master:** Remove secret_hash ref
([#2617](#2617))
([1073bcd](1073bcd))
* Nightly subrepo mirror
([#2520](#2520))
([bedc8c8](bedc8c8))
* Prevent race conditions around data pulled from L1
([#2577](#2577))
([defea83](defea83))
* Readd docs after ci refactor.
([#2514](#2514))
([1eb1a3c](1eb1a3c))
* Remove "standard" from references to token contracts
([#2533](#2533))
([f931d56](f931d56))
* Try fix boxes-blank
([#2539](#2539))
([87b8080](87b8080))
* Try to fix publish bb
([#2529](#2529))
([7c623c4](7c623c4))
* Try to fix publish-bb.yml
([#2523](#2523))
([2f6e9bd](2f6e9bd))
* Use #import_code in Token contract tutorial
([#2438](#2438))
([b58cfb5](b58cfb5))


### Miscellaneous

* `computeContractAddress` as `computeCompleteAddress`
([#1876](#1876))
([4d95b44](4d95b44)),
closes
[#1873](#1873)
* Add instructions on circleci session for debugging
([#2503](#2503))
([a4197e7](a4197e7))
* Add output saying how to get the right noir version
([#2622](#2622))
([10b30e0](10b30e0))
* Aztec-node json-rpc
([#2444](#2444))
([04efee1](04efee1))
* BI build tweaks
([#2487](#2487))
([f8b6548](f8b6548))
* Check tree roots in world state sync
([#2543](#2543))
([314e8a0](314e8a0))
* **circuits:** 2612 - add validation in native private kernel circuit
of arrays in accumulated data
([#2614](#2614))
([f1fe059](f1fe059))
* **circuits:** Remove obsolete comments in native private kernel
circuit
([#2570](#2570))
([a6b6c7b](a6b6c7b))
* **contract_deployment.md:** Don't require main edit
([#2449](#2449))
([16a3d9c](16a3d9c))
* **deps:** Bump get-func-name from 2.0.0 to 2.0.2 in /yarn-project
([#2630](#2630))
([5cebf18](5cebf18))
* **deps:** Bump ua-parser-js from 0.7.32 to 0.7.36 in /docs
([#2629](#2629))
([b2c87c2](b2c87c2))
* Disable pushing/pulling for layer caching in build.
([#2517](#2517))
([51352ae](51352ae))
* **docs:** Fix tutorial in dapp development
([#2421](#2421))
([027530f](027530f))
* **docs:** Incorporate docs feedback
([#2434](#2434))
([4992d5b](4992d5b))
* Embed yq in repo to avoid network hiccups.
([#2560](#2560))
([84f207f](84f207f))
* Fix box noir versioning
([#2578](#2578))
([6eaf0c7](6eaf0c7))
* Fixing foundry version
([#2528](#2528))
([3af0753](3af0753))
* Kill Turbo
([#2442](#2442))
([c832825](c832825))
* Move hash utils to aztec-nr
([#2583](#2583))
([78bd1a3](78bd1a3))
* No private key account state
([#2491](#2491))
([5813fb3](5813fb3))
* Provide cross compile to cjs.
([#2566](#2566))
([47d0d37](47d0d37))
* Recursion todos
([#2516](#2516))
([2df107b](2df107b))
* Reenable some ultra honk composer tests
([#2417](#2417))
([31f4c32](31f4c32))
* Refactor e2e test teardown
([#2513](#2513))
([2e43248](2e43248))
* Remove `BarretenbergBinderSync` import from typescript bindgen file
([#2607](#2607))
([43af1a3](43af1a3))
* Remove build system tainting now we have ci cmds in comments.
([#2589](#2589))
([2040335](2040335))
* Remove composer keyword from stdlib
([#2418](#2418))
([f3e7d91](f3e7d91))
* Remove debug log in world state sync
([#2613](#2613))
([177f468](177f468))
* Remove Standard Honk
([#2435](#2435))
([9b3ee45](9b3ee45))
* Remove unneeded dockerfiles.
([#2588](#2588))
([d6f903d](d6f903d))
* Rename all the occurrences of `Aztec RPC`
([#2552](#2552))
([8cc4f69](8cc4f69)),
closes
[#2451](#2451)
* Renaming `@aztec/aztec-rpc` package as `@aztec/pxe`
([#2538](#2538))
([0dd70aa](0dd70aa))
* Resuscitate private kernel tests related to call stack item check
([#2558](#2558))
([9e938fc](9e938fc))
* Run formatting:fix for box lint
([#2479](#2479))
([3995de9](3995de9))
* Run quick-start guide in CI
([#2413](#2413))
([5f43715](5f43715))
* Simulator
([#2534](#2534))
([a26198e](a26198e))
* Switch to upstream docusaurus-plugin-typedoc
([#2557](#2557))
([fdf5fce](fdf5fce))
* Token contract storage cleanup
([#2536](#2536))
([0b62207](0b62207))
* Typo
([#2546](#2546))
([8656a3b](8656a3b))
* Unskip test and fix params
([#2454](#2454))
([e484c5f](e484c5f))
* Update private token box
([#2385](#2385))
([b730196](b730196))
* Use US spelling
([#2475](#2475))
([2fe8f5e](2fe8f5e)),
closes
[#1934](#1934)


### Documentation

* Capitalizing x in pxe
([#2564](#2564))
([2927cf1](2927cf1))
* Common contract errors
([#2471](#2471))
([a8aec70](a8aec70)),
closes
[#2468](#2468)
* Fixed original minus underflow test
([#2472](#2472))
([0cf4bdc](0cf4bdc))
* Including sandbox diagrams in the sandbox section
([#2573](#2573))
([2fa143e](2fa143e))
* Initial storage cleanup
([#2433](#2433))
([d833483](d833483))
* Misc docs changes
([#2416](#2416))
([0e789c7](0e789c7))
* More `RPC Server` --&gt; `PXE` naming fixes
([#2574](#2574))
([b33eea5](b33eea5))
* Portal messaging
([#2419](#2419))
([7979bb9](7979bb9))
* Update instructions
([#2297](#2297))
([ab612df](ab612df)),
closes
[#1827](#1827)
* Update sidebar + embed youtube video
([#2470](#2470))
([a779d11](a779d11))
</details>

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

##
[0.8.0](barretenberg.js-v0.7.10...barretenberg.js-v0.8.0)
(2023-10-03)


### ⚠ BREAKING CHANGES

* Gates command should always return 8 bytes
([#2631](#2631))

### Bug Fixes

* Gates command should always return 8 bytes
([#2631](#2631))
([9668165](9668165))


### Miscellaneous

* Provide cross compile to cjs.
([#2566](#2566))
([47d0d37](47d0d37))
* Remove `BarretenbergBinderSync` import from typescript bindgen file
([#2607](#2607))
([43af1a3](43af1a3))
* Typo
([#2546](#2546))
([8656a3b](8656a3b))
</details>

<details><summary>barretenberg: 0.8.0</summary>

##
[0.8.0](barretenberg-v0.7.10...barretenberg-v0.8.0)
(2023-10-03)


### Features

* Barretenberg/crypto/blake3s supports compile-time hashing
([#2556](#2556))
([da05dd7](da05dd7))
* **bb:** Add `bb --version` command
([#2482](#2482))
([530676f](530676f))
* **bb:** Avoid initializing CRS for `bb info` command
([#2425](#2425))
([d22c7b1](d22c7b1))
* Consistent pedersen hash (work in progress)
([#1945](#1945))
([b4ad8f3](b4ad8f3))
* Goblin op queue transcript aggregation
([#2257](#2257))
([b7f627a](b7f627a))
* Parallelization update for polynomials
([#2311](#2311))
([922fc99](922fc99))
* Update to protogalaxy interfaces
([#2498](#2498))
([9a3d265](9a3d265))
* YML manifest. Simplify YBP.
([#2353](#2353))
([bf73bc3](bf73bc3))


### Bug Fixes

* **barretenberg:** Brittle headers caused error compiling for clang-16
on mainframe
([#2547](#2547))
([cc909da](cc909da))
* Bb rebuild patterns
([#2499](#2499))
([868cceb](868cceb))
* Fix working dir bug causing stdlib-tests to not run.
([#2495](#2495))
([6b3402c](6b3402c))
* Nightly subrepo mirror
([#2520](#2520))
([bedc8c8](bedc8c8))


### Miscellaneous

* BI build tweaks
([#2487](#2487))
([f8b6548](f8b6548))
* Kill Turbo
([#2442](#2442))
([c832825](c832825))
* Provide cross compile to cjs.
([#2566](#2566))
([47d0d37](47d0d37))
* Recursion todos
([#2516](#2516))
([2df107b](2df107b))
* Reenable some ultra honk composer tests
([#2417](#2417))
([31f4c32](31f4c32))
* Remove composer keyword from stdlib
([#2418](#2418))
([f3e7d91](f3e7d91))
* Remove Standard Honk
([#2435](#2435))
([9b3ee45](9b3ee45))


### Documentation

* Fixed original minus underflow test
([#2472](#2472))
([0cf4bdc](0cf4bdc))
</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 issue Oct 5, 2023
🤖 I have created a release *beep* *boop*
---


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

##
[0.8.0](AztecProtocol/aztec-packages@aztec-packages-v0.7.10...aztec-packages-v0.8.0)
(2023-10-03)


### ⚠ BREAKING CHANGES

* Gates command should always return 8 bytes
([#2631](AztecProtocol/aztec-packages#2631))

### Features

* **1090:** Validate that some arrays are zero-padded on the right
([#2519](AztecProtocol/aztec-packages#2519))
([0327b54](AztecProtocol/aztec-packages@0327b54))
* Add --wait/--no-wait flags to certain cli commands
([#2378](AztecProtocol/aztec-packages#2378))
([57a2f10](AztecProtocol/aztec-packages@57a2f10))
* Add boxes to CI
([#2456](AztecProtocol/aztec-packages#2456))
([a90a185](AztecProtocol/aztec-packages@a90a185))
* Add selector to call_context
([#2626](AztecProtocol/aztec-packages#2626))
([8e317be](AztecProtocol/aztec-packages@8e317be))
* AddNote api
([#2535](AztecProtocol/aztec-packages#2535))
([bb004f4](AztecProtocol/aztec-packages@bb004f4))
* **aztec_noir:** Abstract storage initialisation
([#2406](AztecProtocol/aztec-packages#2406))
([974b037](AztecProtocol/aztec-packages@974b037))
* **aztec.js:** Support AddressLike parameters
([#2430](AztecProtocol/aztec-packages#2430))
([5b5f139](AztecProtocol/aztec-packages@5b5f139))
* Barretenberg/crypto/blake3s supports compile-time hashing
([#2556](AztecProtocol/aztec-packages#2556))
([da05dd7](AztecProtocol/aztec-packages@da05dd7))
* **bb:** Add `bb --version` command
([#2482](AztecProtocol/aztec-packages#2482))
([530676f](AztecProtocol/aztec-packages@530676f))
* **bb:** Avoid initializing CRS for `bb info` command
([#2425](AztecProtocol/aztec-packages#2425))
([d22c7b1](AztecProtocol/aztec-packages@d22c7b1))
* Benchmarks
([#2605](AztecProtocol/aztec-packages#2605))
([37d9f9c](AztecProtocol/aztec-packages@37d9f9c))
* Bootstrap_docker skips build it can pull from ecr.
([#2545](AztecProtocol/aztec-packages#2545))
([466a517](AztecProtocol/aztec-packages@466a517))
* **cli:** Reenable CLI version check
([#2441](AztecProtocol/aztec-packages#2441))
([c6ddd23](AztecProtocol/aztec-packages@c6ddd23))
* Collapse interfaces for single implementation
([#2599](AztecProtocol/aztec-packages#2599))
([860f340](AztecProtocol/aztec-packages@860f340))
* Consistent pedersen hash (work in progress)
([#1945](AztecProtocol/aztec-packages#1945))
([b4ad8f3](AztecProtocol/aztec-packages@b4ad8f3))
* Deprecate assert_contains_and_remove
([#2594](AztecProtocol/aztec-packages#2594))
([d225d56](AztecProtocol/aztec-packages@d225d56))
* **docs:** Allow raw code interpolation
([#2447](AztecProtocol/aztec-packages#2447))
([e078ff4](AztecProtocol/aztec-packages@e078ff4))
* **docs:** Load current aztec version for aztec.nr dependencies in docs
([#2440](AztecProtocol/aztec-packages#2440))
([63cf415](AztecProtocol/aztec-packages@63cf415))
* **docs:** Reenable typedoc for aztec-rpc and aztec.js
([#2452](AztecProtocol/aztec-packages#2452))
([85e504c](AztecProtocol/aztec-packages@85e504c)),
closes
[#2045](AztecProtocol/aztec-packages#2045)
[#2415](AztecProtocol/aztec-packages#2415)
* **docs:** Use preprocessor syntax for including versions
([#2462](AztecProtocol/aztec-packages#2462))
([7d315cd](AztecProtocol/aztec-packages@7d315cd))
* **docs:** Use released version of code snippets in docs
([#2439](AztecProtocol/aztec-packages#2439))
([76fc2cf](AztecProtocol/aztec-packages@76fc2cf))
* **docs:** Warn if snippet is grabbed from master
([#2544](AztecProtocol/aztec-packages#2544))
([36896e7](AztecProtocol/aztec-packages@36896e7))
* **e2e:** Public flow for uniswap
([#2596](AztecProtocol/aztec-packages#2596))
([2f871ee](AztecProtocol/aztec-packages@2f871ee))
* Enforce that 0th nullifier is non-zero in private kernel circuit
([#2576](AztecProtocol/aztec-packages#2576))
([458a4fe](AztecProtocol/aztec-packages@458a4fe)),
closes
[#1329](AztecProtocol/aztec-packages#1329)
* Expose registry address in `getNodeInfo`
([#2478](AztecProtocol/aztec-packages#2478))
([652bb04](AztecProtocol/aztec-packages@652bb04))
* Expose transaction data from AztecRPC
([#2469](AztecProtocol/aztec-packages#2469))
([fc00553](AztecProtocol/aztec-packages@fc00553))
* Extend function documentation
([#2408](AztecProtocol/aztec-packages#2408))
([6a75fd0](AztecProtocol/aztec-packages@6a75fd0))
* Goblin op queue transcript aggregation
([#2257](AztecProtocol/aztec-packages#2257))
([b7f627a](AztecProtocol/aztec-packages@b7f627a))
* Json type by default in `JsonRpcServer`
([#2504](AztecProtocol/aztec-packages#2504))
([be38fcc](AztecProtocol/aztec-packages@be38fcc)),
closes
[#2479](AztecProtocol/aztec-packages#2479)
* Listing expected args in CLI
([#2423](AztecProtocol/aztec-packages#2423))
([b2243ad](AztecProtocol/aztec-packages@b2243ad))
* Log topic and contract address in unencrypted logs
([#2595](AztecProtocol/aztec-packages#2595))
([a5b763f](AztecProtocol/aztec-packages@a5b763f)),
closes
[#2580](AztecProtocol/aztec-packages#2580)
[#2581](AztecProtocol/aztec-packages#2581)
[#2586](AztecProtocol/aztec-packages#2586)
[#2587](AztecProtocol/aztec-packages#2587)
* Parallelization update for polynomials
([#2311](AztecProtocol/aztec-packages#2311))
([922fc99](AztecProtocol/aztec-packages@922fc99))
* Restore latest block number
([#2474](AztecProtocol/aztec-packages#2474))
([6dc2da7](AztecProtocol/aztec-packages@6dc2da7))
* Serialise L2Block to JSON
([#2496](AztecProtocol/aztec-packages#2496))
([714c727](AztecProtocol/aztec-packages@714c727))
* Standalone Aztec Node and RPC Server
([#2522](AztecProtocol/aztec-packages#2522))
([8e355bc](AztecProtocol/aztec-packages@8e355bc))
* Unbox empty box
([#2387](AztecProtocol/aztec-packages#2387))
([3e3930c](AztecProtocol/aztec-packages@3e3930c))
* Uniswap private flow
([#2559](AztecProtocol/aztec-packages#2559))
([39f3a91](AztecProtocol/aztec-packages@39f3a91))
* Update to protogalaxy interfaces
([#2498](AztecProtocol/aztec-packages#2498))
([9a3d265](AztecProtocol/aztec-packages@9a3d265))
* YML manifest. Simplify YBP.
([#2353](AztecProtocol/aztec-packages#2353))
([bf73bc3](AztecProtocol/aztec-packages@bf73bc3))


### Bug Fixes

* Add aztec/overview redirect
([#2424](AztecProtocol/aztec-packages#2424))
([4e30dcd](AztecProtocol/aztec-packages@4e30dcd))
* Add redirects from old docs site urls to new site urls
([#2429](AztecProtocol/aztec-packages#2429))
([18fe88a](AztecProtocol/aztec-packages@18fe88a))
* **barretenberg:** Brittle headers caused error compiling for clang-16
on mainframe
([#2547](AztecProtocol/aztec-packages#2547))
([cc909da](AztecProtocol/aztec-packages@cc909da))
* Bb rebuild patterns
([#2499](AztecProtocol/aztec-packages#2499))
([868cceb](AztecProtocol/aztec-packages@868cceb))
* Bootstrap.sh
([#2524](AztecProtocol/aztec-packages#2524))
([bb1fb90](AztecProtocol/aztec-packages@bb1fb90))
* Box injected sandbox tag
([#2555](AztecProtocol/aztec-packages#2555))
([069bdc7](AztecProtocol/aztec-packages@069bdc7))
* **build-system:** Don't wait 30s+ always
([#2494](AztecProtocol/aztec-packages#2494))
([89d700d](AztecProtocol/aztec-packages@89d700d))
* **build:** CI fixes from previous merges
([#2579](AztecProtocol/aztec-packages#2579))
([a9e5d05](AztecProtocol/aztec-packages@a9e5d05))
* Bump foundry version
([#2553](AztecProtocol/aztec-packages#2553))
([0dde3d5](AztecProtocol/aztec-packages@0dde3d5))
* Call public fn in contract constructor
([#2549](AztecProtocol/aztec-packages#2549))
([14ab6d6](AztecProtocol/aztec-packages@14ab6d6))
* Canary image build
([#2480](AztecProtocol/aztec-packages#2480))
([6366be5](AztecProtocol/aztec-packages@6366be5))
* Cli type check arguments and options
([#2571](AztecProtocol/aztec-packages#2571))
([ecffc36](AztecProtocol/aztec-packages@ecffc36))
* **cli:** Typos in cli output
([#2428](AztecProtocol/aztec-packages#2428))
([08acf90](AztecProtocol/aztec-packages@08acf90))
* Docs: Token tutorial, update links and add note on imports
([#2604](AztecProtocol/aztec-packages#2604))
([003d801](AztecProtocol/aztec-packages@003d801))
* **docs:** 'command not found: export'
([#2443](AztecProtocol/aztec-packages#2443))
([f56aa02](AztecProtocol/aztec-packages@f56aa02))
* **docs:** Docs correction
([#2437](AztecProtocol/aztec-packages#2437))
([6499248](AztecProtocol/aztec-packages@6499248))
* **docs:** Fix imports in token contract tutorial
([#2432](AztecProtocol/aztec-packages#2432))
([34ed663](AztecProtocol/aztec-packages@34ed663))
* Drop txs with duplicate nullifiers from the same block
([#2511](AztecProtocol/aztec-packages#2511))
([d9ca1d8](AztecProtocol/aztec-packages@d9ca1d8)),
closes
[#2502](AztecProtocol/aztec-packages#2502)
* E2e browser tests
([#2531](AztecProtocol/aztec-packages#2531))
([adf2b1e](AztecProtocol/aztec-packages@adf2b1e)),
closes
[#2527](AztecProtocol/aztec-packages#2527)
* Fix working dir bug causing stdlib-tests to not run.
([#2495](AztecProtocol/aztec-packages#2495))
([6b3402c](AztecProtocol/aztec-packages@6b3402c))
* Foundry
([#2611](AztecProtocol/aztec-packages#2611))
([9830fbf](AztecProtocol/aztec-packages@9830fbf))
* Gates command should always return 8 bytes
([#2631](AztecProtocol/aztec-packages#2631))
([9668165](AztecProtocol/aztec-packages@9668165))
* JSON-RPC server returns spec-compliant errors
([#2590](AztecProtocol/aztec-packages#2590))
([5eafa3d](AztecProtocol/aztec-packages@5eafa3d))
* Loading salt into buffer in the cli
([#2467](AztecProtocol/aztec-packages#2467))
([753ac49](AztecProtocol/aztec-packages@753ac49))
* **master:** Remove secret_hash ref
([#2617](AztecProtocol/aztec-packages#2617))
([1073bcd](AztecProtocol/aztec-packages@1073bcd))
* Nightly subrepo mirror
([#2520](AztecProtocol/aztec-packages#2520))
([bedc8c8](AztecProtocol/aztec-packages@bedc8c8))
* Prevent race conditions around data pulled from L1
([#2577](AztecProtocol/aztec-packages#2577))
([defea83](AztecProtocol/aztec-packages@defea83))
* Readd docs after ci refactor.
([#2514](AztecProtocol/aztec-packages#2514))
([1eb1a3c](AztecProtocol/aztec-packages@1eb1a3c))
* Remove "standard" from references to token contracts
([#2533](AztecProtocol/aztec-packages#2533))
([f931d56](AztecProtocol/aztec-packages@f931d56))
* Try fix boxes-blank
([#2539](AztecProtocol/aztec-packages#2539))
([87b8080](AztecProtocol/aztec-packages@87b8080))
* Try to fix publish bb
([#2529](AztecProtocol/aztec-packages#2529))
([7c623c4](AztecProtocol/aztec-packages@7c623c4))
* Try to fix publish-bb.yml
([#2523](AztecProtocol/aztec-packages#2523))
([2f6e9bd](AztecProtocol/aztec-packages@2f6e9bd))
* Use #import_code in Token contract tutorial
([#2438](AztecProtocol/aztec-packages#2438))
([b58cfb5](AztecProtocol/aztec-packages@b58cfb5))


### Miscellaneous

* `computeContractAddress` as `computeCompleteAddress`
([#1876](AztecProtocol/aztec-packages#1876))
([4d95b44](AztecProtocol/aztec-packages@4d95b44)),
closes
[#1873](AztecProtocol/aztec-packages#1873)
* Add instructions on circleci session for debugging
([#2503](AztecProtocol/aztec-packages#2503))
([a4197e7](AztecProtocol/aztec-packages@a4197e7))
* Add output saying how to get the right noir version
([#2622](AztecProtocol/aztec-packages#2622))
([10b30e0](AztecProtocol/aztec-packages@10b30e0))
* Aztec-node json-rpc
([#2444](AztecProtocol/aztec-packages#2444))
([04efee1](AztecProtocol/aztec-packages@04efee1))
* BI build tweaks
([#2487](AztecProtocol/aztec-packages#2487))
([f8b6548](AztecProtocol/aztec-packages@f8b6548))
* Check tree roots in world state sync
([#2543](AztecProtocol/aztec-packages#2543))
([314e8a0](AztecProtocol/aztec-packages@314e8a0))
* **circuits:** 2612 - add validation in native private kernel circuit
of arrays in accumulated data
([#2614](AztecProtocol/aztec-packages#2614))
([f1fe059](AztecProtocol/aztec-packages@f1fe059))
* **circuits:** Remove obsolete comments in native private kernel
circuit
([#2570](AztecProtocol/aztec-packages#2570))
([a6b6c7b](AztecProtocol/aztec-packages@a6b6c7b))
* **contract_deployment.md:** Don't require main edit
([#2449](AztecProtocol/aztec-packages#2449))
([16a3d9c](AztecProtocol/aztec-packages@16a3d9c))
* **deps:** Bump get-func-name from 2.0.0 to 2.0.2 in /yarn-project
([#2630](AztecProtocol/aztec-packages#2630))
([5cebf18](AztecProtocol/aztec-packages@5cebf18))
* **deps:** Bump ua-parser-js from 0.7.32 to 0.7.36 in /docs
([#2629](AztecProtocol/aztec-packages#2629))
([b2c87c2](AztecProtocol/aztec-packages@b2c87c2))
* Disable pushing/pulling for layer caching in build.
([#2517](AztecProtocol/aztec-packages#2517))
([51352ae](AztecProtocol/aztec-packages@51352ae))
* **docs:** Fix tutorial in dapp development
([#2421](AztecProtocol/aztec-packages#2421))
([027530f](AztecProtocol/aztec-packages@027530f))
* **docs:** Incorporate docs feedback
([#2434](AztecProtocol/aztec-packages#2434))
([4992d5b](AztecProtocol/aztec-packages@4992d5b))
* Embed yq in repo to avoid network hiccups.
([#2560](AztecProtocol/aztec-packages#2560))
([84f207f](AztecProtocol/aztec-packages@84f207f))
* Fix box noir versioning
([#2578](AztecProtocol/aztec-packages#2578))
([6eaf0c7](AztecProtocol/aztec-packages@6eaf0c7))
* Fixing foundry version
([#2528](AztecProtocol/aztec-packages#2528))
([3af0753](AztecProtocol/aztec-packages@3af0753))
* Kill Turbo
([#2442](AztecProtocol/aztec-packages#2442))
([c832825](AztecProtocol/aztec-packages@c832825))
* Move hash utils to aztec-nr
([#2583](AztecProtocol/aztec-packages#2583))
([78bd1a3](AztecProtocol/aztec-packages@78bd1a3))
* No private key account state
([#2491](AztecProtocol/aztec-packages#2491))
([5813fb3](AztecProtocol/aztec-packages@5813fb3))
* Provide cross compile to cjs.
([#2566](AztecProtocol/aztec-packages#2566))
([47d0d37](AztecProtocol/aztec-packages@47d0d37))
* Recursion todos
([#2516](AztecProtocol/aztec-packages#2516))
([2df107b](AztecProtocol/aztec-packages@2df107b))
* Reenable some ultra honk composer tests
([#2417](AztecProtocol/aztec-packages#2417))
([31f4c32](AztecProtocol/aztec-packages@31f4c32))
* Refactor e2e test teardown
([#2513](AztecProtocol/aztec-packages#2513))
([2e43248](AztecProtocol/aztec-packages@2e43248))
* Remove `BarretenbergBinderSync` import from typescript bindgen file
([#2607](AztecProtocol/aztec-packages#2607))
([43af1a3](AztecProtocol/aztec-packages@43af1a3))
* Remove build system tainting now we have ci cmds in comments.
([#2589](AztecProtocol/aztec-packages#2589))
([2040335](AztecProtocol/aztec-packages@2040335))
* Remove composer keyword from stdlib
([#2418](AztecProtocol/aztec-packages#2418))
([f3e7d91](AztecProtocol/aztec-packages@f3e7d91))
* Remove debug log in world state sync
([#2613](AztecProtocol/aztec-packages#2613))
([177f468](AztecProtocol/aztec-packages@177f468))
* Remove Standard Honk
([#2435](AztecProtocol/aztec-packages#2435))
([9b3ee45](AztecProtocol/aztec-packages@9b3ee45))
* Remove unneeded dockerfiles.
([#2588](AztecProtocol/aztec-packages#2588))
([d6f903d](AztecProtocol/aztec-packages@d6f903d))
* Rename all the occurrences of `Aztec RPC`
([#2552](AztecProtocol/aztec-packages#2552))
([8cc4f69](AztecProtocol/aztec-packages@8cc4f69)),
closes
[#2451](AztecProtocol/aztec-packages#2451)
* Renaming `@aztec/aztec-rpc` package as `@aztec/pxe`
([#2538](AztecProtocol/aztec-packages#2538))
([0dd70aa](AztecProtocol/aztec-packages@0dd70aa))
* Resuscitate private kernel tests related to call stack item check
([#2558](AztecProtocol/aztec-packages#2558))
([9e938fc](AztecProtocol/aztec-packages@9e938fc))
* Run formatting:fix for box lint
([#2479](AztecProtocol/aztec-packages#2479))
([3995de9](AztecProtocol/aztec-packages@3995de9))
* Run quick-start guide in CI
([#2413](AztecProtocol/aztec-packages#2413))
([5f43715](AztecProtocol/aztec-packages@5f43715))
* Simulator
([#2534](AztecProtocol/aztec-packages#2534))
([a26198e](AztecProtocol/aztec-packages@a26198e))
* Switch to upstream docusaurus-plugin-typedoc
([#2557](AztecProtocol/aztec-packages#2557))
([fdf5fce](AztecProtocol/aztec-packages@fdf5fce))
* Token contract storage cleanup
([#2536](AztecProtocol/aztec-packages#2536))
([0b62207](AztecProtocol/aztec-packages@0b62207))
* Typo
([#2546](AztecProtocol/aztec-packages#2546))
([8656a3b](AztecProtocol/aztec-packages@8656a3b))
* Unskip test and fix params
([#2454](AztecProtocol/aztec-packages#2454))
([e484c5f](AztecProtocol/aztec-packages@e484c5f))
* Update private token box
([#2385](AztecProtocol/aztec-packages#2385))
([b730196](AztecProtocol/aztec-packages@b730196))
* Use US spelling
([#2475](AztecProtocol/aztec-packages#2475))
([2fe8f5e](AztecProtocol/aztec-packages@2fe8f5e)),
closes
[#1934](AztecProtocol/aztec-packages#1934)


### Documentation

* Capitalizing x in pxe
([#2564](AztecProtocol/aztec-packages#2564))
([2927cf1](AztecProtocol/aztec-packages@2927cf1))
* Common contract errors
([#2471](AztecProtocol/aztec-packages#2471))
([a8aec70](AztecProtocol/aztec-packages@a8aec70)),
closes
[#2468](AztecProtocol/aztec-packages#2468)
* Fixed original minus underflow test
([#2472](AztecProtocol/aztec-packages#2472))
([0cf4bdc](AztecProtocol/aztec-packages@0cf4bdc))
* Including sandbox diagrams in the sandbox section
([#2573](AztecProtocol/aztec-packages#2573))
([2fa143e](AztecProtocol/aztec-packages@2fa143e))
* Initial storage cleanup
([#2433](AztecProtocol/aztec-packages#2433))
([d833483](AztecProtocol/aztec-packages@d833483))
* Misc docs changes
([#2416](AztecProtocol/aztec-packages#2416))
([0e789c7](AztecProtocol/aztec-packages@0e789c7))
* More `RPC Server` --&gt; `PXE` naming fixes
([#2574](AztecProtocol/aztec-packages#2574))
([b33eea5](AztecProtocol/aztec-packages@b33eea5))
* Portal messaging
([#2419](AztecProtocol/aztec-packages#2419))
([7979bb9](AztecProtocol/aztec-packages@7979bb9))
* Update instructions
([#2297](AztecProtocol/aztec-packages#2297))
([ab612df](AztecProtocol/aztec-packages@ab612df)),
closes
[#1827](AztecProtocol/aztec-packages#1827)
* Update sidebar + embed youtube video
([#2470](AztecProtocol/aztec-packages#2470))
([a779d11](AztecProtocol/aztec-packages@a779d11))
</details>

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

##
[0.8.0](AztecProtocol/aztec-packages@barretenberg.js-v0.7.10...barretenberg.js-v0.8.0)
(2023-10-03)


### ⚠ BREAKING CHANGES

* Gates command should always return 8 bytes
([#2631](AztecProtocol/aztec-packages#2631))

### Bug Fixes

* Gates command should always return 8 bytes
([#2631](AztecProtocol/aztec-packages#2631))
([9668165](AztecProtocol/aztec-packages@9668165))


### Miscellaneous

* Provide cross compile to cjs.
([#2566](AztecProtocol/aztec-packages#2566))
([47d0d37](AztecProtocol/aztec-packages@47d0d37))
* Remove `BarretenbergBinderSync` import from typescript bindgen file
([#2607](AztecProtocol/aztec-packages#2607))
([43af1a3](AztecProtocol/aztec-packages@43af1a3))
* Typo
([#2546](AztecProtocol/aztec-packages#2546))
([8656a3b](AztecProtocol/aztec-packages@8656a3b))
</details>

<details><summary>barretenberg: 0.8.0</summary>

##
[0.8.0](AztecProtocol/aztec-packages@barretenberg-v0.7.10...barretenberg-v0.8.0)
(2023-10-03)


### Features

* Barretenberg/crypto/blake3s supports compile-time hashing
([#2556](AztecProtocol/aztec-packages#2556))
([da05dd7](AztecProtocol/aztec-packages@da05dd7))
* **bb:** Add `bb --version` command
([#2482](AztecProtocol/aztec-packages#2482))
([530676f](AztecProtocol/aztec-packages@530676f))
* **bb:** Avoid initializing CRS for `bb info` command
([#2425](AztecProtocol/aztec-packages#2425))
([d22c7b1](AztecProtocol/aztec-packages@d22c7b1))
* Consistent pedersen hash (work in progress)
([#1945](AztecProtocol/aztec-packages#1945))
([b4ad8f3](AztecProtocol/aztec-packages@b4ad8f3))
* Goblin op queue transcript aggregation
([#2257](AztecProtocol/aztec-packages#2257))
([b7f627a](AztecProtocol/aztec-packages@b7f627a))
* Parallelization update for polynomials
([#2311](AztecProtocol/aztec-packages#2311))
([922fc99](AztecProtocol/aztec-packages@922fc99))
* Update to protogalaxy interfaces
([#2498](AztecProtocol/aztec-packages#2498))
([9a3d265](AztecProtocol/aztec-packages@9a3d265))
* YML manifest. Simplify YBP.
([#2353](AztecProtocol/aztec-packages#2353))
([bf73bc3](AztecProtocol/aztec-packages@bf73bc3))


### Bug Fixes

* **barretenberg:** Brittle headers caused error compiling for clang-16
on mainframe
([#2547](AztecProtocol/aztec-packages#2547))
([cc909da](AztecProtocol/aztec-packages@cc909da))
* Bb rebuild patterns
([#2499](AztecProtocol/aztec-packages#2499))
([868cceb](AztecProtocol/aztec-packages@868cceb))
* Fix working dir bug causing stdlib-tests to not run.
([#2495](AztecProtocol/aztec-packages#2495))
([6b3402c](AztecProtocol/aztec-packages@6b3402c))
* Nightly subrepo mirror
([#2520](AztecProtocol/aztec-packages#2520))
([bedc8c8](AztecProtocol/aztec-packages@bedc8c8))


### Miscellaneous

* BI build tweaks
([#2487](AztecProtocol/aztec-packages#2487))
([f8b6548](AztecProtocol/aztec-packages@f8b6548))
* Kill Turbo
([#2442](AztecProtocol/aztec-packages#2442))
([c832825](AztecProtocol/aztec-packages@c832825))
* Provide cross compile to cjs.
([#2566](AztecProtocol/aztec-packages#2566))
([47d0d37](AztecProtocol/aztec-packages@47d0d37))
* Recursion todos
([#2516](AztecProtocol/aztec-packages#2516))
([2df107b](AztecProtocol/aztec-packages@2df107b))
* Reenable some ultra honk composer tests
([#2417](AztecProtocol/aztec-packages#2417))
([31f4c32](AztecProtocol/aztec-packages@31f4c32))
* Remove composer keyword from stdlib
([#2418](AztecProtocol/aztec-packages#2418))
([f3e7d91](AztecProtocol/aztec-packages@f3e7d91))
* Remove Standard Honk
([#2435](AztecProtocol/aztec-packages#2435))
([9b3ee45](AztecProtocol/aztec-packages@9b3ee45))


### Documentation

* Fixed original minus underflow test
([#2472](AztecProtocol/aztec-packages#2472))
([0cf4bdc](AztecProtocol/aztec-packages@0cf4bdc))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
Maddiaa0 pushed a commit that referenced this issue Oct 6, 2023
🤖 I have created a release *beep* *boop*
---


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

##
[0.8.0](aztec-packages-v0.7.10...aztec-packages-v0.8.0)
(2023-10-03)


### ⚠ BREAKING CHANGES

* Gates command should always return 8 bytes
([#2631](#2631))

### Features

* **1090:** Validate that some arrays are zero-padded on the right
([#2519](#2519))
([0327b54](0327b54))
* Add --wait/--no-wait flags to certain cli commands
([#2378](#2378))
([57a2f10](57a2f10))
* Add boxes to CI
([#2456](#2456))
([a90a185](a90a185))
* Add selector to call_context
([#2626](#2626))
([8e317be](8e317be))
* AddNote api
([#2535](#2535))
([bb004f4](bb004f4))
* **aztec_noir:** Abstract storage initialisation
([#2406](#2406))
([974b037](974b037))
* **aztec.js:** Support AddressLike parameters
([#2430](#2430))
([5b5f139](5b5f139))
* Barretenberg/crypto/blake3s supports compile-time hashing
([#2556](#2556))
([da05dd7](da05dd7))
* **bb:** Add `bb --version` command
([#2482](#2482))
([530676f](530676f))
* **bb:** Avoid initializing CRS for `bb info` command
([#2425](#2425))
([d22c7b1](d22c7b1))
* Benchmarks
([#2605](#2605))
([37d9f9c](37d9f9c))
* Bootstrap_docker skips build it can pull from ecr.
([#2545](#2545))
([466a517](466a517))
* **cli:** Reenable CLI version check
([#2441](#2441))
([c6ddd23](c6ddd23))
* Collapse interfaces for single implementation
([#2599](#2599))
([860f340](860f340))
* Consistent pedersen hash (work in progress)
([#1945](#1945))
([b4ad8f3](b4ad8f3))
* Deprecate assert_contains_and_remove
([#2594](#2594))
([d225d56](d225d56))
* **docs:** Allow raw code interpolation
([#2447](#2447))
([e078ff4](e078ff4))
* **docs:** Load current aztec version for aztec.nr dependencies in docs
([#2440](#2440))
([63cf415](63cf415))
* **docs:** Reenable typedoc for aztec-rpc and aztec.js
([#2452](#2452))
([85e504c](85e504c)),
closes
[#2045](#2045)
[#2415](#2415)
* **docs:** Use preprocessor syntax for including versions
([#2462](#2462))
([7d315cd](7d315cd))
* **docs:** Use released version of code snippets in docs
([#2439](#2439))
([76fc2cf](76fc2cf))
* **docs:** Warn if snippet is grabbed from master
([#2544](#2544))
([36896e7](36896e7))
* **e2e:** Public flow for uniswap
([#2596](#2596))
([2f871ee](2f871ee))
* Enforce that 0th nullifier is non-zero in private kernel circuit
([#2576](#2576))
([458a4fe](458a4fe)),
closes
[#1329](#1329)
* Expose registry address in `getNodeInfo`
([#2478](#2478))
([652bb04](652bb04))
* Expose transaction data from AztecRPC
([#2469](#2469))
([fc00553](fc00553))
* Extend function documentation
([#2408](#2408))
([6a75fd0](6a75fd0))
* Goblin op queue transcript aggregation
([#2257](#2257))
([b7f627a](b7f627a))
* Json type by default in `JsonRpcServer`
([#2504](#2504))
([be38fcc](be38fcc)),
closes
[#2479](#2479)
* Listing expected args in CLI
([#2423](#2423))
([b2243ad](b2243ad))
* Log topic and contract address in unencrypted logs
([#2595](#2595))
([a5b763f](a5b763f)),
closes
[#2580](#2580)
[#2581](#2581)
[#2586](#2586)
[#2587](#2587)
* Parallelization update for polynomials
([#2311](#2311))
([922fc99](922fc99))
* Restore latest block number
([#2474](#2474))
([6dc2da7](6dc2da7))
* Serialise L2Block to JSON
([#2496](#2496))
([714c727](714c727))
* Standalone Aztec Node and RPC Server
([#2522](#2522))
([8e355bc](8e355bc))
* Unbox empty box
([#2387](#2387))
([3e3930c](3e3930c))
* Uniswap private flow
([#2559](#2559))
([39f3a91](39f3a91))
* Update to protogalaxy interfaces
([#2498](#2498))
([9a3d265](9a3d265))
* YML manifest. Simplify YBP.
([#2353](#2353))
([bf73bc3](bf73bc3))


### Bug Fixes

* Add aztec/overview redirect
([#2424](#2424))
([4e30dcd](4e30dcd))
* Add redirects from old docs site urls to new site urls
([#2429](#2429))
([18fe88a](18fe88a))
* **barretenberg:** Brittle headers caused error compiling for clang-16
on mainframe
([#2547](#2547))
([cc909da](cc909da))
* Bb rebuild patterns
([#2499](#2499))
([868cceb](868cceb))
* Bootstrap.sh
([#2524](#2524))
([bb1fb90](bb1fb90))
* Box injected sandbox tag
([#2555](#2555))
([069bdc7](069bdc7))
* **build-system:** Don't wait 30s+ always
([#2494](#2494))
([89d700d](89d700d))
* **build:** CI fixes from previous merges
([#2579](#2579))
([a9e5d05](a9e5d05))
* Bump foundry version
([#2553](#2553))
([0dde3d5](0dde3d5))
* Call public fn in contract constructor
([#2549](#2549))
([14ab6d6](14ab6d6))
* Canary image build
([#2480](#2480))
([6366be5](6366be5))
* Cli type check arguments and options
([#2571](#2571))
([ecffc36](ecffc36))
* **cli:** Typos in cli output
([#2428](#2428))
([08acf90](08acf90))
* Docs: Token tutorial, update links and add note on imports
([#2604](#2604))
([003d801](003d801))
* **docs:** 'command not found: export'
([#2443](#2443))
([f56aa02](f56aa02))
* **docs:** Docs correction
([#2437](#2437))
([6499248](6499248))
* **docs:** Fix imports in token contract tutorial
([#2432](#2432))
([34ed663](34ed663))
* Drop txs with duplicate nullifiers from the same block
([#2511](#2511))
([d9ca1d8](d9ca1d8)),
closes
[#2502](#2502)
* E2e browser tests
([#2531](#2531))
([adf2b1e](adf2b1e)),
closes
[#2527](#2527)
* Fix working dir bug causing stdlib-tests to not run.
([#2495](#2495))
([6b3402c](6b3402c))
* Foundry
([#2611](#2611))
([9830fbf](9830fbf))
* Gates command should always return 8 bytes
([#2631](#2631))
([9668165](9668165))
* JSON-RPC server returns spec-compliant errors
([#2590](#2590))
([5eafa3d](5eafa3d))
* Loading salt into buffer in the cli
([#2467](#2467))
([753ac49](753ac49))
* **master:** Remove secret_hash ref
([#2617](#2617))
([1073bcd](1073bcd))
* Nightly subrepo mirror
([#2520](#2520))
([bedc8c8](bedc8c8))
* Prevent race conditions around data pulled from L1
([#2577](#2577))
([defea83](defea83))
* Readd docs after ci refactor.
([#2514](#2514))
([1eb1a3c](1eb1a3c))
* Remove "standard" from references to token contracts
([#2533](#2533))
([f931d56](f931d56))
* Try fix boxes-blank
([#2539](#2539))
([87b8080](87b8080))
* Try to fix publish bb
([#2529](#2529))
([7c623c4](7c623c4))
* Try to fix publish-bb.yml
([#2523](#2523))
([2f6e9bd](2f6e9bd))
* Use #import_code in Token contract tutorial
([#2438](#2438))
([b58cfb5](b58cfb5))


### Miscellaneous

* `computeContractAddress` as `computeCompleteAddress`
([#1876](#1876))
([4d95b44](4d95b44)),
closes
[#1873](#1873)
* Add instructions on circleci session for debugging
([#2503](#2503))
([a4197e7](a4197e7))
* Add output saying how to get the right noir version
([#2622](#2622))
([10b30e0](10b30e0))
* Aztec-node json-rpc
([#2444](#2444))
([04efee1](04efee1))
* BI build tweaks
([#2487](#2487))
([f8b6548](f8b6548))
* Check tree roots in world state sync
([#2543](#2543))
([314e8a0](314e8a0))
* **circuits:** 2612 - add validation in native private kernel circuit
of arrays in accumulated data
([#2614](#2614))
([f1fe059](f1fe059))
* **circuits:** Remove obsolete comments in native private kernel
circuit
([#2570](#2570))
([a6b6c7b](a6b6c7b))
* **contract_deployment.md:** Don't require main edit
([#2449](#2449))
([16a3d9c](16a3d9c))
* **deps:** Bump get-func-name from 2.0.0 to 2.0.2 in /yarn-project
([#2630](#2630))
([5cebf18](5cebf18))
* **deps:** Bump ua-parser-js from 0.7.32 to 0.7.36 in /docs
([#2629](#2629))
([b2c87c2](b2c87c2))
* Disable pushing/pulling for layer caching in build.
([#2517](#2517))
([51352ae](51352ae))
* **docs:** Fix tutorial in dapp development
([#2421](#2421))
([027530f](027530f))
* **docs:** Incorporate docs feedback
([#2434](#2434))
([4992d5b](4992d5b))
* Embed yq in repo to avoid network hiccups.
([#2560](#2560))
([84f207f](84f207f))
* Fix box noir versioning
([#2578](#2578))
([6eaf0c7](6eaf0c7))
* Fixing foundry version
([#2528](#2528))
([3af0753](3af0753))
* Kill Turbo
([#2442](#2442))
([c832825](c832825))
* Move hash utils to aztec-nr
([#2583](#2583))
([78bd1a3](78bd1a3))
* No private key account state
([#2491](#2491))
([5813fb3](5813fb3))
* Provide cross compile to cjs.
([#2566](#2566))
([47d0d37](47d0d37))
* Recursion todos
([#2516](#2516))
([2df107b](2df107b))
* Reenable some ultra honk composer tests
([#2417](#2417))
([31f4c32](31f4c32))
* Refactor e2e test teardown
([#2513](#2513))
([2e43248](2e43248))
* Remove `BarretenbergBinderSync` import from typescript bindgen file
([#2607](#2607))
([43af1a3](43af1a3))
* Remove build system tainting now we have ci cmds in comments.
([#2589](#2589))
([2040335](2040335))
* Remove composer keyword from stdlib
([#2418](#2418))
([f3e7d91](f3e7d91))
* Remove debug log in world state sync
([#2613](#2613))
([177f468](177f468))
* Remove Standard Honk
([#2435](#2435))
([9b3ee45](9b3ee45))
* Remove unneeded dockerfiles.
([#2588](#2588))
([d6f903d](d6f903d))
* Rename all the occurrences of `Aztec RPC`
([#2552](#2552))
([8cc4f69](8cc4f69)),
closes
[#2451](#2451)
* Renaming `@aztec/aztec-rpc` package as `@aztec/pxe`
([#2538](#2538))
([0dd70aa](0dd70aa))
* Resuscitate private kernel tests related to call stack item check
([#2558](#2558))
([9e938fc](9e938fc))
* Run formatting:fix for box lint
([#2479](#2479))
([3995de9](3995de9))
* Run quick-start guide in CI
([#2413](#2413))
([5f43715](5f43715))
* Simulator
([#2534](#2534))
([a26198e](a26198e))
* Switch to upstream docusaurus-plugin-typedoc
([#2557](#2557))
([fdf5fce](fdf5fce))
* Token contract storage cleanup
([#2536](#2536))
([0b62207](0b62207))
* Typo
([#2546](#2546))
([8656a3b](8656a3b))
* Unskip test and fix params
([#2454](#2454))
([e484c5f](e484c5f))
* Update private token box
([#2385](#2385))
([b730196](b730196))
* Use US spelling
([#2475](#2475))
([2fe8f5e](2fe8f5e)),
closes
[#1934](#1934)


### Documentation

* Capitalizing x in pxe
([#2564](#2564))
([2927cf1](2927cf1))
* Common contract errors
([#2471](#2471))
([a8aec70](a8aec70)),
closes
[#2468](#2468)
* Fixed original minus underflow test
([#2472](#2472))
([0cf4bdc](0cf4bdc))
* Including sandbox diagrams in the sandbox section
([#2573](#2573))
([2fa143e](2fa143e))
* Initial storage cleanup
([#2433](#2433))
([d833483](d833483))
* Misc docs changes
([#2416](#2416))
([0e789c7](0e789c7))
* More `RPC Server` --&gt; `PXE` naming fixes
([#2574](#2574))
([b33eea5](b33eea5))
* Portal messaging
([#2419](#2419))
([7979bb9](7979bb9))
* Update instructions
([#2297](#2297))
([ab612df](ab612df)),
closes
[#1827](#1827)
* Update sidebar + embed youtube video
([#2470](#2470))
([a779d11](a779d11))
</details>

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

##
[0.8.0](barretenberg.js-v0.7.10...barretenberg.js-v0.8.0)
(2023-10-03)


### ⚠ BREAKING CHANGES

* Gates command should always return 8 bytes
([#2631](#2631))

### Bug Fixes

* Gates command should always return 8 bytes
([#2631](#2631))
([9668165](9668165))


### Miscellaneous

* Provide cross compile to cjs.
([#2566](#2566))
([47d0d37](47d0d37))
* Remove `BarretenbergBinderSync` import from typescript bindgen file
([#2607](#2607))
([43af1a3](43af1a3))
* Typo
([#2546](#2546))
([8656a3b](8656a3b))
</details>

<details><summary>barretenberg: 0.8.0</summary>

##
[0.8.0](barretenberg-v0.7.10...barretenberg-v0.8.0)
(2023-10-03)


### Features

* Barretenberg/crypto/blake3s supports compile-time hashing
([#2556](#2556))
([da05dd7](da05dd7))
* **bb:** Add `bb --version` command
([#2482](#2482))
([530676f](530676f))
* **bb:** Avoid initializing CRS for `bb info` command
([#2425](#2425))
([d22c7b1](d22c7b1))
* Consistent pedersen hash (work in progress)
([#1945](#1945))
([b4ad8f3](b4ad8f3))
* Goblin op queue transcript aggregation
([#2257](#2257))
([b7f627a](b7f627a))
* Parallelization update for polynomials
([#2311](#2311))
([922fc99](922fc99))
* Update to protogalaxy interfaces
([#2498](#2498))
([9a3d265](9a3d265))
* YML manifest. Simplify YBP.
([#2353](#2353))
([bf73bc3](bf73bc3))


### Bug Fixes

* **barretenberg:** Brittle headers caused error compiling for clang-16
on mainframe
([#2547](#2547))
([cc909da](cc909da))
* Bb rebuild patterns
([#2499](#2499))
([868cceb](868cceb))
* Fix working dir bug causing stdlib-tests to not run.
([#2495](#2495))
([6b3402c](6b3402c))
* Nightly subrepo mirror
([#2520](#2520))
([bedc8c8](bedc8c8))


### Miscellaneous

* BI build tweaks
([#2487](#2487))
([f8b6548](f8b6548))
* Kill Turbo
([#2442](#2442))
([c832825](c832825))
* Provide cross compile to cjs.
([#2566](#2566))
([47d0d37](47d0d37))
* Recursion todos
([#2516](#2516))
([2df107b](2df107b))
* Reenable some ultra honk composer tests
([#2417](#2417))
([31f4c32](31f4c32))
* Remove composer keyword from stdlib
([#2418](#2418))
([f3e7d91](f3e7d91))
* Remove Standard Honk
([#2435](#2435))
([9b3ee45](9b3ee45))


### Documentation

* Fixed original minus underflow test
([#2472](#2472))
([0cf4bdc](0cf4bdc))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
superstar0402 added a commit to superstar0402/aztec-nr that referenced this issue Aug 16, 2024
# Description

The way nonces work now, there can be inconsistencies in nonce
assignment in the simulator vs the private kernel. Furthermore, you
cannot know during function execution what the full set of commitments
will be for the whole TX as some new commitments may be nullified and
squashed. But we still want the ability to determine nonces and
therefore uniqueNoteHashes from L1 calldata alone. I am sure I am not
explaining all of the issues well enough, but it was determined that the
current nonce paradigm will not work and therefore we must rework it.

Rework nonces so that siloing by contract address happens first and
uniqueness comes later. For now, nonces are injeced by the private
ordering circuit (vs suggestion which was base rollup circuit). Pending
notes and their reads have no nonces when processed in kernel. The
public kernel (and therefore all commitments created in public
functions) does not use nonces.

Here was Mike's proposal for the rework:

![image](https://github.com/AztecProtocol/aztec-packages/assets/47112877/7b20c886-1e92-452c-a886-c3da5ed64e17)

Why not just use leaf index as nonce?

![image](https://github.com/AztecProtocol/aztec-packages/assets/47112877/e6337107-ac93-4a3b-b83c-27213cb5133d)

## Followup tasks
* AztecProtocol/aztec-packages#1029
* AztecProtocol/aztec-packages#1194
* AztecProtocol/aztec-packages#1329
* AztecProtocol/aztec-packages#1407
* AztecProtocol/aztec-packages#1408
* AztecProtocol/aztec-packages#1409
* AztecProtocol/aztec-packages#1410
* Future enhancement: The root rollup circuit could insert all messages
at the very beginning of the root rollup circuit, so that txs within the
rollup can refer to that state root and read L1>L2 messages immediately.
* AztecProtocol/aztec-packages#1383
* AztecProtocol/aztec-packages#1386
* We should implement subscription / polling methods for Aztec logs
* We should maybe write rpc functions which allow calldata to be
subscribed-to, keyed by tx_hash.
* If a dapp wants to write a note from a public function, a lot of honus
will be on a dapp developer to retain preimage information, query the
blockchain, and derive the nonce. We should provide some examples to
demonstrate this pattern.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-protocol-circuits Component: Protocol circuits (kernel & rollup)
Projects
Archived in project
2 participants