Skip to content

workspace,starknet_proof_verifier: bump privacy-{prove,circuit-verify} to 039e52c, add v0/v1 aliases#14017

Merged
Yoni-Starkware merged 1 commit into
mainfrom
05-10-workspace_starknet_proof_verifier_bump_privacy-prove_and_privacy-circuit-verify_to_69ed219_add_legacy_alias_dispatch_v0_to_legacy
May 21, 2026
Merged

workspace,starknet_proof_verifier: bump privacy-{prove,circuit-verify} to 039e52c, add v0/v1 aliases#14017
Yoni-Starkware merged 1 commit into
mainfrom
05-10-workspace_starknet_proof_verifier_bump_privacy-prove_and_privacy-circuit-verify_to_69ed219_add_legacy_alias_dispatch_v0_to_legacy

Conversation

@Yoni-Starkware

@Yoni-Starkware Yoni-Starkware commented May 10, 2026

Copy link
Copy Markdown
Collaborator

Stack:

Summary

Bumps the workspace's privacy-prove and privacy-circuit-verify dependencies to 95bc227 and adds a v0 alias dispatch. Picks up the keccak builtin simulation in the privacy bootloader (starkware-libs/proving-utils#342, @yuvalg) plus regenerated circuit verifier constants (starkware-libs/proving-utils#343).

Regenerates the example proof fixtures to match the new prover output format:

  • crates/apollo_transaction_converter/resources/example_proof.bin
  • crates/apollo_transaction_converter/resources/example_proof_facts.json
  • crates/starknet_proof_verifier/resources/regression_test/0.14.3/example_proof.bin
  • crates/starknet_proof_verifier/resources/regression_test/0.14.3/example_proof_facts.json

The rev points at Yoni-Starkware/proving-utils because the relevant fix commits are not yet merged upstream; switch to a starkware-libs rev once proving-utils#343 (and its base PRs #341, #342) land.

@cursor

cursor Bot commented May 10, 2026

Copy link
Copy Markdown

PR Summary

Medium Risk
Updates core proof/prover dependencies and introduces version-based dispatch for proof verification, which could change verification outcomes or break compatibility with existing proofs if upstream behavior differs. Risk is mitigated by keeping a pinned legacy verifier for V0 while moving V1 to the new revision.

Overview
Bumps privacy-prove and the current privacy-circuit-verify dependency to a newer proving-utils git revision, pulling in updated stwo/cairo/circuit crates and related lockfile updates.

Introduces explicit verifier aliases privacy-circuit-verify-v0 (old rev) and privacy-circuit-verify-v1 (new rev), and updates starknet_proof_verifier::verify_proof to dispatch verification by ProofVersion (V0 → v0 crate, V1 → v1 crate). Tests in starknet_transaction_prover are updated to use the v1 verifier.

Reviewed by Cursor Bugbot for commit aff094e. Bugbot is set up for automated code reviews on this repo. Configure here.

@reviewable-StarkWare

Copy link
Copy Markdown

This change is Reviewable

@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-workspace_starknet_proof_verifier_bump_privacy-prove_and_privacy-circuit-verify_to_69ed219_add_legacy_alias_dispatch_v0_to_legacy branch from d445589 to 845affe Compare May 11, 2026 06:34
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-starknet_proof_verifier_add_v0.14.3_regression_case_for_proof_version_v1_fixture branch from 6ac567b to 963202d Compare May 11, 2026 06:34
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-workspace_starknet_proof_verifier_bump_privacy-prove_and_privacy-circuit-verify_to_69ed219_add_legacy_alias_dispatch_v0_to_legacy branch from 845affe to bd31b43 Compare May 11, 2026 07:23
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-starknet_proof_verifier_add_v0.14.3_regression_case_for_proof_version_v1_fixture branch 2 times, most recently from 1a88611 to ef43d9f Compare May 11, 2026 07:30
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-workspace_starknet_proof_verifier_bump_privacy-prove_and_privacy-circuit-verify_to_69ed219_add_legacy_alias_dispatch_v0_to_legacy branch 2 times, most recently from b4fb627 to afe1573 Compare May 11, 2026 07:32
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-starknet_proof_verifier_add_v0.14.3_regression_case_for_proof_version_v1_fixture branch from ef43d9f to 67dfc82 Compare May 11, 2026 07:32
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-workspace_starknet_proof_verifier_bump_privacy-prove_and_privacy-circuit-verify_to_69ed219_add_legacy_alias_dispatch_v0_to_legacy branch from afe1573 to f09af06 Compare May 11, 2026 07:33
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-starknet_proof_verifier_add_v0.14.3_regression_case_for_proof_version_v1_fixture branch from 67dfc82 to 430f38c Compare May 11, 2026 07:33
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-workspace_starknet_proof_verifier_bump_privacy-prove_and_privacy-circuit-verify_to_69ed219_add_legacy_alias_dispatch_v0_to_legacy branch from f09af06 to dc465e6 Compare May 11, 2026 07:55
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-starknet_proof_verifier_add_v0.14.3_regression_case_for_proof_version_v1_fixture branch 3 times, most recently from 42bbbd4 to c5110f2 Compare May 11, 2026 11:49
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-workspace_starknet_proof_verifier_bump_privacy-prove_and_privacy-circuit-verify_to_69ed219_add_legacy_alias_dispatch_v0_to_legacy branch 2 times, most recently from a274215 to 85967fb Compare May 11, 2026 12:03
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-starknet_proof_verifier_add_v0.14.3_regression_case_for_proof_version_v1_fixture branch from c5110f2 to 6e47d4b Compare May 11, 2026 12:03
Comment thread crates/starknet_proof_verifier/src/proof_verifier.rs

@AvivYossef-starkware AvivYossef-starkware 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.

Can be in a different PR, but I think we need to add cases for virtual snos prover test (round-trip proving and verifying in the CI) .
and maybe change/add cases to the os tests for tx with proof facts

@AvivYossef-starkware reviewed 4 files and all commit messages, and made 1 comment.
Reviewable status: 4 of 6 files reviewed, 1 unresolved discussion (waiting on Yoni-Starkware).

@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-starknet_proof_verifier_add_v0.14.3_regression_case_for_proof_version_v1_fixture branch from 6e47d4b to df403f4 Compare May 17, 2026 09:58
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-starknet_proof_verifier_add_v0.14.3_regression_case_for_proof_version_v1_fixture branch from c37c0fe to eb4e814 Compare May 18, 2026 12:10
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-workspace_starknet_proof_verifier_bump_privacy-prove_and_privacy-circuit-verify_to_69ed219_add_legacy_alias_dispatch_v0_to_legacy branch from 0b391c7 to 32350e2 Compare May 18, 2026 12:10
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-starknet_proof_verifier_add_v0.14.3_regression_case_for_proof_version_v1_fixture branch from eb4e814 to acaa303 Compare May 18, 2026 13:54
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-workspace_starknet_proof_verifier_bump_privacy-prove_and_privacy-circuit-verify_to_69ed219_add_legacy_alias_dispatch_v0_to_legacy branch 2 times, most recently from 6fcaefc to 80f6045 Compare May 19, 2026 06:52
@Yoni-Starkware Yoni-Starkware changed the base branch from 05-10-starknet_proof_verifier_add_v0.14.3_regression_case_for_proof_version_v1_fixture to main May 19, 2026 06:53
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-workspace_starknet_proof_verifier_bump_privacy-prove_and_privacy-circuit-verify_to_69ed219_add_legacy_alias_dispatch_v0_to_legacy branch from 80f6045 to 0bd2e48 Compare May 19, 2026 10:36

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 0bd2e48. Configure here.

Comment thread Cargo.toml Outdated
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-workspace_starknet_proof_verifier_bump_privacy-prove_and_privacy-circuit-verify_to_69ed219_add_legacy_alias_dispatch_v0_to_legacy branch 2 times, most recently from af06eb0 to 4377e32 Compare May 19, 2026 12:58

@AvivYossef-starkware AvivYossef-starkware 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.

@AvivYossef-starkware reviewed 10 files and all commit messages, and made 1 comment.
Reviewable status: 10 of 15 files reviewed, all discussions resolved.


.github/workflows/starknet_transaction_prover_ci.yml line 118 at r7 (raw file):

      - name: Run virtual OS multicall proving test
        working-directory: crates/starknet_transaction_prover
        run: cargo test --release -p starknet_os_flow_tests --features starknet_transaction_prover/stwo_proving prove_and_verify_multicall_tx -- --ignored --test-threads=1

why?

Code quote:

--test-threads=1

@Yoni-Starkware Yoni-Starkware changed the base branch from main to 05-19-multicall_keccak_ec_op_prove_test_remove_balance_of May 19, 2026 15:46

@Yoni-Starkware Yoni-Starkware left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

@Yoni-Starkware partially reviewed 2 files and made 1 comment.
Reviewable status: 2 of 15 files reviewed, all discussions resolved (waiting on AvivYossef-starkware).


.github/workflows/starknet_transaction_prover_ci.yml line 118 at r7 (raw file):

Previously, AvivYossef-starkware wrote…

why?

Similar to @avi-starkware's test above

      # Run tests sequentially (no parallelism) since proving is a heavy CPU and memory intensive task

@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-workspace_starknet_proof_verifier_bump_privacy-prove_and_privacy-circuit-verify_to_69ed219_add_legacy_alias_dispatch_v0_to_legacy branch 6 times, most recently from e9aef6a to a6beb27 Compare May 20, 2026 12:50
@Yoni-Starkware Yoni-Starkware changed the title workspace,starknet_proof_verifier: bump privacy-{prove,circuit-verify} to 69ed219, add legacy alias workspace,starknet_proof_verifier: bump privacy-{prove,circuit-verify} to 039e52c, add v0/v1 aliases May 20, 2026
…} to 039e52c, add v0/v1 aliases

Picks up the keccak builtin simulation in the privacy bootloader
(starkware-libs/proving-utils#342 by @yuvalg), allowing virtual-OS proofs
that exercise the keccak builtin to be generated and verified.

Renames the workspace alias `privacy-circuit-verify` to
`privacy-circuit-verify-v1` (with `package = "privacy-circuit-verify"`) to
match the existing `privacy-circuit-verify-v0` sibling and the
`ProofVersion::{V0, V1}` enum naming; the proof verifier dispatches on
proof version and uses the corresponding alias.

Regenerates the example proof fixtures
(`apollo_transaction_converter/resources/example_proof.bin` and the
`0.14.3` regression copy in `starknet_proof_verifier/resources/regression_test/0.14.3/`)
against the new prover output.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@Yoni-Starkware Yoni-Starkware force-pushed the 05-10-workspace_starknet_proof_verifier_bump_privacy-prove_and_privacy-circuit-verify_to_69ed219_add_legacy_alias_dispatch_v0_to_legacy branch from a6beb27 to aff094e Compare May 20, 2026 12:53
@Yoni-Starkware Yoni-Starkware changed the base branch from 05-19-multicall_keccak_ec_op_prove_test_remove_balance_of to main May 20, 2026 12:53

@AvivYossef-starkware AvivYossef-starkware 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.

@AvivYossef-starkware reviewed 16 files and all commit messages, and made 1 comment.
Reviewable status: :shipit: complete! all files reviewed, all discussions resolved (waiting on Yoni-Starkware).


.github/workflows/starknet_transaction_prover_ci.yml line 118 at r7 (raw file):

Previously, Yoni-Starkware (Yoni) wrote…

Similar to @avi-starkware's test above

      # Run tests sequentially (no parallelism) since proving is a heavy CPU and memory intensive task

It was needed when we had 2 proofs in parallel, it's not the case now, so you can keep it for safety or remove it

@Yoni-Starkware Yoni-Starkware added this pull request to the merge queue May 21, 2026
Merged via the queue into main with commit 44b6173 May 21, 2026
42 checks passed
@github-actions github-actions Bot locked and limited conversation to collaborators May 24, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants