Skip to content

Commit 56a3217

Browse files
committed
opcm: Load anchor state registry from the system config
1 parent 0a14f50 commit 56a3217

File tree

2 files changed

+9
-7
lines changed

2 files changed

+9
-7
lines changed

packages/contracts-bedrock/snapshots/semver-lock.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@
2020
"sourceCodeHash": "0xfca613b5d055ffc4c3cbccb0773ddb9030abedc1aa6508c9e2e7727cc0cd617b"
2121
},
2222
"src/L1/OPContractsManager.sol:OPContractsManager": {
23-
"initCodeHash": "0xc6a5146f158bc14297447cda1668f83e8dbfdd74f1b8bc2291d9626933bd23ad",
24-
"sourceCodeHash": "0x3104453213cb2c819d762c4810fedbeef136271f1cdf9978b75938efe0520567"
23+
"initCodeHash": "0xf877e7b707d80b16b8475ea7534d31d2ca059bf6a2b1014bc7d2258a82c4d5a1",
24+
"sourceCodeHash": "0x50de50b231e26193052e560f73413a50a83ed941a0bc479085c0e23f90fde085"
2525
},
2626
"src/L1/OPContractsManagerStandardValidator.sol:OPContractsManagerStandardValidator": {
2727
"initCodeHash": "0x2eaa345ba05582c67b40a1eb7ec9d54823aa08468e697e2d6c04bb74cc574abc",

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

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ import { IL1ERC721Bridge } from "interfaces/L1/IL1ERC721Bridge.sol";
3939
import { IL1StandardBridge } from "interfaces/L1/IL1StandardBridge.sol";
4040
import { IOptimismMintableERC20Factory } from "interfaces/universal/IOptimismMintableERC20Factory.sol";
4141
import { IETHLockbox } from "interfaces/L1/IETHLockbox.sol";
42+
import { ISystemConfig } from "../../interfaces/L1/ISystemConfig.sol";
4243

4344
contract OPContractsManagerContractsContainer {
4445
/// @notice Addresses of the Blueprint contracts.
@@ -593,10 +594,12 @@ contract OPContractsManagerGameTypeAdder is OPContractsManagerBase {
593594
)
594595
) {
595596
address impl = implementations().faultDisputeGameV2Impl;
597+
// Always use the permissioned game to get the anchor state registry because it is guaranteed to
598+
// exist.
596599
bytes memory gameArgs = abi.encodePacked(
597600
gameConfig.disputeAbsolutePrestate, // 32 bytes
598601
gameConfig.vm, // 20 bytes
599-
address(getAnchorStateRegistry(dgf, IDisputeGame(impl), gameConfig.disputeGameType)), // 20
602+
address(getAnchorStateRegistry(ISystemConfig(gameConfig.systemConfig))), // 20
600603
// bytes
601604
address(outputs[i].delayedWETH), // 20 bytes
602605
l2ChainId // 32 bytes
@@ -608,8 +611,7 @@ contract OPContractsManagerGameTypeAdder is OPContractsManagerBase {
608611
bytes memory gameArgs = abi.encodePacked(
609612
gameConfig.disputeAbsolutePrestate, // 32 bytes
610613
gameConfig.vm, // 20 bytes
611-
address(getAnchorStateRegistry(dgf, IDisputeGame(impl), gameConfig.disputeGameType)), // 20
612-
// bytes
614+
address(getAnchorStateRegistry(ISystemConfig(gameConfig.systemConfig))), // 20 bytes
613615
address(outputs[i].delayedWETH), // 20 bytes
614616
l2ChainId, // 32 bytes
615617
getProposer(dgf, IPermissionedDisputeGame(address(existingGame)), gameConfig.disputeGameType), // 20
@@ -2137,9 +2139,9 @@ contract OPContractsManager is ISemver {
21372139

21382140
// -------- Constants and Variables --------
21392141

2140-
/// @custom:semver 4.3.0
2142+
/// @custom:semver 4.4.0
21412143
function version() public pure virtual returns (string memory) {
2142-
return "4.3.0";
2144+
return "4.4.0";
21432145
}
21442146

21452147
OPContractsManagerGameTypeAdder public immutable opcmGameTypeAdder;

0 commit comments

Comments
 (0)