Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Status and roadmap

Last updated: September 2026.

Table of Contents

Where things stand

L1 dependencies

DependencyNeeded forStatus
L1 stateless validation programThe program native rollups proveIn development in execution-specs projects/zkevm
Mandatory execution proofsOne L1 block proof that covers the L2 proofsOptional proofs (EIP-8025) proposed for Hegotá; mandatory in K* under the current strawmap ordering
EIP-8141 frame transactionsThe transaction envelope for EIP-8288 dependenciesScheduled for Hegotá
Compact NewPayloadRequestHeaderValidation without full payloads, and the contract’s root computationRemoved from the optional-proof flow (consensus-specs#5076), assumed to return with mandatory proofs
EIP-8142 Block-in-BlobsL2 block data in blobsProposed for Hegotá
EIP-7928 block-level access listsPart of every proven payloadScheduled for Glamsterdam
EIP-7997 deterministic factoryDeploying the EIP-8357 registryScheduled for Glamsterdam
EIP-7805 FOCILForced transactions through L2 inclusion lists, once the L1 stateless validation program supports itScheduled for Hegotá
EIP-7864 binary state treeOptional: cheaper storage proofs for messagingDraft

The case for native rollups

If there is no confidence that many existing rollups will become native, is the upgrade worth it? Several teams have expressed interest, including Gnosis, Celo, Linea, Taiko, and Scroll. Even so, native rollups are worth shipping only if the feature is kept minimal, so that its low complexity justifies it even if usage turns out to be low.

Top rollups such as Arbitrum and Optimism have instead expressed interest in an extensible native program, explored in Native rollups with extensions. A more ambitious direction is to use native rollups as a form of execution sharding.

Timeline

Mandatory proofs and a zkzkframes-like feature are both hard requirements. According to the strawmap, zkzkframes can go live in 2028-2029 at the earliest. The Ethereum Foundation’s protocol priorities post places mandatory proofs in K* under the current strawmap ordering, and notes that they may move back to L* if the strawmap swaps the two forks to accelerate post-quantum consensus.

Can anything ship earlier?

Probably not. The original proposal suggested shipping native rollups through re-execution instead of ZK proofs. Re-execution, however, only supports optimistic rollups with bisection games, which still require a long challenge period for withdrawals, something all rollups are trying to move away from.

Another suggested path is to ship native rollups and generalized proof verification before mandatory proofs, as a testing ground: if something fails, only the applications that chose to take that risk fail, not all of L1. Delaying mandatory proofs is not desirable, but this remains an option if there is not enough confidence to ship them at all.

Open question: upgrades with the zkEVM

How will upgrades work with the zkEVM? Suppose a bug is found: how do nodes upgrade? Today, most patches are backwards compatible until the bug is hit in production. With the zkEVM, the verification key needs to change, and old proofs can no longer be verified. What does the runbook for this scenario look like?

Next steps

  1. Rebase the native rollup proof of concept on Glamsterdam, and then on Hegotá.
  2. Follow leanVM’s move to RISC-V, so that the zkVM shared by L1 execution proofs and EIP-8288 can prove the L1 stateless validation program and verify proofs of arbitrary programs, which LeanSTARK dependencies require (see EIP-8288 open issues).
  3. Specify how the mandatory L1 proof binds and absorbs the EIP-8288 aggregate.
  4. Make the proof aggregation design concrete.
  5. Build a proof of concept of native rollups using zkzkframes and the EVM verification key registry.
  6. Research native rollups with extensions.