Try   HackMD

Ethproof Killers Test Suite – Overview & Format Guide

Latest version available here. The suite will soon be published under the official ­execution-spec-tests releases.

Goal

Ethproof Killers tests provide standardized, self-contained fixtures describing worst-case Ethereum execution scenarios for zk-VMs.

Because each scenario is captured in a single JSON file, we can:

  • allow each zkVM to run each test at their own pace and without live long-running devnets
  • be certain every other zkVM is exercising the same scenario
  • integrate the fixtures directly into CI pipelines or zk-proof circuits.

Future releases will also include a stateless client guest program, giving RISCV-based zk-VMs a turnkey runner for the tests.

File Structure

Each JSON file represents one test scenario and may list one or more configurations (the current version ships one configuration per file).

Below is a walk-through using test_keccak.json.

Key Purpose
test_worst_keccak[fork_Cancun-blockchain_test-gas_limit_36000000] Full pytest-style name. Useful as a human-readable label; you do not need to parse it.
network Target fork—e.g. "Cancun".
genesisBlockHeader Canonical header for the genesis block used in the scenario. Fields match standard EL genesis fields. The RLP-encoded form is duplicated under genesisRLP for convenience.
pre Account/storage state that yields the stateRoot in the genesis header.
blocks Ordered list of blocks to execute after genesis. All current scenarios include just one block, but future suites may chain several. Non-final blocks are “setup” blocks; only the last block triggers the worst-case computation.  Each item contains a blockHeader and a list of transactions to be executed.

Running the Tests

The format is identical to the Ethereum Execution-Layer (EL) tests, so every EL client already has implemented how to:

  1. load the JSON fixture,
  2. instantiate a chain from the supplied genesis data, and
  3. execute the block sequence.

For hands-on instructions, see the docs page Executing Tests on Local Networks or Hive. You’re also free to create your own infrastructure, but it shouldn’t be needed apart from wirings.

A forthcoming release will bundle a guest program that consumes the JSON directly, so zk-VM teams can focus solely on proving that guest.