Skip to content

feat(bb): add subset of bbrpc. test api_client_ivc.cpp#15476

Merged
ludamad merged 21 commits into
merge-train/barretenbergfrom
ad/bbrpc/carve-out-api-client-ivc-tests
Jul 3, 2025
Merged

feat(bb): add subset of bbrpc. test api_client_ivc.cpp#15476
ludamad merged 21 commits into
merge-train/barretenbergfrom
ad/bbrpc/carve-out-api-client-ivc-tests

Conversation

@ludamad

@ludamad ludamad commented Jul 2, 2025

Copy link
Copy Markdown
Collaborator

Picks out a ready-to-merge chunk of bbrpc functionality.
bbrpc_commands.hpp defining RPC command structures
named_union.hpp for command variant handling
bbrpc_execute.hpp doing some basic execution

added the first acir-serializing tests to api_client_ivc.test.cpp

- Add api_client_ivc.test.cpp with tests for ClientIVC API
- Add bbrpc_commands.hpp defining RPC command structures
- Add supporting headers (bbrpc_common.hpp, bbrpc_execute.hpp, proving_helpers.hpp)
- Add named_union.hpp for command variant handling
- Add acir_bincode_mocks.hpp for test data generation
- Add compress_and_save method to PrivateExecutionStepRaw
- Fix mock circuit construction to avoid public input conflicts

These changes carve out the necessary components for ClientIVC API testing
without modifying the existing api_client_ivc.cpp implementation.
@ludamad ludamad requested a review from charlielye as a code owner July 2, 2025 17:56
@AztecBot AztecBot force-pushed the merge-train/barretenberg branch from 6e073a5 to 1829e9a Compare July 2, 2025 18:42
@AztecBot AztecBot force-pushed the merge-train/barretenberg branch from 1829e9a to 83791b3 Compare July 2, 2025 19:08
AztecBot and others added 11 commits July 2, 2025 19:08
Adds versions of all recursive verifiers involved in CIVC recursive
verification that take the appropriate stdlib proof type. I've opted not
to remove the versions that take a a native proof since they're not
inherently insecure (although can be misused). We may decide to remove
them in the future.
…c-tests' into ad/bbrpc/carve-out-api-client-ivc-tests
@ludamad ludamad added the auto-rebase-pr Automatically rebase a pull-request. label Jul 2, 2025
@AztecBot AztecBot removed the auto-rebase-pr Automatically rebase a pull-request. label Jul 2, 2025
@ludamad ludamad added the auto-rebase-pr Automatically rebase a pull-request. label Jul 2, 2025
@AztecBot AztecBot force-pushed the ad/bbrpc/carve-out-api-client-ivc-tests branch from 4c3af73 to 9a1f1b8 Compare July 2, 2025 22:54
@AztecBot AztecBot removed the auto-rebase-pr Automatically rebase a pull-request. label Jul 2, 2025
@AztecProtocol AztecProtocol deleted a comment from AztecBot Jul 2, 2025
@ludamad ludamad force-pushed the ad/bbrpc/carve-out-api-client-ivc-tests branch from 9a1f1b8 to e10b13a Compare July 2, 2025 22:59
Comment thread barretenberg/cpp/src/barretenberg/common/named_union.hpp
@ludamad ludamad changed the title feat(bb): test api_client_ivc.cpp feat(bb): add subset of bbrpc test api_client_ivc.cpp Jul 2, 2025
@ludamad ludamad changed the title feat(bb): add subset of bbrpc test api_client_ivc.cpp feat(bb): add subset of bbrpc. test api_client_ivc.cpp Jul 2, 2025
Comment thread .vscode/launch.json
@AztecBot AztecBot force-pushed the merge-train/barretenberg branch from 141bfcd to 74bac59 Compare July 3, 2025 03:06
@ledwards2225 ledwards2225 self-requested a review July 3, 2025 17:12

@ledwards2225 ledwards2225 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Awesome stuff, just left some general comments and points for discussion. I don't love the manual nature of constructing the ACIR for these tests so I do wonder if there's some way we could make that easier/more robust. E.g. if we wanted to scale it out to handle other kernels it would be pretty finicky I think. Maybe that's just not even necessary though since these are meant to be minimal tests of the interface, not the underlying logic (I assume).

Comment thread barretenberg/cpp/src/barretenberg/client_ivc/acir_bincode_mocks.hpp Outdated
Comment thread barretenberg/cpp/src/barretenberg/client_ivc/acir_bincode_mocks.hpp
Comment thread barretenberg/cpp/src/barretenberg/client_ivc/acir_bincode_mocks.hpp Outdated
Comment thread barretenberg/cpp/src/barretenberg/client_ivc/acir_bincode_mocks.hpp Outdated
Comment thread barretenberg/cpp/src/barretenberg/api/api_client_ivc.test.cpp Outdated
Comment thread barretenberg/cpp/src/barretenberg/api/api_client_ivc.test.cpp Outdated
Comment thread barretenberg/cpp/src/barretenberg/api/api_client_ivc.test.cpp Outdated
Comment thread barretenberg/cpp/src/barretenberg/api/bbrpc_commands.hpp
Comment thread barretenberg/cpp/src/barretenberg/api/bbrpc_execute.hpp
@ludamad ludamad force-pushed the ad/bbrpc/carve-out-api-client-ivc-tests branch from 0059459 to a69771c Compare July 3, 2025 20:21
@ludamad ludamad force-pushed the ad/bbrpc/carve-out-api-client-ivc-tests branch from a69771c to c1eb3bc Compare July 3, 2025 20:25
@ludamad ludamad enabled auto-merge (squash) July 3, 2025 20:28
@ludamad ludamad disabled auto-merge July 3, 2025 21:22
@ludamad ludamad enabled auto-merge (squash) July 3, 2025 21:22
@ludamad ludamad merged commit b14dbc4 into merge-train/barretenberg Jul 3, 2025
4 checks passed
@ludamad ludamad deleted the ad/bbrpc/carve-out-api-client-ivc-tests branch July 3, 2025 21:22
github-merge-queue Bot pushed a commit that referenced this pull request Jul 4, 2025
See
[merge-train-readme.md](https://github.com/AztecProtocol/aztec-packages/blob/next/.github/workflows/merge-train-readme.md).

feat: script to benchmark example flows remotely (#15469)
chore: Distribute content equally for each range (#15403)
fix: update default benchmark in benchmark_remote.sh (#15500)
feat(bb): add subset of bbrpc. test api_client_ivc.cpp (#15476)

---------

Co-authored-by: AztecBot <tech@aztecprotocol.com>
Co-authored-by: Jonathan Hao <jonathan@aztec-labs.com>
Co-authored-by: ledwards2225 <98505400+ledwards2225@users.noreply.github.com>
AztecBot pushed a commit that referenced this pull request Jul 4, 2025
…etenberg

original commits:
- 74bac59 [empty] Start merge-train. Choo choo. (74bac59)
- 18d5b23 feat: script to benchmark example flows remotely (#15469) (18d5b23)
- 3cf54e5 chore: Distribute content equally for each range (#15403) (3cf54e5)
- a61ee43 fix: update default benchmark in benchmark_remote.sh (#15500) (a61ee43)
- b14dbc4 feat(bb): add subset of bbrpc. test api_client_ivc.cpp (#15476) (b14dbc4)
- eb5af58 fix(merge-train): don't enter re-merge loop (eb5af58)
- 2983c24 Update auto_rebase_pr.sh (2983c24)
- 66f4632 Update auto_rebase_pr.sh (66f4632)
danielntmd pushed a commit to danielntmd/aztec-packages that referenced this pull request Jul 16, 2025
See
[merge-train-readme.md](https://github.com/AztecProtocol/aztec-packages/blob/next/.github/workflows/merge-train-readme.md).

feat: script to benchmark example flows remotely (AztecProtocol#15469)
chore: Distribute content equally for each range (AztecProtocol#15403)
fix: update default benchmark in benchmark_remote.sh (AztecProtocol#15500)
feat(bb): add subset of bbrpc. test api_client_ivc.cpp (AztecProtocol#15476)

---------

Co-authored-by: AztecBot <tech@aztecprotocol.com>
Co-authored-by: Jonathan Hao <jonathan@aztec-labs.com>
Co-authored-by: ledwards2225 <98505400+ledwards2225@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants