Skip to content
Open
Changes from all commits
Commits
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
156 changes: 156 additions & 0 deletions updates/april-2026.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,156 @@
# April 2026
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

cc @ilitteri, @benbencik, @figtracer tried to add what i remembered, feel free to create a separate PR if you want to add something more.

@developeruche, I didn't include progress I've seen on your stuff since I think you usually make a separate PR that will prob be more complete than what I can remember :)


## Project 1: Execution Witness

### M1 — Finalize ExecutionWitness in execution specs

- [Ignacio] [zkevm@v0.3.4](https://github.com/ethereum/execution-spec-tests/releases/tag/zkevm%40v0.3.4zkevm@v0.3.4) released with multiple fixes and improvements.
- [Ignacio] On-going work: include `public_keys`, proper `chain_config`, and prefix schema-id for proper SSZ-deserialization.


### M2 — Client implementations

#### Besu


#### Ethrex

- [Gaston] [Target zkevm@v0.3.3 fixtures and extend run for all tests](https://github.com/lambdaclass/ethrex/pull/6527) (not only EIP-8025 ones).

#### Geth


#### Nethermind

- [Team] Making general progress on execution witness generation ([blog post](https://www.nethermind.io/blog/road-to-zk-implementation-nethermind-clients-path-to-proofs))

#### Reth

- [Ignacio] [Support generating legacy and canonical execution witnesses](https://github.com/paradigmxyz/reth/pull/22289) (long due PR merged).
- [lazovicff] [Ongoing work](https://github.com/paradigmxyz/stateless/pull/25) supporting official execution witness releases.

#### Nimbus

- [deme] Working in running EEST releases.

#### Zilkworm


## Project 2: zkEVM Guest Program

### M1 — Finalize guest program in execution specs

- [Ignacio] [zkevm@v0.3.4](https://github.com/ethereum/execution-spec-tests/releases/tag/zkevm%40v0.3.4) released with multiple fixes and improvements.
- [Ignacio] On-going work to wrap first stable version, in particular: `ChainConfig` and prefix-schema identifier in the stateless input for fork and forward compatibility.
- [Ignacio] Proposed EIP-7709 in ACDE ([presentation](https://docs.google.com/presentation/d/1raEGijf92cUBeCGeTzQusItvIVUAjRcLzzlXtgL9jcU/edit?usp=sharing) & [long-form analysis document](https://hackmd.io/@jsign/EIP-7709-Hegota-proposal)).


### M2 — Reproducible ELF builds and distribution

### M3 — Client implementations

#### Besu

- [Gabriel] Found a spec bug regarding incoherent SSZ inputs for tests with invalid txs. This was [fixed](https://github.com/ethereum/execution-specs/pull/2768) in zkevm@v0.3.4.
- [Gabriel] Made zesu support [zkevm@v0.3.4 release](https://github.com/Consensys/zesu/pull/28).

#### Ethrex

- [Ignacio] Support canonical SSZ bytes as guest program input ([in review](https://github.com/lambdaclass/ethrex/pull/6550)).
- [Ben] [Wire missing zkVM precompile for `hash_tree_root` usage for public inputs](https://github.com/lambdaclass/ethrex/pull/6549)
- [Ben] [Remove rayon](https://github.com/lambdaclass/ethrex/pull/6560) as guest program dependency

#### Geth

#### Nethermind

- [Team] Making general progress on guest program ([blog post](https://www.nethermind.io/blog/road-to-zk-implementation-nethermind-clients-path-to-proofs))
- [Ruben] Helping discuss upcoming guest program input design.

#### Reth

#### Zilkworm

- [Som] Experimenting with alternative guest input design that can become more performant.


## Project 3: zkEVM Guest API standardization

### M1 — Standardize minimal hardware targets


### M2 — Standardize zkVM precompiles via C headers

### M3 — Standardize the interface for accessing IO via C headers

### M4 — Standardize assumptions about the ELF and zkVM processing

## Project 4: Consensus Layer Integration

### M1 — Finalize consensus specs

### M2 -- Spec out BiB changes

### M3 -- Client implementations

#### Kurtosis / ethereum-package

#### Lighthouse

#### Prysm

#### Grandine

#### Lodestar

#### Nimbus

#### Teku

## Project 5: Prover Infrastructure

### M1 — Integrate zkVMs into Ethproofs

### M2 — Ensure GPU implementations are open source

### M3 — Integrate zkVMs into Ere

### M4 — Test zkboost in isolation with single and then multiple GPUs

### M5 — Metrics to track prover reliability and pipelining inefficiencies

### M6 — Allow attesters to use this infrastructure to verify proofs

## Project 6: Benchmarking and Metrics

### M1 — Benchmark guest programs against zkVMs locally

- [Ignacio] New Zisk v0.16.1 run for refreshed EEST benchmarks and mainnet blocks ([dashboards landing page](https://eth-act.github.io/zkevm-benchmark-runs/)).
- [Ignacio] [New Zisk profiling dashboard](https://eth-act.github.io/zkevm-benchmark-runs/profiles/) for easier analysis of any EEST benchmark profiling.
- [Ignacio] Improved [_Repricing dashboard_](https://eth-act.github.io/zkevm-benchmark-runs/repricing/): crash message details, unified dataset ux, plot view with proving time per gas cost (linearity), and other improvements.
- [Ignacio] [Found bug and implemented fix](https://github.com/CPerezz/worst_case_miner/pull/7) in worst_case_miner used in EEST for deep SSTORE benchmarks.
- [Ignacio] [Implemented new SLOAD deep branch benchmark](https://github.com/ethereum/execution-specs/pull/2635) in EEST.

### M2 — Integrate metrics into pandaOps' lab

### M3 — Investigate multidimensional metering/pricing

- [Ignacio / Maria] Brainstormed potential improvements to Glamsterdam repricing analysis tool to generalize it for proving and H* upcoming projects.

## Project 7: Security

### M1 — Agree on proof size, security regime and timelines

### M2 — Figure out what components need specifications

### M3 — Figure out what the end-game for specs looks like

### M4 — Figure out guarantees around each component

### M5 — Establish a minimal go/no-go framework

### M6 — Identify minimum acceptable formal verification requirements

### M7 — Establish security and adversary model

### M8 — Establish and test safe fallback behavior