@@ -12,8 +12,8 @@ import {Diamond} from "contracts/state-transition/libraries/Diamond.sol";
1212import {InitializeDataNewChain as DiamondInitializeDataNewChain} from "contracts/state-transition/chain-interfaces/IDiamondInit.sol " ;
1313import {FeeParams, PubdataPricingMode} from "contracts/state-transition/chain-deps/ZKChainStorage.sol " ;
1414import {Create2AndTransfer} from "./Create2AndTransfer.sol " ;
15-
1615import {Create2FactoryUtils} from "./Create2FactoryUtils.s.sol " ;
16+ import {L2ContractHelper} from "contracts/common/l2-helpers/L2ContractHelper.sol " ;
1717
1818// solhint-disable-next-line gas-struct-packing
1919struct DeployedAddresses {
@@ -188,67 +188,6 @@ abstract contract DeployUtils is Create2FactoryUtils {
188188 config.tokens.tokenWethAddress = toml.readAddress ("$.tokens.token_weth_address " );
189189 }
190190
191- function initializeConfigIfEcosystemDeployedLocally (string memory configPath ) internal virtual {
192- string memory toml = vm.readFile (configPath);
193-
194- // Bridgehub Related
195- addresses.bridgehub.bridgehubImplementation = toml.readAddress (
196- ".deployed_addresses.bridgehub.bridgehub_implementation_addr "
197- );
198- addresses.bridgehub.bridgehubProxy = toml.readAddress (".deployed_addresses.bridgehub.bridgehub_proxy_addr " );
199- addresses.bridgehub.ctmDeploymentTrackerImplementation = toml.readAddress (
200- ".deployed_addresses.bridgehub.ctm_deployment_tracker_implementation_addr "
201- );
202- addresses.bridgehub.ctmDeploymentTrackerProxy = toml.readAddress (
203- ".deployed_addresses.bridgehub.ctm_deployment_tracker_proxy_addr "
204- );
205- addresses.bridgehub.chainAssetHandlerImplementation = toml.readAddress (
206- ".deployed_addresses.bridgehub.chain_asset_handler_implementation_addr "
207- );
208- addresses.bridgehub.chainAssetHandlerProxy = toml.readAddress (
209- ".deployed_addresses.bridgehub.chain_asset_handler_proxy_addr "
210- );
211- addresses.bridgehub.messageRootImplementation = toml.readAddress (
212- ".deployed_addresses.bridgehub.message_root_implementation_addr "
213- );
214- addresses.bridgehub.messageRootProxy = toml.readAddress (
215- ".deployed_addresses.bridgehub.message_root_proxy_addr "
216- );
217-
218- // Bridges
219- addresses.bridges.erc20BridgeImplementation = toml.readAddress (
220- ".deployed_addresses.bridges.erc20_bridge_implementation_addr "
221- );
222- addresses.bridges.erc20BridgeProxy = toml.readAddress (".deployed_addresses.bridges.erc20_bridge_proxy_addr " );
223- addresses.bridges.l1NullifierImplementation = toml.readAddress (
224- ".deployed_addresses.bridges.l1_nullifier_implementation_addr "
225- );
226- addresses.bridges.l1NullifierProxy = toml.readAddress (".deployed_addresses.bridges.l1_nullifier_proxy_addr " );
227- addresses.bridges.l1AssetRouterImplementation = toml.readAddress (
228- ".deployed_addresses.bridges.shared_bridge_implementation_addr "
229- );
230- addresses.bridges.l1AssetRouterProxy = toml.readAddress (".deployed_addresses.bridges.shared_bridge_proxy_addr " );
231-
232- // Other Important Deployed Addresses
233- addresses.governance = toml.readAddress (".deployed_addresses.governance_addr " );
234- addresses.transparentProxyAdmin = toml.readAddress (".deployed_addresses.transparent_proxy_admin_addr " );
235- addresses.chainAdmin = toml.readAddress (".deployed_addresses.chain_admin " );
236- addresses.daAddresses.rollupDAManager = toml.readAddress (".deployed_addresses.l1_rollup_da_manager " );
237- addresses.daAddresses.l1RollupDAValidator = toml.readAddress (".deployed_addresses.rollup_l1_da_validator_addr " );
238- addresses.daAddresses.noDAValidiumL1DAValidator = toml.readAddress (
239- ".deployed_addresses.no_da_validium_l1_validator_addr "
240- );
241- addresses.daAddresses.availL1DAValidator = toml.readAddress (".deployed_addresses.avail_l1_da_validator_addr " );
242- addresses.vaults.l1NativeTokenVaultProxy = toml.readAddress (".deployed_addresses.native_token_vault_addr " );
243- config.contracts.multicall3Addr = toml.readAddress (".multicall3_addr " );
244-
245- if (vm.keyExistsToml (toml, "$.deployed_addresses.state_transition.state_transition_proxy_addr " )) {
246- addresses.stateTransition.chainTypeManagerProxy = toml.readAddress (
247- ".deployed_addresses.state_transition.state_transition_proxy_addr "
248- );
249- }
250- }
251-
252191 function deployStateTransitionDiamondFacets () internal {
253192 addresses.stateTransition.executorFacet = deploySimpleContract ("ExecutorFacet " , false );
254193 addresses.stateTransition.adminFacet = deploySimpleContract ("AdminFacet " , false );
@@ -519,6 +458,14 @@ abstract contract DeployUtils is Create2FactoryUtils {
519458 }
520459 }
521460
461+ function calculateExpectedL2Address (string memory contractName ) internal returns (address ) {
462+ return Utils.getL2AddressViaCreate2Factory (bytes32 (0 ), getL2BytecodeHash (contractName), hex "" );
463+ }
464+
465+ function getL2BytecodeHash (string memory contractName ) public view virtual returns (bytes32 ) {
466+ return L2ContractHelper.hashL2Bytecode (getCreationCode (contractName, true ));
467+ }
468+
522469 function getInitializeCalldata (
523470 string memory contractName ,
524471 bool isZKBytecode
0 commit comments