Skip to content

Conversation

@lightsing
Copy link
Member

@lightsing lightsing commented Aug 18, 2025

The goal of this PR is to "refresh" libs and clean tech debts.

Changes:

  1. refactor of sbv. (a) Move block codes into sbv, move chunk codes into zkvm-prover (b) sbv moves old types as sbv_primitives::legacy_types::BlockWitness and use reth types as much as possible as new BlockWitness. Converting functions also added. Need to be careful when integrating here.
  2. switch to bincode from rkyv. The guest now only accepts bincode witness, while types can still be serded into rkyv bytes, so old (0.5.2) guest can still work with latest prover codes.
  3. low hanging fruit of batch program optimization.
  4. better support of testing of multi version of guests like GUEST_VERSION=0.5.2 make test-e2e-bundle
  5. upgrade openvm guest to 1.4 (while keep host as 1.3. Since 1.3 host can support 1.4 guest, but not the other way)

==================================

supress #161

make test-execute-chunk

before(master):

blk 16525000->16525003, cycle 25774588, gas 729598, cycle-per-gas 35
test test_execute ... ok

after:

blk 16525000->16525003, cycle 23303177, gas 729598, cycle-per-gas 31
test test_execute ... ok

@github-actions github-actions bot added crate-chunk-circuit Updates to the guest program chunk-circuit crate-batch-circuit Updates to the guest program batch-circuit crate-bundle-circuit Updates to the guest grogram bundle-circuit crate-circuits Any update made to the circuits, i.e. commitments reflect a change labels Aug 18, 2025
@lispc lispc changed the title feat: upgrade and exchange code between sbv v0.6 base branch (scroll + L3) Aug 20, 2025
@github-actions github-actions bot added the crate-integration Updates to the integration crate label Aug 20, 2025
@github-actions github-actions bot added crate-prover Updates to the prover crate ci CI related updates labels Aug 21, 2025
uses: actions-rs/toolchain@v1
with:
toolchain: 1.86
toolchain: nightly-2025-08-18
Copy link
Collaborator

Choose a reason for hiding this comment

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

guest building needs nightly toolchain. So we also use same toolchain for host.


OPENVM_RUST_TOOLCHAIN ?= nightly-2025-08-18
export OPENVM_RUST_TOOLCHAIN

Copy link
Collaborator

Choose a reason for hiding this comment

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

reth needs >=1.88.

exe: crate::commitments::chunk_exe_commit::COMMIT,
vm: crate::commitments::chunk_leaf_commit::COMMIT,
};
let commitment = load_program_commitments("chunk")?;
Copy link
Collaborator

Choose a reason for hiding this comment

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

support multi version guest testing better.

@github-actions github-actions bot added crate-verifier Updates to the verifier crate crate-build-guest Updates to building of guest programs labels Aug 25, 2025
@lispc lispc marked this pull request as ready for review August 25, 2025 08:48
@lispc lispc merged commit 3057de5 into master Aug 26, 2025
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci CI related updates crate-batch-circuit Updates to the guest program batch-circuit crate-build-guest Updates to building of guest programs crate-bundle-circuit Updates to the guest grogram bundle-circuit crate-chunk-circuit Updates to the guest program chunk-circuit crate-circuits Any update made to the circuits, i.e. commitments reflect a change crate-integration Updates to the integration crate crate-prover Updates to the prover crate crate-verifier Updates to the verifier crate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants