The Upgrade 16 protocol upgrade on the Sepolia Superchain will be executed on Wed, Jul 09, 2025, and the Mainnet Superchain will be activated on Thu, Jul 24, 2025 at 5:30 PM UTC (
The upgrade will be executed on the following chains:
Execution times may vary depending on the current state of each chain.
1753675800
).The upgrade will be executed on the following chains:
OP
, Soneium
, Ink
and Unichain
.Execution times may vary depending on the current state of each chain.
What’s included in Upgrade 16
Upgrade 16 contains these main changes:- Interop-Ready smart contracts: Interoperability is critical to realizing the Superchain as a unified network of OP Chains. This upgrade begins the rollout of foundational interoperability features by updating the
OptimismPortal
to handle future cross-chain messaging safely and extensibly. This upgrade does not turn on interop yet. - Stage 1 updates: Modifications to meet L2Beat’s updated Stage 1 requirements from January 2025, including removal of
DeputyGuardianModule
and updates toDeputyPauseModule
. - Go 1.23 Support in Cannon: Updates to Cannon to support Go 1.23, allowing OP Stack to benefit from upstream go-ethereum changes.
- Max gas limit increase: Update to
MAX_GAS_LIMIT
from 200m to 500m gas after improvements to OP Stack infrastructure and the Cannon proof system. - Additional safety improvements: Authentication for critical contract functions and simplification of
DelayedWETH
contract control.
For chain operators
Upgrade 16 is an L1 smart contracts upgrade for the OP Stack. We do not expect any downtime or changes in performance. Chain operators must complete the following tasks:- Update
op-challenger
to op-challenger/v1.5.1
OP
, Soneium
, Ink
and Unichain
on both Mainnet and Sepolia. Depending on the current state of the chain the execution times will vary. If your Optimism governed chain is not in this list, please reach out to OP Labs Solutions Engineering to coordinate your upgrade. These upgrade tasks will be prepared in the superchain-ops repo.
The tentative execution dates of these upgrades tasks can be tracked in our release board.
For permissionless fault proof enabled chains
Chains running permissionless fault proofs will need to deploy new dispute game contracts with new absolute prestates.1
Verify the new absolute prestate
As of upgrade 14, the 64 bit multi-threaded version of cannon is utilized.
0x03eb07101fbdeaf3f04d9fb76526362c1eea2824e4c6e970bdb19675b72e4fc8
for the following chains:- Mainnet and Sepolia:
OP
,Soneium
,Ink
andUnichain
op-program/v1.6.1-rc.1
tag:- The “Cannon64” hash is the 64-bit prestate.
2
Upload your new preimage file
During the previous step, you also generated the preimage of the absolute prestate, which is the op-program serialized into a binary file. You’ll find that new file at
optimism/op-program/bin/prestate-mt64.bin.gz
. Rename that file to have the absolute prestate hash as the filename so it looks like PRESTATEHASH.bin.gz
.Upload that file to where you’re storing your other absolute preimage files. This should be the location where you’re pointing your --cannon-prestates-url
at. The op-challenger
will grab this file and use it when it needs to challenge games.3
Execute the upgrade
Once your
op-challenger
is ready with the new preimage, you can execute the upgrade transaction. This should be done by making a delegatecall to the upgrade()
function of the OP Contract Manager (at the address listed in the registry.Please simulate and validate the expected output prior to executing the transaction.For bridges and users
All withdrawals that are not finalized before the Fault Proofs upgrade executes will need to be reproven after the upgrade is complete. You may want to consider waiting until after the upgrade is complete to begin a withdrawal during this 7-day window.
Withdrawal flow changes
- There will be a one-time invalidation of all pending withdrawal proofs created on L1.
- Complete any pending withdrawals before the upgrade is executed
- Avoid creating new withdrawal proofs that would not become executable in time
- If a withdrawal was invalidated, submit a second withdrawal proof transaction on L1
Technical details
Interop-ready smart contracts
Upgrade 16 updates the core bridge contracts of the OP Stack to support native interoperability. Key modifications include:- The
OptimismPortal
now relies on theAnchorStateRegistry
as the source of truth for the validity of dispute games - The
OptimismPortal
now stores ETH in a dedicatedETHLockbox
contract - The
OptimismPortal
includes a version of theproveWithdrawalTransaction
function that supports the updatedSuperFaultDisputeGame
implementation (disabled by default)
Stage 1 updates
- The
DeputyGuardianModule
has been removed - The
DeputyPauseModule
has been updated to be installed into the Security Council’s guardian safe - The pause action now expires automatically after 3 months
- The pause action can now be applied on a per-chain basis as well as a Superchain-wide basis
Go 1.23 support in Cannon
Cannon has been updated to support Go 1.23, allowing the OP Stack to benefit from upstream changes in go-ethereum.MAX_GAS_LIMIT
increases
The MAX_GAS_LIMIT
variable in the SystemConfig
contract is being updated from 200m gas to 500m gas.
Security reviews
- Changes to the bridge contracts were audited via a Cantina contest with no Medium+ severity issues found
- Upgrade 16 as a whole was audited by Spearbit with no Medium+ severity issues found