Skip to content

Commit fa12cf2

Browse files
committed
Change superchain config validation for mainnet.
1 parent 1a80cea commit fa12cf2

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

packages/contracts-bedrock/src/L1/OPContractsManager.sol

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -746,15 +746,17 @@ contract OPContractsManagerUpgrader is OPContractsManagerBase {
746746
assertValidOpChainConfig(_opChainConfigs[i]);
747747
uint256 l2ChainId = _opChainConfigs[i].systemConfigProxy.l2ChainId();
748748

749-
// Grab the SuperchainConfig.
750-
ISuperchainConfig celoSuperchainConfig = _opChainConfigs[i].systemConfigProxy.superchainConfig();
751-
ISuperchainConfig superchainConfig = IHasSuperchainConfig(address(celoSuperchainConfig)).superchainConfig();
752-
753-
// SuperchainConfig should be in older version than impl on Celo L1.
754749
{
755-
if (!SemverComp.lt(superchainConfig.version(), ISuperchainConfig(impls.superchainConfigImpl).version())) {
756-
revert OPContractsManagerUpgrader_SuperchainConfigMismatch();
757-
} else if (_upgradeSuperchainConfig) {
750+
if (_upgradeSuperchainConfig) {
751+
// Grab the SuperchainConfig.
752+
ISuperchainConfig celoSuperchainConfig = _opChainConfigs[i].systemConfigProxy.superchainConfig();
753+
ISuperchainConfig superchainConfig = IHasSuperchainConfig(address(celoSuperchainConfig)).superchainConfig();
754+
755+
// SuperchainConfig should be in older version than impl on Celo L1.
756+
if (!SemverComp.lt(superchainConfig.version(), ISuperchainConfig(impls.superchainConfigImpl).version())) {
757+
revert OPContractsManagerUpgrader_SuperchainConfigMismatch();
758+
}
759+
758760
// Celo: some chains (like Celo Mainnet) follow external superchain config that is not desired to be upgraded
759761
__upgradeSuperchainConfig(superchainConfig, _opChainConfigs[i].proxyAdmin);
760762
}

0 commit comments

Comments
 (0)