Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
27e0006
ere-guests: update ethrex (#237)
jsign Dec 12, 2025
51c7b87
ethrex: add Zisk (#239)
jsign Dec 12, 2025
2f9454c
ethrex: update which fixes SP1 bug (#240)
jsign Dec 12, 2025
e3ac2de
Release compiled stateless validator guest when tagging (#242)
han0110 Dec 15, 2025
5b95a05
Refactored Stateless Validation Input Function (#244)
developeruche Dec 18, 2025
ae92fbc
Vendoring `openvm-revm-crypto` (#245)
han0110 Dec 29, 2025
c6db137
Update ere for Zisk V0.15.0 support and ethrex (#246)
jsign Dec 31, 2025
8548dcc
precompiles/zisk: remove sp1_bls12_381 (#247)
jsign Dec 31, 2025
4111566
Update dependencies to point to NethermindEth/ere repository and vers…
WiseMrMusa Jan 2, 2026
9c044d3
Add Cluster resource support to CLI and ProverResourceType
WiseMrMusa Jan 5, 2026
c64f87d
Add SP1 Cluster Docker Compose and startup scripts
WiseMrMusa Jan 5, 2026
d7263f0
Implement validation for Cluster resource usage with SP1 zkVMs
WiseMrMusa Jan 5, 2026
dbb7162
feat: add reth-stateless-executor crate for execution-only benchmarking
WiseMrMusa Dec 26, 2025
e71daae
chore: add reth-stateless-executor to workspace configurations
WiseMrMusa Dec 26, 2025
7e467d3
feat: integrate stateless executor with benchmark-runner
WiseMrMusa Dec 26, 2025
0c18867
feat: add airbender, openvm, pico and zisk entry points for stateless…
WiseMrMusa Dec 26, 2025
acdc06a
feat: implement stateless executor functionality in benchmark-runner
WiseMrMusa Dec 26, 2025
7b22ba7
feat(benchmark-runner, cli): enhance input handling for stateless exe…
WiseMrMusa Nov 12, 2025
07771c7
fix(cli): update execution client argument and guest relative path fo…
WiseMrMusa Dec 26, 2025
aae45b2
feat(metrics): implement memory tracking for proving process
WiseMrMusa Nov 12, 2025
5d8b6be
feat(benchmark-runner): add memory tracking features to Cargo.toml an…
WiseMrMusa Nov 12, 2025
f251be6
feat(cli): add network resource support and validation for SP1 in ben…
WiseMrMusa Dec 29, 2025
a2c8c2e
fix(benchmark-runner): correct reference to benchmark input execution…
WiseMrMusa Dec 31, 2025
deb41f7
fix(benchmark-runner): remove unused import from runner.rs
WiseMrMusa Dec 31, 2025
e05ec1c
chore: update dependencies to point to NethermindEth/ere repository a…
WiseMrMusa Jan 2, 2026
e2a67c2
fix: resolve merge conflicts in Cargo.lock
WiseMrMusa Jan 7, 2026
032cb91
chore: update Rust toolchain references in workflow files to specific…
WiseMrMusa Jan 7, 2026
46b65dd
refactor: clean up imports and improve code formatting across multipl…
WiseMrMusa Jan 7, 2026
b3a4398
chore: standardize Rust toolchain installation across workflow files
WiseMrMusa Jan 7, 2026
6e3ea6c
feat(cli): add cluster resource support and enhance SP1 validation
WiseMrMusa Jan 7, 2026
047a037
feat(metrics): add memory usage metrics to proving success structure
WiseMrMusa Jan 7, 2026
590a0d6
fix(rpc): improve header parsing in RpcBlocksAndWitnessesBuilder
WiseMrMusa Jan 7, 2026
817c03f
chore: update dependencies and source revisions for ere packages
WiseMrMusa Jan 8, 2026
6d3ee5e
feat(openvm): add new workspace dependencies and module for revm crypto
WiseMrMusa Jan 8, 2026
0b503e1
feat(scripts): add generate-gas-categorized-fixtures.sh for zkEVM fix…
WiseMrMusa Nov 12, 2025
3142968
feat(scripts): add run-gas-categorized-benchmarks.sh for executing ga…
WiseMrMusa Nov 13, 2025
fb179dd
refactor(scripts): improve feature handling in run-gas-categorized-be…
WiseMrMusa Nov 13, 2025
b5da004
chore: update .gitignore and modify default behavior in run-gas-categ…
WiseMrMusa Nov 16, 2025
858c6f9
fix(scripts): update permissions for gas benchmark scripts
WiseMrMusa Dec 13, 2025
ea98c31
feat(opcode_traces): add instruction breakdown and summary CSV files
WiseMrMusa Dec 17, 2025
b5c7270
delete: remove instruction breakdown and summary CSV files
WiseMrMusa Dec 24, 2025
042c327
feat(opcode_traces): add scripts for opcode analysis and tracing
WiseMrMusa Dec 24, 2025
c8ced11
feat(scripts): enhance gas categorization in generate-gas-categorized…
WiseMrMusa Dec 24, 2025
f572ff8
feat(scripts): add support for local EEST fixtures in generate-gas-ca…
WiseMrMusa Dec 24, 2025
599882a
feat(scripts): enhance gas category handling in run-gas-categorized-b…
WiseMrMusa Dec 24, 2025
0896a19
delete: remove obsolete tracing guide and gas category script
WiseMrMusa Dec 24, 2025
9fbfe8e
refactor(scripts): simplify and enhance option handling in run-gas-ca…
WiseMrMusa Dec 29, 2025
a4e1670
docs(cli): clarify network resource requirements and enhance benchmar…
WiseMrMusa Dec 29, 2025
d88182a
chore(script): Set default Rayon thread count in gas-categorized fixt…
WiseMrMusa Dec 29, 2025
927f52b
Implement validation for Cluster resource usage with SP1 zkVMs
WiseMrMusa Jan 5, 2026
5d8598a
fix(cli): update resource help text and validation for SP1 zkVM
WiseMrMusa Jan 6, 2026
49336cd
feat(cli): add RISC0 keccak cycle limit option to benchmark script
WiseMrMusa Jan 6, 2026
b6464c4
feat(sp1-cluster): make resource limits configurable via env vars
WiseMrMusa Jan 7, 2026
25f0651
feat(sp1-cluster): improve NVIDIA runtime detection and error messages
WiseMrMusa Jan 7, 2026
8ae456f
feat(sp1-cluster): support both Docker Compose v1 and v2
WiseMrMusa Jan 7, 2026
ed8e9dd
feat(sp1-cluster): auto-create SP1 circuit cache directory
WiseMrMusa Jan 7, 2026
44d0516
feat(sp1-cluster): make API and Redis ports configurable via CLI
WiseMrMusa Jan 7, 2026
96773bf
feat(sp1-cluster): add health checks and HA documentation
WiseMrMusa Jan 7, 2026
03695f4
refactor(main): remove redundant cluster proving validation for SP1
WiseMrMusa Jan 7, 2026
aaa166d
fix(sp1-cluster): update health checks and make private keys configur…
WiseMrMusa Jan 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion .github/workflows/integration-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,9 @@ jobs:
uses: actions/checkout@v4

- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
uses: dtolnay/rust-toolchain@f7ccc83f9ed1e5b9c81d8a67d7ad1a747e22a561 # stable
with:
toolchain: stable
components: clippy, rustfmt

- name: Generate benchmark fixtures
Expand Down Expand Up @@ -86,6 +87,10 @@ jobs:
el: ethrex
tests: "execute_empty_block execute_mainnet_blocks prove_empty_block"
threads: 12
- zkvm: zisk
el: ethrex
tests: "execute_empty_block execute_mainnet_blocks"
threads: 1

# Custom Guest Programs
- zkvm: sp1
Expand Down
120 changes: 120 additions & 0 deletions .github/workflows/release-compiled-guest.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
name: Release Compiled Guests

on:
push:
branches:
- master
tags:
- 'v*'

permissions:
contents: write

env:
ERE_TAG: 0.0.15-d15d36a

jobs:
compile-stateless-validator:
name: Compile ${{ matrix.el }}/${{ matrix.zkvm }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
# Reth
- el: reth
zkvm: airbender
- el: reth
zkvm: openvm
- el: reth
zkvm: pico
- el: reth
zkvm: risc0
- el: reth
zkvm: sp1
- el: reth
zkvm: zisk
# Ethrex
- el: ethrex
zkvm: risc0
- el: ethrex
zkvm: sp1
- el: ethrex
zkvm: zisk
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@f7ccc83f9ed1e5b9c81d8a67d7ad1a747e22a561 # stable
with:
toolchain: stable

- name: Pull compiler image
run: |
docker pull ghcr.io/eth-act/ere/ere-compiler-${{ matrix.zkvm }}:${ERE_TAG}

- name: Apply zkVM patch
run: |
cargo run -p xtask -- ${{ matrix.zkvm }}

- name: Compile guest
run: |
docker run \
-v ./ere-guests:/guest \
-v ./output:/output \
ghcr.io/eth-act/ere/ere-compiler-${{ matrix.zkvm }}:${ERE_TAG} \
--compiler-kind rust-customized \
--guest-path /guest/stateless-validator/${{ matrix.el }}/${{ matrix.zkvm }} \
--output-path output/${{ matrix.el }}-${{ matrix.zkvm }}

- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.el }}-${{ matrix.zkvm }}
path: output/${{ matrix.el }}-${{ matrix.zkvm }}
if-no-files-found: error

create-release:
name: Create release
needs: compile-stateless-validator
runs-on: ubuntu-latest
if: github.ref_type == 'tag'
steps:
- name: Download all artifacts
uses: actions/download-artifact@v4
with:
path: artifacts
merge-multiple: true

- name: Display structure of downloaded files
run: ls -R artifacts

- name: Release
uses: softprops/action-gh-release@v2

Check warning

Code scanning / CodeQL

Unpinned tag for a non-immutable Action in workflow Medium

Unpinned 3rd party Action 'Release Compiled Guests' step
Uses Step
uses 'softprops/action-gh-release' with ref 'v2', not a pinned commit hash
with:
name: Compiled Guests (${{ github.ref_name }})
files: artifacts/*
body: |
This release contains compiled guest programs for various zkVMs.

Built with Ere compiler version: `${{ env.ERE_TAG }}`.

## Compiled guest programs

### Reth stateless validator

- [`reth-airbender`](https://github.com/${{ github.repository }}/releases/download/${{ github.ref_name }}/reth-airbender)
- [`reth-openvm`](https://github.com/${{ github.repository }}/releases/download/${{ github.ref_name }}/reth-openvm)
- [`reth-pico`](https://github.com/${{ github.repository }}/releases/download/${{ github.ref_name }}/reth-pico)
- [`reth-risc0`](https://github.com/${{ github.repository }}/releases/download/${{ github.ref_name }}/reth-risc0)
- [`reth-sp1`](https://github.com/${{ github.repository }}/releases/download/${{ github.ref_name }}/reth-sp1)
- [`reth-zisk`](https://github.com/${{ github.repository }}/releases/download/${{ github.ref_name }}/reth-zisk)

### Ethrex stateless validator

- [`ethrex-risc0`](https://github.com/${{ github.repository }}/releases/download/${{ github.ref_name }}/ethrex-risc0)
- [`ethrex-sp1`](https://github.com/${{ github.repository }}/releases/download/${{ github.ref_name }}/ethrex-sp1)
- [`ethrex-zisk`](https://github.com/${{ github.repository }}/releases/download/${{ github.ref_name }}/ethrex-zisk)
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
13 changes: 8 additions & 5 deletions .github/workflows/run-benchmark.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
name: ${{ inputs.zkvm }} / ${{ inputs.el }}
runs-on: [self-hosted-ghr, size-chungus-x64]
env:
ERE_TAG: 0.0.15-d15c6b4
ERE_TAG: 0.0.16-73a760a
OPENVM_RUST_TOOLCHAIN: nightly-2025-08-07
RUSTC_WRAPPER: sccache
SCCACHE_DIR: ${{ github.workspace }}/.sccache/
Expand All @@ -41,9 +41,12 @@ jobs:
sudo apt-get install -y protobuf-compiler pkg-config libssl-dev sccache build-essential clang libclang-dev lz4

- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
uses: dtolnay/rust-toolchain@f7ccc83f9ed1e5b9c81d8a67d7ad1a747e22a561 # stable
with:
toolchain: stable

- name: Restore Rust cache
continue-on-error: true
uses: jsign/action-cache@0aa95a6bc53b4dc5c7a53d773e183d8169ce2c01
with:
action: restore
Expand All @@ -60,11 +63,9 @@ jobs:

- name: Pull ere images
run: |
for variant in "base" "base-${{ inputs.zkvm }}" "compiler-${{ inputs.zkvm }}" "server-${{ inputs.zkvm }}"; do
for variant in "compiler-${{ inputs.zkvm }}" "server-${{ inputs.zkvm }}"; do
src="docker.ethquokkaops.io/gh/eth-act/ere/ere-${variant}:${ERE_TAG}"
dst="ere-${variant}:${ERE_TAG}"
docker pull "$src"
docker tag "$src" "$dst"
done

- name: Run benchmark
Expand All @@ -73,12 +74,14 @@ jobs:
RUST_LOG=warn,benchmark_runner=info \
ZKVM=${{ inputs.zkvm }} \
EL=${{ inputs.el }} \
ERE_IMAGE_REGISTRY=docker.ethquokkaops.io/gh/eth-act/ere \
cargo test --release -p integration-tests -- --test-threads=1 ${{ inputs.tests }}

- name: sccache stats
run: sccache --show-stats || true

- name: Save Rust cache
continue-on-error: true
uses: jsign/action-cache@0aa95a6bc53b4dc5c7a53d773e183d8169ce2c01
with:
action: save
Expand Down
7 changes: 5 additions & 2 deletions .github/workflows/rust-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,9 @@ jobs:
uses: actions/checkout@v4

- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
uses: dtolnay/rust-toolchain@f7ccc83f9ed1e5b9c81d8a67d7ad1a747e22a561 # stable
with:
toolchain: stable

- name: Cache dependencies
uses: Swatinem/rust-cache@v2
Expand Down Expand Up @@ -74,8 +76,9 @@ jobs:
sudo apt-get install -y protobuf-compiler

- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@nightly
uses: dtolnay/rust-toolchain@881ba7bf39a41cda34ac9e123fb41b44ed08232f # nightly
with:
toolchain: nightly
components: clippy, rustfmt

- name: Cache dependencies
Expand Down
Loading
Loading