Skip to content

feat(guest): publish Reth stateless validator ELFs - #36

Draft
figtracer wants to merge 12 commits into
mainfrom
fig/reth-guest-releases
Draft

feat(guest): publish Reth stateless validator ELFs#36
figtracer wants to merge 12 commits into
mainfrom
fig/reth-guest-releases

Conversation

@figtracer

@figtracer figtracer commented Jul 31, 2026

Copy link
Copy Markdown
Collaborator

Closes #35.

Upstreams the canonical Reth stateless validator guest and execution-spec SSZ contract into paradigmxyz/stateless. The guest consumes statelessInputBytes unchanged, validates through Reth with the Zeth sparse trie, and emits statelessOutputBytes.

Adds locked entrypoints for OpenVM v2.0.0, SP1 v6.3.1, and ZisK v1.0.0-alpha, plus public CI that builds, key-generates, checksums, attests, and publishes the final .elf and .vk assets from v* tags. The shared zkvm-interface Crypto/CryptoProvider implementation now lives in stateless, while the regular host API continues to use Reth's sparse trie by default.

Validation

  • tests-zkevm@v0.6.2: completed with the same 17 known Reth divergences tracked by the current ere-guests integration.
  • Independent and GitHub Actions compiler-image builds plus verification-key generation completed for all three zkVMs; every .elf and .vk was byte-for-byte identical across the two machines.
  • A 5,822-byte Amsterdam fixture executed successfully in all three final ELFs and produced the expected canonical statelessOutputBytes.
  • cargo clippy --workspace --all-targets --all-features -- -D warnings
  • cargo test --workspace --exclude ef-tests --exclude stateless-validator-tests
  • All five no_std configurations in scripts/check_no_std.sh
  • Full local default-trie EF suite: 62/62 passed in 5,081.976 seconds. GitHub's EF matrix also passed with both the default trie (22m16s) and Zeth trie (22m03s).
zkVM ELF size ELF SHA-256
OpenVM v2.0.0 3,584,988 bytes e2049a17c751a4c91fe979985864fa38805541917d1f855d57d2b00566413409
SP1 v6.3.1 3,801,888 bytes 0f274cff9d0c4676f9c28d11e151f4351dce4cb5caf89223884494e715f93fe3
ZisK v1.0.0-alpha 3,746,280 bytes 42732b93fe877743089d2734c2a3a35e5029616f4c234db2a388d20505902e31

@figtracer figtracer added the enhancement New feature or request label Jul 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(stateless): upstream the Reth stateless validator and publish zkVM guest ELFs

2 participants