Skip to content

Guarantees

Status: v0.1 — basic provenance; limits enforced in engine.

What you can rely on

  • Deterministic execution — Same bytecode + fork config → same result (within EthereumJS semantics).
  • Isolated lab / BYOS — No archive node, no mainnet or L2 sync. You supply bytecode, txs, and any constructed prestate (accounts, code, storage). We do not pull chain state.
  • Call isolation (default) — Each tool call starts from that payload. Transport sessions are not EVM memory. Optional snapshot continuation is not shipped.
  • Provenance on every result — Engine version, fork config, advertised or explicit EIP maturity metadata, stability rollup, human caveat. Fields are basic and mostly optional in v0.1 — we will tighten over time.
  • Guardrails — Hard limits below prevent runaway resource use.

Limits

LimitValue
Max gas limit30_000_000
Default gas limit1_000_000
Max bytecode size24_576 bytes
Max trace steps10_000
Max transactions per lab block8

Out of scope

  • Solidity compilation
  • ERC / application-layer semantics
  • Sequential multi-block historical backtesting

Changelog

Guarantees Changelog
  1. v0.62026-09-16Generic hardfork runs list advertised modules on provenance when eips[] is empty.
  2. v0.42026-09-10Max 8 transactions on run_block.
  3. v0.32026-07-20Split from execution-engine — user-facing limits and provenance under use/.

Use = end-user reference. Internals = architecture and operations. Each section carries its own micro-changelog.