Overview
❗ This upgrade is mandatory for all node operators!
❗ All nodes of the Sepolia Superchain must upgrade by 3/20, when a critical fix activates. Sepolia node operators must not use any op-node version prior to this one.
❗ This release also supersedes any op-node/v1.11.x for L1 Pectra readiness. So mainnet node operators must also upgrade to this release by the time Ethereum mainnet activates Pectra.
❗ All node operators must also upgrade op-geth to v1.101503.0.
Sepolia Pectra Blob Schedule Fix
This release contains a critical fix for all chains in the Sepolia Superchain that activates on Thu Mar 20 16:00:00 UTC 2025
(unix timestamp 1742486400
). All OP-Stack Sepolia chains, including OP Sepolia, are currently sequencing an unintended chain. The L1 Info Block's blob base fee is calculated with pre-Prague=Cancun blob schedule parameters.
This is not a critical security issue on any OP Sepolia chain. When L1 blob base fees rise to 100 Mwei or higher on Sepolia, there is a temporary liveness risk, because L1 fees may be massively overcharged if the blob base fee scalar is set to a non-zero value. The overcharge is exponential in the Prague blob base fee, BBF_Cancun = BBF_Prague^1.5
(BBF=blob base fee).
There’s no impact on any mainnet chain, and this bug won’t trigger with the Mainnet Pectra activation because this releases already includes the correct blob base fee calculation for when Ethereum Mainnet activates Pectra.
How to activate the fix
If a Sepolia chain is in the superchain-registry at this commit, then activation of this fix on 3/20 is included in this release.
Otherwise, this fix should be scheduled to activate at some point in the near future using either a new entry in the rollup.json
or using the op-node flag --override.pectrablobschedule
or env var $OP_NODE_OVERRIDE_PECTRABLOBSCHEDULE
. Nothing needs to be set for op-geth. So for example, if you want to activate this fix on the same timestamp as the Sepolia Superpchain, you'd set "pectra_blob_schedule_time": 1742486400
in the rollup.json
or --override.pectrablobschedule=1742486400
via the flag.
Who's affected
All chains where the sequencer was running op-node/v1.11.2
or earlier, or a custom op-node built from a monorepo commit prior to #14500 (commit aabf3fe) are affected, if the chain's L1 activated Pectra (Holesky, Sepolia, any custom L1 with Pectra).
This also means that if a sequencer was running a newer custom built during the Holesky or Sepolia Pectra activation, this fix must not be scheduled.
op-geth update
This release updates the op-geth
dependency to v1.101503.0
, which contains all upstream geth changes up to release v1.15.3.
What's Changed
- op-signer, op-node: fix block signer utils by @protolambda in #14478
- events: Increase Maximum Queue Size 10x by @axelKingsley in #14483
- all: update op-geth to v1.101500.1 by @sebastianst in #14500
- op-node: Remove OverrideMessageExpiryTimeInterop from rollup.Config by @Inphi in #14554
- op-service: check if TLS is enabled and move middleware by @protolambda in #14571
- op-node: drop stale todo in finality code by @protolambda in #14620
- isthmus: operator fee by @yuwen01 in #12166
- all: update op-geth to v1.101503.0 by @geoknee in #14560
- op-node: continue sequencing when
L1TemporaryErrorEvent
happens by @zhiqiangxu in #14062 - all: Implement optional PectraBlobSchedule fork/feature by @sebastianst in #14680
- Don't split log.msg by @trianglesphere in #14735
- go: update SR to cb1b645b35813b8dd3a900b9f99c46614e466a2c via op-geth by @sebastianst in #14755
New Contributors
- @Hugoo made their first contribution in #14340
- @ec2 made their first contribution in #14354
- @NaijaCoderGirl made their first contribution in #14525
- @rebustron made their first contribution in #14519
- @yuwen01 made their first contribution in #12166
- @dpulitano made their first contribution in #14655
Full Changelog: op-node/v1.11.2...op-node/v1.12.0
🚢 Docker Image https://us-docker.pkg.dev/oplabs-tools-artifacts/images/op-node:v1.12.0