-
Mark Tyneway authored
Adds in extra logic for `op-upgrade` that has the special storage slot set OP Mainnet upgrade. The 0th storage slot needs to be set to `bytes32(0)` because on OP Mainnet it is set to an address which is then interpreted as `_initialized` which then prevents initialization because it appears as the contract already being initialized, preventing the storage from being set initially. Uses the `StorageSetter` contract defined in: https://github.com/ethereum-optimism/optimism/pull/7611 Used to create the spell in: https://github.com/ethereum-optimism/superchain-ops/pull/10 Tenderly simulation: https://dashboard.tenderly.co/public/safe/safe-apps/simulator/35dfb460-493c-471a-89fc-1a244c9d8fe2
4e068442