execution
The execution crate group runs the Base node’s execution layer. It spans EVM execution, state storage, transaction pool, and payload construction.
Sub-crates
Section titled “Sub-crates”| Crate | Package Name | Purpose |
|---|---|---|
| chainspec | reth-optimism-chainspec | EVM chain spec for Optimism |
| cli | reth-optimism-cli | Execution layer CLI (jemalloc, OTel) |
| consensus | reth-optimism-consensus | Block validation and trie roots |
| evm | reth-optimism-evm | Block executor and state transitions |
| exex | reth-optimism-exex | Execution Extensions — proofs with trie updates |
| hardforks | reth-optimism-forks | Optimism hardfork definitions |
| node | reth-optimism-node | Node builder — assembles all components |
| payload | reth-optimism-payload-builder | Payload construction from pending transactions |
| primitives | reth-optimism-primitives | Custom transaction and receipt types |
| reth | reth-op | Meta-crate re-exporting all OP reth components |
| rpc | reth-optimism-rpc | eth_, debug_, op_ RPC namespaces |
| storage | reth-optimism-storage | Database codec implementations |
| trie | reth-optimism-trie | Trie storage for fault proof window |
| txpool | reth-optimism-txpool | Transaction pool with L1 cost calculation |
Role in the Architecture
Section titled “Role in the Architecture”The execution crate group is the heart of the node. It:
- Defines the Base chain specification including gas limits, hardforks, and genesis (
chainspec,hardforks) - Configures and runs the EVM for transaction execution (
evm) - Builds execution payloads from pending transactions (
payload) - Manages the transaction pool for pending transactions (
txpool) - Handles state storage and the Merkle Patricia Trie (
storage,trie) - Provides RPC endpoints for querying execution state (
rpc) - Integrates with Reth’s execution pipeline (
reth,node) - Supports Execution Extensions for custom indexing (
exex)
Built on top of Reth v1.11.0, these crates customize Reth’s execution engine for the Base L2 environment.