All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Note: v0.3.0 was never released (only
v0.3.0-betashipped). Changes originally staged under v0.3.0 are rolled into v0.4.0 below so the upgrade path is v0.2.x → v0.4.0.
ev-deployerCLI (bin/ev-deployer) for generating genesis alloc entries with embedded contract bytecodes (#167)ev-devbinary (bin/ev-dev): one-command local development chain with pre-funded Hardhat accounts, similar to Anvil or Hardhat Node- Transaction sponsor service (
bin/sponsor-service) for signing EvNode transactions on behalf of users via JSON-RPC proxy (#141) - Granular tracing instrumentation spans across payload building, transaction validation, and EVM execution
EV_TRACE_LEVELenv var to control OTLP span export verbosity independently fromRUST_LOGstdout log level (#156)- EvNode transaction type (0x76) with atomic batch calls and fee-payer sponsorship (#103)
- Viem client library (
@evstack/evnode-viem) for building, signing, and sponsoring EvNode transactions (#112) - End-to-end tests for the EvNode client (#118)
- Tini init process in Docker images for proper signal handling (#115)
- Upgraded Reth from v1.8.4 to v2.0.0 with Osaka/EOF hardfork support, Storage V2, revm 36.0.0, and alloy-evm 0.30.0 (#106, #207)
reth-primitivesimports migrated toalloy_consensusandreth_ethereum_primitives(upstream crate removed)- Txpool fallback (pulling pending transactions when Engine API attributes are empty) restricted to
--devmode only - Migrated build system from Makefile to Justfile
- Disabled default features on several reth crates to unblock SP1 proving work (#111)
- Removed unused
thiserrordependency fromev-precompilescrate
- Payload builder now uses
decode_2718_exactinstead ofnetwork_decodefor Engine API payloads, fixing silent drops of valid type 0x76 and EIP-1559/EIP-2930 transactions (#219) - Payload builder now pulls pending transactions from the txpool in
--devmode, fixingcast sendand other RPC-submitted transactions not being included in blocks - Txpool now uses sponsor balance for pending/queued ordering in sponsored EvNode transactions, and validates executor balance separately for call value transfers (#141)
- Permissioned EVM deploy allowlist validation when gas is explicitly specified (#122)
- Additional test coverage for deploy allowlist edge cases across all transaction types
- Permissioned EVM support allowing configurable address-based access control (#100)
- EIP-1559 settings to chain configuration for customizing base fee parameters (#99)
- AdminProxy contract for administrative operations (#97)
- ADR 003: typed sponsorship transactions and batch execution documentation (#96)
- Fee system guide documentation (#101)