Commit 422bd187 authored by Mark Tyneway's avatar Mark Tyneway

contracts-bedrock: update to include all addrs

parent 04bccd81
...@@ -407,6 +407,7 @@ contract Deploy is Deployer { ...@@ -407,6 +407,7 @@ contract Deploy is Deployer {
require(config.l2OutputOracle() == address(0)); require(config.l2OutputOracle() == address(0));
require(config.optimismPortal() == address(0)); require(config.optimismPortal() == address(0));
require(config.l1CrossDomainMessenger() == address(0)); require(config.l1CrossDomainMessenger() == address(0));
require(config.optimismMintableERC20Factory() == address(0));
require(config.startBlock() == 0); require(config.startBlock() == 0);
save("SystemConfig", address(config)); save("SystemConfig", address(config));
...@@ -503,7 +504,8 @@ contract Deploy is Deployer { ...@@ -503,7 +504,8 @@ contract Deploy is Deployer {
l1ERC721Bridge: mustGetAddress("L1ERC721BridgeProxy"), l1ERC721Bridge: mustGetAddress("L1ERC721BridgeProxy"),
l1StandardBridge: mustGetAddress("L1StandardBridgeProxy"), l1StandardBridge: mustGetAddress("L1StandardBridgeProxy"),
l2OutputOracle: mustGetAddress("L2OutputOracleProxy"), l2OutputOracle: mustGetAddress("L2OutputOracleProxy"),
optimismPortal: mustGetAddress("OptimismPortalProxy") optimismPortal: mustGetAddress("OptimismPortalProxy"),
optimismMintableERC20Factory: mustGetAddress("OptimismMintableERC20FactoryProxy")
}) })
) )
) )
......
...@@ -33,6 +33,7 @@ contract SystemConfig is OwnableUpgradeable, Semver { ...@@ -33,6 +33,7 @@ contract SystemConfig is OwnableUpgradeable, Semver {
address l1StandardBridge; address l1StandardBridge;
address l2OutputOracle; address l2OutputOracle;
address optimismPortal; address optimismPortal;
address optimismMintableERC20Factory;
} }
/// @notice Version identifier, used for upgrades. /// @notice Version identifier, used for upgrades.
...@@ -68,6 +69,10 @@ contract SystemConfig is OwnableUpgradeable, Semver { ...@@ -68,6 +69,10 @@ contract SystemConfig is OwnableUpgradeable, Semver {
bytes32 public constant OPTIMISM_PORTAL_SLOT = bytes32 public constant OPTIMISM_PORTAL_SLOT =
bytes32(uint256(keccak256("systemconfig.optimismportal")) - 1); bytes32(uint256(keccak256("systemconfig.optimismportal")) - 1);
/// @notice Storage slot that the OptimismMintableERC20Factory address is stored at.
bytes32 public constant OPTIMISM_MINTABLE_ERC20_FACTORY_SLOT =
bytes32(uint256(keccak256("systemconfig.optimismmintableerc20factory")) - 1);
/// @notice Storage slot that the batch inbox address is stored at. /// @notice Storage slot that the batch inbox address is stored at.
bytes32 public constant BATCH_INBOX_SLOT = bytes32 public constant BATCH_INBOX_SLOT =
bytes32(uint256(keccak256("systemconfig.batchinbox")) - 1); bytes32(uint256(keccak256("systemconfig.batchinbox")) - 1);
...@@ -127,7 +132,8 @@ contract SystemConfig is OwnableUpgradeable, Semver { ...@@ -127,7 +132,8 @@ contract SystemConfig is OwnableUpgradeable, Semver {
l1ERC721Bridge: address(0), l1ERC721Bridge: address(0),
l1StandardBridge: address(0), l1StandardBridge: address(0),
l2OutputOracle: address(0), l2OutputOracle: address(0),
optimismPortal: address(0) optimismPortal: address(0),
optimismMintableERC20Factory: address(0)
}) })
}); });
} }
...@@ -175,6 +181,7 @@ contract SystemConfig is OwnableUpgradeable, Semver { ...@@ -175,6 +181,7 @@ contract SystemConfig is OwnableUpgradeable, Semver {
_setAddress(_addresses.l1StandardBridge, L1_STANDARD_BRIDGE_SLOT); _setAddress(_addresses.l1StandardBridge, L1_STANDARD_BRIDGE_SLOT);
_setAddress(_addresses.l2OutputOracle, L2_OUTPUT_ORACLE_SLOT); _setAddress(_addresses.l2OutputOracle, L2_OUTPUT_ORACLE_SLOT);
_setAddress(_addresses.optimismPortal, OPTIMISM_PORTAL_SLOT); _setAddress(_addresses.optimismPortal, OPTIMISM_PORTAL_SLOT);
_setAddress(_addresses.optimismMintableERC20Factory, OPTIMISM_MINTABLE_ERC20_FACTORY_SLOT);
// The start block for the op-node to start searching for logs // The start block for the op-node to start searching for logs
// needs to be set in a backwards compatible way. Only allow setting // needs to be set in a backwards compatible way. Only allow setting
...@@ -262,6 +269,11 @@ contract SystemConfig is OwnableUpgradeable, Semver { ...@@ -262,6 +269,11 @@ contract SystemConfig is OwnableUpgradeable, Semver {
return _getAddress(OPTIMISM_PORTAL_SLOT); return _getAddress(OPTIMISM_PORTAL_SLOT);
} }
/// @notice Getter for the OptimismMintableERC20Factory address.
function optimismMintableERC20Factory() external view returns (address) {
return _getAddress(OPTIMISM_MINTABLE_ERC20_FACTORY_SLOT);
}
/// @notice Getter for the BatchInbox address. /// @notice Getter for the BatchInbox address.
function batchInbox() external view returns (address) { function batchInbox() external view returns (address) {
return _getAddress(BATCH_INBOX_SLOT); return _getAddress(BATCH_INBOX_SLOT);
......
...@@ -226,7 +226,8 @@ contract Portal_Initializer is L2OutputOracle_Initializer { ...@@ -226,7 +226,8 @@ contract Portal_Initializer is L2OutputOracle_Initializer {
l1ERC721Bridge: address(0), l1ERC721Bridge: address(0),
l1StandardBridge: address(0), l1StandardBridge: address(0),
l2OutputOracle: address(oracle), l2OutputOracle: address(oracle),
optimismPortal: address(op) optimismPortal: address(op),
optimismMintableERC20Factory: address(0)
}) })
) )
) )
......
...@@ -25,6 +25,7 @@ contract SystemConfig_Init is CommonTest { ...@@ -25,6 +25,7 @@ contract SystemConfig_Init is CommonTest {
address constant l1StandardBridge = address(0x22); address constant l1StandardBridge = address(0x22);
address constant l2OutputOracle = address(0x23); address constant l2OutputOracle = address(0x23);
address constant optimismPortal = address(0x24); address constant optimismPortal = address(0x24);
address constant optimismMintableERC20Factory = address(0x25);
uint256 constant overhead = 2100; uint256 constant overhead = 2100;
uint256 constant scalar = 1000000; uint256 constant scalar = 1000000;
bytes32 constant batcherHash = bytes32(hex"abcd"); bytes32 constant batcherHash = bytes32(hex"abcd");
...@@ -57,7 +58,8 @@ contract SystemConfig_Init is CommonTest { ...@@ -57,7 +58,8 @@ contract SystemConfig_Init is CommonTest {
l1ERC721Bridge: l1ERC721Bridge, l1ERC721Bridge: l1ERC721Bridge,
l1StandardBridge: l1StandardBridge, l1StandardBridge: l1StandardBridge,
l2OutputOracle: l2OutputOracle, l2OutputOracle: l2OutputOracle,
optimismPortal: optimismPortal optimismPortal: optimismPortal,
optimismMintableERC20Factory: optimismMintableERC20Factory
}) })
) )
) )
...@@ -75,6 +77,7 @@ contract SystemConfig_Initialize_Test is SystemConfig_Init { ...@@ -75,6 +77,7 @@ contract SystemConfig_Initialize_Test is SystemConfig_Init {
assertEq(sysConf.l1StandardBridge(), l1StandardBridge); assertEq(sysConf.l1StandardBridge(), l1StandardBridge);
assertEq(sysConf.l2OutputOracle(), l2OutputOracle); assertEq(sysConf.l2OutputOracle(), l2OutputOracle);
assertEq(sysConf.optimismPortal(), optimismPortal); assertEq(sysConf.optimismPortal(), optimismPortal);
assertEq(sysConf.optimismMintableERC20Factory(), optimismMintableERC20Factory);
assertEq(sysConf.batchInbox(), batchInbox); assertEq(sysConf.batchInbox(), batchInbox);
assertEq(sysConf.owner(), alice); assertEq(sysConf.owner(), alice);
assertEq(sysConf.overhead(), overhead); assertEq(sysConf.overhead(), overhead);
...@@ -134,7 +137,8 @@ contract SystemConfig_Initialize_TestFail is SystemConfig_Init { ...@@ -134,7 +137,8 @@ contract SystemConfig_Initialize_TestFail is SystemConfig_Init {
l1ERC721Bridge: address(0), l1ERC721Bridge: address(0),
l1StandardBridge: address(0), l1StandardBridge: address(0),
l2OutputOracle: address(0), l2OutputOracle: address(0),
optimismPortal: address(0) optimismPortal: address(0),
optimismMintableERC20Factory: address(0)
}) })
) )
) )
......
...@@ -34,7 +34,8 @@ contract SystemConfig_GasLimitLowerBound_Invariant is Test { ...@@ -34,7 +34,8 @@ contract SystemConfig_GasLimitLowerBound_Invariant is Test {
l1ERC721Bridge: address(0), l1ERC721Bridge: address(0),
l1StandardBridge: address(0), l1StandardBridge: address(0),
l2OutputOracle: address(0), l2OutputOracle: address(0),
optimismPortal: address(0) optimismPortal: address(0),
optimismMintableERC20Factory: address(0)
}) })
) )
) )
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment