Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

feat: goblin op queue transcript aggregation #2257

Merged
merged 48 commits into from
Sep 22, 2023

Conversation

ledwards2225
Copy link
Contributor

@ledwards2225 ledwards2225 commented Sep 12, 2023

Adds an ECC op queue aggregation protocol to the Goblin proof system. I.e. given a previous aggregate transcript $T_{i-1}$ and the contribution $t_i$ from the circuit being proven, establishes that $T_i = T_{i-1} + X^{M_{i-1}}t_i$, where $M_{i-1}$ is the size of the aggregate transcript at stage $i-1$. (Note: each $T_i$ actually represents 4 polynomials, one for each column of the op queue. Similarly for the others).

The protocol is encapsulated into a new prover "round" in between Gemini and Shplonk. The polynomials $T_i, T_{i-1}, t_i^{shift}$ are committed to as univariates, and their univariate opening proofs are appended to the set of claims output from Gemini to be batched together in Shplonk. The verifier confirms the relationship $T_i = T_{i-1} + X^{M_{i-1}}t_i$ via a Shwartz-Zippel check at a random challenge. This logic has been added to both the native and recursive verifiers (UltraVerifier_ and UltraRecursiveVerifier_).

Some loose ends at this work does not address:

  • Currently we commit to both $t_i$ and its shift. Established "tricks" for avoiding this could work but the efficiency is not clear
  • The aggregation protocol only works if there is a non-empty "previous" transcript to aggregate. We get around this by mocking previous data for now
  • It should be possible to batch the transcript commitments using an additional challenge (similar to what we do for the individual list polynomials in the lookup argument) rather than send them all individually. Left for future work.

Other notable changes in this PR:

  • All Goblin functionality has been split out of the UltraCircuitBuilder and moved into the new GoblinUltraCircuitBuilder (defined via inheritance from the former). This facilitates idiomatic differentiation of the two arithmetizations in the stdlib and also isolates all goblin builder functionality in one place. (This was also necessary to avoid breaking many tests that were hard coded with assumptions about the number of constant variables added in the builder composer).
  • The recursive verifier tests have been fleshed out to cover the four test cases that arise from combining a verifier algorithm (Ultra or Goblin Ultra) with an arithmetization (Ultra or Goblin Ultra). To facilitate this, the Recursive flavors are now templated by a BuilderType which specifies the arithmetization of the circuit. For example, we instantiate UltraRecuirsiveVerifier with flavor::GoblinUltra<UltraCircuitBuilder> to obtain a circuit that verifies a Goblin Ultra proof with a conventional Ultra arithmetization.
  • Removes the hacky use_goblin flag from recursive verifier classes. This is now achieved via a IsGoblinBuilder<> check now that Goblin has its own builder.
  • Constrains the op code values in the op wires via copy constraints with constant variables (as suggested by Kesha)
  • Adds a test of the "full" Goblin protocol (currently just Goblin Ultra + ECCVM). The Translator can be incorporated once it is complete

Checklist:

Remove the checklist to signal you've completed it. Enable auto-merge if the PR is ready to merge.

  • If the pull request requires a cryptography review (e.g. cryptographic algorithm implementations) I have added the 'crypto' tag.
  • I have reviewed my diff in github, line by line and removed unexpected formatting changes, testing logs, or commented-out code.
  • Every change is related to the PR description.
  • I have linked this pull request to relevant issues (if any exist).

@ledwards2225 ledwards2225 changed the title Lde/transcript aggregation redux feat:Lde/transcript aggregation redux Sep 12, 2023
@ledwards2225 ledwards2225 changed the title feat:Lde/transcript aggregation redux feat: goblin op queue transcript agg redux Sep 12, 2023
// Manually compute the op queue transcript commitments (which would normally be done by the prover)
auto crs_factory_ = barretenberg::srs::get_crs_factory();
auto commitment_key = CommitmentKey(op_queue->get_current_size(), crs_factory_);
std::array<Point, 4> op_queue_commitments;
Copy link
Contributor

Choose a reason for hiding this comment

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

4 should probably be a named constant

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done

/**
* @brief Set self to the right shift of input coefficients
* @details Set the size of self to match the input then set coefficients equal to right shift of input, assuming
* last shift-size many inputs are zero.
Copy link
Contributor

Choose a reason for hiding this comment

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

What does "assuming last shift-size many inputs are zero" mean?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Improved the wording of this comment

auto shifted_evaluation = right_shifted_poly.evaluate(evaluation_point);

// reconstruct the unshifted evaluation using that p^{shift}(X)/X^m = p(X), where m is the shift magnitude
auto unshifted_eval_reconstructed = shifted_evaluation / evaluation_point.pow(shift_magnitude);
Copy link
Contributor

@Rumata888 Rumata888 Sep 21, 2023

Choose a reason for hiding this comment

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

If you multiply, you don't have to invert + the zero case can't fail (it's never going to happen anyway, though)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Good point - changed

@@ -206,6 +206,7 @@ template <typename Flavor> class SumcheckVerifier {
round.compute_next_target_sum(round_univariate, round_challenge);
pow_univariate.partially_evaluate(round_challenge);

// TODO(#726): Properly handle this in the recursive setting.
Copy link
Contributor

Choose a reason for hiding this comment

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

Inside the circuit there should be no if at all in this particular case, right?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yeah the problem is right now this code is shared by recursive and native verification so some choices need to be made. I'll handle this in a follow on for the issue referenced

@@ -425,6 +425,8 @@ template <typename Flavor> class SumcheckVerifierRound {
// with a simulated builder.
bool sumcheck_round_failed(false);
if constexpr (IsRecursiveFlavor<Flavor>) {
// TODO(#726): Need to constrain this equality and update the native optional return value mechanism for the
Copy link
Contributor

@Rumata888 Rumata888 Sep 21, 2023

Choose a reason for hiding this comment

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

Should there be an optional return at all? If the recursive proof fails, then the new proof should fail, too, right? So it should simply be enough to assert equality of values

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Right, just need to figure out how to resolve re: previous comment.

Comment on lines 278 to 279
ASSERT(shift_size < size_in);

Copy link
Contributor

Choose a reason for hiding this comment

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

Why are you comparing shift size with input size?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Basically just because I'm about to loop through shift-size many coefficients of the input. (Changed to shift_size <= size_in accordingly). Added a TODO here with reference to existing bberg issue #723 related to allowing the right-shifted transcript polynomials to have size greater than n.

}

// Receive claimed evaluations of t_i^{shift}, T_{i-1}, and T_i
FF kappa = transcript.get_challenge("kappa");
Copy link
Contributor

Choose a reason for hiding this comment

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

Don't you have to open one of these polynomials in gemini? Why not simply use rho?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

None of these polynomials are currently opened in gemini (only the unshifted t_i). Also, I believe the opening challenge must be produced after hashing the commitments to each of these polys so I think it would be awkward to try to squeeze that into Gemini.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

BTW we had discussed using the optimization of only committing to either t_i or its shift but not both, but it's not clear to me that its efficient in this case since we do not otherwise need to open both in Gemini. (For the other shifts, we already need to include them in Gemini since they're used in relations so there's no additional cost). Something we can continue to think about though.

Copy link
Contributor

Choose a reason for hiding this comment

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

Not an issue right now, but you can commit to the polynomials at the same time as all the other wires (or right after). Then, when you receive the output from gemini, you ask for the evaluations for accumulated and previous versions (you have the shifted already).

// TODO(#723): The below assert ensures that M_{i-1} + m_i < n, i.e. the right shifted result can be expressed
// as a size n polynomial. If this is not the case then we should still be able to proceed without increasing
// the circuit size but need to handle with care.
ASSERT(prev_op_queue_size + instance->proving_key->num_ecc_op_gates < circuit_size); // M_{i-1} + m_i < n
Copy link
Contributor

Choose a reason for hiding this comment

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

This should not be an issue. You should only care that the current ecc op gates fit in the circuit size, but the previous ones should have no influence on the circuit size. Otherwise we'd have to make all the circuits the same size, since you never know how much of the queue you have to fit.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Right I agree. I made it an issue to deal with later because I think some care needs to be taken since we have not historically allowed polynomials with size > circuit_size to be floating around. Just want to make sure there are no footguns

}

// Receive transcript poly evaluations
FF kappa = transcript.get_challenge("kappa");
Copy link
Contributor

Choose a reason for hiding this comment

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

Why not use rho from gemini? You have to open the t_shift on it anyway

Copy link
Contributor Author

Choose a reason for hiding this comment

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

See related comment above

// TODO(#423): This function adds valid (but arbitrary) gates to ensure that the circuit which includes
// them will not result in any zero-polynomials. It also ensures that the first coefficient of the wire
// polynomials is zero, which is required for them to be shiftable.
// TODO(luke): Add ECC op gate to ensure op wires are non-zero?
Copy link
Contributor

Choose a reason for hiding this comment

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

Those would accumulate( Technically, we should never use GolbinUltra if we are not feeding a proof inside anyway, right?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yeah this is an old TODO. deleted

ecc_op_wire_3.emplace_back(in.x_hi);
ecc_op_wire_4.emplace_back(in.y_lo);

ecc_op_wire_1.emplace_back(in.op); // TODO(luke): second op val is sort of a dummy. use "op" again?
Copy link
Contributor

Choose a reason for hiding this comment

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

Mb set to zero? Could you also add an issue number to the todo?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yeah I think 0 is the right thing so updated and removed the TODO

ecc_op_tuple queue_ecc_eq();

private:
void populate_ecc_op_wires(const ecc_op_tuple& in);
Copy link
Contributor

Choose a reason for hiding this comment

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

These functions are not documented

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The documentation for these is in the source (which I generally prefer) but I added a brief comment here: // Functions for adding ECC op queue "gates"

for (size_t j = 0; j < builder.num_ecc_op_gates; ++j) {
auto op_wire_val = builder.variables[builder.ecc_op_wires[i][j]];
auto ultra_op_val = ultra_ops[i][j];
info("op_wire_val = ", op_wire_val);
Copy link
Contributor

Choose a reason for hiding this comment

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

Do you plan to leave the infos in?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

removed, thanks

*
* @param op_queue
*/
void populate_with_mock_initital_data()
Copy link
Contributor

Choose a reason for hiding this comment

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

Could you create a todo to delete later?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Added a TODO with reference to existing issue to make it clear this should eventually go away entirely

@Rumata888 Rumata888 self-requested a review September 21, 2023 22:01
Copy link
Contributor

@Rumata888 Rumata888 left a comment

Choose a reason for hiding this comment

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

LGTM

@ledwards2225 ledwards2225 merged commit b7f627a into master Sep 22, 2023
2 checks passed
@ledwards2225 ledwards2225 deleted the lde/transcript_aggregation_redux branch September 22, 2023 20:19
kevaundray pushed a commit that referenced this pull request 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 pull request 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 pull request 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).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

3 participants