-
Notifications
You must be signed in to change notification settings - Fork 233
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(avm): DSL integration of AVM recursive verifier #8405
Conversation
93a0a70
to
5c95ec0
Compare
4f19447
to
da290ae
Compare
Benchmark resultsMetrics with a significant change:
Detailed resultsAll benchmarks are run on txs on the This benchmark source data is available in JSON format on S3 here. Proof generationEach column represents the number of threads used in proof generation.
L2 block published to L1Each column represents the number of txs on an L2 block published to L1.
L2 chain processingEach column represents the number of blocks on the L2 chain where each block has 8 txs.
Circuits statsStats on running time and I/O sizes collected for every kernel circuit run across all benchmarks.
Stats on running time collected for app circuits
AVM SimulationTime to simulate various public functions in the AVM.
Public DB AccessTime to access various public DBs.
Tree insertion statsThe duration to insert a fixed batch of leaves into each tree type.
MiscellaneousTransaction sizes based on how many contract classes are registered in the tx.
Transaction size based on fee payment method | Metric | | |
da290ae
to
1d5b3b4
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor comments on our cpp files. I'll leave the actual DSL review to the crypto team.
@@ -2207,6 +2207,10 @@ AvmFlavor::CommitmentLabels::CommitmentLabels() | |||
Base::incl_mem_tag_err_counts = "INCL_MEM_TAG_ERR_COUNTS"; | |||
}; | |||
|
|||
// Note: current de-/serialization routines are not including the padded zero univariates which are added as part of |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this mean that we will eventually need to change something, or is it just an FYI?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
AFAIK, this code is not used and therefore I did not want to adapt some code which we might remove. There are other flavors for which these serialization routines are used but not ours. Since I was not sure if there might be used in the future I did not delete this code.
* | ||
* @return std::vector<FF> | ||
*/ | ||
std::vector<FF> to_field_elements() const |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please put the definition in the cpp file.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks fine in general. However, it's missing an actual noir test, so maybe that can be a followup.
|
||
// Now that the circuit has been completely built, we add the output aggregation as public | ||
// inputs. | ||
if (!constraint_system.avm_recursion_constraints.empty()) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if we ever try to create a circuit with both honk and avm recursion constraints, this will throw an error, but I think we can resolves this later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
error comes from calling set_recursive_proof multiple times.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suggest that I add a comment and a reference to the issue 1095 to solve this. @lucasxia01 Ok?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sounds fine
barretenberg/cpp/src/barretenberg/dsl/acir_format/avm_recursion_constraint.test.cpp
Outdated
Show resolved
Hide resolved
@lucasxia01 The next issue I am tackling is noir integration. (in public kernel) So, we will have to test as part of this ticket. |
1d5b3b4
to
1110861
Compare
* master: (49 commits) fix(avm): full proving kernel fix (#8468) fix: guesstimate gas for propose (#8445) git subrepo push --branch=master noir-projects/aztec-nr git_subrepo.sh: Fix parent in .gitrepo file. [skip ci] chore: replace relative paths to noir-protocol-circuits git subrepo push --branch=master barretenberg feat(avm)!: make JUMP(I) 16-bit (#8443) feat(avm)!: variants for SET opcode (#8441) feat(avm)!: variants for MOV opcode (#8440) installer terraform has cloudfront for https support. remove http support once new aztec-up released. fix(docs): Some docs updates (#8412) feat: archiver fork block num (#8425) feat(avm-transpiler): optionally count opcode types (#8439) chore(ci): rerun ci when ready for review + don't allow draft merge (#8456) feat(avm): DSL integration of AVM recursive verifier (#8405) chore: Rename files relating to what were "instances" (#8383) fix: fmt (#8454) fix: add re-exports back (#8453) fix(bb): mac release (#8450) chore(docs): update box readme, remove duplicated features, added box install to the docs (#8254) ...
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-package: 0.54.0</summary> ## [0.54.0](aztec-package-v0.53.0...aztec-package-v0.54.0) (2024-09-10) ### Features * Archiver fork block num ([#8425](#8425)) ([a9f2364](a9f2364)) ### Miscellaneous * Merge devnet to master ([#8472](#8472)) ([26706e9](26706e9)) </details> <details><summary>barretenberg.js: 0.54.0</summary> ## [0.54.0](barretenberg.js-v0.53.0...barretenberg.js-v0.54.0) (2024-09-10) ### Miscellaneous * **barretenberg.js:** Synchronize aztec-packages versions </details> <details><summary>aztec-packages: 0.54.0</summary> ## [0.54.0](aztec-packages-v0.53.0...aztec-packages-v0.54.0) (2024-09-10) ### ⚠ BREAKING CHANGES * **avm:** variants for binary operations ([#8473](#8473)) * **avm:** make JUMP(I) 16-bit ([#8443](#8443)) * **avm:** variants for SET opcode ([#8441](#8441)) * **avm:** variants for MOV opcode ([#8440](#8440)) ### Features * (bb) 128-bit challenges ([#8406](#8406)) ([d5b2397](d5b2397)) * `Module::add_item` (noir-lang/noir#5947) ([8ac81b1](8ac81b1)) * Add `Expr::as_let` (noir-lang/noir#5964) ([8ac81b1](8ac81b1)) * Add `FunctionDefinition::module` and `StructDefinition::module` (noir-lang/noir#5956) ([8ac81b1](8ac81b1)) * Add `FunctionDefinition` methods `is_unconstrained` and `set_unconstrained` (noir-lang/noir#5962) ([8ac81b1](8ac81b1)) * Add `StructDefinition::add_generic` (noir-lang/noir#5961) ([8ac81b1](8ac81b1)) * Add `StructDefinition::name` (noir-lang/noir#5960) ([8ac81b1](8ac81b1)) * Add a `panic` method to the stdlib (noir-lang/noir#5966) ([8ac81b1](8ac81b1)) * Archiver fork block num ([#8425](#8425)) ([a9f2364](a9f2364)) * Arithmetic Generics (noir-lang/noir#5950) ([8ac81b1](8ac81b1)) * **avm-transpiler:** Optionally count opcode types ([#8439](#8439)) ([21c06b5](21c06b5)) * **avm/public:** User space PublicContext::get_args_hash ([#8292](#8292)) ([56ce16a](56ce16a)) * **avm:** DSL integration of AVM recursive verifier ([#8405](#8405)) ([467120e](467120e)), closes [#8285](#8285) * **avm:** Make JUMP(I) 16-bit ([#8443](#8443)) ([5bb38b1](5bb38b1)) * **avm:** Variants for binary operations ([#8473](#8473)) ([8de1f2a](8de1f2a)) * **avm:** Variants for MOV opcode ([#8440](#8440)) ([5b27fbc](5b27fbc)) * **avm:** Variants for SET opcode ([#8441](#8441)) ([dc43306](dc43306)) * **bb:** Towards reduced polynomial memory usage ([#7990](#7990)) ([372f23c](372f23c)) * Let `nargo` and LSP work well in the stdlib (noir-lang/noir#5969) ([8ac81b1](8ac81b1)) * LSP autocompletion for attributes (noir-lang/noir#5963) ([8ac81b1](8ac81b1)) * LSP now suggests self fields and methods (noir-lang/noir#5955) ([8ac81b1](8ac81b1)) * Show doc comments in LSP (noir-lang/noir#5968) ([8ac81b1](8ac81b1)) ### Bug Fixes * Add re-exports back ([#8453](#8453)) ([b6cab90](b6cab90)) * **avm:** Full proving kernel fix ([#8468](#8468)) ([684d962](684d962)) * **bb:** Mac release ([#8450](#8450)) ([1b3f914](1b3f914)) * **docs:** Some docs updates ([#8412](#8412)) ([ad73f30](ad73f30)) * Error when `quote` is used in runtime code (noir-lang/noir#5978) ([8ac81b1](8ac81b1)) * Error when comptime functions are used in runtime code (noir-lang/noir#5976) ([8ac81b1](8ac81b1)) * Fmt ([#8454](#8454)) ([34b4a8a](34b4a8a)) * Guesstimate gas for propose ([#8445](#8445)) ([bff0338](bff0338)) * Let `derive(Eq)` work for empty structs (noir-lang/noir#5965) ([8ac81b1](8ac81b1)) * LSP document symbol didn't work for primitive impls (noir-lang/noir#5970) ([8ac81b1](8ac81b1)) * **mem2reg:** Handle aliases better when setting a known value for a load (noir-lang/noir#5959) ([8ac81b1](8ac81b1)) * **mem2reg:** Handle aliases in function last store cleanup and additional alias unit test (noir-lang/noir#5967) ([8ac81b1](8ac81b1)) * Public data reads and writes verification ([#8296](#8296)) ([ae86347](ae86347)) * Restrict keccak256_injective test input to 8 bits (noir-lang/noir#5977) ([8ac81b1](8ac81b1)) * Suggest trait attributes in LSP (noir-lang/noir#5972) ([8ac81b1](8ac81b1)) ### Miscellaneous * **bb:** Remove poly downsizing, other fast-follow from structured polys ([#8475](#8475)) ([ac88f30](ac88f30)) * **ci:** Rerun ci when ready for review + don't allow draft merge ([#8456](#8456)) ([ede16d3](ede16d3)) * **docs:** Update box readme, remove duplicated features, added box install to the docs ([#8254](#8254)) ([b747ac1](b747ac1)) * Document BoundedVec (noir-lang/noir#5974) ([8ac81b1](8ac81b1)) * Document HashMap (noir-lang/noir#5984) ([8ac81b1](8ac81b1)) * Merge devnet to master ([#8472](#8472)) ([26706e9](26706e9)) * Remove 3 unused functions warnings in the stdlib (noir-lang/noir#5973) ([8ac81b1](8ac81b1)) * Remove warnings from protocol circuits ([#8420](#8420)) ([c4dbcab](c4dbcab)) * Rename files relating to what were "instances" ([#8383](#8383)) ([a934e85](a934e85)) * Replace relative paths to noir-protocol-circuits ([1c43bae](1c43bae)) </details> <details><summary>barretenberg: 0.54.0</summary> ## [0.54.0](barretenberg-v0.53.0...barretenberg-v0.54.0) (2024-09-10) ### ⚠ BREAKING CHANGES * **avm:** variants for binary operations ([#8473](#8473)) * **avm:** make JUMP(I) 16-bit ([#8443](#8443)) * **avm:** variants for SET opcode ([#8441](#8441)) * **avm:** variants for MOV opcode ([#8440](#8440)) ### Features * (bb) 128-bit challenges ([#8406](#8406)) ([d5b2397](d5b2397)) * **avm:** DSL integration of AVM recursive verifier ([#8405](#8405)) ([467120e](467120e)), closes [#8285](#8285) * **avm:** Make JUMP(I) 16-bit ([#8443](#8443)) ([5bb38b1](5bb38b1)) * **avm:** Variants for binary operations ([#8473](#8473)) ([8de1f2a](8de1f2a)) * **avm:** Variants for MOV opcode ([#8440](#8440)) ([5b27fbc](5b27fbc)) * **avm:** Variants for SET opcode ([#8441](#8441)) ([dc43306](dc43306)) * **bb:** Towards reduced polynomial memory usage ([#7990](#7990)) ([372f23c](372f23c)) ### Bug Fixes * **avm:** Full proving kernel fix ([#8468](#8468)) ([684d962](684d962)) * **bb:** Mac release ([#8450](#8450)) ([1b3f914](1b3f914)) ### Miscellaneous * **bb:** Remove poly downsizing, other fast-follow from structured polys ([#8475](#8475)) ([ac88f30](ac88f30)) * Rename files relating to what were "instances" ([#8383](#8383)) ([a934e85](a934e85)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-package: 0.54.0</summary> ## [0.54.0](AztecProtocol/aztec-packages@aztec-package-v0.53.0...aztec-package-v0.54.0) (2024-09-10) ### Features * Archiver fork block num ([#8425](AztecProtocol/aztec-packages#8425)) ([a9f2364](AztecProtocol/aztec-packages@a9f2364)) ### Miscellaneous * Merge devnet to master ([#8472](AztecProtocol/aztec-packages#8472)) ([26706e9](AztecProtocol/aztec-packages@26706e9)) </details> <details><summary>barretenberg.js: 0.54.0</summary> ## [0.54.0](AztecProtocol/aztec-packages@barretenberg.js-v0.53.0...barretenberg.js-v0.54.0) (2024-09-10) ### Miscellaneous * **barretenberg.js:** Synchronize aztec-packages versions </details> <details><summary>aztec-packages: 0.54.0</summary> ## [0.54.0](AztecProtocol/aztec-packages@aztec-packages-v0.53.0...aztec-packages-v0.54.0) (2024-09-10) ### ⚠ BREAKING CHANGES * **avm:** variants for binary operations ([#8473](AztecProtocol/aztec-packages#8473)) * **avm:** make JUMP(I) 16-bit ([#8443](AztecProtocol/aztec-packages#8443)) * **avm:** variants for SET opcode ([#8441](AztecProtocol/aztec-packages#8441)) * **avm:** variants for MOV opcode ([#8440](AztecProtocol/aztec-packages#8440)) ### Features * (bb) 128-bit challenges ([#8406](AztecProtocol/aztec-packages#8406)) ([d5b2397](AztecProtocol/aztec-packages@d5b2397)) * `Module::add_item` (noir-lang/noir#5947) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * Add `Expr::as_let` (noir-lang/noir#5964) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * Add `FunctionDefinition::module` and `StructDefinition::module` (noir-lang/noir#5956) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * Add `FunctionDefinition` methods `is_unconstrained` and `set_unconstrained` (noir-lang/noir#5962) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * Add `StructDefinition::add_generic` (noir-lang/noir#5961) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * Add `StructDefinition::name` (noir-lang/noir#5960) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * Add a `panic` method to the stdlib (noir-lang/noir#5966) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * Archiver fork block num ([#8425](AztecProtocol/aztec-packages#8425)) ([a9f2364](AztecProtocol/aztec-packages@a9f2364)) * Arithmetic Generics (noir-lang/noir#5950) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * **avm-transpiler:** Optionally count opcode types ([#8439](AztecProtocol/aztec-packages#8439)) ([21c06b5](AztecProtocol/aztec-packages@21c06b5)) * **avm/public:** User space PublicContext::get_args_hash ([#8292](AztecProtocol/aztec-packages#8292)) ([56ce16a](AztecProtocol/aztec-packages@56ce16a)) * **avm:** DSL integration of AVM recursive verifier ([#8405](AztecProtocol/aztec-packages#8405)) ([467120e](AztecProtocol/aztec-packages@467120e)), closes [#8285](AztecProtocol/aztec-packages#8285) * **avm:** Make JUMP(I) 16-bit ([#8443](AztecProtocol/aztec-packages#8443)) ([5bb38b1](AztecProtocol/aztec-packages@5bb38b1)) * **avm:** Variants for binary operations ([#8473](AztecProtocol/aztec-packages#8473)) ([8de1f2a](AztecProtocol/aztec-packages@8de1f2a)) * **avm:** Variants for MOV opcode ([#8440](AztecProtocol/aztec-packages#8440)) ([5b27fbc](AztecProtocol/aztec-packages@5b27fbc)) * **avm:** Variants for SET opcode ([#8441](AztecProtocol/aztec-packages#8441)) ([dc43306](AztecProtocol/aztec-packages@dc43306)) * **bb:** Towards reduced polynomial memory usage ([#7990](AztecProtocol/aztec-packages#7990)) ([372f23c](AztecProtocol/aztec-packages@372f23c)) * Let `nargo` and LSP work well in the stdlib (noir-lang/noir#5969) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * LSP autocompletion for attributes (noir-lang/noir#5963) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * LSP now suggests self fields and methods (noir-lang/noir#5955) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * Show doc comments in LSP (noir-lang/noir#5968) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) ### Bug Fixes * Add re-exports back ([#8453](AztecProtocol/aztec-packages#8453)) ([b6cab90](AztecProtocol/aztec-packages@b6cab90)) * **avm:** Full proving kernel fix ([#8468](AztecProtocol/aztec-packages#8468)) ([684d962](AztecProtocol/aztec-packages@684d962)) * **bb:** Mac release ([#8450](AztecProtocol/aztec-packages#8450)) ([1b3f914](AztecProtocol/aztec-packages@1b3f914)) * **docs:** Some docs updates ([#8412](AztecProtocol/aztec-packages#8412)) ([ad73f30](AztecProtocol/aztec-packages@ad73f30)) * Error when `quote` is used in runtime code (noir-lang/noir#5978) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * Error when comptime functions are used in runtime code (noir-lang/noir#5976) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * Fmt ([#8454](AztecProtocol/aztec-packages#8454)) ([34b4a8a](AztecProtocol/aztec-packages@34b4a8a)) * Guesstimate gas for propose ([#8445](AztecProtocol/aztec-packages#8445)) ([bff0338](AztecProtocol/aztec-packages@bff0338)) * Let `derive(Eq)` work for empty structs (noir-lang/noir#5965) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * LSP document symbol didn't work for primitive impls (noir-lang/noir#5970) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * **mem2reg:** Handle aliases better when setting a known value for a load (noir-lang/noir#5959) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * **mem2reg:** Handle aliases in function last store cleanup and additional alias unit test (noir-lang/noir#5967) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * Public data reads and writes verification ([#8296](AztecProtocol/aztec-packages#8296)) ([ae86347](AztecProtocol/aztec-packages@ae86347)) * Restrict keccak256_injective test input to 8 bits (noir-lang/noir#5977) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * Suggest trait attributes in LSP (noir-lang/noir#5972) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) ### Miscellaneous * **bb:** Remove poly downsizing, other fast-follow from structured polys ([#8475](AztecProtocol/aztec-packages#8475)) ([ac88f30](AztecProtocol/aztec-packages@ac88f30)) * **ci:** Rerun ci when ready for review + don't allow draft merge ([#8456](AztecProtocol/aztec-packages#8456)) ([ede16d3](AztecProtocol/aztec-packages@ede16d3)) * **docs:** Update box readme, remove duplicated features, added box install to the docs ([#8254](AztecProtocol/aztec-packages#8254)) ([b747ac1](AztecProtocol/aztec-packages@b747ac1)) * Document BoundedVec (noir-lang/noir#5974) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * Document HashMap (noir-lang/noir#5984) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * Merge devnet to master ([#8472](AztecProtocol/aztec-packages#8472)) ([26706e9](AztecProtocol/aztec-packages@26706e9)) * Remove 3 unused functions warnings in the stdlib (noir-lang/noir#5973) ([8ac81b1](AztecProtocol/aztec-packages@8ac81b1)) * Remove warnings from protocol circuits ([#8420](AztecProtocol/aztec-packages#8420)) ([c4dbcab](AztecProtocol/aztec-packages@c4dbcab)) * Rename files relating to what were "instances" ([#8383](AztecProtocol/aztec-packages#8383)) ([a934e85](AztecProtocol/aztec-packages@a934e85)) * Replace relative paths to noir-protocol-circuits ([1c43bae](AztecProtocol/aztec-packages@1c43bae)) </details> <details><summary>barretenberg: 0.54.0</summary> ## [0.54.0](AztecProtocol/aztec-packages@barretenberg-v0.53.0...barretenberg-v0.54.0) (2024-09-10) ### ⚠ BREAKING CHANGES * **avm:** variants for binary operations ([#8473](AztecProtocol/aztec-packages#8473)) * **avm:** make JUMP(I) 16-bit ([#8443](AztecProtocol/aztec-packages#8443)) * **avm:** variants for SET opcode ([#8441](AztecProtocol/aztec-packages#8441)) * **avm:** variants for MOV opcode ([#8440](AztecProtocol/aztec-packages#8440)) ### Features * (bb) 128-bit challenges ([#8406](AztecProtocol/aztec-packages#8406)) ([d5b2397](AztecProtocol/aztec-packages@d5b2397)) * **avm:** DSL integration of AVM recursive verifier ([#8405](AztecProtocol/aztec-packages#8405)) ([467120e](AztecProtocol/aztec-packages@467120e)), closes [#8285](AztecProtocol/aztec-packages#8285) * **avm:** Make JUMP(I) 16-bit ([#8443](AztecProtocol/aztec-packages#8443)) ([5bb38b1](AztecProtocol/aztec-packages@5bb38b1)) * **avm:** Variants for binary operations ([#8473](AztecProtocol/aztec-packages#8473)) ([8de1f2a](AztecProtocol/aztec-packages@8de1f2a)) * **avm:** Variants for MOV opcode ([#8440](AztecProtocol/aztec-packages#8440)) ([5b27fbc](AztecProtocol/aztec-packages@5b27fbc)) * **avm:** Variants for SET opcode ([#8441](AztecProtocol/aztec-packages#8441)) ([dc43306](AztecProtocol/aztec-packages@dc43306)) * **bb:** Towards reduced polynomial memory usage ([#7990](AztecProtocol/aztec-packages#7990)) ([372f23c](AztecProtocol/aztec-packages@372f23c)) ### Bug Fixes * **avm:** Full proving kernel fix ([#8468](AztecProtocol/aztec-packages#8468)) ([684d962](AztecProtocol/aztec-packages@684d962)) * **bb:** Mac release ([#8450](AztecProtocol/aztec-packages#8450)) ([1b3f914](AztecProtocol/aztec-packages@1b3f914)) ### Miscellaneous * **bb:** Remove poly downsizing, other fast-follow from structured polys ([#8475](AztecProtocol/aztec-packages#8475)) ([ac88f30](AztecProtocol/aztec-packages@ac88f30)) * Rename files relating to what were "instances" ([#8383](AztecProtocol/aztec-packages#8383)) ([a934e85](AztecProtocol/aztec-packages@a934e85)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
Resolves #8285