Skip to content

op-node v1.20.0

Choose a tag to compare

@teddyknox teddyknox released this 27 Oct 20:17
· 63 commits to develop since this release
Immutable release. Only release title and notes can be modified.
d662020

Overview

Important

This is a recommended release for GIWA Sepolia operators who want to use the built-in --network giwa-sepolia config, and an optional one for everyone else. It contains built-in network support for GIWA Sepolia, the removal of the deprecated Req/Resp P2P sync server and its metrics, and changes to op-node genesis l2.

This release keeps the security fixes shipped in op-node/v1.19.11. It is built with the same Go 1.26.10 toolchain and the same CA trust store (#23546).

Chain Configuration

  • GIWA Sepolia added to the embedded superchain registry (#23511). --network giwa-sepolia (chain ID 91342) now selects GIWA Sepolia's built-in rollup config. Every fork through Karst is already active on GIWA Sepolia (karst_time = 1783317600, Mon 6 Jul 2026 06:00:00 UTC), so this adds no new activation, and GIWA Sepolia nodes on an earlier release keep following the chain with their explicit --rollup.config. The OP Labs devnet sepolia-devnet-3-sepolia-devnet-3 is added as well. No other chain's activation times or rollup parameters change.

Other changes

P2P

  • op-node no longer serves the Req/Resp P2P sync protocol, which answered payload-by-number requests from peers. op-node stopped making these requests in op-node/v1.19.1, so only peers on op-node/v1.19.0 or earlier lose a source of missing payloads. --p2p.sync.req-resp (OP_NODE_P2P_SYNC_REQ_RESP) is now a hidden, deprecated no-op: op-node still starts with it, logs a deprecation warning, and it can be removed from your configuration. The op_node_default_p2p_req_duration_seconds, op_node_default_p2p_req_total and op_node_default_p2p_payload_by_number metrics are no longer exported, so remove them from any dashboards and alerts (#21499)

op-node genesis l2

  • op-node genesis l2 now refuses an L2 chain ID of 10, failing with invalid deploy config: L2ChainID 10 is reserved for OP Mainnet. Before, it built a genesis that reused OP Mainnet's chain ID, and that genesis left out London; with Isthmus or later active at genesis, the command panicked (#23450)
  • The L2 genesis.json that op-node genesis l2 writes now includes osakaTime, equal to the Karst time, for chains that schedule Karst. Genesis block hashes are unchanged (#23359)

Full Changelog: op-node/v1.19.11...op-node/v1.20.0

🚢 Docker Image: