Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
112 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
ccdae14
docs(cli): clarify network resource requirements and enhance benchmar…
WiseMrMusa Dec 29, 2025
9a0db63
feat(www): initialize Vocs project with basic configuration and docum…
WiseMrMusa Nov 16, 2025
21cbcbd
feat(docs): enhance zkGas profiling documentation and update dependen…
WiseMrMusa Nov 24, 2025
414ce10
feat(scripts): add scripts for converting metrics to markdown and par…
WiseMrMusa Nov 26, 2025
55b2d15
feat(benchmark): remove outdated benchmark result files and add new R…
WiseMrMusa Nov 26, 2025
1991b8a
fix(vocs.config): update benchmark result links for SP1 and RISC0 met…
WiseMrMusa Nov 26, 2025
b123fe3
feat(benchmark): add new benchmark result files for RISC0 and SP1 con…
WiseMrMusa Nov 28, 2025
c48053f
feat(scripts): enhance test name formatting and display in benchmark …
WiseMrMusa Dec 2, 2025
9548bae
Update benchmark result files for RISC0 and SP1 configurations with n…
WiseMrMusa Dec 2, 2025
52ec925
feat(scripts): add benchmark comparison script for zkVM proving times
WiseMrMusa Dec 3, 2025
e9628cd
Update zkVM proving time headers for clarity in scripts and markdown …
WiseMrMusa Dec 3, 2025
2bfac63
chore(git): Remove Python cache files from git tracking
WiseMrMusa Dec 4, 2025
80aedeb
Update benchmark results and scripts for gas-categorized benchmarks
WiseMrMusa Dec 4, 2025
29c72e6
fix(results): Update benchmark results for airbender and risc0 config…
WiseMrMusa Dec 5, 2025
0aef723
Update benchmark results for gas-categorized tests and synchronize ti…
WiseMrMusa Dec 7, 2025
666a252
chore(docs):Update benchmark results for gas-categorized tests and sy…
WiseMrMusa Dec 8, 2025
adf4f4e
chore(benchmark): Update gas-categorized benchmark results and synchr…
WiseMrMusa Dec 11, 2025
8dd2ee4
feat(benchmark): Add SP1 benchmark link to gas-categorized results
WiseMrMusa Dec 11, 2025
440df85
feat(benchmark): Add Zisk benchmark results
WiseMrMusa Dec 13, 2025
390b12c
feat(docs): Add Stateless Executor Guide and update getting started d…
WiseMrMusa Dec 29, 2025
6669f38
chore(docs): Enhance getting started and stateless executor guide doc…
WiseMrMusa Dec 29, 2025
17c93f5
chore(docs): Streamline Stateless Executor Guide by removing outdated…
WiseMrMusa Dec 29, 2025
b413246
feat(ci): Add GitHub Actions workflow for deploying documentation to …
WiseMrMusa Dec 30, 2025
7b8a831
Temporarily add branch trigger for testing
WiseMrMusa Dec 30, 2025
0bd7caf
fix: specify pnpm version
WiseMrMusa Dec 30, 2025
fea2a98
Fix: correct build output path
WiseMrMusa Dec 30, 2025
df67624
chore: update .gitignore to include dist directory
WiseMrMusa Dec 30, 2025
17cbaa3
chore: update branch trigger for documentation deployment workflow
WiseMrMusa Dec 30, 2025
e817611
fix: update gas pattern in benchmark directory parsing to support rat…
WiseMrMusa Jan 1, 2026
cd29648
feat(docs): Add benchmark results for gas categories 0.1M to 0.8M
WiseMrMusa Jan 1, 2026
36c8e6c
feat(docs): Add marginal gas benchmark reports for SP1 and RISC0
WiseMrMusa Jan 1, 2026
482bd78
fix(docs): Update image paths in marginal gas benchmark reports for S…
WiseMrMusa Jan 1, 2026
46a5686
feat(docs): Update configuration and image paths for marginal gas ben…
WiseMrMusa Jan 1, 2026
c43343b
feat(config): Implement plugin to serve public assets at basePath in …
WiseMrMusa Jan 1, 2026
474eb47
fix(docs): Update link path for Combined SP1 vs RISC0 Comparison in m…
WiseMrMusa Jan 2, 2026
74c27fb
fix(docs): Update CSV source paths in marginal gas benchmark document…
WiseMrMusa Jan 2, 2026
ac4352f
docs(readme): add stateless-executor to guest program types
WiseMrMusa Jan 6, 2026
eacca00
docs(www): add stateless-executor technical architecture page
WiseMrMusa Jan 6, 2026
4a09c2e
docs(www): add executor vs validator comparison guide
WiseMrMusa Jan 6, 2026
d797716
docs(www): document stateless-executor reth-only limitation
WiseMrMusa Jan 6, 2026
d1e751e
docs(www): add stateless-executor API reference
WiseMrMusa Jan 6, 2026
e6ae5b6
docs(www): fix misleading metrics example in executor guide
WiseMrMusa Jan 6, 2026
7f033ad
docs(www): add fixture format documentation for executor
WiseMrMusa Jan 6, 2026
ef105ab
docs(www): remove outdated branch references
WiseMrMusa Jan 6, 2026
4cba3e5
docs(www): add use case guidance for stateless-executor
WiseMrMusa Jan 6, 2026
f9eb259
docs(www): add zkvm-specific behavior documentation
WiseMrMusa Jan 6, 2026
cfb6cbf
docs(sp1-cluster): document single GPU per worker design decision
WiseMrMusa Jan 7, 2026
ca48e38
docs(sp1-cluster): create comprehensive SP1 cluster documentation page
WiseMrMusa Jan 7, 2026
886cf57
docs: remove documentation for non-existent scripts
WiseMrMusa Jan 7, 2026
9046085
chore: remove unused patch dependencies from Cargo.toml
WiseMrMusa Jan 7, 2026
e4fb3ff
chore: update deploy-docs workflow to include new branch
WiseMrMusa Jan 7, 2026
d2eeb8a
docs: update getting started and stateless executor guide documentation
WiseMrMusa Jan 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
55 changes: 55 additions & 0 deletions .github/workflows/deploy-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: Deploy Docs

on:
push:
branches: [master, master-se-docs-03, nm/03-docs]
workflow_dispatch:

permissions:
contents: read
pages: write
id-token: write

concurrency:
group: pages
cancel-in-progress: false

jobs:
build-and-deploy:
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- uses: actions/checkout@v4

- uses: pnpm/action-setup@v4

Check warning

Code scanning / CodeQL

Unpinned tag for a non-immutable Action in workflow Medium

Unpinned 3rd party Action 'Deploy Docs' step
Uses Step
uses 'pnpm/action-setup' with ref 'v4', not a pinned commit hash
with:
version: 9

- uses: actions/setup-node@v4
with:
node-version: 20
cache: pnpm
cache-dependency-path: www/pnpm-lock.yaml

- name: Install dependencies
run: pnpm install --frozen-lockfile
working-directory: www

- name: Build site
run: pnpm build
working-directory: www

- name: Configure Pages
uses: actions/configure-pages@v5

- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: www/docs/dist

- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4

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