apollo_transaction_converter: align proving deps with stwo 1.0.1#12707
apollo_transaction_converter: align proving deps with stwo 1.0.1#12707avi-starkware merged 2 commits intomain-v0.14.2from
Conversation
10ba7a0 to
39fd2b2
Compare
Yoni-Starkware
left a comment
There was a problem hiding this comment.
@Yoni-Starkware reviewed 1 file and all commit messages, and made 1 comment.
Reviewable status: 1 of 13 files reviewed, 1 unresolved discussion (waiting on avi-starkware, einat-starkware, and noaov1).
crates/apollo_compile_to_casm_types/src/test.rs line 27 at r1 (raw file):
const EXPECTED: &str = "{\"V1\":[{\"prime\":\"0x0\",\"compiler_version\":\"\",\"bytecode\":[\"\ 0x1\",\"0x1\",\"0x1\"],\"hints\":[],\"entry_points_by_type\":{\"\ EXTERNAL\":[],\"L1_HANDLER\":[],\"CONSTRUCTOR\":[]}},\"1.7.0\"]}";
Ho not again. I fixed this a few fix ago
Code quote:
const EXPECTED: &str = "{\"V1\":[{\"prime\":\"0x0\",\"compiler_version\":\"\",\"bytecode\":[\"\
0x1\",\"0x1\",\"0x1\"],\"hints\":[],\"entry_points_by_type\":{\"\
EXTERNAL\":[],\"L1_HANDLER\":[],\"CONSTRUCTOR\":[]}},\"1.7.0\"]}";
Yoni-Starkware
left a comment
There was a problem hiding this comment.
@Yoni-Starkware made 1 comment.
Reviewable status: 1 of 13 files reviewed, 1 unresolved discussion (waiting on avi-starkware, einat-starkware, and noaov1).
crates/apollo_compile_to_casm_types/src/test.rs line 27 at r1 (raw file):
Previously, Yoni-Starkware (Yoni) wrote…
Ho not again. I fixed this a few fix ago
There's an unnecessary feature that propagates from one of the new deps. TAL
Yoni-Starkware
left a comment
There was a problem hiding this comment.
@Yoni-Starkware made 1 comment.
Reviewable status: 1 of 13 files reviewed, 1 unresolved discussion (waiting on avi-starkware, einat-starkware, and noaov1).
crates/apollo_compile_to_casm_types/src/test.rs line 27 at r1 (raw file):
Previously, Yoni-Starkware (Yoni) wrote…
There's an unnecessary feature that propagates from one of the new deps. TAL
"preserve_order"
39fd2b2 to
3ee787c
Compare
|
Previously, Yoni-Starkware (Yoni) wrote…
fixed (using stwo crates at |
|
I had to use tomer's branch instead of a stable version since there is no published version of cairo_native which supports cairo-lang Note that tomer's branch still does not pass lambdaclass's ci Code quote: cairo-native = { git = "https://github.com/lambdaclass/cairo_native", branch = "tomer/blake_builtin" } |
3ee787c to
0cb054c
Compare
Yoni-Starkware
left a comment
There was a problem hiding this comment.
@Yoni-Starkware reviewed 14 files and all commit messages, made 1 comment, and resolved 1 discussion.
Reviewable status: all files reviewed, 1 unresolved discussion (waiting on einat-starkware and noaov1).
Yoni-Starkware
left a comment
There was a problem hiding this comment.
@Yoni-Starkware reviewed all commit messages and made 1 comment.
Reviewable status: 14 of 18 files reviewed, 2 unresolved discussions (waiting on avi-starkware, einat-starkware, and noaov1).
crates/apollo_compile_to_casm/src/compile_test.rs line 133 at r4 (raw file):
#[test] fn allowed_libfuncs_aligned_to_audited() {
Align allowed_libfunc file to the new format
fa0d50b to
a8b50bd
Compare
Yoni-Starkware
left a comment
There was a problem hiding this comment.
@Yoni-Starkware partially reviewed 2 files and made 1 comment.
Reviewable status: 15 of 20 files reviewed, 3 unresolved discussions (waiting on avi-starkware, einat-starkware, and noaov1).
crates/apollo_compile_to_casm/src/compile_test.rs line 159 at r6 (raw file):
"Audited libfuncs mismatch: (missing, extra)" ); }
Compare also the values, not just the keys of this file
Code quote:
let expected_keys: HashSet<_> = expected.keys().collect();
let actual_keys: HashSet<_> = actual.keys().collect();
let missing: Vec<_> = expected_keys.difference(&actual_keys).map(ToString::to_string).collect();
let extra: Vec<_> = actual_keys
.difference(&expected_keys)
.map(ToString::to_string)
.filter(|libfunc| !pending_set.contains(libfunc))
.collect();
assert_eq!(
(missing, extra),
(Vec::<String>::new(), Vec::<String>::new()),
"Audited libfuncs mismatch: (missing, extra)"
);
}a8b50bd to
9e076a3
Compare
9e076a3 to
e69f7bf
Compare
avi-starkware
left a comment
There was a problem hiding this comment.
@avi-starkware made 2 comments and resolved 1 discussion.
Reviewable status: 14 of 22 files reviewed, 2 unresolved discussions (waiting on einat-starkware, noaov1, and Yoni-Starkware).
crates/apollo_compile_to_casm/src/compile_test.rs line 133 at r4 (raw file):
Previously, Yoni-Starkware (Yoni) wrote…
Align
allowed_libfuncfile to the new format
Done.
crates/apollo_compile_to_casm/src/compile_test.rs line 159 at r6 (raw file):
Previously, Yoni-Starkware (Yoni) wrote…
Compare also the values, not just the keys of this file
Done.
9edc9fb to
7a11925
Compare
…shed 1.1.0 releases Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…6 and cairo-native Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
7a11925 to
b94d1f5
Compare
Yoni-Starkware
left a comment
There was a problem hiding this comment.
@Yoni-Starkware reviewed 8 files and all commit messages, made 1 comment, and resolved 1 discussion.
Reviewable status: all files reviewed, 1 unresolved discussion (waiting on einat-starkware and noaov1).
avi-starkware
left a comment
There was a problem hiding this comment.
@avi-starkware resolved 1 discussion.
Reviewable status:complete! all files reviewed, all discussions resolved (waiting on einat-starkware and noaov1).
Summary
cairo-airfrom git rev to published 1.0.1,stwofrom git rev to 2.0.1.cairo-program-runner-lib,stwo-cairo-adapter,stwo-cairo-prover, andstwo-run-and-prove(consumed in later PRs).proof_verification.rsto the simplifiedverify_cairoAPI (CairoProofForRustVerifierreplacesCairoProofSorted+PreProcessedTraceVariant).Stack: 1/4 — this PR isolates the global dependency/API migration from runner behavior changes.
Test plan
cargo test -p apollo_transaction_convertercargo clippy -p apollo_transaction_converter --all-targets --all-features🤖 Generated with Claude Code
Note
Medium Risk
Bumps core proving/verification dependencies and adjusts proof deserialization/verification and native builtin cost wiring, which can change verification behavior and execution accounting despite being mostly dependency/API alignment.
Overview
Upgrades proving/verification dependencies from pinned git revs and dev versions to published crates, including
cairo-air1.1.0, Cairo compiler crates2.16.0, andstwo2.1.0, and adds new workspace deps (cairo-program-runner-lib,stwo-cairo-*,stwo-run-and-prove) for follow-up work.Refactors proof verification to match the new
cairo-airAPI by deserializing intoCairoProofForRustVerifierand calling the simplifiedverify_cairo(noPreProcessedTraceVariant/conversion step), and updates proof-facts test data accordingly. The CASM compilation allowlist is reformatted to a versioned map and extended for new libfuncs (incl. blake-related), with tighter alignment tests; Cairo-native compilation is temporarily pinned to a git branch (and its version test ignored) while adding blake builtin support plumbing into native execution gas costs.Written by Cursor Bugbot for commit b94d1f5. This will update automatically on new commits. Configure here.