-
Mark Tyneway authored
Ensures that the predeploys are set and have the correct admin slot set as well as have code present. It does not check what the specific code is so that this can be ran against forked networks. Now that we have the L2 contracts imported into the state via `vm.loadAllocs`, we can begin to port the implementation of `check-l2` into Solidity and reduce the amount of overhead a developer needs to make changes to the contracts. The goal is to make as few changes to other parts of the codebase when making changes to solidity files. [check-l2](https://github.com/ethereum-optimism/optimism/blob/develop/op-chain-ops/cmd/check-l2/main.go) runs against the devnet to ensure that the genesis state is correct. Now we can make those assertions directly in solidity and deprecate the concept of `check-l2`. We should be able to still run the solidity tests against forked backends if we write the code in a modular way, so that we can still run the tests against live networks or devnets.
64a1f118