Overview
Important
This is a required release for World Chain operators running the built-in --chain configs, and a strongly recommended one for everyone else. It contains World Chain Karst activations, a security dependency update, transaction-decoding hardening and one breaking flag removal.
Breaking changes
cross_unsafe_l2removed fromoptimism_syncStatus(#22555). The cross-unsafe head byte-for-byte mirrored the unsafe head and is gone from the RPC response and frometh.SyncStatus. Dashboards, alerts and tooling readingcross_unsafe_l2must switch tounsafe_l2; Go JSON clients tolerate the absent field. The message-safety level namedcross-unsafeis a different, live concept and is unchanged.
Chain configuration changes
-
New World Chain Karst activation times (#22624). The embedded superchain registry gains:
sepolia/worldchain—karst_time = 1788868800(Tue 8 Sep 2026 12:00:00 UTC)mainnet/worldchain—karst_time = 1789992000(Mon 21 Sep 2026 12:00:00 UTC)
A World Chain node on an earlier release, running the built-in
--networkconfig rather than an explicit rollup config, will not activate Karst and will diverge from the chain. No other chain's activation times change in this release.
What's Changed
Derivation
- Holocene span batch prefix checks now validate the contents of batch elements that overlap the safe chain, so a batch spanning an interop deposits-only block replacement can no longer splice an invalidated lineage onto the canonical chain. (#22215)
Sequencer
- Stopping the sequencer no longer hangs.
Stopwaited for the L2 head to reach the last sealed block, which never arrives if the sequencer has not sealed since start or if a reset rewound past that block; it now waits only while a block is genuinely outstanding. This affectsadmin_stopSequencer, node shutdown, and — with no deadline of its own — op-conductor's leadership handoff (#22458)
Features
- The AltDA Keccak input-size limit is now configurable per chain through
da_max_input_sizein the rollup config's AltDA section, and op-batcher validates its maximum frame size against the same limit. Omitting the field keeps the previous fixed limit of 130,672 bytes (#22496)
Security
- Dependency updates for advisories in modules linked into op-node:
golang.org/x/cryptoto v0.56.0,golang.org/x/modto v0.40.0, the Go toolchain directive, and the Pion STUN/DTLS stack (github.com/pion/stunandgithub.com/pion/dtlsto v3), together with the op-geth bump tov1.101702.3-rc.7that moves its NAT/STUN path onto Pion v3 (#22750, #22425, #22424, #22180, #22181, #22069, #22694)
Full Changelog: op-node/v1.19.5...op-node/v1.19.6
🚢 Docker Image: