Skip to content

Persist EVM setup keys before verifier generation#2813

Open
peter941221 wants to merge 1 commit into
openvm-org:mainfrom
peter941221:fix-setup-evm-save-keys-before-verifier
Open

Persist EVM setup keys before verifier generation#2813
peter941221 wants to merge 1 commit into
openvm-org:mainfrom
peter941221:fix-setup-evm-save-keys-before-verifier

Conversation

@peter941221
Copy link
Copy Markdown

@peter941221 peter941221 commented May 24, 2026

Summary

Persist reusable EVM setup artifacts before attempting Solidity verifier generation.

Problem

cargo openvm setup --evm generates the aggregation/Halo2 key material before calling generate_halo2_verifier_solidity(), but it only writes those reusable artifacts to disk afterwards.

If verifier generation fails, the command exits before persisting:

  • agg_stark.pk
  • agg_stark.vk
  • agg_halo2.pk
  • root.asm

This forces the next run to regenerate expensive key material unnecessarily.

Change

Write the reusable setup artifacts before Solidity verifier generation in the EVM setup path:

  • write agg_stark.pk
  • write agg_stark.vk
  • write agg_halo2.pk
  • write root.asm
  • then call generate_halo2_verifier_solidity()
  • then write the verifier contract bundle

This keeps the fix scoped to CLI-side ordering without changing SDK key generation or verifier generation behavior.

Verification

  • cargo +nightly fmt --all -- --check
  • git diff --check

Local cargo check remains blocked on this Windows machine by an MSVC/libgit2 link environment issue unrelated to setup.rs.

Closes #2356.

@peter941221 peter941221 marked this pull request as ready for review May 24, 2026 00:44
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.

save generated evm keys immediately after generating

1 participant