├── .github └── workflows │ └── check-post-check.yml ├── .gitignore ├── LICENSE ├── Makefile ├── README.md ├── SECURITY.md ├── docker-compose.yml ├── goerli-alpha ├── .env ├── 2023-05-18-deploy │ ├── .env │ ├── Makefile │ ├── deployed │ │ └── addresses.json │ ├── execute │ │ ├── RunDeployBedrock.s.sol │ │ └── Utils.sol │ ├── foundry.toml │ ├── inputs │ │ ├── construct-config.sh │ │ ├── deploy-config.json │ │ └── misc-config.json │ ├── records │ │ └── DeployBedrock.s.sol │ │ │ └── 5 │ │ │ └── run-1684262920.json │ └── remappings.txt ├── 2023-06-08-test-aliased-owner │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ ├── inputs │ │ └── addresses.json │ ├── records │ │ ├── CallIncrement.s.sol │ │ │ └── 5 │ │ │ │ └── run-1686322722.json │ │ └── DeployTest.s.sol │ │ │ └── 11763071 │ │ │ └── run-1686252130.json │ ├── remappings.txt │ ├── script │ │ ├── CallIncrement.s.sol │ │ ├── DeployTest.s.sol │ │ └── L1toL2AliasedAddr.s.sol │ └── src │ │ └── TestIncrement.sol ├── 2023-06-09-l2-upgrades │ ├── .env │ ├── .gitmodules │ ├── Makefile │ ├── foundry.toml │ ├── inputs │ │ └── addresses-l2.json │ ├── records │ │ └── RunPostSherlockL2.s.sol │ │ │ └── 11763071 │ │ │ ├── run-1686613683.json │ │ │ └── run-1686613690.json │ ├── remappings.txt │ └── script │ │ └── RunPostSherlockL2.s.sol ├── 2023-06-12-transfer-owner-l1-alias-to-l2-safe │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── TransferOwnership.s.sol │ │ │ └── 5 │ │ │ ├── run-1686603373.json │ │ │ └── run-1686603386.json │ ├── remappings.txt │ └── script │ │ └── TransferOwnership.s.sol ├── 2023-06-14-deploy │ ├── .env │ ├── Makefile │ ├── cmd │ │ └── foundry_deploy_config_gen │ │ │ └── main.go │ ├── deployed │ │ └── addresses.json │ ├── foundry.toml │ ├── inputs │ │ ├── deploy-config.json │ │ └── misc-config.json │ ├── records │ │ └── RunDeployBedrock.s.sol │ │ │ └── 5 │ │ │ └── dry-run │ │ │ ├── run-1686767309.json │ │ │ ├── run-1686775564.json │ │ │ └── run-1686788115.json │ ├── remappings.txt │ └── script │ │ └── RunDeployBedrock.s.sol ├── 2023-06-21-deploy-challenger │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── remappings.txt │ └── script │ │ └── DeployChallenger.s.sol ├── 2023-06-22-test-nested-safe │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── DeployTest.s.sol │ │ │ ├── 5 │ │ │ │ └── run-1687463453.json │ │ │ └── 11763071 │ │ │ │ └── run-1687463516.json │ │ ├── TestNestedSafeL1.s.sol │ │ │ └── 5 │ │ │ │ ├── runApproval-1687475512.json │ │ │ │ └── runTransaction-1687524271.json │ │ └── TestNestedSafeL2.s.sol │ │ │ └── 11763071 │ │ │ ├── runApproval-1687475535.json │ │ │ └── runTransaction-1687524686.json │ ├── remappings.txt │ ├── script │ │ ├── DeployTest.s.sol │ │ ├── TestNestedSafeL1.s.sol │ │ └── TestNestedSafeL2.s.sol │ ├── sign-l1-approve.sh │ ├── sign-l1.sh │ ├── sign-l2-approve.sh │ └── sign-l2.sh ├── 2023-06-23-transfer-l1-owner │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── TransferL1Owner.s.sol │ │ │ └── 5 │ │ │ └── run-1687817341.json │ ├── remappings.txt │ └── script │ │ └── TransferL1Owner.s.sol ├── 2023-06-23-transfer-l2-owner │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── TransferL2Owner.s.sol │ │ │ └── 11763071 │ │ │ └── run-1687817777.json │ ├── remappings.txt │ └── script │ │ └── TransferL2Owner.s.sol ├── 2023-06-26-use-challenger1of2 │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── DeployL2OO.s.sol │ │ │ └── 5 │ │ │ │ └── run-1687800451.json │ │ └── UpgradeL2OO.s.sol │ │ │ └── 5 │ │ │ ├── runApproval-1687904129.json │ │ │ └── runTransaction-1687904430.json │ └── script │ │ ├── DeployL2OO.s.sol │ │ └── UpgradeL2OO.s.sol ├── 2023-06-27-test-l2-owner │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── TestNewOwner.s.sol │ │ │ └── 11763071 │ │ │ ├── runApproval-1687981133.json │ │ │ └── runTransaction-1687981153.json │ └── script │ │ └── TestNewOwner.s.sol ├── 2023-06-28-safe-threshold │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── ChangeThreshold.s.sol │ │ │ └── 11763071 │ │ │ └── run-1687980398.json │ └── script │ │ └── ChangeThreshold.s.sol ├── 2023-06-29-increase-finalization │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── DeployL2OO.s.sol │ │ │ └── 5 │ │ │ └── run-1688066514.json │ └── script │ │ ├── DeployL2OO.s.sol │ │ ├── RevertL2OO.s.sol │ │ └── UpgradeL2OO.s.sol ├── 2023-07-12-practicing-incident-response │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── DeleteL2Outputs.s.sol │ │ │ └── 5 │ │ │ └── run-1689188690.json │ └── script │ │ ├── DeleteL2Outputs.s.sol │ │ ├── PausePortal.s.sol │ │ └── UnpausePortal.s.sol ├── 2023-08-15-support-eas │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── DeployEASImplementation.s.sol │ │ │ └── 11763071 │ │ │ │ ├── run-1693274246.json │ │ │ │ └── run-1693443228.json │ │ └── UpgradeToEAS.s.sol │ │ │ └── 11763071 │ │ │ ├── run-1693590505.json │ │ │ ├── run-1693590531.json │ │ │ └── run-1693590553.json │ └── script │ │ ├── DeployEASImplementation.s.sol │ │ └── UpgradeToEAS.s.sol ├── 2023-08-21-deploy-revshare │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── DeployBalanceTracker.s.sol │ │ │ └── 5 │ │ │ │ └── run-1692720437.json │ │ └── DeployFeeDisburser.sol │ │ │ └── 11763071 │ │ │ └── run-1692720482.json │ └── script │ │ ├── DeployBalanceTracker.s.sol │ │ └── DeployFeeDisburser.sol ├── 2023-08-21-feevault-fix │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── DeployNewFeeVaultsL2.s.sol │ │ │ └── 11763071 │ │ │ │ └── run-1692822122.json │ │ └── FixFeeVaultsL2.s.sol │ │ │ └── 11763071 │ │ │ ├── run-1692826087.json │ │ │ ├── run-1692826208.json │ │ │ └── run-1692826364.json │ └── script │ │ ├── CheckFeeVaults.s.sol │ │ ├── DeployNewFeeVaultsL2.s.sol │ │ └── FixFeeVaultsL2.s.sol ├── 2023-10-04-fix-batcher-proposer │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── SetBatcher.s.sol │ │ │ └── 5 │ │ │ ├── run-1696449591.json │ │ │ └── run-1696462286.json │ └── script │ │ └── SetBatcher.s.sol ├── 2023-10-27-ownership-update │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── UpdateOwners.s.sol │ │ │ └── 11763071 │ │ │ ├── run-1698441065.json │ │ │ └── run-1698442634.json │ └── script │ │ └── UpdateOwners.s.sol └── addresses.json ├── goerli ├── .env ├── 2023-01-31-deploy │ ├── .env │ ├── Makefile │ ├── deployed │ │ └── addresses.json │ ├── execute │ │ ├── RunDeployBedrock.s.sol │ │ └── Utils.sol │ ├── foundry.toml │ ├── inputs │ │ ├── construct-config.sh │ │ ├── deploy-config.json │ │ └── misc-config.json │ ├── records │ │ └── DeployBedrock.s.sol │ │ │ └── 5 │ │ │ └── run-1675193625.json │ └── remappings.txt ├── 2023-06-08-upgrade-l2OO │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── inputs │ │ └── config.json │ ├── records │ │ └── L2OutputOracleUpgrade.s.sol │ │ │ └── 5 │ │ │ ├── run-1686080145.json │ │ │ ├── run-1686080283.json │ │ │ └── run-1686081282.json │ ├── remappings.txt │ └── script │ │ └── L2OutputOracleUpgrade.sol ├── 2023-06-12-batcher-rotation │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── SetBatcherAddr.s.sol │ │ │ └── 5 │ │ │ ├── dry-run │ │ │ └── run-1686613997.json │ │ │ ├── run-1686616622.json │ │ │ ├── run-1686617083.json │ │ │ ├── run-1686617710.json │ │ │ └── run-1686617717.json │ ├── remappings.txt │ └── script │ │ └── SetBatcherAddr.s.sol ├── 2023-06-13-deploy-proxy │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── DeterministicProxyDeploy.s.sol │ │ │ └── 84531 │ │ │ └── run-1686686192.json │ ├── remappings.txt │ └── script │ │ └── DeterministicProxyDeploy.s.sol ├── 2023-06-13-l2-upgrades │ ├── .env │ ├── .gitignore │ ├── Makefile │ ├── cmd │ │ └── foundry_deploy_config_gen │ │ │ └── main.go │ ├── foundry.toml │ ├── inputs │ │ ├── addresses-l2.json │ │ ├── addresses.json │ │ ├── deploy-config.json │ │ ├── foundry-config.json │ │ └── misc-config.json │ ├── records │ │ ├── DeployL2Implementations.s.sol │ │ │ └── 84531 │ │ │ │ └── run-1686694973.json │ │ └── RunPostSherlockL2.s.sol │ │ │ └── 84531 │ │ │ ├── run-1686700347.json │ │ │ ├── run-1686701262.json │ │ │ └── run-1686701523.json │ ├── remappings.txt │ └── script │ │ ├── DeployL2Implementations.s.sol │ │ └── RunPostSherlockL2.s.sol ├── 2023-06-22-deploy-challenger │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── DeployChallenger.s.sol │ │ │ └── 5 │ │ │ └── dry-run │ │ │ └── run-1687876542.json │ └── script │ │ └── DeployChallenger.s.sol ├── 2023-06-27-test-nested-safe │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── DeployTest.s.sol │ │ │ ├── 5 │ │ │ │ └── run-1687906916.json │ │ │ └── 84531 │ │ │ │ └── run-1687907008.json │ │ ├── TestNestedSafeL1.s.sol │ │ │ └── 5 │ │ │ │ ├── runApproval-1688072331.json │ │ │ │ └── runTransaction-1688074834.json │ │ └── TestNestedSafeL2.s.sol │ │ │ └── 84531 │ │ │ ├── runApproval-1688075454.json │ │ │ └── runTransaction-1688075664.json │ └── script │ │ ├── DeployTest.s.sol │ │ ├── TestNestedSafeL1.s.sol │ │ └── TestNestedSafeL2.s.sol ├── 2023-06-29-transfer-l1-owner │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── TransferL1Owner.s.sol │ │ │ └── 5 │ │ │ └── run-1689017438.json │ └── script │ │ └── TransferL1Owner.s.sol ├── 2023-06-29-transfer-l2-owner │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── TransferL2Owner.s.sol │ │ │ └── 84531 │ │ │ └── run-1689193677.json │ └── script │ │ └── TransferL2Owner.s.sol ├── 2023-07-11-use-challenger1of2 │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── UpgradeL2OO.s.sol │ │ │ └── 5 │ │ │ ├── runApproval-1689355902.json │ │ │ └── runTransaction-1689356125.json │ └── script │ │ ├── DeployL2OO.s.sol │ │ └── UpgradeL2OO.s.sol ├── 2023-08-15-support-eas │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── DeployEASImplementation.s.sol │ │ │ └── 84531 │ │ │ │ └── run-1693274467.json │ │ └── UpgradeToEAS.s.sol │ │ │ └── 84531 │ │ │ ├── run-1693927715.json │ │ │ ├── run-1693927774.json │ │ │ └── run-1693927903.json │ └── script │ │ ├── DeployEASImplementation.s.sol │ │ └── UpgradeToEAS.s.sol ├── 2023-08-23-deploy-revshare │ ├── .env │ ├── Makefile │ ├── foundry.toml │ └── script │ │ ├── DeployBalanceTracker.s.sol │ │ ├── DeployFeeDisburser.s.sol │ │ └── UpgradeToFeeDisburser.s.sol ├── 2023-08-24-feevault-fix │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── FixFeeVaultsL2.s.sol │ │ │ └── 84531 │ │ │ ├── run-1692987205.json │ │ │ ├── run-1692987842.json │ │ │ └── run-1692988347.json │ └── script │ │ ├── DeployNewFeeVaultsL2.s.sol │ │ └── FixFeeVaultsL2.s.sol └── addresses.json ├── internal-devnet ├── .env ├── 2023-05-25-deploy │ ├── .env │ ├── Makefile │ ├── deployed │ │ └── addresses.json │ ├── execute │ │ ├── RunDeployBedrock.s.sol │ │ └── Utils.sol │ ├── foundry.toml │ ├── inputs │ │ ├── construct-config.sh │ │ ├── deploy-config.json │ │ └── misc-config.json │ ├── records │ │ └── DeployBedrock.s.sol │ │ │ └── 201412071 │ │ │ └── run-1685038093.json │ └── remappings.txt └── addresses.json ├── internal-testnet ├── .env ├── 2023-05-24-deploy │ ├── .env │ ├── Makefile │ ├── deployed │ │ └── addresses.json │ ├── execute │ │ ├── RunDeployBedrock.s.sol │ │ └── Utils.sol │ ├── foundry.toml │ ├── inputs │ │ ├── construct-config.sh │ │ ├── deploy-config.json │ │ └── misc-config.json │ ├── records │ │ └── DeployBedrock.s.sol │ │ │ └── 3222583902 │ │ │ └── run-1683651424.json │ └── remappings.txt └── addresses.json ├── localhost ├── .env ├── 2023-06-08-deploy │ ├── .env │ ├── Makefile │ ├── deployed │ │ └── addresses.json │ ├── execute │ │ └── RunDeployBedrock.s.sol │ ├── foundry.toml │ ├── inputs │ │ ├── construct-config.sh │ │ ├── deploy-config.json │ │ └── misc-config.json │ └── remappings.txt ├── 2023-06-20-systemcfg-test │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── remappings.txt │ ├── script │ │ └── TransferSystemConfigOwner.s.sol │ └── sign.sh ├── 2023-06-27-use-challenger1of2 │ ├── .env │ ├── Makefile │ ├── foundry.toml │ └── script │ │ ├── DeployL2OO.s.sol │ │ └── UpgradeL2OO.s.sol ├── 2023-07-11-test-l1-safe │ ├── .env │ ├── Makefile │ ├── foundry.toml │ └── script │ │ ├── DeployTestProxy.s.sol │ │ └── TestL1Safe.s.sol ├── Makefile ├── README.md ├── addresses.json └── setup │ └── genesis.json ├── logo.webp ├── mainnet ├── .env ├── 2023-06-14-deploy-deterministic-proxy │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── DeterministicProxyDeploy.s.sol │ │ │ └── 84531 │ │ │ └── run-1686756835.json │ ├── remappings.txt │ └── script │ │ └── DeterministicProxyDeploy.s.sol ├── 2023-06-14-deploy │ ├── .env │ ├── Makefile │ ├── deployed │ │ └── addresses.json │ ├── execute │ │ └── RunDeployBedrock.s.sol │ ├── foundry.toml │ ├── inputs │ │ ├── construct-config.sh │ │ ├── deploy-config.json │ │ └── misc-config.json │ ├── records │ │ └── RunDeployBedrock.s.sol │ │ │ └── 1 │ │ │ └── dry-run │ │ │ └── run-1686792137.json │ └── remappings.txt ├── 2023-06-14-test-tx │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── Test.s.sol │ │ │ └── 1 │ │ │ └── dry-run │ │ │ └── run-1686762751.json │ ├── remappings.txt │ ├── script │ │ └── Test.s.sol │ └── src │ │ └── Test.sol ├── 2023-06-15-unpause-portal │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── UnpausePortal.s.sol │ │ │ └── 1 │ │ │ ├── run-1686800969.json │ │ │ ├── run-1686801711.json │ │ │ └── run-1686802144.json │ ├── remappings.txt │ └── script │ │ └── UnpausePortal.s.sol ├── 2023-06-15-validate-deploy │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── remappings.txt │ └── script │ │ └── ValidateDeploy.s.sol ├── 2023-06-21-transfer-system-cfg-owner │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── TransferOwner.s.sol │ │ │ └── 1 │ │ │ └── run-1687552190.json │ ├── remappings.txt │ ├── script │ │ └── TransferOwner.s.sol │ └── sign.sh ├── 2023-07-11-test-l2-safe │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── DeployTestProxy.s.sol │ │ │ └── 8453 │ │ │ │ └── run-1689807430.json │ │ └── TestL2Safe.s.sol │ │ │ └── 8453 │ │ │ └── run-1689855846.json │ └── script │ │ ├── DeployTestProxy.s.sol │ │ └── TestL2Safe.s.sol ├── 2023-07-17-test-l1-nested-safe │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── DeployTestProxy.s.sol │ │ │ └── 1 │ │ │ │ ├── run-1689870341.json │ │ │ │ ├── run-1690069785.json │ │ │ │ ├── run-1690244404.json │ │ │ │ └── run-1690245053.json │ │ └── TestL1NestedSafe.s.sol │ │ │ └── 1 │ │ │ ├── approve-1691353255.json │ │ │ ├── approve-1691353718.json │ │ │ └── run-1691353817.json │ └── script │ │ ├── DeployTestProxy.s.sol │ │ └── TestL1NestedSafe.s.sol ├── 2023-07-19-challenger-1-of-2 │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── DeleteL2OutputsCB.s.sol │ │ │ └── 1 │ │ │ │ └── run-1690499220.json │ │ ├── DeleteL2OutputsOP.s.sol │ │ │ └── 1 │ │ │ │ └── run-1691703002.json │ │ ├── DeployChallenger.s.sol │ │ │ └── run-1689808110.json │ │ └── UpgradeL2OO.s.sol │ │ │ └── 1 │ │ │ └── run-1690314255.json │ └── script │ │ ├── DeleteL2OutputsCB.s.sol │ │ ├── DeleteL2OutputsOP.s.sol │ │ ├── DeployChallenger.s.sol │ │ └── UpgradeL2OO.s.sol ├── 2023-07-19-test-l2-nested-safe │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── DeployTestProxy.s.sol │ │ │ └── 8453 │ │ │ │ └── run-1689883950.json │ │ └── TestNestedL2Safe.s.sol │ │ │ └── 8453 │ │ │ ├── approve-1691008217.json │ │ │ ├── approve-1691008879.json │ │ │ └── run-1691009077.json │ └── script │ │ ├── DeployTestProxy.s.sol │ │ └── TestNestedL2Safe.s.sol ├── 2023-07-26-transfer-owner-nested-safes │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── TransferOwnerL1.s.sol │ │ │ └── 1 │ │ │ │ └── run-1691523415.json │ │ └── TransferOwnerL2.s.sol │ │ │ └── 8453 │ │ │ └── run-1691524273.json │ └── script │ │ ├── TransferOwnerL1.s.sol │ │ └── TransferOwnerL2.s.sol ├── 2023-08-07-test-op-fee-nested-safe │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── TestNestedL2Safe.s.sol │ │ │ └── 10 │ │ │ ├── run-1692981334.json │ │ │ ├── run-1692981492.json │ │ │ └── run-1692981620.json │ └── script │ │ └── TestNestedL2Safe.s.sol ├── 2023-08-15-support-eas │ ├── .env │ ├── FINAL-runbook-supportEAS.pdf │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── UpgradeToEAS.s.sol │ │ │ └── 8453 │ │ │ ├── run-1694183897.json │ │ │ ├── run-1694184082.json │ │ │ └── run-1694184181.json │ └── script │ │ └── UpgradeToEAS.s.sol ├── 2023-08-22-fee-vault-fix │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── FixFeeVaultsL2.s.sol │ │ │ └── 8453 │ │ │ ├── run-1693342112.json │ │ │ ├── run-1693585668.json │ │ │ └── run-1693589726.json │ └── script │ │ ├── DeployNewFeeVaultsL2.s.sol │ │ └── FixFeeVaultsL2.s.sol ├── 2023-08-28-deploy-revshare │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── UpgradeToFeeDisburser.s.sol │ │ │ └── 8453 │ │ │ └── run-1693609606.json │ └── script │ │ ├── DeployBalanceTracker.s.sol │ │ ├── DeployFeeDisburser.s.sol │ │ ├── FeeDisburserOwnershipTransfer.s.sol │ │ └── UpgradeToFeeDisburser.s.sol ├── 2024-02-21-setup-smart-escrow │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── DeploySmartEscrow.s.sol │ │ │ └── 10 │ │ │ └── run-1709074703.json │ └── script │ │ └── DeploySmartEscrow.s.sol ├── 2024-02-23-transfer-op │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── script │ │ ├── TransferAndDelegateOPTokens.s.sol │ │ └── TransferUpfrontOPTokens.s.sol ├── 2024-03-05-pause-unpause-test │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── PausePortal.s.sol │ │ │ └── 1 │ │ │ │ ├── run-1711563045.json │ │ │ │ └── run-1711563069.json │ │ └── UnpausePortal.s.sol │ │ │ └── 1 │ │ │ ├── run-1711567810.json │ │ │ └── run-1711567828.json │ └── script │ │ ├── PausePortal.s.sol │ │ └── UnpausePortal.s.sol ├── 2024-03-07-ecotone-sysconfig-updates │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ ├── records │ │ └── UpdateGasConfig.sol │ │ │ └── 1 │ │ │ └── run-1710375473.json │ └── script │ │ ├── RollbackGasConfig.sol │ │ └── UpdateGasConfig.sol ├── 2024-03-26-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ ├── records │ │ └── UpdateGasLimit.sol │ │ │ └── 1 │ │ │ ├── run-1711570739.json │ │ │ └── run-1711570882.json │ └── script │ │ ├── RollbackGasLimit.sol │ │ └── UpdateGasLimit.sol ├── 2024-04-01-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ ├── records │ │ └── UpdateGasLimit.sol │ │ │ └── 1 │ │ │ └── run-1712005481.json │ └── script │ │ ├── RollbackGasLimit.sol │ │ └── UpdateGasLimit.sol ├── 2024-04-12-deployERC20Factory │ ├── .env │ ├── Makefile │ ├── deployed │ │ └── addresses.json │ ├── foundry.toml │ ├── records │ │ └── RunERC20FactoryDeploy.s.sol │ │ │ └── 8453 │ │ │ └── run-1713280196.json │ └── script │ │ └── RunERC20FactoryDeploy.s.sol ├── 2024-04-15-redeploy-smart-escrow │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── DeploySmartEscrow.s.sol │ │ │ └── 10 │ │ │ └── run-1713902413.json │ └── script │ │ └── DeploySmartEscrow.s.sol ├── 2024-04-17-upgrade-erc20-factory │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ ├── records │ │ └── UpgradeOptimismMintableERC20Factory.s.sol │ │ │ └── 8453 │ │ │ ├── approve-latest.json │ │ │ ├── run-1716225695.json │ │ │ ├── run-1716225767.json │ │ │ └── run-1716225813.json │ └── script │ │ └── UpgradeOptimismMintableERC20Factory.s.sol ├── 2024-04-30-deployTempERC20Factory │ ├── .env │ ├── Makefile │ ├── deployed │ │ └── addresses.json │ ├── foundry.toml │ ├── inputs │ │ ├── construct-config.sh │ │ ├── deploy-config.json │ │ └── misc-config.json │ ├── records │ │ └── RunDeployERC20Factory.sol │ │ │ └── 8453 │ │ │ └── run-1714483769.json │ ├── script │ │ └── RunDeployERC20Factory.sol │ └── src │ │ └── ERC20Factory.sol ├── 2024-05-28-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ ├── records │ │ └── UpdateGasLimit.sol │ │ │ └── 1 │ │ │ └── run-1716922926.json │ └── script │ │ ├── RollbackGasLimit.sol │ │ └── UpdateGasLimit.sol ├── 2024-05-30-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── script │ │ ├── RollbackGasLimit.sol │ │ └── UpdateGasLimit.sol ├── 2024-06-05-reredeploy-smart-escrow │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── DeploySmartEscrow.s.sol │ │ │ └── 10 │ │ │ ├── run-1719275042.json │ │ │ ├── run-1719275101.json │ │ │ └── run-1722111961.json │ └── script │ │ └── DeploySmartEscrow.s.sol ├── 2024-06-17-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── script │ │ ├── RollbackGasLimit.sol │ │ └── UpdateGasLimit.sol ├── 2024-06-25-update-gas-config │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── script │ │ ├── RollbackGasConfig.sol │ │ └── UpdateGasConfig.sol ├── 2024-06-28-update-gas-config │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── script │ │ ├── RollbackGasConfig.sol │ │ └── UpdateGasConfig.sol ├── 2024-07-10-update-gas-config │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── script │ │ ├── RollbackGasConfig.sol │ │ └── UpdateGasConfig.sol ├── 2024-07-16-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── script │ │ ├── RollbackGasLimit.sol │ │ └── UpdateGasLimit.sol ├── 2024-07-23-set-l1-resolver │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── script │ │ └── SetL1Resolver.sol ├── 2024-07-23-transfer-owner-balance-tracker │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ ├── records │ │ └── BalanceTrackerOwnershipTransfer.sol │ │ │ └── 1 │ │ │ └── run-1721845061.json │ └── script │ │ └── BalanceTrackerOwnershipTransfer.sol ├── 2024-07-24-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── script │ │ ├── RollbackGasLimit.sol │ │ └── UpdateGasLimit.sol ├── 2024-07-24-reduce-batcher-proposer-balance-targets │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ ├── records │ │ └── DeployBalanceTracker.s.sol │ │ │ └── 1 │ │ │ └── run-1721866466.json │ └── script │ │ ├── DeployBalanceTracker.s.sol │ │ └── UpgradeBalanceTracker.s.sol ├── 2024-07-30-set-new-l1-resolver │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ ├── records │ │ └── SetL1Resolver.sol │ │ │ └── 1 │ │ │ └── run-1722367323.json │ └── script │ │ └── SetL1Resolver.sol ├── 2024-07-30-transfer-op │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ ├── records │ │ └── TransferOPTokens.s.sol │ │ │ └── 10 │ │ │ ├── run-1723148142.json │ │ │ ├── run-1723148655.json │ │ │ └── run-1723148770.json │ └── script │ │ └── TransferOPTokens.s.sol ├── 2024-07-31-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── script │ │ ├── RollbackGasLimit.sol │ │ └── UpdateGasLimit.sol ├── 2024-09-23-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── UpgradeGasLimit.sol │ │ └── 1 │ │ └── run-1727285381.json ├── 2024-10-01-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── UpgradeGasLimit.sol │ │ └── 1 │ │ └── run-1727888979.json ├── 2024-10-08-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── UpgradeGasLimit.sol │ │ └── 1 │ │ └── run-1728494142.json ├── 2024-10-15-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── UpgradeGasLimit.sol │ │ └── 1 │ │ └── run-1729105634.json ├── 2024-10-22-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── UpgradeGasLimit.sol │ │ └── 1 │ │ └── run-1729703140.json ├── 2024-11-18-increase-max-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ ├── output │ ├── patch │ │ └── max-gas-limit.patch │ ├── records │ │ ├── DeploySystemConfig.s.sol │ │ │ └── 1 │ │ │ │ └── run-1733860170.json │ │ └── UpgradeSystemConfig.s.sol │ │ │ └── 1 │ │ │ ├── run-1733947633.json │ │ │ ├── run-1733957906.json │ │ │ └── run-1733958067.json │ └── script │ │ ├── DeploySystemConfig.s.sol │ │ └── UpgradeSystemConfig.s.sol ├── 2024-12-04-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── UpgradeGasLimit.sol │ │ └── 1 │ │ └── run-1733328181.json ├── 2024-12-11-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── UpgradeGasLimit.sol │ │ └── 1 │ │ └── run-1733962358.json ├── 2024-12-18-holocene-deployments │ ├── .env │ ├── Makefile │ ├── README.md │ ├── deployed │ │ └── addresses.json │ ├── foundry.toml │ ├── inputs │ │ ├── construct-config.sh │ │ ├── deploy-config.json │ │ └── misc-config.json │ ├── records │ │ └── DeployHoloceneContracts.s.sol │ │ │ └── 1 │ │ │ └── run-1734652451.json │ └── script │ │ └── DeployHoloceneContracts.s.sol ├── 2024-12-18-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── UpgradeGasLimit.sol │ │ └── 1 │ │ └── run-1734551212.json ├── 2025-01-08-transfer-proxyadmin-owner-L1alias │ ├── .env │ ├── Makefile │ ├── README.md │ ├── VALIDATION.MD │ ├── foundry.toml │ ├── records │ │ └── TransferOwner.s.sol │ │ │ └── 8453 │ │ │ ├── run-1738699790.json │ │ │ ├── run-1738702467.json │ │ │ └── run-1738702575.json │ └── script │ │ └── TransferOwner.s.sol ├── 2025-01-15-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── UpgradeGasLimit.sol │ │ └── 1 │ │ └── run-1736968347.json ├── 2025-01-15-nested-ownership-transfer │ ├── .env │ ├── Makefile │ ├── README.md │ ├── VALIDATION.md │ ├── addresses.json │ ├── foundry.toml │ ├── records │ │ ├── DeploySafes.s.sol │ │ │ └── 1 │ │ │ │ └── run-1745514205.json │ │ └── UpdateSigners.s.sol │ │ │ └── 1 │ │ │ └── run-1745938970.json │ ├── script │ │ ├── DeploySafes.s.sol │ │ └── UpdateSigners.s.sol │ └── signers.json ├── 2025-01-22-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── UpgradeGasLimit.sol │ │ └── 1 │ │ └── run-1737568790.json ├── 2025-01-29-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ └── foundry.toml ├── 2025-02-12-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── SetGasLimit.sol │ │ └── 1 │ │ └── run-1739387882.json ├── 2025-02-19-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── SetGasLimit.sol │ │ └── 1 │ │ └── run-1739987678.json ├── 2025-02-25-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── SetGasLimit.sol │ │ └── 1 │ │ └── run-1740593054.json ├── 2025-03-05-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── SetGasLimit.sol │ │ └── 1 │ │ └── run-1741194410.json ├── 2025-03-05-upgrade-fault-proofs │ ├── .env │ ├── Makefile │ ├── README.md │ ├── VALIDATION.md │ ├── addresses.json │ ├── foundry.toml │ ├── records │ │ └── DeployDisputeGames.s.sol │ │ │ └── 1 │ │ │ └── run-1742911814.json │ └── script │ │ ├── DeployDisputeGames.s.sol │ │ └── UpgradeDGF.s.sol ├── 2025-03-19-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── SetGasLimit.sol │ │ └── 1 │ │ └── run-1742400711.json ├── 2025-03-26-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── SetGasLimit.sol │ │ └── 1 │ │ └── run-1743002773.json ├── 2025-04-07-init-smart-escrow-ownership-transfer │ ├── .env │ ├── Makefile │ ├── README.md │ ├── VALIDATION.md │ ├── foundry.toml │ └── script │ │ └── InitOwnershipTransfer.s.sol ├── 2025-04-07-update-fee-disperser-ownership │ ├── .env │ ├── Makefile │ ├── README.md │ ├── VALIDATION.md │ ├── foundry.toml │ └── script │ │ └── OwnershipTransfer.s.sol ├── 2025-04-23-upgrade-fault-proofs │ ├── .env │ ├── Makefile │ ├── README.md │ ├── addresses.json │ ├── foundry.toml │ ├── records │ │ ├── DeployDisputeGames.s.sol │ │ │ └── 1 │ │ │ │ └── run-1745860191.json │ │ └── UpgradeDGF.s.sol │ │ │ └── 1 │ │ │ ├── approve-latest.json │ │ │ ├── run-1746550202.json │ │ │ ├── run-1746550275.json │ │ │ ├── run-1746553742.json │ │ │ └── run-1746643611.json │ ├── script │ │ ├── DeployDisputeGames.s.sol │ │ └── UpgradeDGF.s.sol │ └── validations │ │ ├── CB.md │ │ ├── OP.md │ │ └── SC.md ├── 2025-04-29-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── SetGasLimit.sol │ │ └── 1 │ │ └── run-1746038678.json ├── 2025-05-06-fund-ledgers │ ├── .env │ ├── Makefile │ ├── README.md │ ├── VALIDATION.md │ ├── foundry.toml │ ├── funding.json │ ├── records │ │ └── Fund.s.sol │ │ │ └── 1 │ │ │ └── run-1747176781.json │ └── script │ │ └── Fund.s.sol ├── 2025-05-07-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── SetGasLimit.sol │ │ └── 1 │ │ └── run-1746637693.json ├── 2025-05-13-incident-multisig-signers │ ├── .env │ ├── Makefile │ ├── OwnerDiff.json │ ├── README.md │ ├── VALIDATION.md │ ├── foundry.toml │ ├── records │ │ └── UpdateSigners.s.sol │ │ │ └── 1 │ │ │ └── run-1749035499.json │ └── script │ │ └── UpdateSigners.s.sol ├── 2025-05-15-eip1559-denominator-reduction │ ├── .env │ ├── Makefile │ ├── README.md │ ├── VALIDATION.md │ ├── foundry.toml │ ├── records │ │ └── ReduceEip1559Denominator.s.sol │ │ │ └── 1 │ │ │ └── run-1748379182.json │ └── script │ │ └── ReduceEip1559Denominator.s.sol └── addresses.json ├── sepolia-alpha ├── .env ├── 2023-09-20-deploy │ ├── .env │ ├── Makefile │ ├── deploy-config │ │ └── deploy-config.json │ ├── deployed │ │ └── addresses.json │ └── foundry.toml ├── 2023-10-06-upgrade-l1-standard-bridge │ ├── .env │ ├── .gitignore │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── DeployL1StandardBridge.s.sol │ │ │ └── 11155111 │ │ │ │ └── run-1696723112.json │ │ └── UpgradeL1StandardBridge.s.sol │ │ │ └── 11155111 │ │ │ └── run-1696723324.json │ └── script │ │ ├── DeployL1StandardBridge.s.sol │ │ └── UpgradeL1StandardBridge.s.sol ├── 2024-08-21-update-batcher-proposer │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── script │ │ ├── RollbackBatcherHash.sol │ │ ├── RollbackProposer.sol │ │ ├── UpdateBatcherHash.sol │ │ └── UpdateProposer.sol ├── 2024-11-19-holocene-contracts │ ├── .env │ ├── .gitignore │ ├── Makefile │ ├── foundry.toml │ └── script │ │ ├── DeploySystemConfig.s.sol │ │ ├── SetEIP1559Params.s.sol │ │ └── UpgradeSystemConfig.s.sol └── 2025-04-08-transfer-proxy-admin-ownership-to-safe │ ├── .env │ ├── Makefile │ ├── README.md │ ├── VALIDATION.md │ ├── foundry.toml │ ├── records │ └── TransferOwnership.s.sol │ │ └── 11155111 │ │ ├── run-1744830889.json │ │ └── run-1744830912.json │ └── script │ └── TransferOwnership.s.sol ├── sepolia ├── .env ├── 2023-09-26-deploy │ ├── .env │ ├── Makefile │ ├── deploy-config │ │ └── deploy-config.json │ ├── deployed │ │ └── addresses.json │ └── foundry.toml ├── 2023-10-07-upgrade-l1-standard-bridge │ ├── .env │ ├── .gitignore │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── DeployL1StandardBridge.s.sol │ │ │ └── 11155111 │ │ │ │ └── run-1696724294.json │ │ └── UpgradeL1StandardBridge.s.sol │ │ │ └── 11155111 │ │ │ └── run-1696724395.json │ └── script │ │ ├── DeployL1StandardBridge.s.sol │ │ └── UpgradeL1StandardBridge.s.sol ├── 2024-01-22-deploy-revshare │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── DeployBalanceTracker.s.sol │ │ │ └── 11155111 │ │ │ │ └── run-1706212422.json │ │ ├── DeployFeeDisburser.s.sol │ │ │ └── 84532 │ │ │ │ └── run-1706221009.json │ │ ├── DeployNewFeeVaults.s.sol │ │ │ └── 84532 │ │ │ │ ├── run-1706826531.json │ │ │ │ └── run-1706826537.json │ │ ├── UpdateFeeVaultRecipient.s.sol │ │ │ └── 84532 │ │ │ │ └── run-1706556198.json │ │ └── UpgradeFeeVaultProxy.s.sol │ │ │ └── 84532 │ │ │ └── run-1706827667.json │ └── script │ │ ├── DeployBalanceTracker.s.sol │ │ ├── DeployFeeDisburser.s.sol │ │ ├── DeployNewFeeVaults.s.sol │ │ └── UpgradeFeeVaultProxy.s.sol ├── 2024-02-28-pause-unpause-portal │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── PausePortal.s.sol │ │ │ └── 11155111 │ │ │ │ └── run-1709751738.json │ │ └── UnpausePortal.s.sol │ │ │ └── 11155111 │ │ │ └── run-1709755240.json │ └── script │ │ ├── PausePortal.s.sol │ │ └── UnpausePortal.s.sol ├── 2024-03-07-ecotone-sysconfig-updates │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── UpdateGasConfig.sol │ │ │ └── 11155111 │ │ │ └── run-1709934684.json │ └── script │ │ └── UpdateGasConfig.sol ├── 2024-03-26-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── UpdateGasLimit.sol │ │ │ └── 11155111 │ │ │ └── run-1711511753.json │ └── script │ │ └── UpdateGasLimit.sol ├── 2024-04-10-deploy-ERC20Factory │ ├── .env │ ├── Makefile │ ├── deployed │ │ └── addresses.json │ ├── foundry.toml │ ├── records │ │ └── RunERC20FactoryDeploy.s.sol │ │ │ └── 84532 │ │ │ ├── run-1712769228.json │ │ │ ├── run-1712947267.json │ │ │ └── run-1713280540.json │ └── script │ │ └── RunERC20FactoryDeploy.s.sol ├── 2024-04-30-deployTempERC20Factory │ ├── .env │ ├── Makefile │ ├── deployed │ │ └── addresses.json │ ├── foundry.toml │ ├── inputs │ │ ├── construct-config.sh │ │ ├── deploy-config.json │ │ └── misc-config.json │ ├── records │ │ └── RunDeployERC20Factory.sol │ │ │ └── 84532 │ │ │ └── run-1714484076.json │ ├── script │ │ └── RunDeployERC20Factory.sol │ └── src │ │ └── ERC20Factory.sol ├── 2024-05-30-transfer-proxyadmin-owners │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ ├── TransferL1ProxyAdminOwner.s.sol │ │ │ └── 11155111 │ │ │ │ └── run-1717448862.json │ │ ├── TransferL2ProxyAdminOwner.s.sol │ │ │ └── 84532 │ │ │ │ └── run-1717448942.json │ │ └── TransferSystemConfigProxyOwner.s.sol │ │ │ └── 11155111 │ │ │ └── run-1717449020.json │ └── script │ │ ├── TransferL1ProxyAdminOwner.s.sol │ │ ├── TransferL2ProxyAdminOwner.s.sol │ │ └── TransferSystemConfigProxyOwner.s.sol ├── 2024-08-26-update-batcher-hash │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── script │ │ ├── RollbackBatcherHash.s.sol │ │ └── UpdateBatcherHash.s.sol ├── 2024-09-11-deploy-new-PDG │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ ├── records │ │ └── DeployNewPDG.s.sol │ │ │ └── 11155111 │ │ │ └── run-1726092565.json │ └── script │ │ └── DeployNewPDG.s.sol ├── 2024-09-11-update-proposer │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ ├── records │ │ └── UpdateProposer.s.sol │ │ │ └── 11155111 │ │ │ └── run-1726095157.json │ └── script │ │ ├── RollbackProposer.s.sol │ │ └── UpdateProposer.s.sol ├── 2024-10-09-increase-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ └── records │ │ └── UpgradeGasLimit.sol │ │ └── 11155111 │ │ └── run-1728578106.json ├── 2024-12-06-increase-max-gas-limit │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ ├── patch │ │ └── max-gas-limit.patch │ ├── records │ │ └── UpgradeSystemConfig.s.sol │ │ │ └── 11155111 │ │ │ └── run-1733527237.json │ └── script │ │ ├── DeploySystemConfig.s.sol │ │ └── UpgradeSystemConfig.s.sol ├── 2025-01-23-upgrade-balance-tracker │ ├── .env │ ├── Makefile │ ├── foundry.toml │ ├── records │ │ └── UpgradeBalanceTracker.s.sol │ │ │ └── 11155111 │ │ │ └── run-1738252251.json │ └── script │ │ └── UpgradeBalanceTracker.s.sol ├── 2025-02-14-upgrade-fault-proofs │ ├── .env │ ├── Makefile │ ├── README.md │ ├── VALIDATION.md │ ├── addresses.json │ ├── foundry.toml │ ├── records │ │ ├── DeployDisputeGames.s.sol │ │ │ └── 11155111 │ │ │ │ └── run-1740598045.json │ │ └── UpgradeDGF.s.sol │ │ │ └── 11155111 │ │ │ └── run-1740768733.json │ └── script │ │ ├── DeployDisputeGames.s.sol │ │ └── UpgradeDGF.s.sol ├── 2025-03-12-upgrade-fault-proofs │ ├── .env │ ├── Makefile │ ├── README.md │ ├── VALIDATION.md │ ├── addresses.json │ ├── foundry.toml │ ├── records │ │ ├── DeployDisputeGames.s.sol │ │ │ └── 11155111 │ │ │ │ ├── run-1741808714.json │ │ │ │ └── run-1743014041.json │ │ └── UpgradeDGF.s.sol │ │ │ └── 11155111 │ │ │ ├── approve-latest.json │ │ │ ├── run-1741902924.json │ │ │ ├── run-1743022548.json │ │ │ ├── run-1743022789.json │ │ │ └── run-1743022908.json │ └── script │ │ ├── DeployDisputeGames.s.sol │ │ └── UpgradeDGF.s.sol ├── 2025-03-14-mirror-mainnet-hierarchy │ ├── .env │ ├── Makefile │ ├── README.md │ ├── Validation.md │ ├── addresses.json │ ├── foundry.toml │ ├── records │ │ ├── DeploySafes.s.sol │ │ │ └── 11155111 │ │ │ │ ├── run-1742037481.json │ │ │ │ └── run-1742418121.json │ │ └── UpdateSigners.s.sol │ │ │ └── 11155111 │ │ │ └── run-1742902176.json │ └── script │ │ ├── DeploySafes.s.sol │ │ └── UpdateSigners.s.sol ├── 2025-04-01-nested-ownership-transfer │ ├── .env │ ├── Makefile │ ├── README.md │ ├── VALIDATION.md │ ├── addresses.json │ ├── foundry.toml │ ├── records │ │ ├── DeploySafes.s.sol │ │ │ └── 11155111 │ │ │ │ └── run-1744716601.json │ │ └── UpdateSigners.s.sol │ │ │ └── 11155111 │ │ │ └── run-1744741044.json │ └── script │ │ ├── DeploySafes.s.sol │ │ └── UpdateSigners.s.sol ├── 2025-04-09-testnet-multisig-signers │ ├── .env │ ├── Makefile │ ├── OwnerDiff.json │ ├── README.md │ ├── foundry.toml │ ├── records │ │ └── UpdateSigners.s.sol │ │ │ └── 11155111 │ │ │ ├── run-1744919029.json │ │ │ └── run-1744919545.json │ ├── script │ │ └── UpdateSigners.s.sol │ └── validations │ │ ├── SafeA.md │ │ └── SafeB.md ├── 2025-04-14-upgrade-fault-proofs │ ├── .env │ ├── Makefile │ ├── README.md │ ├── addresses.json │ ├── foundry.toml │ ├── records │ │ ├── DeployDisputeGames.s.sol │ │ │ └── 11155111 │ │ │ │ └── run-1744743721.json │ │ └── UpgradeDGF.s.sol │ │ │ └── 11155111 │ │ │ ├── approve-latest.json │ │ │ ├── approveOnBehalfOfIntermediateSafe-latest.json │ │ │ ├── approveOnBehalfOfSignerSafe-latest.json │ │ │ ├── run-1744822945.json │ │ │ ├── run-1744823305.json │ │ │ ├── run-1744823401.json │ │ │ ├── run-1744823689.json │ │ │ └── run-1744823785.json │ ├── script │ │ ├── DeployDisputeGames.s.sol │ │ └── UpgradeDGF.s.sol │ └── validations │ │ ├── NestedSafeB.md │ │ ├── SafeA.md │ │ └── SafeB.md ├── 2025-05-08-update-fee-disperser-ownership │ ├── .env │ ├── Makefile │ ├── README.md │ ├── VALIDATION.md │ ├── foundry.toml │ ├── records │ │ └── OwnershipTransfer.s.sol │ │ │ └── 84532 │ │ │ └── run-1748360700.json │ └── script │ │ └── OwnershipTransfer.s.sol ├── 2025-05-15-eip1559-denominator-reduction │ ├── .env │ ├── Makefile │ ├── README.md │ ├── foundry.toml │ ├── records │ │ └── ReduceEip1559Denominator.s.sol │ │ │ └── 11155111 │ │ │ ├── approve-latest.json │ │ │ ├── run-1748365405.json │ │ │ ├── run-1748365537.json │ │ │ ├── run-1748366042.json │ │ │ ├── run-1748366112.json │ │ │ └── run-1748366149.json │ ├── script │ │ └── ReduceEip1559Denominator.s.sol │ └── validations │ │ ├── CB_NESTED_COORDINATOR.md │ │ ├── MOCK_OP_NESTED.md │ │ └── MOCK_OP_NESTED_COORDINATOR.md └── 2025-06-04-upgrade-system-config │ ├── .env │ ├── Makefile │ ├── README.md │ ├── addresses.json │ ├── foundry.toml │ ├── patch │ └── max-gas-limit.patch │ ├── records │ └── UpgradeSystemConfig.s.sol │ │ └── 11155111 │ │ ├── approve-latest.json │ │ ├── run-1749236088.json │ │ ├── run-1749236197.json │ │ ├── run-1749236268.json │ │ ├── run-1749236318.json │ │ └── run-1749236365.json │ ├── script │ ├── DeploySystemConfig.s.sol │ └── UpgradeSystemConfig.s.sol │ └── validations │ ├── BASE_NESTED_VALIDATION.md │ ├── BASE_SC_VALIDATION.md │ └── OP_VALIDATION.md └── setup-templates ├── template-deploy ├── .env ├── Makefile ├── deployed │ └── addresses.json ├── foundry.toml ├── inputs │ ├── construct-config.sh │ ├── deploy-config.json │ └── misc-config.json └── script │ └── RunDeployBedrock.s.sol ├── template-funding ├── .env ├── Makefile ├── README.md ├── foundry.toml ├── funding.json └── script │ └── Fund.s.sol ├── template-gas-increase ├── .env ├── Makefile ├── README.md └── foundry.toml ├── template-generic ├── .env ├── Makefile ├── foundry.toml └── script │ ├── BasicScript.s.sol │ ├── DoubleNestedMultisigBuilderScript.s.sol │ ├── MultisigBuilderScript.s.sol │ └── NestedMultisigBuilderScript.s.sol ├── template-incident ├── .env ├── Makefile ├── foundry.toml └── script │ ├── DeleteL2Outputs.s.sol │ ├── PausePortal.s.sol │ ├── SetBatcher.s.sol │ ├── SetupNewProposer.s.sol │ ├── UnpausePortal.s.sol │ └── UpdateProposer.s.sol ├── template-safe-management ├── .env ├── Makefile ├── README.md ├── VALIDATION.md ├── foundry.toml └── script │ └── SwapOwner.s.sol └── template-upgrade-fault-proofs ├── .env ├── Makefile ├── README.md ├── foundry.toml └── script ├── DeployDisputeGames.s.sol └── UpgradeDGF.s.sol /.gitignore: -------------------------------------------------------------------------------- 1 | # Executable cli binary 2 | bin/ 3 | 4 | cache/ 5 | out/ 6 | lib/ 7 | 8 | # Localhost and run-latest deploy scripts 9 | **/records/**/**/run-latest.json 10 | localhost/*/records/ 11 | **/records/**/**/dry-run/ 12 | 13 | # Test binary, built with `go test -c` 14 | *.test 15 | 16 | # Output of the go coverage tool, specifically when used with LiteIDE 17 | *.out 18 | out/ 19 | 20 | /.idea/ 21 | 22 | yarn-error.log 23 | 24 | .env.local 25 | 26 | .gitmodules 27 | 28 | .DS_Store 29 | -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: "3" 2 | 3 | # Using a named volume for the go root (where packages are installed) so that 4 | # filesystem performance on a Mac is acceptable (if we bind-mount to the host, 5 | # then Mac FS performance is poor). 6 | volumes: 7 | go_root_volume: 8 | 9 | services: 10 | main: 11 | image: golang:1.18 12 | volumes: 13 | - $PWD/..:$PWD/.. 14 | - go_root_volume:/go 15 | working_dir: $PWD 16 | environment: 17 | - GO111MODULE=off 18 | command: echo 19 | 20 | foundry-main: 21 | image: ghcr.io/foundry-rs/foundry:nightly-cd7850bfb64a4babb07bf5dd6fe5ebac664449cf 22 | volumes: 23 | - $PWD/..:$PWD/.. 24 | working_dir: $PWD 25 | -------------------------------------------------------------------------------- /goerli-alpha/.env: -------------------------------------------------------------------------------- 1 | NETWORK=goerli-alpha 2 | L1_RPC_URL=https://nodes-proxy-development.cbhq.net/geth/testnet-archive-goerli-lighthouse 3 | L2_RPC_URL=https://base-goerli-alpha.cbhq.net 4 | L2_CHAIN_ID=11763071 -------------------------------------------------------------------------------- /goerli-alpha/2023-05-18-deploy/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=3c3e1a88b234a68bcd59be0c123d9f3cc152a91e 2 | -------------------------------------------------------------------------------- /goerli-alpha/2023-05-18-deploy/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Deploy command 7 | ## 8 | .PHONY: deploy 9 | deploy: 10 | ./inputs/construct-config.sh && \ 11 | forge script --rpc-url $(L1_RPC_URL) DeployBedrock --broadcast 12 | jq --sort-keys . unsorted.json > deployed/addresses.json 13 | cp deployed/addresses.json ../addresses.json 14 | rm unsorted.json inputs/foundry-config.json 15 | -------------------------------------------------------------------------------- /goerli-alpha/2023-05-18-deploy/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | script = 'execute' 6 | broadcast = 'records' 7 | fs_permissions = [ {access = "read-write", path = "./"} ] 8 | optimizer = true 9 | optimizer_runs = 999999 10 | solc_version = "0.8.15" 11 | 12 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config 13 | -------------------------------------------------------------------------------- /goerli-alpha/2023-05-18-deploy/inputs/misc-config.json: -------------------------------------------------------------------------------- 1 | { 2 | "deployerAddress": "0xd4091ae24219a312b7a9f8d9dd5d805b2f39d378" 3 | } 4 | -------------------------------------------------------------------------------- /goerli-alpha/2023-05-18-deploy/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-08-test-aliased-owner/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=fc56ded13c91ae945f7e35bff0e45f9154fd647e 2 | BASE_CONTRACTS_COMMIT=8748f2b9b6cfa76c6f751867396a3d1eda84a559 3 | 4 | OWNER_L1=0xA221e753e82626F96b83b3665F4fA92114a2a6f3 5 | OWNER_L2_ALIAS=0xb332E753e82626f96b83b3665f4fa92114a2b804 6 | DEPLOYER=0xa53901de1f38E313eC109482Cef3F28201Ad63A6 7 | SENDER=0xD753a89450213A8D7f7aCCE3a615d71ebD97366d -------------------------------------------------------------------------------- /goerli-alpha/2023-06-08-test-aliased-owner/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | get-aliased-addr: 9 | forge script L1toL2AliasAddress --sig "run(address)" $(OWNER_L1) 10 | 11 | deploy-test-increment: 12 | forge script --rpc-url $(L2_RPC_URL) DeployTestIncrement --private-key $(PRIVATE_KEY) --sig "run(address,address)" $(DEPLOYER) $(OWNER_L2_ALIAS) --broadcast 13 | 14 | call-increment: 15 | forge script -vvvv --rpc-url $(L1_RPC_URL) SafeForcedInclusion --sender $(SENDER) --private-key $(SIGNER_PRIVATE_KEY) --sig "run(address)" $(OWNER_L1) -------------------------------------------------------------------------------- /goerli-alpha/2023-06-08-test-aliased-owner/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config 12 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-08-test-aliased-owner/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate.git/ 5 | @base-contracts/=lib/base-contracts -------------------------------------------------------------------------------- /goerli-alpha/2023-06-08-test-aliased-owner/script/DeployTest.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity ^0.8.13; 3 | 4 | import "forge-std/Script.sol"; 5 | import "forge-std/StdJson.sol"; 6 | import "src/TestIncrement.sol"; 7 | 8 | contract DeployTestIncrement is Script { 9 | function run(address deployer, address ownerL1) public { 10 | vm.broadcast(deployer); 11 | TestIncrement test = new TestIncrement(ownerL1); 12 | console.log(test.owner()); 13 | } 14 | } -------------------------------------------------------------------------------- /goerli-alpha/2023-06-08-test-aliased-owner/script/L1toL2AliasedAddr.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity ^0.8.13; 3 | 4 | import "forge-std/Script.sol"; 5 | import { AddressAliasHelper } from "@eth-optimism-bedrock/contracts/vendor/AddressAliasHelper.sol"; 6 | 7 | // TODO: add this to base-org/contracts 8 | contract L1toL2AliasAddress is Script { 9 | function run(address ownerL1) public view { 10 | console.log(AddressAliasHelper.applyL1ToL2Alias(ownerL1)); 11 | } 12 | } -------------------------------------------------------------------------------- /goerli-alpha/2023-06-08-test-aliased-owner/src/TestIncrement.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity ^0.8.13; 3 | 4 | contract TestIncrement { 5 | uint256 public number; 6 | address public owner; 7 | 8 | constructor (address _owner) { 9 | require(_owner != address(0), "Owner cannot be zero address"); 10 | number = 0; 11 | owner = _owner; 12 | } 13 | 14 | function increment() external { 15 | if (msg.sender != owner) { 16 | revert("Only owner can increment"); 17 | } 18 | number++; 19 | } 20 | } -------------------------------------------------------------------------------- /goerli-alpha/2023-06-09-l2-upgrades/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=3580bf1b41d80fcb2b895d5610836bfad27fc989 2 | BASE_CONTRACTS_COMMIT=0a649e7ef07fb11efc448cfeda3e6eb37c69c9b8 3 | 4 | OWNER_L2=0x7768171512911988acfce3fd295a4cf8aa8e8dba -------------------------------------------------------------------------------- /goerli-alpha/2023-06-09-l2-upgrades/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | 9 | # Upgrade L2 contracts 10 | l2-upgrade: 11 | forge script -vvvv --rpc-url $(L2_RPC_URL) \ 12 | RunPostSherlockL2 \ 13 | --sig "run(uint256,address)" $(L2_CHAIN_ID) $(OWNER_L2) \ 14 | --private-key $(SIGNER_PRIVATE_KEY) --broadcast -------------------------------------------------------------------------------- /goerli-alpha/2023-06-09-l2-upgrades/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-06-09-l2-upgrades/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate.git/ 5 | @base-contracts/=lib/base-contracts 6 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-09-l2-upgrades/script/RunPostSherlockL2.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity ^0.8.13; 3 | 4 | import "forge-std/Script.sol"; 5 | import "forge-std/StdJson.sol"; 6 | import "@base-contracts/script/upgrade/l2/PostSherlockL2.s.sol"; 7 | 8 | contract RunPostSherlockL2 is Script { 9 | function run(uint256 _l2ChainId, address _safe) public { 10 | PostSherlockL2 postSherlockL2 = new PostSherlockL2(_l2ChainId); 11 | postSherlockL2.setUp(); 12 | postSherlockL2.run(_safe); 13 | } 14 | } -------------------------------------------------------------------------------- /goerli-alpha/2023-06-12-transfer-owner-l1-alias-to-l2-safe/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=fc56ded13c91ae945f7e35bff0e45f9154fd647e 2 | BASE_CONTRACTS_COMMIT=6ec7e640b13fc04bb508475c6a5c29e1488ed0b2 3 | 4 | L2_PROXY_ADMIN_CONTRACT=0x4200000000000000000000000000000000000018 5 | L1_OPTIMISM_PORTAL=0x61A7dc680a0f3F67aDc357453d3f51bDc70fAE1B 6 | OWNER_L1_SAFE=0xA221e753e82626F96b83b3665F4fA92114a2a6f3 7 | OWNER_L2_SAFE=0x7768171512911988acfce3fd295a4cf8aa8e8dba 8 | SIGNER=0xD753a89450213A8D7f7aCCE3a615d71ebD97366d -------------------------------------------------------------------------------- /goerli-alpha/2023-06-12-transfer-owner-l1-alias-to-l2-safe/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | transfer-owner: 9 | forge script --rpc-url $(L1_RPC_URL) \ 10 | TransferOwnershipForcedInclusion \ 11 | --private-key $(SIGNER_PRIVATE_KEY) \ 12 | --sig "run(address,address,address,address,address)" \ 13 | $(L2_PROXY_ADMIN_CONTRACT) $(L1_OPTIMISM_PORTAL) $(OWNER_L1_SAFE) $(OWNER_L2_SAFE) $(SIGNER) --broadcast -------------------------------------------------------------------------------- /goerli-alpha/2023-06-12-transfer-owner-l1-alias-to-l2-safe/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-06-12-transfer-owner-l1-alias-to-l2-safe/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate.git/ 5 | @base-contracts/=lib/base-contracts -------------------------------------------------------------------------------- /goerli-alpha/2023-06-14-deploy/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=36965ea35232b26a3abb2638e39ea97786597d94 -------------------------------------------------------------------------------- /goerli-alpha/2023-06-14-deploy/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | .PHONY: deploy 9 | deploy: 10 | go run cmd/foundry_deploy_config_gen/main.go && \ 11 | forge script --rpc-url $(L1_RPC_URL) RunDeployBedrock && \ 12 | jq --sort-keys . unsorted.json > deployed/addresses.json && cp deployed/addresses.json ../addresses.json && \ 13 | rm unsorted.json && rm inputs/foundry-config.json 14 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-14-deploy/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-06-14-deploy/inputs/misc-config.json: -------------------------------------------------------------------------------- 1 | { 2 | "deployerAddress": "0x7976a9aa99df64bdf35427d4760f0159f33f94e1" 3 | } 4 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-14-deploy/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts -------------------------------------------------------------------------------- /goerli-alpha/2023-06-14-deploy/script/RunDeployBedrock.s.sol: -------------------------------------------------------------------------------- 1 | 2 | // SPDX-License-Identifier: MIT 3 | pragma solidity ^0.8.13; 4 | 5 | import "forge-std/Script.sol"; 6 | import "forge-std/StdJson.sol"; 7 | import "@base-contracts/script/deploy/l1/DeployBedrock.s.sol"; 8 | 9 | contract RunDeployBedrock is Script { 10 | function run() public { 11 | DeployBedrock deployBedrock = new DeployBedrock(); 12 | deployBedrock.run(); 13 | } 14 | } -------------------------------------------------------------------------------- /goerli-alpha/2023-06-21-deploy-challenger/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=aa0b2f531fde81bfb1605172506d1ed1cb58db48 3 | 4 | SAFE_1=0xA221e753e82626F96b83b3665F4fA92114a2a6f3 5 | SAFE_2=0x9d8dCd68F3f88FB29C92C8c4B5039906a8b96Ed6 6 | L2_OUTPUT_ORACLE_PROXY=0x805fbEDB43E814b2216ce6926A0A19bdeDb0C8Cd 7 | DEPLOYER=0xD753a89450213A8D7f7aCCE3a615d71ebD97366d -------------------------------------------------------------------------------- /goerli-alpha/2023-06-21-deploy-challenger/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | # include .env.local 5 | 6 | ## 7 | # Foundry commands 8 | ## 9 | .PHONY: deploy-challenger 10 | deploy-challenger: 11 | forge script -vvvv --rpc-url $(L1_RPC_URL) DeployChallenger \ 12 | --sig "run(address,address,address,address)" $(DEPLOYER) $(SAFE_1) $(SAFE_2) $(L2_OUTPUT_ORACLE_PROXY) \ 13 | --private-key $(PRIVATE_KEY) --broadcast 14 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-21-deploy-challenger/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-06-21-deploy-challenger/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts 6 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-22-test-nested-safe/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=e1c66093af049cec1d79f54a36b6d935c0e58ad8 3 | 4 | DEPLOYER=0xD753a89450213A8D7f7aCCE3a615d71ebD97366d 5 | 6 | NESTED_SAFE_L1=0xCDdEb1F77Cbc9BD2Bd07aD5808CE6108EB07DF89 7 | SIGNER_SAFE_1_L1=0xA221e753e82626F96b83b3665F4fA92114a2a6f3 8 | SIGNER_SAFE_2_L1=0x9d8dCd68F3f88FB29C92C8c4B5039906a8b96Ed6 9 | 10 | 11 | NESTED_SAFE_L2=0xf71a498086d00843d7754964b27dd7198a16ee7f 12 | SIGNER_SAFE_1_L2=0x7768171512911988acfce3fd295a4cf8aa8e8dba 13 | SIGNER_SAFE_2_L2=0x185d1422dcccf117d547ff2f278be88fda59b240 -------------------------------------------------------------------------------- /goerli-alpha/2023-06-22-test-nested-safe/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-06-22-test-nested-safe/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts 6 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-22-test-nested-safe/script/DeployTest.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity 0.8.15; 3 | 4 | import "forge-std/Script.sol"; 5 | import "@base-contracts/src/TestOwner.sol"; 6 | 7 | contract DeployTest is Script { 8 | function run(address deployer, address nestedSafe) public { 9 | vm.broadcast(deployer); 10 | TestOwner testowner = new TestOwner(nestedSafe); 11 | console.log(address(testowner)); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-22-test-nested-safe/sign-l1-approve.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | source ../.env 5 | source .env 6 | source .env.local 7 | 8 | payload=$(forge script --via-ir --rpc-url ${L1_RPC_URL} TestNestedSafeL1 --sig "signApproval(address)" ${SIGNER_SAFE_1_L1} | tee /dev/stderr | grep -A1 vvvvvvvv | grep -v vvvvvvvv) 9 | cd lib/base-contracts 10 | echo "${payload}" | go run ./cmd/sign --private-key ${PRIVATE_KEY} 11 | 12 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-22-test-nested-safe/sign-l1.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | source ../.env 5 | source .env 6 | source .env.local 7 | 8 | payload=$(forge script --via-ir --rpc-url ${L1_RPC_URL} TestNestedSafeL1 --sig "signTransaction(address)" ${SIGNER_SAFE_2_L1} | tee /dev/stderr | grep -A1 vvvvvvvv | grep -v vvvvvvvv) 9 | cd lib/base-contracts 10 | echo "${payload}" | go run ./cmd/sign --private-key ${PRIVATE_KEY} 11 | 12 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-22-test-nested-safe/sign-l2-approve.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | source ../.env 5 | source .env 6 | source .env.local 7 | 8 | payload=$(forge script --via-ir --rpc-url ${L2_RPC_URL} TestNestedSafeL2 --sig "signApproval(address)" ${SIGNER_SAFE_1_L2} | tee /dev/stderr | grep -A1 vvvvvvvv | grep -v vvvvvvvv) 9 | cd lib/base-contracts 10 | echo "${payload}" | go run ./cmd/sign --private-key ${PRIVATE_KEY} 11 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-22-test-nested-safe/sign-l2.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | source ../.env 5 | source .env 6 | source .env.local 7 | 8 | payload=$(forge script --via-ir --rpc-url ${L2_RPC_URL} TestNestedSafeL2 --sig "signTransaction(address)" ${SIGNER_SAFE_2_L2} | tee /dev/stderr | grep -A1 vvvvvvvv | grep -v vvvvvvvv) 9 | cd lib/base-contracts 10 | echo "${payload}" | go run ./cmd/sign --private-key ${PRIVATE_KEY} 11 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-23-transfer-l1-owner/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=e1c66093af049cec1d79f54a36b6d935c0e58ad8 3 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-23-transfer-l1-owner/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | include .env.local 5 | 6 | ## 7 | # Foundry commands 8 | ## 9 | sign: 10 | forge script --via-ir --rpc-url ${L1_RPC_URL} TransferL1Owner --sig "sign()" | \ 11 | tee /dev/stderr | grep -A1 vvvvvvvv | grep -v vvvvvvvv | \ 12 | (cd lib/base-contracts && go run ./cmd/sign --private-key ${PRIVATE_KEY}) 13 | 14 | run: 15 | forge script --via-ir --rpc-url $(L1_RPC_URL) \ 16 | TransferL1Owner --sig "run(bytes)" $(SIGNATURES) \ 17 | --private-key $(PRIVATE_KEY) --broadcast 18 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-23-transfer-l1-owner/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-06-23-transfer-l1-owner/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts 6 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-23-transfer-l2-owner/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=e1c66093af049cec1d79f54a36b6d935c0e58ad8 3 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-23-transfer-l2-owner/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | include .env.local 5 | 6 | ## 7 | # Foundry commands 8 | ## 9 | sign: 10 | forge script --via-ir --rpc-url ${L2_RPC_URL} TransferL2Owner --sig "sign()" | \ 11 | tee /dev/stderr | grep -A1 vvvvvvvv | grep -v vvvvvvvv | \ 12 | (cd lib/base-contracts && go run ./cmd/sign --private-key ${PRIVATE_KEY}) 13 | 14 | run: 15 | forge script --via-ir --rpc-url $(L2_RPC_URL) \ 16 | TransferL2Owner --sig "run(bytes)" $(SIGNATURES) \ 17 | --private-key $(PRIVATE_KEY) --broadcast 18 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-23-transfer-l2-owner/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-06-23-transfer-l2-owner/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts 6 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-26-use-challenger1of2/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=e1c66093af049cec1d79f54a36b6d935c0e58ad8 3 | 4 | DEPLOYER=0xD753a89450213A8D7f7aCCE3a615d71ebD97366d 5 | CHALLENGER=0x6c4219fC0DA6813FbB3301F103813fe230FA6653 6 | L2_OUTPUT_ORACLE_PROXY=0x805fbEDB43E814b2216ce6926A0A19bdeDb0C8Cd 7 | 8 | SAFE_1_ADDR=0xA221e753e82626F96b83b3665F4fA92114a2a6f3 9 | SAFE_2_ADDR=0x9d8dCd68F3f88FB29C92C8c4B5039906a8b96Ed6 -------------------------------------------------------------------------------- /goerli-alpha/2023-06-26-use-challenger1of2/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts' 16 | ] 17 | 18 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-06-27-test-l2-owner/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=9ef27373770606ff2aba5035be4cf7024ace64f9 3 | 4 | SAFE_1_ADDR=0x7768171512911988acfce3fd295a4cf8aa8e8dba 5 | SAFE_2_ADDR=0x185d1422dcccf117d547ff2f278be88fda59b240 6 | 7 | L2_PROXY_ADMIN_CONTRACT=0x4200000000000000000000000000000000000018 8 | L1_BLOCK_PROXY=0x4200000000000000000000000000000000000015 -------------------------------------------------------------------------------- /goerli-alpha/2023-06-27-test-l2-owner/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts' 16 | ] 17 | 18 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-06-28-safe-threshold/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=af37067a74fbe896d20647084466592de80a6a22 3 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-28-safe-threshold/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | include ../.env.local 5 | 6 | ## 7 | # Foundry commands 8 | ## 9 | .PHONY: sign 10 | sign: 11 | forge script --via-ir --rpc-url $(L2_RPC_URL) ChangeThreshold --sig "sign()" | \ 12 | tee /dev/stderr | grep -A1 vvvvvvvv | grep -v vvvvvvvv | \ 13 | (cd lib/base-contracts && go run ./cmd/sign --private-key $(PRIVATE_KEY)) 14 | 15 | .PHONY: run 16 | run: 17 | forge script --via-ir --rpc-url $(L2_RPC_URL) \ 18 | ChangeThreshold --sig "run(bytes)" $(SIGNATURES) \ 19 | --private-key $(PRIVATE_KEY) --broadcast 20 | -------------------------------------------------------------------------------- /goerli-alpha/2023-06-28-safe-threshold/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts' 16 | ] 17 | 18 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-06-29-increase-finalization/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=af37067a74fbe896d20647084466592de80a6a22 3 | 4 | DEPLOYER=0xD753a89450213A8D7f7aCCE3a615d71ebD97366d 5 | FINALIZATION_PERIOD_SECS=300 6 | L2_OUTPUT_ORACLE_PROXY=0x805fbEDB43E814b2216ce6926A0A19bdeDb0C8Cd 7 | 8 | SAFE_1_ADDR=0xA221e753e82626F96b83b3665F4fA92114a2a6f3 9 | SAFE_2_ADDR=0x9d8dCd68F3f88FB29C92C8c4B5039906a8b96Ed6 -------------------------------------------------------------------------------- /goerli-alpha/2023-06-29-increase-finalization/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts' 16 | ] 17 | via-ir=true 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-07-12-practicing-incident-response/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=af37067a74fbe896d20647084466592de80a6a22 -------------------------------------------------------------------------------- /goerli-alpha/2023-07-12-practicing-incident-response/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts' 16 | ] 17 | 18 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-08-15-support-eas/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=48ed4e8c2b03d2c038aaf3ee308b2095bcf9e58f 2 | BASE_CONTRACTS_COMMIT=55b9dafd276ed20c2490f374df1e01ce9d7590da 3 | 4 | DEPLOYER=0xE91efB608747f8f99CBB7d77020B80ECaEc16E26 5 | 6 | REGISTRY_IMPL_ADDRESS=0xba906B089b14F340B0eE1B1F453827C95FCF588C 7 | EAS_IMPL_ADDRESS=0x95a24759136FC22B1C6f676DAfea738f6c6D846f 8 | 9 | VERIFIER=blockscout 10 | VERIFIER_URL=https://base-goerli-alpha-explorer.cbhq.net/api? # or https://api-goerli.etherscan.io/api 11 | 12 | L2_NESTED_SAFE=0xf71a498086d00843d7754964b27dd7198a16ee7f 13 | CB_SAFE_ADDR=0x7768171512911988acfce3fd295a4cf8aa8e8dba 14 | OP_SAFE_ADDR=0x185d1422dcccf117d547ff2f278be88fda59b240 15 | -------------------------------------------------------------------------------- /goerli-alpha/2023-08-15-support-eas/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | via-ir = true 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts' 16 | ] 17 | 18 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-08-21-deploy-revshare/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-08-21-feevault-fix/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-10-04-fix-batcher-proposer/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=90bff30727d05fb3451e2a6a118c1350fd0c62af 2 | BASE_CONTRACTS_COMMIT=e961e8638874d571aa63a6e35507e3779131d1eb -------------------------------------------------------------------------------- /goerli-alpha/2023-10-04-fix-batcher-proposer/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | 9 | .PHONY: sign 10 | sign: 11 | $(GOPATH)/bin/eip712sign --private-key $(PRIVATE_KEY) -- \ 12 | forge script --rpc-url $(L1_RPC_URL) SetBatcherAddr --sig "sign()" 13 | 14 | .PHONY: run 15 | run: 16 | forge script --rpc-url $(L1_RPC_URL) \ 17 | SetBatcherAddr --sig "run(bytes)" $(SIGNATURES) \ 18 | --private-key $(PRIVATE_KEY) \ 19 | --broadcast -------------------------------------------------------------------------------- /goerli-alpha/2023-10-04-fix-batcher-proposer/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli-alpha/2023-10-27-ownership-update/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=90bff30727d05fb3451e2a6a118c1350fd0c62af 2 | BASE_CONTRACTS_COMMIT=de5d9417c144a78743d2e10c4e2b4effbb2d1acd 3 | -------------------------------------------------------------------------------- /goerli-alpha/2023-10-27-ownership-update/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | include ../.env.local 5 | 6 | 7 | .PHONY: sign 8 | sign: 9 | $(GOPATH)/bin/eip712sign --private-key $(PRIVATE_KEY) -- \ 10 | forge script --rpc-url $(L2_RPC_URL) UpdateOwners --sig "sign()" 11 | 12 | .PHONY: run 13 | run: 14 | forge script --rpc-url $(L2_RPC_URL) \ 15 | UpdateOwners --sig "run(bytes)" $(SIGNATURES) \ 16 | --private-key $(PRIVATE_KEY) --broadcast 17 | -------------------------------------------------------------------------------- /goerli-alpha/2023-10-27-ownership-update/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli/.env: -------------------------------------------------------------------------------- 1 | NETWORK=goerli 2 | L1_RPC_URL=https://nodes-proxy-development.cbhq.net/geth/testnet-archive-goerli-lighthouse 3 | L2_RPC_URL=https://base-goerli.cbhq.net 4 | L2_CHAIN_ID=84531 5 | L1_CHAIN_ID=5 6 | -------------------------------------------------------------------------------- /goerli/2023-01-31-deploy/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=3c3e1a88b234a68bcd59be0c123d9f3cc152a91e 2 | -------------------------------------------------------------------------------- /goerli/2023-01-31-deploy/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Deploy command 7 | ## 8 | .PHONY: deploy 9 | deploy: 10 | chmod +x inputs/construct-config.sh && ./inputs/construct-config.sh && \ 11 | forge script --rpc-url $(L1_RPC_URL) RunDeployBedrock --broadcast 12 | jq --sort-keys . unsorted.json > deployed/addresses.json 13 | cp deployed/addresses.json ../addresses.json 14 | rm unsorted.json inputs/foundry-config.json 15 | -------------------------------------------------------------------------------- /goerli/2023-01-31-deploy/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | script = 'execute' 6 | broadcast = 'records' 7 | fs_permissions = [ {access = "read-write", path = "./"} ] 8 | optimizer = true 9 | optimizer_runs = 999999 10 | solc_version = "0.8.15" 11 | 12 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config 13 | -------------------------------------------------------------------------------- /goerli/2023-01-31-deploy/inputs/misc-config.json: -------------------------------------------------------------------------------- 1 | { 2 | "deployerAddress": "0x833994EB0F293C4B314D94610cf2b5E57E061e41" 3 | } 4 | -------------------------------------------------------------------------------- /goerli/2023-01-31-deploy/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | -------------------------------------------------------------------------------- /goerli/2023-06-08-upgrade-l2OO/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=fc56ded13c91ae945f7e35bff0e45f9154fd647e 2 | -------------------------------------------------------------------------------- /goerli/2023-06-08-upgrade-l2OO/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | .PHONY: example 9 | example: 10 | forge script --rpc-url $(RPC_URL) $(script) --sig "run(address)" $(DEPLOYER) --broadcast 11 | 12 | ifndef LEDGER_ACCOUNT 13 | override LEDGER_ACCOUNT = 0 14 | endif 15 | 16 | goerli-prod-upgrade-l2oo: 17 | @forge script --rpc-url $(L1_RPC_URL) L2OutputOracleUpgrade -vvvv --sig "run(address)" $(SENDER) --ledger --hd-paths ${LEDGER_ACCOUNT} -------------------------------------------------------------------------------- /goerli/2023-06-08-upgrade-l2OO/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli/2023-06-08-upgrade-l2OO/inputs/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "L2OutputOracleUpgrade": { 3 | "newImplementationAddr": "0x73A5aE576C53Cf49d9dD6E70d895460b826B2557", 4 | "proxyAddr": "0x2a35891ff30313ccfa6ce88dcf3858bb075a2298", 5 | "proxyAdmin": "0xbc0fc544736b7d610d9b05f31b182c8154bef336", 6 | "proxyAdminOwner": "0x4C35Ca57616E0d5fD808574772f632D8dA4eadCa" 7 | } 8 | } -------------------------------------------------------------------------------- /goerli/2023-06-08-upgrade-l2OO/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | -------------------------------------------------------------------------------- /goerli/2023-06-12-batcher-rotation/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=6fd07366e4b1f692a5c5e363d365c93197d53b84 2 | BASE_CONTRACTS_COMMIT=51e8c52a6d8b5a1d9d584a7bfe7915e6f49408c7 3 | -------------------------------------------------------------------------------- /goerli/2023-06-12-batcher-rotation/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | ifndef LEDGER_ACCOUNT 9 | override LEDGER_ACCOUNT = 1 10 | endif 11 | 12 | .PHONY: run 13 | run: 14 | forge script --rpc-url $(RPC_URL) SetBatcherAddr --sender $(SENDER) --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" --sig "run(address,address)" 0x4C35Ca57616E0d5fD808574772f632D8dA4eadCa 0xb15eea247ece011c68a614e4a77ad648ff495bc1 --broadcast 15 | -------------------------------------------------------------------------------- /goerli/2023-06-12-batcher-rotation/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli/2023-06-12-batcher-rotation/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts -------------------------------------------------------------------------------- /goerli/2023-06-13-deploy-proxy/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=3580bf1b41d80fcb2b895d5610836bfad27fc989 2 | BASE_CONTRACTS_COMMIT=5b6ba9c083cf2aeee916156ec9627b4e3246ca65 3 | 4 | DEPLOYER=0x21856935e5689490c72865f34CC665D0FF25664b 5 | ADMIN=0x2eD486761dcF287E7b79E526B0d3fC2349834a66 6 | SALT=FeeDisburserProxy 7 | -------------------------------------------------------------------------------- /goerli/2023-06-13-deploy-proxy/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | 9 | .PHONY: deploy-proxy 10 | deploy-proxy: 11 | forge script DeterministicProxyDeploy --rpc-url $(L2_RPC_URL) --sig "run(address,address,string)" $(DEPLOYER) $(ADMIN) $(SALT) \ 12 | --private-key $(SIGNER_PRIVATE_KEY) --broadcast 13 | -------------------------------------------------------------------------------- /goerli/2023-06-13-deploy-proxy/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli/2023-06-13-deploy-proxy/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts -------------------------------------------------------------------------------- /goerli/2023-06-13-l2-upgrades/.gitignore: -------------------------------------------------------------------------------- 1 | records/**/dry-run/** 2 | -------------------------------------------------------------------------------- /goerli/2023-06-13-l2-upgrades/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli/2023-06-13-l2-upgrades/inputs/misc-config.json: -------------------------------------------------------------------------------- 1 | { 2 | "deployerAddress": "0x7655555Ef300B2bf1B261a2eB4465ba1cA8F4373" 3 | } 4 | -------------------------------------------------------------------------------- /goerli/2023-06-13-l2-upgrades/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts -------------------------------------------------------------------------------- /goerli/2023-06-13-l2-upgrades/script/DeployL2Implementations.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity ^0.8.13; 3 | 4 | import "forge-std/Script.sol"; 5 | import "forge-std/StdJson.sol"; 6 | import "@base-contracts/script/deploy/l2/DeployBedrockL2ImplContracts.s.sol"; 7 | 8 | contract DeployL2Implementations is Script { 9 | function run() public { 10 | DeployBedrockL2ImplContracts deployL2 = new DeployBedrockL2ImplContracts(); 11 | deployL2.run(); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /goerli/2023-06-13-l2-upgrades/script/RunPostSherlockL2.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity ^0.8.13; 3 | 4 | import "forge-std/Script.sol"; 5 | import "forge-std/StdJson.sol"; 6 | import "@base-contracts/script/upgrade/l2/PostSherlockL2.s.sol"; 7 | 8 | contract RunPostSherlockL2 is Script { 9 | function run(uint256 _l2ChainId, address _safe) public { 10 | PostSherlockL2 postSherlockL2 = new PostSherlockL2(_l2ChainId); 11 | postSherlockL2.setUp(); 12 | postSherlockL2.run(_safe); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /goerli/2023-06-22-deploy-challenger/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=ed6d5c2054bdaad0a826d3d0fad8231756650028 # commit from PR: https://github.com/base-org/contracts/pull/13 (has not been merged to master yet) 3 | 4 | DEPLOYER=0x833994eb0f293c4b314d94610cf2b5e57e061e41 # CB K2 Key 5 | SAFE_1=0x4C35Ca57616E0d5fD808574772f632D8dA4eadCa 6 | SAFE_2=0x4574D0A407c9eF275128Df822CF13BF8aEF28BD8 7 | L2_OUTPUT_ORACLE_PROXY=0x2A35891ff30313CcFa6CE88dcf3858bb075A2298 8 | 9 | CHALLENGER=0xf30b40411c4d76228092E7eCdc1593c996b13D22 10 | VERIFIER=etherscan 11 | VERIFIER_URL=https://api-goerli.etherscan.io/api -------------------------------------------------------------------------------- /goerli/2023-06-22-deploy-challenger/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | .PHONY: deploy-challenger 9 | deploy-challenger: 10 | forge script -vvvv --rpc-url $(L1_RPC_URL) DeployChallenger \ 11 | --sig "run(address,address,address,address)" $(DEPLOYER) $(SAFE_1) $(SAFE_2) $(L2_OUTPUT_ORACLE_PROXY) 12 | 13 | verify-challenger: 14 | forge verify-contract ${CHALLENGER} Challenger1of2 --constructor-args $(shell cast abi-encode "constructor(address,address,address)" ${SAFE_1} ${SAFE_2} ${L2_OUTPUT_ORACLE_PROXY}) --verifier ${VERIFIER} --watch --chain-id 5 --verifier-url ${VERIFIER_URL} --compiler-version v0.8.15+commit.e14f2714 --num-of-optimizations=999999 --retries=1 -------------------------------------------------------------------------------- /goerli/2023-06-22-deploy-challenger/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts' 16 | ] 17 | 18 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli/2023-06-27-test-nested-safe/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=af37067a74fbe896d20647084466592de80a6a22 3 | 4 | DEPLOYER=0x29861a8043358242c0244C8530a535a0eB4712F7 5 | 6 | NESTED_SAFE_L1=0x444b8C3E4eA49cE15A93D96AfA83D421F6049524 7 | SIGNER_SAFE_1_L1=0x4C35Ca57616E0d5fD808574772f632D8dA4eadCa 8 | SIGNER_SAFE_2_L1=0x4574D0A407c9eF275128Df822CF13BF8aEF28BD8 9 | 10 | NESTED_SAFE_L2=0x4c7C99555e8afac3571c7456448021239F5b73bA 11 | SIGNER_SAFE_1_L2=0x2eD486761dcF287E7b79E526B0d3fC2349834a66 12 | SIGNER_SAFE_2_L2=0xfC99F72E433982088346ACa05FA65B0dff09F19B 13 | -------------------------------------------------------------------------------- /goerli/2023-06-27-test-nested-safe/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | via-ir = true 9 | optimizer_runs = 999999 10 | solc_version = "0.8.15" 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli/2023-06-27-test-nested-safe/script/DeployTest.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity 0.8.15; 3 | 4 | import "forge-std/Script.sol"; 5 | import "@base-contracts/src/TestOwner.sol"; 6 | 7 | contract DeployTest is Script { 8 | function run(address deployer, address nestedSafe) public { 9 | vm.broadcast(deployer); 10 | TestOwner testowner = new TestOwner(nestedSafe); 11 | console.log(address(testowner)); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /goerli/2023-06-29-transfer-l1-owner/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=af37067a74fbe896d20647084466592de80a6a22 3 | -------------------------------------------------------------------------------- /goerli/2023-06-29-transfer-l1-owner/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ifndef LEDGER_ACCOUNT 6 | override LEDGER_ACCOUNT = 1 7 | endif 8 | 9 | ## 10 | # Foundry commands 11 | ## 12 | sign: 13 | forge script --via-ir --rpc-url ${L1_RPC_URL} TransferL1Owner --sig "sign()" | \ 14 | tee /dev/stderr | grep -A1 vvvvvvvv | grep -v vvvvvvvv | \ 15 | (cd lib/base-contracts && go run ./cmd/sign --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0") 16 | 17 | run: 18 | forge script --via-ir --rpc-url $(L1_RPC_URL) \ 19 | TransferL1Owner --sig "run(bytes)" $(SIGNATURES) \ 20 | --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" --broadcast 21 | -------------------------------------------------------------------------------- /goerli/2023-06-29-transfer-l1-owner/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts' 16 | ] 17 | 18 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli/2023-06-29-transfer-l2-owner/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=af37067a74fbe896d20647084466592de80a6a22 3 | -------------------------------------------------------------------------------- /goerli/2023-06-29-transfer-l2-owner/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ifndef LEDGER_ACCOUNT 6 | override LEDGER_ACCOUNT = 1 7 | endif 8 | 9 | ## 10 | # Foundry commands 11 | ## 12 | sign: 13 | forge script --via-ir --rpc-url ${L2_RPC_URL} TransferL2Owner --sig "sign()" | \ 14 | tee /dev/stderr | grep -A1 vvvvvvvv | grep -v vvvvvvvv | \ 15 | (cd lib/base-contracts && go run ./cmd/sign --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0") 16 | 17 | run: 18 | forge script --via-ir --rpc-url $(L2_RPC_URL) \ 19 | TransferL2Owner --sig "run(bytes)" $(SIGNATURES) \ 20 | --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" --broadcast -------------------------------------------------------------------------------- /goerli/2023-06-29-transfer-l2-owner/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts' 16 | ] 17 | 18 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli/2023-07-11-use-challenger1of2/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=af37067a74fbe896d20647084466592de80a6a22 3 | 4 | DEPLOYER=0x833994eb0f293c4b314d94610cf2b5e57e061e41 5 | CHALLENGER=0xf30b40411c4d76228092E7eCdc1593c996b13D22 6 | L2_OUTPUT_ORACLE_PROXY=0x2A35891ff30313CcFa6CE88dcf3858bb075A2298 7 | PROPOSER=0x4f28beB40635093B72dEf43D0aD801cdd8E0e6fE 8 | L2_OUTPUT_ORACLE_IMPL=0x551E1aa0e21b1c7dD408dBFb31f1368A987df622 9 | 10 | SAFE_1_ADDR=0x4C35Ca57616E0d5fD808574772f632D8dA4eadCa 11 | SAFE_2_ADDR=0x4574D0A407c9eF275128Df822CF13BF8aEF28BD8 12 | 13 | VERIFIER=etherscan 14 | VERIFIER_URL=https://api-goerli.etherscan.io/api 15 | 16 | SENDER=0x066a2b1419CCf2e1e672A03F14cC1d1146E717a0 -------------------------------------------------------------------------------- /goerli/2023-07-11-use-challenger1of2/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir=true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli/2023-08-15-support-eas/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=48ed4e8c2b03d2c038aaf3ee308b2095bcf9e58f 2 | BASE_CONTRACTS_COMMIT=55b9dafd276ed20c2490f374df1e01ce9d7590da 3 | 4 | DEPLOYER=0xb92b975835b32be2cfc2dcb002a54a7c41ff58c0 5 | SENDER=0x066a2b1419CCf2e1e672A03F14cC1d1146E717a0 6 | 7 | REGISTRY_IMPL_ADDRESS=0x36bA68d68CABC3a67eCc987013F75F9fE5832928 8 | EAS_IMPL_ADDRESS=0x53B1ac834418d2d55b73060452A3494a1d1122C6 9 | 10 | VERIFIER=etherscan 11 | VERIFIER_URL=https://api-goerli.basescan.org/api 12 | 13 | L2_NESTED_SAFE=0x4c7C99555e8afac3571c7456448021239F5b73bA 14 | OP_SAFE_ADDR=0xfC99F72E433982088346ACa05FA65B0dff09F19B 15 | CB_SAFE_ADDR=0x2eD486761dcF287E7b79E526B0d3fC2349834a66 16 | -------------------------------------------------------------------------------- /goerli/2023-08-15-support-eas/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | via-ir = true 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts' 16 | ] 17 | 18 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli/2023-08-15-support-eas/script/DeployEASImplementation.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity 0.8.19; 3 | 4 | import "forge-std/Script.sol"; 5 | import "@eth-optimism-bedrock/src/EAS/EAS.sol"; 6 | import "@eth-optimism-bedrock/src/EAS/SchemaRegistry.sol"; 7 | 8 | contract DeployEASImplementation is Script { 9 | address internal _deployer = vm.envAddress("DEPLOYER"); 10 | 11 | function run() public { 12 | vm.broadcast(_deployer); 13 | SchemaRegistry schemaRegistry = new SchemaRegistry(); 14 | 15 | vm.broadcast(_deployer); 16 | EAS eas = new EAS(); 17 | 18 | console.logAddress(_deployer); 19 | console.logAddress(address(schemaRegistry)); 20 | console.logAddress(address(eas)); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /goerli/2023-08-23-deploy-revshare/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /goerli/2023-08-24-feevault-fix/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /internal-devnet/.env: -------------------------------------------------------------------------------- 1 | NETWORK=internal-devnet 2 | L1_RPC_URL=https://coinnet-dev.cbhq.net -------------------------------------------------------------------------------- /internal-devnet/2023-05-25-deploy/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=bb6d28bdcf046fe411f321f2325159e294812610 2 | -------------------------------------------------------------------------------- /internal-devnet/2023-05-25-deploy/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Deploy command 7 | ## 8 | .PHONY: deploy 9 | deploy: 10 | ./inputs/construct-config.sh && \ 11 | forge script --rpc-url $(L1_RPC_URL) --private-key $(PRIVATE_KEY) DeployBedrock --broadcast 12 | jq --sort-keys . unsorted.json > deployed/addresses.json 13 | cp deployed/addresses.json ../addresses.json 14 | rm unsorted.json inputs/foundry-config.json 15 | -------------------------------------------------------------------------------- /internal-devnet/2023-05-25-deploy/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | script = 'execute' 6 | broadcast = 'records' 7 | fs_permissions = [ {access = "read-write", path = "./"} ] 8 | optimizer = true 9 | optimizer_runs = 999999 10 | solc_version = "0.8.15" 11 | 12 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config 13 | -------------------------------------------------------------------------------- /internal-devnet/2023-05-25-deploy/inputs/misc-config.json: -------------------------------------------------------------------------------- 1 | { 2 | "deployerAddress": "0x0f7A6c70A70F0287912febE9a251d608144B3Bfe" 3 | } 4 | -------------------------------------------------------------------------------- /internal-devnet/2023-05-25-deploy/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | -------------------------------------------------------------------------------- /internal-testnet/.env: -------------------------------------------------------------------------------- 1 | NETWORK=internal-testnet 2 | L1_RPC_URL=https://coinnet.cbhq.net -------------------------------------------------------------------------------- /internal-testnet/2023-05-24-deploy/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=fc56ded13c91ae945f7e35bff0e45f9154fd647e 2 | -------------------------------------------------------------------------------- /internal-testnet/2023-05-24-deploy/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Deploy command 7 | ## 8 | .PHONY: deploy 9 | deploy: 10 | ./inputs/construct-config.sh && \ 11 | forge script --rpc-url $(L1_RPC_URL) --private-key $(PRIVATE_KEY) DeployBedrock --broadcast 12 | jq --sort-keys . unsorted.json > deployed/addresses.json 13 | cp deployed/addresses.json ../addresses.json 14 | rm unsorted.json inputs/foundry-config.json 15 | -------------------------------------------------------------------------------- /internal-testnet/2023-05-24-deploy/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | script = 'execute' 6 | broadcast = 'records' 7 | fs_permissions = [ {access = "read-write", path = "./"} ] 8 | optimizer = true 9 | optimizer_runs = 999999 10 | solc_version = "0.8.15" 11 | 12 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config 13 | -------------------------------------------------------------------------------- /internal-testnet/2023-05-24-deploy/inputs/misc-config.json: -------------------------------------------------------------------------------- 1 | { 2 | "deployerAddress": "0x835c74eb472442670b182396e8A0d7a2E5464f76" 3 | } 4 | -------------------------------------------------------------------------------- /internal-testnet/2023-05-24-deploy/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | -------------------------------------------------------------------------------- /localhost/2023-06-08-deploy/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=fc56ded13c91ae945f7e35bff0e45f9154fd647e 2 | BASE_CONTRACTS_COMMIT=8748f2b9b6cfa76c6f751867396a3d1eda84a559 3 | SAFE_COMMIT=bf943f80fec5ac647159d26161446ac5d716a294 4 | 5 | # Safe deployment addresses and resulting Safe 6 | 7 | SAFE=0x41715dd88d95c3c80248f19dace21015346069b8 8 | SAFE_PROXY_FACTORY=0x5493000000000000000000000000000000000003 9 | SAFE_CODE=0x5493000000000000000000000000000000000001 10 | FALLBACK_HANDLER=0x5493000000000000000000000000000000000005 -------------------------------------------------------------------------------- /localhost/2023-06-08-deploy/execute/RunDeployBedrock.s.sol: -------------------------------------------------------------------------------- 1 | 2 | // SPDX-License-Identifier: MIT 3 | pragma solidity ^0.8.13; 4 | 5 | import "forge-std/Script.sol"; 6 | import "forge-std/StdJson.sol"; 7 | import "@base-contracts/script/deploy/l1/DeployBedrock.s.sol"; 8 | 9 | contract RunDeployBedrock is Script { 10 | function run() public { 11 | DeployBedrock deployBedrock = new DeployBedrock(); 12 | deployBedrock.run(); 13 | } 14 | } -------------------------------------------------------------------------------- /localhost/2023-06-08-deploy/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | script = 'execute' 6 | broadcast = 'records' 7 | fs_permissions = [ {access = "read-write", path = "./"} ] 8 | optimizer = true 9 | optimizer_runs = 999999 10 | solc_version = "0.8.15" 11 | 12 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config 13 | -------------------------------------------------------------------------------- /localhost/2023-06-08-deploy/inputs/misc-config.json: -------------------------------------------------------------------------------- 1 | { 2 | "deployerAddress": "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266" 3 | } -------------------------------------------------------------------------------- /localhost/2023-06-08-deploy/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts -------------------------------------------------------------------------------- /localhost/2023-06-20-systemcfg-test/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=a4cc6504c019b78f4e7c76fa76c34ba3ea52168f 3 | -------------------------------------------------------------------------------- /localhost/2023-06-20-systemcfg-test/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | .PHONY: sign 9 | sign: 10 | chmod +x ./sign.sh && ./sign.sh 11 | 12 | .PHONY: run 13 | run: 14 | forge script --via-ir --rpc-url $(L1_RPC_URL) TransferSystemConfigOwner \ 15 | --sender $(LOCALHOST_ADDR_3) --private-key $(PRIVATE_KEY_3) \ 16 | --sig "run(bytes)" $(SIGNATURES) --broadcast -------------------------------------------------------------------------------- /localhost/2023-06-20-systemcfg-test/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /localhost/2023-06-20-systemcfg-test/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts 6 | -------------------------------------------------------------------------------- /localhost/2023-06-20-systemcfg-test/sign.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | source ../.env 5 | source .env 6 | 7 | payload=$(forge script --via-ir --rpc-url ${L1_RPC_URL} TransferSystemConfigOwner --sig "sign()" | tee /dev/stderr | grep -A1 vvvvvvvv | grep -v vvvvvvvv) 8 | cd lib/base-contracts 9 | echo "${payload}" | go run ./cmd/sign --private-key ${PRIVATE_KEY} 10 | -------------------------------------------------------------------------------- /localhost/2023-06-27-use-challenger1of2/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=a4cc6504c019b78f4e7c76fa76c34ba3ea52168f 3 | 4 | CHALLENGER=0x6c4219fC0DA6813FbB3301F103813fe230FA6653 -------------------------------------------------------------------------------- /localhost/2023-06-27-use-challenger1of2/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts' 16 | ] 17 | via-ir = true 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /localhost/2023-07-11-test-l1-safe/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=af37067a74fbe896d20647084466592de80a6a22 3 | 4 | L1_SAFE=0x41715dd88d95c3c80248f19dace21015346069b8 -------------------------------------------------------------------------------- /localhost/2023-07-11-test-l1-safe/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts' 16 | ] 17 | 18 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /localhost/Makefile: -------------------------------------------------------------------------------- 1 | ## 2 | # Local Environment Setup 3 | ## 4 | .PHONY: node 5 | node: 6 | anvil --init setup/genesis.json 7 | 8 | .PHONY: deploy 9 | deploy: 10 | cd 2023-06-08-deploy && make deps && make deploy-local && make transfer-owner-to-safe && cd .. 11 | 12 | -------------------------------------------------------------------------------- /logo.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/base/contract-deployments/2ac0ef17ab67eebd9d3b9d2c1946b04dbc9e4299/logo.webp -------------------------------------------------------------------------------- /mainnet/.env: -------------------------------------------------------------------------------- 1 | NETWORK=mainnet 2 | L1_RPC_URL=https://eth-mainnet.public.blastapi.io 3 | L2_RPC_URL=https://mainnet.base.org 4 | L1_CHAIN_ID=1 5 | L2_CHAIN_ID=8453 6 | -------------------------------------------------------------------------------- /mainnet/2023-06-14-deploy-deterministic-proxy/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=3580bf1b41d80fcb2b895d5610836bfad27fc989 2 | BASE_CONTRACTS_COMMIT=5b6ba9c083cf2aeee916156ec9627b4e3246ca65 3 | 4 | DEPLOYER=0x21856935e5689490c72865f34CC665D0FF25664b 5 | ADMIN=0x76a737dac0c4eb926bd7d2d68b958a1ae6ad6993 6 | SALT=FeeDisburserProxy 7 | -------------------------------------------------------------------------------- /mainnet/2023-06-14-deploy-deterministic-proxy/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | include .env.local 5 | 6 | ## 7 | # Foundry commands 8 | ## 9 | .PHONY: deploy-proxy 10 | deploy-proxy: 11 | forge script DeterministicProxyDeploy --rpc-url $(L2_RPC_URL) --sig "run(address,address,string)" $(DEPLOYER) $(ADMIN) $(SALT) \ 12 | --private-key $(SIGNER_PRIVATE_KEY) --broadcast -------------------------------------------------------------------------------- /mainnet/2023-06-14-deploy-deterministic-proxy/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2023-06-14-deploy-deterministic-proxy/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts 6 | -------------------------------------------------------------------------------- /mainnet/2023-06-14-deploy/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=36965ea35232b26a3abb2638e39ea97786597d94 3 | -------------------------------------------------------------------------------- /mainnet/2023-06-14-deploy/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | .PHONY: deploy 9 | deploy: 10 | ./inputs/construct-config.sh && \ 11 | forge script --rpc-url $(L1_RPC_URL) RunDeployBedrock 12 | jq --sort-keys . unsorted.json > deployed/addresses.json 13 | cp deployed/addresses.json ../addresses.json 14 | rm unsorted.json inputs/foundry-config.json 15 | -------------------------------------------------------------------------------- /mainnet/2023-06-14-deploy/execute/RunDeployBedrock.s.sol: -------------------------------------------------------------------------------- 1 | 2 | // SPDX-License-Identifier: MIT 3 | pragma solidity ^0.8.13; 4 | 5 | import "forge-std/Script.sol"; 6 | import "forge-std/StdJson.sol"; 7 | import "@base-contracts/script/deploy/l1/DeployBedrock.s.sol"; 8 | 9 | contract RunDeployBedrock is Script { 10 | function run() public { 11 | DeployBedrock deployBedrock = new DeployBedrock(); 12 | deployBedrock.run(); 13 | } 14 | } -------------------------------------------------------------------------------- /mainnet/2023-06-14-deploy/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | script = 'execute' 6 | broadcast = 'records' 7 | fs_permissions = [ {access = "read-write", path = "./"} ] 8 | optimizer = true 9 | optimizer_runs = 999999 10 | solc_version = "0.8.15" 11 | 12 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config 13 | -------------------------------------------------------------------------------- /mainnet/2023-06-14-deploy/inputs/misc-config.json: -------------------------------------------------------------------------------- 1 | { 2 | "deployerAddress": "0x6606d3c20cc94cc7aa1d430c0e83a5129976153a" 3 | } -------------------------------------------------------------------------------- /mainnet/2023-06-14-deploy/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts -------------------------------------------------------------------------------- /mainnet/2023-06-14-test-tx/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=3580bf1b41d80fcb2b895d5610836bfad27fc989 2 | BASE_CONTRACTS_COMMIT=d02f415758e7dd491881a6f5298ed91b228f4f09 3 | -------------------------------------------------------------------------------- /mainnet/2023-06-14-test-tx/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | .PHONY: test 9 | test: 10 | forge script TestScript --rpc-url $(L1_RPC_URL) 11 | -------------------------------------------------------------------------------- /mainnet/2023-06-14-test-tx/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2023-06-14-test-tx/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts 6 | -------------------------------------------------------------------------------- /mainnet/2023-06-14-test-tx/script/Test.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity 0.8.15; 3 | 4 | import "forge-std/Script.sol"; 5 | import "src/Test.sol"; 6 | 7 | contract TestScript is Script { 8 | function run() public { 9 | vm.broadcast(0x0996bb0F5d56BB72c85C50Bd92A950E9756dF117); 10 | Test test = new Test(); 11 | vm.broadcast(0x0996bb0F5d56BB72c85C50Bd92A950E9756dF117); 12 | test.increment(); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /mainnet/2023-06-14-test-tx/src/Test.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity 0.8.15; 3 | 4 | contract Test { 5 | uint256 public number; 6 | 7 | function setNumber(uint256 newNumber) public { 8 | number = newNumber; 9 | } 10 | 11 | function increment() public { 12 | number++; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /mainnet/2023-06-15-unpause-portal/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=6dc89b9d746e7733d8a13c28340532161a7e36a8 3 | 4 | INCIDENT_MULTISIG=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 -------------------------------------------------------------------------------- /mainnet/2023-06-15-unpause-portal/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | ifndef LEDGER_ACCOUNT 9 | override LEDGER_ACCOUNT = 0 10 | endif 11 | 12 | .PHONY: unpause-portal 13 | unpause-portal: 14 | forge script --rpc-url $(L1_RPC_URL) RunUnpausePortal --sender $(SENDER) --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" --sig "run(address)" $(INCIDENT_MULTISIG) 15 | -------------------------------------------------------------------------------- /mainnet/2023-06-15-unpause-portal/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2023-06-15-unpause-portal/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts 6 | -------------------------------------------------------------------------------- /mainnet/2023-06-15-unpause-portal/script/UnpausePortal.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity ^0.8.13; 3 | 4 | import "forge-std/Script.sol"; 5 | import "@base-contracts/script/calls/UnpausePortal.s.sol"; 6 | 7 | contract RunUnpausePortal is Script { 8 | function run(address _safe) public { 9 | UnpausePortal unpausePortal = new UnpausePortal(); 10 | unpausePortal.run(_safe); 11 | } 12 | } -------------------------------------------------------------------------------- /mainnet/2023-06-15-validate-deploy/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=d5e67b7ef0addc953ca213735c596bec5d2a23c0 3 | -------------------------------------------------------------------------------- /mainnet/2023-06-15-validate-deploy/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | .PHONY: validate-deploy 9 | validate-deploy: 10 | forge script --rpc-url $(L1_RPC_URL) ValidateDeploy 11 | -------------------------------------------------------------------------------- /mainnet/2023-06-15-validate-deploy/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2023-06-15-validate-deploy/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts 6 | -------------------------------------------------------------------------------- /mainnet/2023-06-15-validate-deploy/script/ValidateDeploy.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity ^0.8.13; 3 | 4 | import "forge-std/Script.sol"; 5 | import "@base-contracts/script/deploy/l1/CheckBedrockDeploy.s.sol"; 6 | 7 | contract ValidateDeploy is Script { 8 | function run() public { 9 | CheckBedrockDeploy checkBedrockDeploy = new CheckBedrockDeploy(); 10 | checkBedrockDeploy.setup(); 11 | checkBedrockDeploy.run(); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /mainnet/2023-06-21-transfer-system-cfg-owner/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=a4cc6504c019b78f4e7c76fa76c34ba3ea52168f 3 | 4 | LEDGER_ACCOUNT=0 -------------------------------------------------------------------------------- /mainnet/2023-06-21-transfer-system-cfg-owner/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | .PHONY: sign 9 | sign: 10 | chmod +x ./sign.sh && ./sign.sh 11 | 12 | .PHONY: run 13 | run: 14 | forge script --via-ir --rpc-url $(L1_RPC_URL) TransferSystemConfigOwner \ 15 | --sender $(SENDER) --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" \ 16 | --sig "run(bytes)" $(SIGNATURES) --broadcast -------------------------------------------------------------------------------- /mainnet/2023-06-21-transfer-system-cfg-owner/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | 11 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2023-06-21-transfer-system-cfg-owner/remappings.txt: -------------------------------------------------------------------------------- 1 | @eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/ 2 | @openzeppelin/contracts/=lib/openzeppelin-contracts/contracts 3 | @openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts 4 | @rari-capital/solmate/=lib/solmate/ 5 | @base-contracts/=lib/base-contracts 6 | -------------------------------------------------------------------------------- /mainnet/2023-06-21-transfer-system-cfg-owner/sign.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | source ../.env 5 | source .env 6 | 7 | payload=$(forge script --via-ir --rpc-url ${L1_RPC_URL} TransferSystemConfigOwner --sig "sign()" | tee /dev/stderr | grep -A1 vvvvvvvv | grep -v vvvvvvvv) 8 | cd lib/base-contracts 9 | echo "${payload}" | go run ./cmd/sign --ledger --hd-path "m/44'/60'/${LEDGER_ACCOUNT}'/0/0" 10 | -------------------------------------------------------------------------------- /mainnet/2023-07-11-test-l2-safe/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=5c6b54a1312f3991e1986745ab06305a88f0ce70 3 | 4 | DEPLOYER=0x8e5de5cA219e3FFC9cdEb2Dc7D71B8a199cd2C4F 5 | L2_SAFE=0xd94e416cf2c7167608b2515b7e4102b41efff94f 6 | SENDER=0x8e5de5ca219e3ffc9cdeb2dc7d71b8a199cd2c4f -------------------------------------------------------------------------------- /mainnet/2023-07-11-test-l2-safe/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2023-07-17-test-l1-nested-safe/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=b22778cf4ac9d4307b3c7d439cbef9e672084785 3 | 4 | OP_SAFE_ADDR=0x9BA6e03D8B90dE867373Db8cF1A58d2F7F006b3A 5 | CB_SAFE_ADDR=0x9855054731540A48b28990B63DcF4f33d8AE46A1 6 | NESTED_L1_SAFE_ADDR=0x7bB41C3008B3f03FE483B28b8DB90e19Cf07595c 7 | 8 | DEPLOYER=0x8e5de5cA219e3FFC9cdEb2Dc7D71B8a199cd2C4F 9 | -------------------------------------------------------------------------------- /mainnet/2023-07-17-test-l1-nested-safe/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2023-07-19-challenger-1-of-2/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=b22778cf4ac9d4307b3c7d439cbef9e672084785 3 | 4 | DEPLOYER=0x3885226c26c467b342220132ec9d0b311b2dd43c 5 | OP_SAFE=0x9BA6e03D8B90dE867373Db8cF1A58d2F7F006b3A 6 | CB_SAFE=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 7 | L2_OUTPUT_ORACLE_PROXY=0x56315b90c40730925ec5485cf004d835058518A0 8 | 9 | SENDER=0x8e5de5cA219e3FFC9cdEb2Dc7D71B8a199cd2C4F -------------------------------------------------------------------------------- /mainnet/2023-07-19-challenger-1-of-2/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2023-07-19-test-l2-nested-safe/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=b22778cf4ac9d4307b3c7d439cbef9e672084785 3 | 4 | OP_SAFE_ADDR=0x28EDB11394eb271212ED66c08f2b7893C04C5D65 5 | CB_SAFE_ADDR=0xd94E416cf2c7167608B2515B7e4102B41efff94f 6 | NESTED_L2_SAFE_ADDR=0x2304CB33d95999dC29f4CeF1e35065e670a70050 7 | DEPLOYER=0x8e5de5cA219e3FFC9cdEb2Dc7D71B8a199cd2C4F 8 | SENDER=0x8e5de5cA219e3FFC9cdEb2Dc7D71B8a199cd2C4F -------------------------------------------------------------------------------- /mainnet/2023-07-19-test-l2-nested-safe/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via_ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2023-07-26-transfer-owner-nested-safes/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=b22778cf4ac9d4307b3c7d439cbef9e672084785 3 | 4 | SENDER=0x8e5de5cA219e3FFC9cdEb2Dc7D71B8a199cd2C4F 5 | 6 | LOCAL_URL=http://127.0.0.1:8545 -------------------------------------------------------------------------------- /mainnet/2023-07-26-transfer-owner-nested-safes/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2023-08-07-test-op-fee-nested-safe/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a541c8a859d9258ad410598655f189de69adae19 2 | BASE_CONTRACTS_COMMIT=b22778cf4ac9d4307b3c7d439cbef9e672084785 3 | 4 | OP_SAFE_ADDR=0x2501c477D0A35545a387Aa4A3EEe4292A9a8B3F0 5 | CB_SAFE_ADDR=0x6e1DFd5C1E22A4677663A81D24C6BA03561ef0f6 6 | NESTED_L2_SAFE_ADDR=0x0a7361e734cf3f0394B0FC4a45C74E7a4Ec70940 7 | 8 | OP_L2_RPC_URL=https://mainnet.optimism.io -------------------------------------------------------------------------------- /mainnet/2023-08-07-test-op-fee-nested-safe/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via_ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2023-08-15-support-eas/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=48ed4e8c2b03d2c038aaf3ee308b2095bcf9e58f 2 | BASE_CONTRACTS_COMMIT=55b9dafd276ed20c2490f374df1e01ce9d7590da 3 | 4 | L2_NESTED_SAFE=0x2304cb33d95999dc29f4cef1e35065e670a70050 5 | OP_SAFE_ADDR=0x28EDB11394eb271212ED66c08f2b7893C04C5D65 6 | CB_SAFE_ADDR=0xd94e416cf2c7167608b2515b7e4102b41efff94f 7 | 8 | SENDER=0x8e5de5cA219e3FFC9cdEb2Dc7D71B8a199cd2C4F 9 | 10 | REGISTRY_IMPL_ADDRESS=0x75505a97BD334E7BD3C476893285569C4136Fa0F 11 | EAS_IMPL_ADDRESS=0xbEb5Fc579115071764c7423A4f12eDde41f106Ed -------------------------------------------------------------------------------- /mainnet/2023-08-15-support-eas/FINAL-runbook-supportEAS.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/base/contract-deployments/2ac0ef17ab67eebd9d3b9d2c1946b04dbc9e4299/mainnet/2023-08-15-support-eas/FINAL-runbook-supportEAS.pdf -------------------------------------------------------------------------------- /mainnet/2023-08-15-support-eas/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | via-ir = true 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts' 16 | ] 17 | 18 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2023-08-22-fee-vault-fix/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2023-08-28-deploy-revshare/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-02-21-setup-smart-escrow/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-02-23-transfer-op/.env: -------------------------------------------------------------------------------- 1 | OPTIMISM_RPC_URL=https://mainnet.optimism.io 2 | 3 | OP_COMMIT=3580bf1b41d80fcb2b895d5610836bfad27fc989 4 | BASE_CONTRACTS_COMMIT=a147139671c09923f78ae46a6ebedc91209bb076 5 | 6 | OP_TOKEN=0x4200000000000000000000000000000000000042 7 | NESTED_SAFE=0x0a7361e734cf3f0394B0FC4a45C74E7a4Ec70940 8 | OP_MULTISIG=0x2501c477D0A35545a387Aa4A3EEe4292A9a8B3F0 9 | CB_MULTISIG=0x6e1DFd5C1E22A4677663A81D24C6BA03561ef0f6 10 | SMART_ESCROW_CONTRACT=0x90b8B3Ee045930200643427B648A2b3b073F9a4b 11 | ALLIGATOR_PROXY=0x7f08F3095530B67CdF8466B7a923607944136Df0 12 | UPFRONT_GRANT_TOKENS=10737418000000000000000000 13 | TOKENS_TO_TRANSFER=26843545000000000000000000 14 | BENEFICIARY=0x635Fb974F09B269Bc750bF96338c29cF41430125 15 | -------------------------------------------------------------------------------- /mainnet/2024-03-05-pause-unpause-test/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=10b06fb49861053999a89533d846ee5c2ccb33e1 2 | BASE_CONTRACTS_COMMIT=56d8f40b48795663fa88366d762161af5a1ba5d5 3 | 4 | OPTIMISM_PORTAL_PROXY=0x49048044D57e1C92A77f79988d21Fa8fAF74E97e 5 | GUARDIAN=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | -------------------------------------------------------------------------------- /mainnet/2024-03-26-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=c87a469d7d679e8a4efbace56c3646b925bcc009 2 | BASE_CONTRACTS_COMMIT=32022cd06d414b75924b1565a4cfe8e0c837bf9b 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | GAS_LIMIT=45000000 8 | ROLLBACK_GAS_LIMIT=30000000 9 | 10 | # Expecting pause (N=11) and unpause (N=12) to execute before this, explicitly set the nonces accordingly 11 | # See: mainnet/2024-03-05-pause-unpause-test 12 | UPDATE_NONCE=13 13 | ROLLBACK_NONCE=14 14 | -------------------------------------------------------------------------------- /mainnet/2024-03-26-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | 'solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-04-01-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=c87a469d7d679e8a4efbace56c3646b925bcc009 2 | BASE_CONTRACTS_COMMIT=32022cd06d414b75924b1565a4cfe8e0c837bf9b 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | GAS_LIMIT=60000000 8 | ROLLBACK_GAS_LIMIT=45000000 9 | 10 | UPDATE_NONCE=14 11 | ROLLBACK_NONCE=15 12 | -------------------------------------------------------------------------------- /mainnet/2024-04-01-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | 'solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-04-12-deployERC20Factory/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e6ef3a900c42c8722e72c2e2314027f85d12ced5 2 | BASE_CONTRACTS_COMMIT=c8e14388e478471411abb10f3a99ab3bd9206a95 3 | -------------------------------------------------------------------------------- /mainnet/2024-04-12-deployERC20Factory/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Deploy command 7 | ## 8 | .PHONY: deploy 9 | deploy: 10 | forge script RunERC20FactoryDeploy --rpc-url $(L2_RPC_URL) --broadcast 11 | 12 | .PHONY: verify 13 | verify: 14 | forge verify-contract 0x6922ac4dbdfedea3a1e5535f12c3171f2b964c91 OptimismMintableERC20Factory \ 15 | --watch --chain-id 8453 \ 16 | --num-of-optimizations=99999 --retries=1 \ 17 | --verifier-url https://api.basescan.org/api -------------------------------------------------------------------------------- /mainnet/2024-04-12-deployERC20Factory/deployed/addresses.json: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /mainnet/2024-04-12-deployERC20Factory/script/RunERC20FactoryDeploy.s.sol: -------------------------------------------------------------------------------- 1 | 2 | // SPDX-License-Identifier: MIT 3 | pragma solidity 0.8.15; 4 | 5 | import "forge-std/Script.sol"; 6 | import {OptimismMintableERC20Factory} from "@eth-optimism-bedrock/src/universal/OptimismMintableERC20Factory.sol"; 7 | 8 | contract RunERC20FactoryDeploy is Script { 9 | function run() public { 10 | uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY"); 11 | vm.startBroadcast(deployerPrivateKey); 12 | new OptimismMintableERC20Factory{salt: '0xBA5ED'}(); 13 | } 14 | } -------------------------------------------------------------------------------- /mainnet/2024-04-15-redeploy-smart-escrow/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-04-17-upgrade-erc20-factory/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=844cc20084a2e9716631b4092ce7eca4804a8e0a 2 | BASE_CONTRACTS_COMMIT=323c957350fe27c1f2052c04941ef6c30c894812 3 | 4 | BRIDGE=0x4200000000000000000000000000000000000010 5 | PROXY_ADMIN=0x4200000000000000000000000000000000000018 6 | ERC20_FACTORY=0x4200000000000000000000000000000000000012 7 | ERC20_FACTORY_IMPL=0x6922ac4DbDfEdEa3a1E5535f12c3171f2b964C91 8 | NESTED_SAFE=0x2304CB33d95999dC29f4CeF1e35065e670a70050 9 | BASE_SAFE=0xd94E416cf2c7167608B2515B7e4102B41efff94f 10 | OP_SAFE=0x28EDB11394eb271212ED66c08f2b7893C04C5D65 -------------------------------------------------------------------------------- /mainnet/2024-04-30-deployTempERC20Factory/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e6ef3a900c42c8722e72c2e2314027f85d12ced5 2 | BASE_CONTRACTS_COMMIT=c8e14388e478471411abb10f3a99ab3bd9206a95 3 | -------------------------------------------------------------------------------- /mainnet/2024-04-30-deployTempERC20Factory/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Deploy command 7 | ## 8 | .PHONY: deploy 9 | deploy: 10 | forge script RunERC20FactoryDeploy --rpc-url $(L2_RPC_URL) --broadcast --verify -------------------------------------------------------------------------------- /mainnet/2024-04-30-deployTempERC20Factory/deployed/addresses.json: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /mainnet/2024-04-30-deployTempERC20Factory/inputs/deploy-config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/base/contract-deployments/2ac0ef17ab67eebd9d3b9d2c1946b04dbc9e4299/mainnet/2024-04-30-deployTempERC20Factory/inputs/deploy-config.json -------------------------------------------------------------------------------- /mainnet/2024-04-30-deployTempERC20Factory/inputs/misc-config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/base/contract-deployments/2ac0ef17ab67eebd9d3b9d2c1946b04dbc9e4299/mainnet/2024-04-30-deployTempERC20Factory/inputs/misc-config.json -------------------------------------------------------------------------------- /mainnet/2024-04-30-deployTempERC20Factory/script/RunDeployERC20Factory.sol: -------------------------------------------------------------------------------- 1 | 2 | // SPDX-License-Identifier: MIT 3 | pragma solidity 0.8.15; 4 | 5 | import "forge-std/Script.sol"; 6 | import {ERC20Factory} from "../src/ERC20Factory.sol"; 7 | 8 | contract RunERC20FactoryDeploy is Script { 9 | function run() public { 10 | uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY"); 11 | vm.startBroadcast(deployerPrivateKey); 12 | new ERC20Factory{salt: '0xBA5ED'}(); 13 | } 14 | } -------------------------------------------------------------------------------- /mainnet/2024-04-30-deployTempERC20Factory/src/ERC20Factory.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity 0.8.15; 3 | 4 | import {OptimismMintableERC20Factory} from "@eth-optimism-bedrock/src/universal/OptimismMintableERC20Factory.sol"; 5 | 6 | contract ERC20Factory is OptimismMintableERC20Factory { 7 | constructor() { 8 | initialize({ _bridge: address(0x4200000000000000000000000000000000000010 ) }); 9 | } 10 | } -------------------------------------------------------------------------------- /mainnet/2024-05-28-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e87e5ef2b96893eb8b446da420f7ba7f3e3c5985 2 | BASE_CONTRACTS_COMMIT=5d98dab6a4f3ba60713a17417a2df7a17d77c52f 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | GAS_LIMIT=75000000 8 | ROLLBACK_GAS_LIMIT=60000000 9 | 10 | UPDATE_NONCE=15 11 | ROLLBACK_NONCE=16 12 | -------------------------------------------------------------------------------- /mainnet/2024-05-28-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | 'solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-05-30-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e87e5ef2b96893eb8b446da420f7ba7f3e3c5985 2 | BASE_CONTRACTS_COMMIT=5d98dab6a4f3ba60713a17417a2df7a17d77c52f 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | GAS_LIMIT=90000000 8 | ROLLBACK_GAS_LIMIT=75000000 9 | 10 | UPDATE_NONCE=16 11 | ROLLBACK_NONCE=17 12 | -------------------------------------------------------------------------------- /mainnet/2024-05-30-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | 'solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-06-05-reredeploy-smart-escrow/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-06-17-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e87e5ef2b96893eb8b446da420f7ba7f3e3c5985 2 | BASE_CONTRACTS_COMMIT=5d98dab6a4f3ba60713a17417a2df7a17d77c52f 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | GAS_LIMIT=97500000 8 | ROLLBACK_GAS_LIMIT=90000000 9 | 10 | UPDATE_NONCE=17 11 | ROLLBACK_NONCE=18 12 | -------------------------------------------------------------------------------- /mainnet/2024-06-17-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | 'solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-06-25-update-gas-config/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | 'solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-06-28-update-gas-config/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | 'solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-07-10-update-gas-config/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | 'solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-07-16-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e87e5ef2b96893eb8b446da420f7ba7f3e3c5985 2 | BASE_CONTRACTS_COMMIT=5d98dab6a4f3ba60713a17417a2df7a17d77c52f 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | GAS_LIMIT=105000000 8 | ROLLBACK_GAS_LIMIT=97500000 9 | 10 | UPDATE_NONCE=22 11 | ROLLBACK_NONCE=23 12 | -------------------------------------------------------------------------------- /mainnet/2024-07-16-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | 'solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-07-23-set-l1-resolver/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e87e5ef2b96893eb8b446da420f7ba7f3e3c5985 2 | BASE_CONTRACTS_COMMIT=5d98dab6a4f3ba60713a17417a2df7a17d77c52f 3 | 4 | L1_INCIDENT_MULTISIG=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 5 | ENS_REGISTRY=0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e 6 | BASE_ETH_NODEHASH=0xff1e3c0eb00ec714e34b6114125fbde1dea2f24a72fbf672e7b7fd5690328e10 7 | L1_RESOLVER_ADDR=0x480F8F2FfE823Dc70F499Cc2542C42a3a6aD3f20 # https://etherscan.io/address/0x480F8F2FfE823Dc70F499Cc2542C42a3a6aD3f20 8 | -------------------------------------------------------------------------------- /mainnet/2024-07-23-set-l1-resolver/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ifndef LEDGER_ACCOUNT 6 | override LEDGER_ACCOUNT = 0 7 | endif 8 | 9 | .PHONY: sign-set-l1-resolver 10 | sign-set-l1-resolver: 11 | $(GOPATH)/bin/eip712sign --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" -- \ 12 | forge script --rpc-url $(L1_RPC_URL) SetL1Resolver \ 13 | --sig "sign()" 14 | 15 | .PHONY: execute 16 | execute: 17 | forge script --rpc-url $(L1_RPC_URL) SetL1Resolver \ 18 | --sig "run(bytes)" $(SIGNATURES) --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" --broadcast 19 | -------------------------------------------------------------------------------- /mainnet/2024-07-23-set-l1-resolver/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | 'solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-07-23-transfer-owner-balance-tracker/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e87e5ef2b96893eb8b446da420f7ba7f3e3c5985 2 | BASE_CONTRACTS_COMMIT=5d98dab6a4f3ba60713a17417a2df7a17d77c52f 3 | 4 | BALANCE_TRACKER_PROXY_ADDR=0x23b597f33f6f2621f77da117523dffd634cdf4ea 5 | CB_UPGRADE_SAFE_ADDR=0x9855054731540A48b28990B63DcF4f33d8AE46A1 6 | CB_INCIDENT_SAFE_ADDR=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 7 | -------------------------------------------------------------------------------- /mainnet/2024-07-23-transfer-owner-balance-tracker/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ifndef LEDGER_ACCOUNT 6 | override LEDGER_ACCOUNT = 0 7 | endif 8 | 9 | .PHONY: sign 10 | sign: 11 | $(GOPATH)/bin/eip712sign --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" -- \ 12 | forge script --rpc-url $(L1_RPC_URL) BalanceTrackerOwnershipTransfer \ 13 | --sig "sign()" 14 | 15 | .PHONY: execute 16 | execute: 17 | forge script --rpc-url $(L1_RPC_URL) BalanceTrackerOwnershipTransfer \ 18 | --sig "run(bytes)" $(SIGNATURES) --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" --broadcast 19 | -------------------------------------------------------------------------------- /mainnet/2024-07-24-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e87e5ef2b96893eb8b446da420f7ba7f3e3c5985 2 | BASE_CONTRACTS_COMMIT=5d98dab6a4f3ba60713a17417a2df7a17d77c52f 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | GAS_LIMIT=112500000 8 | ROLLBACK_GAS_LIMIT=105000000 9 | 10 | UPDATE_NONCE=23 11 | ROLLBACK_NONCE=24 12 | -------------------------------------------------------------------------------- /mainnet/2024-07-24-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | 'solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-07-24-reduce-batcher-proposer-balance-targets/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e87e5ef2b96893eb8b446da420f7ba7f3e3c5985 2 | BASE_CONTRACTS_COMMIT=3e9314d57f453077606b4768094cae3f287af72b 3 | 4 | CB_INCIDENT_SAFE_ADDR=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 5 | PROFIT_WALLET=0xEc8103eb573150cB92f8AF612e0072843db2295F 6 | BALANCE_TRACKER_PROXY=0x23b597f33f6f2621f77da117523dffd634cdf4ea 7 | BALANCE_TRACKER_IMPLEMENTATION=0xB00FB2ead6C6150b11fC8b3A8CF7F8944C7dba7b 8 | OUTPUT_PROPOSER=0x642229f238fb9dE03374Be34B0eD8D9De80752c5 9 | BATCH_SENDER=0x5050F69a9786F081509234F1a7F4684b5E5b76C9 10 | OUTPUT_PROPOSER_TARGET_BALANCE=50000000000000000000 11 | BATCH_SENDER_TARGET_BALANCE=550000000000000000000 12 | -------------------------------------------------------------------------------- /mainnet/2024-07-30-set-new-l1-resolver/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e87e5ef2b96893eb8b446da420f7ba7f3e3c5985 2 | BASE_CONTRACTS_COMMIT=5d98dab6a4f3ba60713a17417a2df7a17d77c52f 3 | 4 | L1_INCIDENT_MULTISIG=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 5 | ENS_REGISTRY=0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e 6 | BASE_ETH_NODEHASH=0xff1e3c0eb00ec714e34b6114125fbde1dea2f24a72fbf672e7b7fd5690328e10 7 | L1_RESOLVER_ADDR=0xde9049636F4a1dfE0a64d1bFe3155C0A14C54F31 # https://etherscan.io/address/0xde9049636F4a1dfE0a64d1bFe3155C0A14C54F31 8 | -------------------------------------------------------------------------------- /mainnet/2024-07-30-set-new-l1-resolver/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ifndef LEDGER_ACCOUNT 6 | override LEDGER_ACCOUNT = 0 7 | endif 8 | 9 | .PHONY: sign-set-l1-resolver 10 | sign-set-l1-resolver: 11 | $(GOPATH)/bin/eip712sign --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" -- \ 12 | forge script --rpc-url $(L1_RPC_URL) SetL1Resolver \ 13 | --sig "sign()" 14 | 15 | .PHONY: execute 16 | execute: 17 | forge script --rpc-url $(L1_RPC_URL) SetL1Resolver \ 18 | --sig "run(bytes)" $(SIGNATURES) --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" --broadcast 19 | -------------------------------------------------------------------------------- /mainnet/2024-07-30-set-new-l1-resolver/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | 'solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-07-30-transfer-op/.env: -------------------------------------------------------------------------------- 1 | OPTIMISM_RPC_URL=https://mainnet.optimism.io 2 | 3 | OP_COMMIT=3580bf1b41d80fcb2b895d5610836bfad27fc989 4 | BASE_CONTRACTS_COMMIT=a147139671c09923f78ae46a6ebedc91209bb076 5 | 6 | OP_TOKEN=0x4200000000000000000000000000000000000042 7 | NESTED_SAFE=0x0a7361e734cf3f0394B0FC4a45C74E7a4Ec70940 8 | OP_MULTISIG=0x2501c477D0A35545a387Aa4A3EEe4292A9a8B3F0 9 | CB_MULTISIG=0x6e1DFd5C1E22A4677663A81D24C6BA03561ef0f6 10 | SMART_ESCROW_CONTRACT=0xb3C2f9fC2727078EC3A2255410e83BA5B62c5B5f 11 | TOKENS_TO_TRANSFER=42054887000000000000000000 12 | -------------------------------------------------------------------------------- /mainnet/2024-07-30-transfer-op/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.19" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | 'solady/=lib/solady/src/', 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-07-31-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e87e5ef2b96893eb8b446da420f7ba7f3e3c5985 2 | BASE_CONTRACTS_COMMIT=5d98dab6a4f3ba60713a17417a2df7a17d77c52f 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | GAS_LIMIT=120000000 8 | ROLLBACK_GAS_LIMIT=112500000 9 | -------------------------------------------------------------------------------- /mainnet/2024-07-31-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | 'solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-09-23-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=9047beb54c66a5c572784efec8984f259302ec92 2 | BASE_CONTRACTS_COMMIT=6df77b49e16c2da29d1530b624eb6df4ff00cb2e 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | OLD_GAS_LIMIT=120000000 8 | NEW_GAS_LIMIT=132000000 9 | -------------------------------------------------------------------------------- /mainnet/2024-09-23-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-10-01-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=9047beb54c66a5c572784efec8984f259302ec92 2 | BASE_CONTRACTS_COMMIT=6df77b49e16c2da29d1530b624eb6df4ff00cb2e 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | OLD_GAS_LIMIT=132000000 8 | NEW_GAS_LIMIT=144000000 9 | -------------------------------------------------------------------------------- /mainnet/2024-10-01-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-10-08-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=9047beb54c66a5c572784efec8984f259302ec92 2 | BASE_CONTRACTS_COMMIT=da4f4396f5219961b1b021936e39280e963102ba 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | OLD_GAS_LIMIT=144000000 8 | NEW_GAS_LIMIT=156000000 9 | -------------------------------------------------------------------------------- /mainnet/2024-10-08-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-10-15-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=9047beb54c66a5c572784efec8984f259302ec92 2 | BASE_CONTRACTS_COMMIT=da4f4396f5219961b1b021936e39280e963102ba 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | OLD_GAS_LIMIT=156000000 8 | NEW_GAS_LIMIT=168000000 9 | -------------------------------------------------------------------------------- /mainnet/2024-10-15-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-10-22-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=9047beb54c66a5c572784efec8984f259302ec92 2 | BASE_CONTRACTS_COMMIT=da4f4396f5219961b1b021936e39280e963102ba 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | OLD_GAS_LIMIT=168000000 8 | NEW_GAS_LIMIT=180000000 9 | -------------------------------------------------------------------------------- /mainnet/2024-10-22-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-11-18-increase-max-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OPTIMISM_REPO=https://github.com/ethereum-optimism/optimism.git 2 | OPTIMISM_VERSION=op-contracts/v1.4.0 3 | OPTIMISM_CONTRACT_PATCH=patch/max-gas-limit.patch 4 | BASE_CONTRACTS_COMMIT=494586571e1a4d845ee6f381b65229d63c630986 5 | 6 | OP_MULTISIG=0x9BA6e03D8B90dE867373Db8cF1A58d2F7F006b3A 7 | CB_MULTISIG=0x9855054731540A48b28990B63DcF4f33d8AE46A1 8 | SAFE_ADDRESS=0x7bb41c3008b3f03fe483b28b8db90e19cf07595c 9 | PROXY_ADMIN_ADDRESS=0x0475cBCAebd9CE8AfA5025828d5b98DFb67E059E 10 | SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 11 | 12 | NEW_IMPLEMENTATION=0x45c4e267ae21e90f72c8abf43ddb5941c953482f 13 | 14 | # override this if you experience rate limit issues with the default 15 | # L1_RPC_URL=https://eth.llamarpc.com 16 | -------------------------------------------------------------------------------- /mainnet/2024-11-18-increase-max-gas-limit/output: -------------------------------------------------------------------------------- 1 | Start verifying contract `0x57563A1Ad5b07CEB7e77B395d767E6144699C887` deployed on sepolia 2 | -------------------------------------------------------------------------------- /mainnet/2024-11-18-increase-max-gas-limit/script/DeploySystemConfig.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity 0.8.15; 3 | 4 | import {Script, console} from "forge-std/Script.sol"; 5 | 6 | import {SystemConfig} from "@eth-optimism-bedrock/src/L1/SystemConfig.sol"; 7 | 8 | contract DeploySystemConfig is Script { 9 | function run() public { 10 | vm.startBroadcast(); 11 | SystemConfig systemConfigImpl = new SystemConfig(); 12 | console.log("SystemConfig implementation deployed at: ", address(systemConfigImpl)); 13 | vm.stopBroadcast(); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /mainnet/2024-12-04-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=9047beb54c66a5c572784efec8984f259302ec92 2 | BASE_CONTRACTS_COMMIT=da4f4396f5219961b1b021936e39280e963102ba 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | OLD_GAS_LIMIT=180000000 8 | NEW_GAS_LIMIT=198000000 9 | -------------------------------------------------------------------------------- /mainnet/2024-12-04-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-12-11-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=9047beb54c66a5c572784efec8984f259302ec92 2 | BASE_CONTRACTS_COMMIT=da4f4396f5219961b1b021936e39280e963102ba 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | OLD_GAS_LIMIT=198000000 8 | NEW_GAS_LIMIT=216000000 9 | -------------------------------------------------------------------------------- /mainnet/2024-12-11-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2024-12-18-holocene-deployments/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=dff5f16c510e7f44f1be0574372ccb08bfec045c 2 | BASE_CONTRACTS_COMMIT=494586571e1a4d845ee6f381b65229d63c630986 3 | 4 | VM_ADDRESS=0x5fE03a12C1236F9C22Cb6479778DDAa4bce6299C 5 | ABSOLUTE_PRESTATE=0x03f89406817db1ed7fd8b31e13300444652cdb0b9c509a674de43483b2f83568 6 | 7 | PROPOSER_ADDRESS=0x642229f238fb9dE03374Be34B0eD8D9De80752c5 8 | CHALLENGER_ADDRESS=0x8Ca1E12404d16373Aef756179B185F27b2994F3a 9 | 10 | WETH_ADDRESS=0xa2f2aC6F5aF72e494A227d79Db20473Cf7A1FFE8 11 | PERMISSIONED_WETH_ADDRESS=0x3E8a0B63f57e975c268d610ece93da5f78c01321 12 | ANCHOR_STATE_REGISTRY_ADDRESS=0xdB9091e48B1C42992A1213e6916184f9eBDbfEDf 13 | 14 | MAX_GAME_DEPTH=73 15 | SPLIT_DEPTH=30 16 | CLOCK_EXTENSION=10800 17 | MAX_CLOCK_DURATION=302400 18 | -------------------------------------------------------------------------------- /mainnet/2024-12-18-holocene-deployments/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ifndef LEDGER_ACCOUNT 6 | override LEDGER_ACCOUNT = 0 7 | endif 8 | 9 | ## 10 | # Deploy command 11 | ## 12 | .PHONY: deploy 13 | deploy: 14 | L2_CHAIN_ID=$(L2_CHAIN_ID) forge script --rpc-url $(L1_RPC_URL) DeployHoloceneContracts --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" --verify --broadcast 15 | -------------------------------------------------------------------------------- /mainnet/2024-12-18-holocene-deployments/deployed/addresses.json: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /mainnet/2024-12-18-holocene-deployments/inputs/deploy-config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/base/contract-deployments/2ac0ef17ab67eebd9d3b9d2c1946b04dbc9e4299/mainnet/2024-12-18-holocene-deployments/inputs/deploy-config.json -------------------------------------------------------------------------------- /mainnet/2024-12-18-holocene-deployments/inputs/misc-config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/base/contract-deployments/2ac0ef17ab67eebd9d3b9d2c1946b04dbc9e4299/mainnet/2024-12-18-holocene-deployments/inputs/misc-config.json -------------------------------------------------------------------------------- /mainnet/2024-12-18-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=9047beb54c66a5c572784efec8984f259302ec92 2 | BASE_CONTRACTS_COMMIT=da4f4396f5219961b1b021936e39280e963102ba 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | OLD_GAS_LIMIT=216000000 8 | NEW_GAS_LIMIT=240000000 9 | -------------------------------------------------------------------------------- /mainnet/2024-12-18-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2025-01-08-transfer-proxyadmin-owner-L1alias/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=dff5f16c510e7f44f1be0574372ccb08bfec045c 2 | BASE_CONTRACTS_COMMIT=494586571e1a4d845ee6f381b65229d63c630986 3 | 4 | PROXY_ADMIN=0x4200000000000000000000000000000000000018 5 | L2_PROXY_ADMIN_OWNER=0x2304CB33d95999dC29f4CeF1e35065e670a70050 6 | L1_PROXY_ADMIN_OWNER=0x7bB41C3008B3f03FE483B28b8DB90e19Cf07595c 7 | CB_SIGNER_SAFE_ADDR=0xd94E416cf2c7167608B2515B7e4102B41efff94f 8 | OP_SIGNER_SAFE_ADDR=0x28EDB11394eb271212ED66c08f2b7893C04C5D65 9 | -------------------------------------------------------------------------------- /mainnet/2025-01-15-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=dff5f16c510e7f44f1be0574372ccb08bfec045c 2 | BASE_CONTRACTS_COMMIT=494586571e1a4d845ee6f381b65229d63c630986 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | OLD_GAS_LIMIT=240000000 8 | NEW_GAS_LIMIT=252000000 9 | -------------------------------------------------------------------------------- /mainnet/2025-01-15-nested-ownership-transfer/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=2073f4059bd806af3e8b76b820aa3fa0b42016d0 2 | BASE_CONTRACTS_COMMIT=e6bfc862e38e96aafdb8610ec8209d9c0fa36aba 3 | 4 | SAFE_PROXY_FACTORY=0x4e1DCf7AD4e460CfD30791CCC4F9c8a4f820ec67 5 | L1_GNOSIS_SAFE_IMPLEMENTATION=0x41675C099F32341bf84BFc5382aF534df5C7461a 6 | L1_GNOSIS_COMPATIBILITY_FALLBACK_HANDLER=0xfd0732Dc9E303f09fCEf3a7388Ad10A83459Ec99 7 | 8 | OWNER_SAFE=0x9855054731540A48b28990B63DcF4f33d8AE46A1 9 | 10 | EXPECTED_OWNER_SAFE_THRESHOLD=3 11 | EXPECTED_OWNER_SAFE_OWNER_COUNT=6 12 | 13 | SAFE_B_THRESHOLD=7 14 | EXPECTED_SAFE_B_OWNER_COUNT=10 15 | -------------------------------------------------------------------------------- /mainnet/2025-01-15-nested-ownership-transfer/addresses.json: -------------------------------------------------------------------------------- 1 | { 2 | "SafeA": "0x9c4a57feb77e294fd7bf5ebe9ab01caa0a90a110", 3 | "SafeB": "0x20acf55a3dcfe07fc4cecacfa1628f788ec8a4dd" 4 | } 5 | -------------------------------------------------------------------------------- /mainnet/2025-01-15-nested-ownership-transfer/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [{ access = "read-write", path = "./" }] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | via-ir = false 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts', 16 | 'solady/=lib/solady/src/', 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config 20 | -------------------------------------------------------------------------------- /mainnet/2025-01-15-nested-ownership-transfer/signers.json: -------------------------------------------------------------------------------- 1 | { 2 | "signers": [ 3 | "0x5ff5C78ff194acc24C22DAaDdE4D639ebF18ACC6", 4 | "0x82C80F34C4b5c153dB76122a11AaD2F77C99E766", 5 | "0xa8ee754FD1d069fb4B5d652730A0ca5e07a3fb06", 6 | "0x1C56A6d2A6Af643cea4E62e72B75B9bDe8d62e2B", 7 | "0xA5657B88A0130a626fcDd6aAA59522373438CdFE", 8 | "0x21C7D1e6A81Daca071bA94839ab74C39A25f851F", 9 | "0xa5959a39cA67b9fb473E4A3A898C611EEAc9CB73", 10 | "0x18e982274f8C5B548D5aAc7aBef44D61504e1b3E", 11 | "0x99DB5BbA0db16e9aD05e3ff53310683CC3C971D2", 12 | "0x0E8A99738a50D523871739c6d676554b0E34252f" 13 | ] 14 | } 15 | -------------------------------------------------------------------------------- /mainnet/2025-01-22-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=dff5f16c510e7f44f1be0574372ccb08bfec045c 2 | BASE_CONTRACTS_COMMIT=1f3ffe844dbff6331801d3d25b5f3c3aa904afc0 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | OLD_GAS_LIMIT=252000000 8 | NEW_GAS_LIMIT=264000000 9 | -------------------------------------------------------------------------------- /mainnet/2025-01-22-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2025-01-29-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=dff5f16c510e7f44f1be0574372ccb08bfec045c 2 | # https://github.com/base/contracts/commit/cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 commit with update to RollbackGasLimit 3 | BASE_CONTRACTS_COMMIT=cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 4 | 5 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 6 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 7 | 8 | OLD_GAS_LIMIT=264000000 9 | NEW_GAS_LIMIT=288000000 10 | -------------------------------------------------------------------------------- /mainnet/2025-01-29-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = false 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2025-02-12-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=dff5f16c510e7f44f1be0574372ccb08bfec045c 2 | # https://github.com/base/contracts/commit/cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 commit with update to RollbackGasLimit 3 | BASE_CONTRACTS_COMMIT=cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 4 | 5 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 6 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 7 | 8 | OLD_GAS_LIMIT=96000000 9 | NEW_GAS_LIMIT=100000000 10 | -------------------------------------------------------------------------------- /mainnet/2025-02-12-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = false 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2025-02-19-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=dff5f16c510e7f44f1be0574372ccb08bfec045c 2 | # https://github.com/base/contracts/commit/cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 commit with update to RollbackGasLimit 3 | BASE_CONTRACTS_COMMIT=cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 4 | 5 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 6 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 7 | 8 | OLD_GAS_LIMIT=100000000 9 | NEW_GAS_LIMIT=104000000 10 | -------------------------------------------------------------------------------- /mainnet/2025-02-19-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = false 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2025-02-25-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=dff5f16c510e7f44f1be0574372ccb08bfec045c 2 | # https://github.com/base/contracts/commit/cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 commit with update to RollbackGasLimit 3 | BASE_CONTRACTS_COMMIT=cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 4 | 5 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 6 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 7 | 8 | OLD_GAS_LIMIT=104000000 9 | NEW_GAS_LIMIT=108000000 10 | -------------------------------------------------------------------------------- /mainnet/2025-02-25-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = false 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2025-03-05-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=dff5f16c510e7f44f1be0574372ccb08bfec045c 2 | # https://github.com/base/contracts/commit/cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 commit with update to RollbackGasLimit 3 | BASE_CONTRACTS_COMMIT=cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 4 | 5 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 6 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 7 | 8 | OLD_GAS_LIMIT=108000000 9 | NEW_GAS_LIMIT=112000000 10 | -------------------------------------------------------------------------------- /mainnet/2025-03-05-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = false 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2025-03-05-upgrade-fault-proofs/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=2073f4059bd806af3e8b76b820aa3fa0b42016d0 2 | BASE_CONTRACTS_COMMIT=cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 3 | 4 | ABSOLUTE_PRESTATE=0x0354eee87a1775d96afee8977ef6d5d6bd3612b256170952a01bf1051610ee01 5 | 6 | SYSTEM_CONFIG=0x73a79Fab69143498Ed3712e519A88a918e1f4072 7 | OWNER_SAFE=0x7bB41C3008B3f03FE483B28b8DB90e19Cf07595c 8 | CB_SIGNER_SAFE_ADDR=0x9855054731540A48b28990B63DcF4f33d8AE46A1 9 | OP_SIGNER_SAFE_ADDR=0x9BA6e03D8B90dE867373Db8cF1A58d2F7F006b3A 10 | -------------------------------------------------------------------------------- /mainnet/2025-03-05-upgrade-fault-proofs/addresses.json: -------------------------------------------------------------------------------- 1 | { 2 | "faultDisputeGame": "0xfe884b822eddb5864e86626e088120c73c0a4364", 3 | "permissionedDisputeGame": "0x8cf5972cedf63b099406b3e7da81566885453d8e" 4 | } 5 | -------------------------------------------------------------------------------- /mainnet/2025-03-19-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=dff5f16c510e7f44f1be0574372ccb08bfec045c 2 | # https://github.com/base/contracts/commit/cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 commit with update to RollbackGasLimit 3 | BASE_CONTRACTS_COMMIT=cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 4 | 5 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 6 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 7 | 8 | OLD_GAS_LIMIT=112000000 9 | NEW_GAS_LIMIT=116000000 10 | -------------------------------------------------------------------------------- /mainnet/2025-03-19-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = false 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2025-03-26-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=dff5f16c510e7f44f1be0574372ccb08bfec045c 2 | # https://github.com/base/contracts/commit/cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 commit with update to RollbackGasLimit 3 | BASE_CONTRACTS_COMMIT=cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 4 | 5 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 6 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 7 | 8 | OLD_GAS_LIMIT=116000000 9 | NEW_GAS_LIMIT=120000000 10 | -------------------------------------------------------------------------------- /mainnet/2025-03-26-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = false 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2025-04-07-init-smart-escrow-ownership-transfer/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=8d0dd96e494b2ba154587877351e87788336a4ec 2 | BASE_CONTRACTS_COMMIT=6ca464d118d2d33331ea44893f0930f753663f60 3 | 4 | L1_SAFE=0x7bB41C3008B3f03FE483B28b8DB90e19Cf07595c 5 | TARGET=0xb3C2f9fC2727078EC3A2255410e83BA5B62c5B5f 6 | 7 | OWNER_SAFE=0x0a7361e734cf3f0394B0FC4a45C74E7a4Ec70940 8 | CB_SIGNER_SAFE_ADDR=0x6e1DFd5C1E22A4677663A81D24C6BA03561ef0f6 9 | OP_SIGNER_SAFE_ADDR=0x2501c477D0A35545a387Aa4A3EEe4292A9a8B3F0 10 | -------------------------------------------------------------------------------- /mainnet/2025-04-07-update-fee-disperser-ownership/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=ef7a933ca7f3d27ac40406f87fea25e0c3ba2016 2 | BASE_CONTRACTS_COMMIT=838514551165f03360f52b2b9ceca69844a98f48 3 | 4 | OWNER_SAFE=0xd94E416cf2c7167608B2515B7e4102B41efff94f 5 | L1_SAFE=0x9c4a57feb77e294fd7bf5ebe9ab01caa0a90a110 6 | TARGET=0x09C7bAD99688a55a2e83644BFAed09e62bDcCcBA 7 | -------------------------------------------------------------------------------- /mainnet/2025-04-23-upgrade-fault-proofs/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=ef7a933ca7f3d27ac40406f87fea25e0c3ba2016 2 | BASE_CONTRACTS_COMMIT=2d0adea2460e3419dbcd77ac48dd2efc9a9a375f 3 | 4 | ABSOLUTE_PRESTATE=0x03682932cec7ce0a3874b19675a6bbc923054a7b321efc7d3835187b172494b6 5 | 6 | # Mainnet Config 7 | SYSTEM_CONFIG=0x73a79Fab69143498Ed3712e519A88a918e1f4072 8 | OWNER_SAFE=0x7bB41C3008B3f03FE483B28b8DB90e19Cf07595c 9 | COORDINATOR_SAFE_ADDR=0x9855054731540A48b28990B63DcF4f33d8AE46A1 10 | OP_SIGNER_SAFE_ADDR=0x9BA6e03D8B90dE867373Db8cF1A58d2F7F006b3A 11 | CB_SIGNER_SAFE=0x9c4a57feb77e294fd7bf5ebe9ab01caa0a90a110 12 | SECURITY_COUNCIL_SAFE=0x20acf55a3dcfe07fc4cecacfa1628f788ec8a4dd 13 | -------------------------------------------------------------------------------- /mainnet/2025-04-23-upgrade-fault-proofs/addresses.json: -------------------------------------------------------------------------------- 1 | {"faultDisputeGame": "0xab91fb6cef84199145133f75cbd96b8a31f184ed","permissionedDisputeGame": "0x7344da3a618b86cda67f8260c0cc2027d99f5b49"} -------------------------------------------------------------------------------- /mainnet/2025-04-29-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=6f68dc35e103278e366d2b8ba178ca87bbaacb0c # Recommend using the version of https://github.com/ethereum-optimism/optimism that the current SystemConfig contract is on 2 | BASE_CONTRACTS_COMMIT=2d0adea2460e3419dbcd77ac48dd2efc9a9a375f # Recommend using the latest version of https://github.com/base-org/contracts 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | OLD_GAS_LIMIT=120000000 8 | NEW_GAS_LIMIT=130000000 9 | -------------------------------------------------------------------------------- /mainnet/2025-04-29-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = false 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2025-05-06-fund-ledgers/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=6f68dc35e103278e366d2b8ba178ca87bbaacb0c # Not really used, only needed for the compilation to succeed. 2 | BASE_CONTRACTS_COMMIT=838514551165f03360f52b2b9ceca69844a98f48 3 | 4 | SAFE=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 5 | -------------------------------------------------------------------------------- /mainnet/2025-05-06-fund-ledgers/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ifndef LEDGER_ACCOUNT 6 | override LEDGER_ACCOUNT = 0 7 | endif 8 | 9 | .PHONY: sign 10 | sign: 11 | $(GOPATH)/bin/eip712sign --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" -- \ 12 | forge script --rpc-url $(L1_RPC_URL) FundScript \ 13 | --sig "sign(address[])" "[]" --sender 0x969ffD102fbF304d4e401999333FE9397DaC653D 14 | 15 | .PHONY: execute 16 | execute: 17 | forge script --rpc-url $(L1_RPC_URL) FundScript \ 18 | --sig "run(bytes)" $(SIGNATURES) --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" --broadcast -vvvv 19 | 20 | -------------------------------------------------------------------------------- /mainnet/2025-05-06-fund-ledgers/funding.json: -------------------------------------------------------------------------------- 1 | { 2 | "recipients": [ 3 | "0x7Ad8E6B7B1f6D66F49559f20053Cef8a7b6c488E", 4 | "0x644e3DedB0e4F83Bfcf8F9992964d240224B74dc", 5 | "0x24c3AE1AeDB8142D32BB6d3B988f5910F272D53b", 6 | "0x9bf96dcf51959915c8c343a3e50820ad069a1859" 7 | ], 8 | "funds": [ 9 | 1000000000000000000, 10 | 1000000000000000000, 11 | 1000000000000000000, 12 | 1000000000000000000 13 | ] 14 | } -------------------------------------------------------------------------------- /mainnet/2025-05-07-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=6f68dc35e103278e366d2b8ba178ca87bbaacb0c # Recommend using the version of https://github.com/ethereum-optimism/optimism that the current SystemConfig contract is on 2 | BASE_CONTRACTS_COMMIT=2d0adea2460e3419dbcd77ac48dd2efc9a9a375f # Recommend using the latest version of https://github.com/base-org/contracts 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | OLD_GAS_LIMIT=130000000 8 | NEW_GAS_LIMIT=140000000 -------------------------------------------------------------------------------- /mainnet/2025-05-07-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = false 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | '@solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /mainnet/2025-05-13-incident-multisig-signers/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=ef7a933ca7f3d27ac40406f87fea25e0c3ba2016 2 | BASE_CONTRACTS_COMMIT=cab46f4c34f11e22640ec3073aa6f0b46cdaa1b7 3 | 4 | OWNER_SAFE=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 5 | -------------------------------------------------------------------------------- /mainnet/2025-05-13-incident-multisig-signers/OwnerDiff.json: -------------------------------------------------------------------------------- 1 | { 2 | "OwnersToAdd": [ 3 | "0xB37B2D42cb0C10ebf96279CcECa2cBFc47C6f236", 4 | "0x9bf96dcf51959915c8c343a3e50820ad069a1859", 5 | "0xA31E1c38d5c37D8ECd0e94C80C0F7FD624d009A3", 6 | "0x4427683AA1f0ff25ccDC4a5Db83010c1DE9b5fF4", 7 | "0x541a833E4303EB56a45bE7E8E4A908db97568d1e" 8 | ], 9 | "OwnersToRemove": [ 10 | "0xe32868ec7762650DdE723e945D638A05900974F4", 11 | "0xC29A4a69886d5ee1E08BDBbdd4e35558A668ee04", 12 | "0x8e5de5cA219e3FFC9cdEb2Dc7D71B8a199cd2C4F", 13 | "0x969ffD102fbF304d4e401999333FE9397DaC653D", 14 | "0xa7a5e47D3959bf134e3EcdEb1f62e054f0D58a18" 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /mainnet/2025-05-15-eip1559-denominator-reduction/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=ef7a933ca7f3d27ac40406f87fea25e0c3ba2016 2 | BASE_CONTRACTS_COMMIT=cab46f4c34f11e22640ec3073aa6f0b46cdaa1b7 3 | 4 | OWNER_SAFE=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 5 | SYSTEM_CONFIG=0x73a79Fab69143498Ed3712e519A88a918e1f4072 6 | -------------------------------------------------------------------------------- /mainnet/2025-05-15-eip1559-denominator-reduction/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ifndef LEDGER_ACCOUNT 6 | override LEDGER_ACCOUNT = 0 7 | endif 8 | 9 | .PHONY: sign 10 | sign: 11 | $(GOPATH)/bin/eip712sign --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" -- \ 12 | forge script --rpc-url $(L1_RPC_URL) ReduceEip1559DenominatorScript \ 13 | --sig "sign(address[])" "[]" 14 | 15 | .PHONY: execute 16 | execute: 17 | forge script --rpc-url $(L1_RPC_URL) ReduceEip1559DenominatorScript \ 18 | --sig "run(bytes)" $(SIGNATURES) --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" --broadcast -vvvv -------------------------------------------------------------------------------- /mainnet/addresses.json: -------------------------------------------------------------------------------- 1 | { 2 | "AddressManager": "0x8EfB6B5c4767B09Dc9AA6Af4eAA89F749522BaE2", 3 | "L1CrossDomainMessengerProxy": "0x866E82a600A1414e583f7F13623F1aC5d58b0Afa", 4 | "L1ERC721BridgeProxy": "0x608d94945A64503E642E6370Ec598e519a2C1E53", 5 | "L1StandardBridgeProxy": "0x3154Cf16ccdb4C6d922629664174b904d80F2C35", 6 | "L2OutputOracleProxy": "0x56315b90c40730925ec5485cf004d835058518A0", 7 | "OptimismMintableERC20FactoryProxy": "0x05cc379EBD9B30BbA19C6fA282AB29218EC61D84", 8 | "OptimismPortalProxy": "0x49048044D57e1C92A77f79988d21Fa8fAF74E97e", 9 | "ProxyAdmin": "0x0475cBCAebd9CE8AfA5025828d5b98DFb67E059E", 10 | "SystemConfigProxy": "0x73a79Fab69143498Ed3712e519A88a918e1f4072", 11 | "SystemDictatorProxy": "0x1fE3fdd1F0193Dd657C0a9AAC37314D6B479E557" 12 | } 13 | -------------------------------------------------------------------------------- /sepolia-alpha/.env: -------------------------------------------------------------------------------- 1 | NETWORK=sepolia-alpha 2 | L1_RPC_URL=https://ethereum-full-sepolia-k8s-dev.cbhq.net 3 | L2_RPC_URL=https://base-sepolia-alpha.cbhq.net 4 | L1_CHAIN_ID=11155111 5 | L2_CHAIN_ID=11763072 6 | export PROXY_ADMIN=0xC5aE9023bFA79124ffA50169E1423E733D0166f1 7 | export PROXY_ADMIN_OWNER=0xAf6E0E871f38c7B653700F7CbAEDafaa2784D430 8 | export L1_STANDARD_BRIDGE_PROXY=0x5638e55db5Fcf7A58df525F1098E8569C8DbA80c 9 | -------------------------------------------------------------------------------- /sepolia-alpha/2023-09-20-deploy/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a7ff5a811612fa338d0a6d6dd72dc2ec9badef6d 2 | BASE_CONTRACTS_COMMIT=405d0c4f94c442b6dd44116260371fd42e9908d7 3 | -------------------------------------------------------------------------------- /sepolia-alpha/2023-09-20-deploy/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Deploy command 7 | ## 8 | .PHONY: deploy 9 | deploy: 10 | cp deploy-config/deploy-config.json lib/optimism/packages/contracts-bedrock/deploy-config/ 11 | cd lib/optimism/packages/contracts-bedrock && \ 12 | forge build && \ 13 | ETH_RPC_URL=$(L1_RPC_URL) DEPLOYMENT_CONTEXT=deploy-config IMPL_SALT=base forge script --private-key $(PRIVATE_KEY) --rpc-url $(L1_RPC_URL) Deploy --broadcast 14 | cp lib/optimism/packages/contracts-bedrock/deployments/deploy-config/.deploy deployed/addresses.json 15 | -------------------------------------------------------------------------------- /sepolia-alpha/2023-09-20-deploy/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | script = 'script' 6 | broadcast = 'records' 7 | fs_permissions = [ {access = "read-write", path = "./"} ] 8 | optimizer = true 9 | optimizer_runs = 999999 10 | remappings = [ 11 | # '@optimism/=lib/optimism/packages/contracts-bedrock', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@cwia/=lib/clones-with-immutable-args/src', 16 | 'safe-contracts/=lib/safe-contracts/contracts/', 17 | ] 18 | -------------------------------------------------------------------------------- /sepolia-alpha/2023-10-06-upgrade-l1-standard-bridge/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e3ba24e72085d85bb5584dda33a03ccf60db86f0 2 | BASE_CONTRACTS_COMMIT=e961e8638874d571aa63a6e35507e3779131d1eb 3 | -------------------------------------------------------------------------------- /sepolia-alpha/2023-10-06-upgrade-l1-standard-bridge/.gitignore: -------------------------------------------------------------------------------- 1 | /src/ 2 | -------------------------------------------------------------------------------- /sepolia-alpha/2023-10-06-upgrade-l1-standard-bridge/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | .PHONY: prepare 6 | prepare: 7 | rm -rf src 8 | cp -r lib/optimism/packages/contracts-bedrock/src/ src/ 9 | 10 | .PHONY: deploy 11 | deploy: 12 | forge script --rpc-url $(L1_RPC_URL) --private-key $(PRIVATE_KEY) DeployL1StandardBridgeImplementation --broadcast 13 | 14 | .PHONY: upgrade 15 | upgrade: 16 | forge script --rpc-url $(L1_RPC_URL) --private-key $(PRIVATE_KEY) UpgradeL1StandardBridge --broadcast 17 | -------------------------------------------------------------------------------- /sepolia-alpha/2024-11-19-holocene-contracts/.env: -------------------------------------------------------------------------------- 1 | # op-contracts v1.8.0-rc.2 2 | OP_COMMIT=df25977a160f85160779bbca71a8e56cf35b0f69 3 | SYSTEM_CONFIG_PROXY=0x7F67DC4959cb3E532B10A99F41bDD906C46FdFdE 4 | 5 | # Newly deployed implementation contract for Holocene 6 | SYSTEM_CONFIG_IMPLEMENTATION=0x57563A1Ad5b07CEB7e77B395d767E6144699C887 7 | 8 | # Same values as previous SystemConfig: 9 | SYTEM_CONFIG_OWNER=0xAf6E0E871f38c7B653700F7CbAEDafaa2784D430 10 | 11 | GAS_LIMIT=60000000 12 | ELASTICITY_MULTIPLIER=2 13 | DENOMINATOR=250 14 | -------------------------------------------------------------------------------- /sepolia-alpha/2024-11-19-holocene-contracts/.gitignore: -------------------------------------------------------------------------------- 1 | /src/ 2 | -------------------------------------------------------------------------------- /sepolia-alpha/2024-11-19-holocene-contracts/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | .PHONY: deploy 6 | deploy: 7 | forge script --rpc-url $(L1_RPC_URL) --private-key $(PRIVATE_KEY) DeploySystemConfig --broadcast 8 | 9 | .PHONY: upgrade 10 | upgrade: 11 | forge script --rpc-url $(L1_RPC_URL) --private-key $(PRIVATE_KEY) UpgradeSystemConfig --broadcast 12 | 13 | .PHONY: set-1559-params 14 | set-1559-params: 15 | forge script --rpc-url $(L1_RPC_URL) --private-key $(PRIVATE_KEY) SetEIP1559Params --broadcast 16 | -------------------------------------------------------------------------------- /sepolia-alpha/2024-11-19-holocene-contracts/script/DeploySystemConfig.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity 0.8.15; 3 | 4 | import "lib/optimism/packages/contracts-bedrock/src/L1/SystemConfig.sol"; 5 | import "forge-std/Script.sol"; 6 | 7 | contract DeploySystemConfig is Script { 8 | function run() public { 9 | vm.startBroadcast(); 10 | SystemConfig systemConfigImpl = new SystemConfig(); 11 | console.log("SystemConfig implementation deployed at: ", address(systemConfigImpl)); 12 | vm.stopBroadcast(); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /sepolia-alpha/2025-04-08-transfer-proxy-admin-ownership-to-safe/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=8d0dd96e494b2ba154587877351e87788336a4ec 2 | BASE_CONTRACTS_COMMIT=6ca464d118d2d33331ea44893f0930f753663f60 3 | 4 | PROXY_ADMIN=0xC5aE9023bFA79124ffA50169E1423E733D0166f1 5 | NEW_OWNER=0x0fe884546476dDd290eC46318785046ef68a0BA9 6 | SENDER=0xAf6E0E871f38c7B653700F7CbAEDafaa2784D430 7 | -------------------------------------------------------------------------------- /sepolia-alpha/2025-04-08-transfer-proxy-admin-ownership-to-safe/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | .PHONY: simulate 6 | simulate: 7 | forge script --rpc-url $(L1_RPC_URL) TransferOwnership --sender $(SENDER) 8 | 9 | .PHONY: execute 10 | execute: 11 | forge script --rpc-url $(L1_RPC_URL) TransferOwnership --account sepolia-alpha-admin --broadcast -vvvv 12 | -------------------------------------------------------------------------------- /sepolia/.env: -------------------------------------------------------------------------------- 1 | NETWORK=sepolia 2 | L1_RPC_URL=https://ethereum-full-sepolia-k8s-dev.cbhq.net 3 | L2_RPC_URL=https://base-sepolia.cbhq.net 4 | L1_CHAIN_ID=11155111 5 | L2_CHAIN_ID=84532 6 | export PROXY_ADMIN=0x0389E59Aa0a41E4A413Ae70f0008e76CAA34b1F3 7 | export PROXY_ADMIN_OWNER=0x608081689Fe46936fB2fBDF7552CbB1D80ad4822 8 | export L1_STANDARD_BRIDGE_PROXY=0xfd0Bf71F60660E2f608ed56e1659C450eB113120 9 | -------------------------------------------------------------------------------- /sepolia/2023-09-26-deploy/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a7ff5a811612fa338d0a6d6dd72dc2ec9badef6d 2 | BASE_CONTRACTS_COMMIT=405d0c4f94c442b6dd44116260371fd42e9908d7 3 | -------------------------------------------------------------------------------- /sepolia/2023-09-26-deploy/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Deploy command 7 | ## 8 | .PHONY: deploy 9 | deploy: 10 | cp deploy-config/deploy-config.json lib/optimism/packages/contracts-bedrock/deploy-config/ 11 | cd lib/optimism/packages/contracts-bedrock && \ 12 | forge build && \ 13 | ETH_RPC_URL=$(L1_RPC_URL) DEPLOYMENT_CONTEXT=deploy-config IMPL_SALT=allyourbasearebelongtoyou forge script --private-key $(PRIVATE_KEY) --rpc-url $(L1_RPC_URL) Deploy --broadcast 14 | cp lib/optimism/packages/contracts-bedrock/deployments/deploy-config/.deploy deployed/addresses.json 15 | -------------------------------------------------------------------------------- /sepolia/2023-09-26-deploy/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | script = 'script' 6 | broadcast = 'records' 7 | fs_permissions = [ {access = "read-write", path = "./"} ] 8 | optimizer = true 9 | optimizer_runs = 999999 10 | remappings = [ 11 | # '@optimism/=lib/optimism/packages/contracts-bedrock', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@cwia/=lib/clones-with-immutable-args/src', 16 | 'safe-contracts/=lib/safe-contracts/contracts/', 17 | ] 18 | -------------------------------------------------------------------------------- /sepolia/2023-10-07-upgrade-l1-standard-bridge/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e3ba24e72085d85bb5584dda33a03ccf60db86f0 2 | BASE_CONTRACTS_COMMIT=e961e8638874d571aa63a6e35507e3779131d1eb 3 | -------------------------------------------------------------------------------- /sepolia/2023-10-07-upgrade-l1-standard-bridge/.gitignore: -------------------------------------------------------------------------------- 1 | /src/ 2 | -------------------------------------------------------------------------------- /sepolia/2023-10-07-upgrade-l1-standard-bridge/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | .PHONY: deploy 6 | deploy: 7 | forge script --rpc-url $(L1_RPC_URL) --private-key $(PRIVATE_KEY) DeployL1StandardBridgeImplementation --broadcast 8 | 9 | .PHONY: upgrade 10 | upgrade: 11 | forge script --rpc-url $(L1_RPC_URL) --private-key $(PRIVATE_KEY) UpgradeL1StandardBridge --broadcast 12 | -------------------------------------------------------------------------------- /sepolia/2024-01-22-deploy-revshare/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config 20 | -------------------------------------------------------------------------------- /sepolia/2024-02-28-pause-unpause-portal/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=10b06fb49861053999a89533d846ee5c2ccb33e1 2 | BASE_CONTRACTS_COMMIT=fe492be3478134b2305c207a12b153eca04148c0 3 | 4 | GUARDIAN=0xA9FF930151130fd19DA1F03E5077AFB7C78F8503 5 | OPTIMISM_PORTAL_PROXY=0x49f53e41452C74589E85cA1677426Ba426459e85 6 | -------------------------------------------------------------------------------- /sepolia/2024-02-28-pause-unpause-portal/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts' 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config 20 | -------------------------------------------------------------------------------- /sepolia/2024-02-28-pause-unpause-portal/script/PausePortal.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity 0.8.15; 3 | 4 | import "forge-std/Script.sol"; 5 | import "@eth-optimism-bedrock/src/L1/OptimismPortal.sol"; 6 | 7 | contract PausePortal is Script { 8 | address internal OPTIMISM_PORTAL_PROXY = vm.envAddress("OPTIMISM_PORTAL_PROXY"); 9 | address internal GUARDIAN = vm.envAddress("GUARDIAN"); 10 | 11 | function run() external { 12 | OptimismPortal optimismPortal = OptimismPortal(payable(OPTIMISM_PORTAL_PROXY)); 13 | 14 | vm.broadcast(GUARDIAN); 15 | optimismPortal.pause(); 16 | 17 | require(optimismPortal.paused() == true, "PausePortal: failed to pause"); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /sepolia/2024-02-28-pause-unpause-portal/script/UnpausePortal.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity 0.8.15; 3 | 4 | import "forge-std/Script.sol"; 5 | import "@eth-optimism-bedrock/src/L1/OptimismPortal.sol"; 6 | 7 | contract UnpausePortal is Script { 8 | address internal OPTIMISM_PORTAL_PROXY = vm.envAddress("OPTIMISM_PORTAL_PROXY"); 9 | address internal GUARDIAN = vm.envAddress("GUARDIAN"); 10 | 11 | function run() external { 12 | OptimismPortal optimismPortal = OptimismPortal(payable(OPTIMISM_PORTAL_PROXY)); 13 | 14 | vm.broadcast(GUARDIAN); 15 | optimismPortal.unpause(); 16 | 17 | require(optimismPortal.paused() == false, "PausePortal: failed to unpause"); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /sepolia/2024-03-07-ecotone-sysconfig-updates/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | # Unpause OptimismPortal Commands 6 | 7 | .PHONY: update-gas-config 8 | update-gas-config: 9 | @forge script --rpc-url $(L1_RPC_URL) UpdateGasConfigSepolia --private-key $(PRIVATE_KEY) --broadcast 10 | -------------------------------------------------------------------------------- /sepolia/2024-03-26-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=c87a469d7d679e8a4efbace56c3646b925bcc009 2 | BASE_CONTRACTS_COMMIT=56d8f40b48795663fa88366d762161af5a1ba5d5 3 | 4 | # https://sepolia.etherscan.io/address/0xf272670eb55e895584501d564AfEB048bEd26194 5 | L1_SYSTEM_CONFIG_ADDRESS=0xf272670eb55e895584501d564AfEB048bEd26194 6 | OWNER_ADDRESS=0x608081689Fe46936fB2fBDF7552CbB1D80ad4822 7 | GAS_LIMIT=45000000 -------------------------------------------------------------------------------- /sepolia/2024-03-26-increase-gas-limit/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | .PHONY: update-gas-limit 6 | update-gas-limit: 7 | @forge script --rpc-url $(L1_RPC_URL) UpdateGasLimitSepolia --private-key $(PRIVATE_KEY) --broadcast 8 | -------------------------------------------------------------------------------- /sepolia/2024-03-26-increase-gas-limit/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [ {access = "read-write", path = "./"} ] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | solc_version = "0.8.15" 10 | via-ir = true 11 | remappings = [ 12 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 13 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 14 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 15 | '@rari-capital/solmate/=lib/solmate/', 16 | '@base-contracts/=lib/base-contracts', 17 | 'solady/=lib/solady/src/' 18 | ] 19 | 20 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /sepolia/2024-04-10-deploy-ERC20Factory/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e6ef3a900c42c8722e72c2e2314027f85d12ced5 2 | BASE_CONTRACTS_COMMIT=c8e14388e478471411abb10f3a99ab3bd9206a95 3 | -------------------------------------------------------------------------------- /sepolia/2024-04-10-deploy-ERC20Factory/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Deploy command 7 | ## 8 | .PHONY: deploy 9 | deploy: 10 | forge script RunERC20FactoryDeploy --rpc-url $(L2_RPC_URL) --broadcast 11 | 12 | .PHONY: verify 13 | verify: 14 | forge verify-contract 0x6922ac4dbdfedea3a1e5535f12c3171f2b964c91 OptimismMintableERC20Factory \ 15 | --watch --chain-id 84532 \ 16 | --num-of-optimizations=99999 --retries=1 \ 17 | --verifier-url https://sepolia-api.basescan.org/api -------------------------------------------------------------------------------- /sepolia/2024-04-10-deploy-ERC20Factory/deployed/addresses.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/base/contract-deployments/2ac0ef17ab67eebd9d3b9d2c1946b04dbc9e4299/sepolia/2024-04-10-deploy-ERC20Factory/deployed/addresses.json -------------------------------------------------------------------------------- /sepolia/2024-04-10-deploy-ERC20Factory/script/RunERC20FactoryDeploy.s.sol: -------------------------------------------------------------------------------- 1 | 2 | // SPDX-License-Identifier: MIT 3 | pragma solidity 0.8.15; 4 | 5 | import "forge-std/Script.sol"; 6 | import {OptimismMintableERC20Factory} from "@eth-optimism-bedrock/src/universal/OptimismMintableERC20Factory.sol"; 7 | 8 | contract RunERC20FactoryDeploy is Script { 9 | function run() public { 10 | uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY"); 11 | vm.startBroadcast(deployerPrivateKey); 12 | new OptimismMintableERC20Factory{salt: '0xBA5ED'}(); 13 | } 14 | } -------------------------------------------------------------------------------- /sepolia/2024-04-30-deployTempERC20Factory/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=e6ef3a900c42c8722e72c2e2314027f85d12ced5 2 | BASE_CONTRACTS_COMMIT=c8e14388e478471411abb10f3a99ab3bd9206a95 3 | -------------------------------------------------------------------------------- /sepolia/2024-04-30-deployTempERC20Factory/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Deploy command 7 | ## 8 | .PHONY: deploy 9 | deploy: 10 | forge script RunERC20FactoryDeploy --rpc-url $(L2_RPC_URL) --broadcast --verify -------------------------------------------------------------------------------- /sepolia/2024-04-30-deployTempERC20Factory/deployed/addresses.json: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /sepolia/2024-04-30-deployTempERC20Factory/inputs/deploy-config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/base/contract-deployments/2ac0ef17ab67eebd9d3b9d2c1946b04dbc9e4299/sepolia/2024-04-30-deployTempERC20Factory/inputs/deploy-config.json -------------------------------------------------------------------------------- /sepolia/2024-04-30-deployTempERC20Factory/inputs/misc-config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/base/contract-deployments/2ac0ef17ab67eebd9d3b9d2c1946b04dbc9e4299/sepolia/2024-04-30-deployTempERC20Factory/inputs/misc-config.json -------------------------------------------------------------------------------- /sepolia/2024-04-30-deployTempERC20Factory/script/RunDeployERC20Factory.sol: -------------------------------------------------------------------------------- 1 | 2 | // SPDX-License-Identifier: MIT 3 | pragma solidity 0.8.15; 4 | 5 | import "forge-std/Script.sol"; 6 | import {ERC20Factory} from "../src/ERC20Factory.sol"; 7 | 8 | contract RunERC20FactoryDeploy is Script { 9 | function run() public { 10 | uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY"); 11 | vm.startBroadcast(deployerPrivateKey); 12 | new ERC20Factory{salt: '0xBA5ED'}(); 13 | } 14 | } -------------------------------------------------------------------------------- /sepolia/2024-04-30-deployTempERC20Factory/src/ERC20Factory.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity 0.8.15; 3 | 4 | import {OptimismMintableERC20Factory} from "@eth-optimism-bedrock/src/universal/OptimismMintableERC20Factory.sol"; 5 | 6 | contract ERC20Factory is OptimismMintableERC20Factory { 7 | constructor() { 8 | initialize({ _bridge: address(0x4200000000000000000000000000000000000010 ) }); 9 | } 10 | } -------------------------------------------------------------------------------- /sepolia/2024-05-30-transfer-proxyadmin-owners/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=46a9f00c2f5bf61b73be6cce0e50006b96db7ad2 2 | BASE_CONTRACTS_COMMIT=5d98dab6a4f3ba60713a17417a2df7a17d77c52f 3 | 4 | # L1 5 | PROXY_ADMIN=0x0389E59Aa0a41E4A413Ae70f0008e76CAA34b1F3 6 | OLD_PROXY_ADMIN_OWNER=0x608081689Fe46936fB2fBDF7552CbB1D80ad4822 7 | NEW_PROXY_ADMIN_OWNER=0x0fe884546476dDd290eC46318785046ef68a0BA9 8 | SYSTEM_CONFIG_PROXY=0xf272670eb55e895584501d564AfEB048bEd26194 9 | OLD_SYSTEM_CONFIG_OWNER=0x608081689Fe46936fB2fBDF7552CbB1D80ad4822 10 | NEW_SYSTEM_CONFIG_OWNER=0x0fe884546476dDd290eC46318785046ef68a0BA9 11 | 12 | # L2 13 | OLD_PROXY_ADMIN_OWNER_L2=0x8937037a0bB08658e5A178C182e60b12f14720ce 14 | NEW_PROXY_ADMIN_OWNER_L2=0x20f984546476DDd290eC46318785046eF68a1Cba 15 | -------------------------------------------------------------------------------- /sepolia/2024-08-26-update-batcher-hash/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=9047beb54c66a5c572784efec8984f259302ec92 2 | BASE_CONTRACTS_COMMIT=5d98dab6a4f3ba60713a17417a2df7a17d77c52f 3 | 4 | # Batcher 5 | L1_SYSTEM_CONFIG_ADDRESS=0xf272670eb55e895584501d564AfEB048bEd26194 6 | SYSTEM_CONFIG_OWNER=0x0fe884546476dDd290eC46318785046ef68a0BA9 7 | NEW_BATCH_SENDER=0xfc56e7272eebbba5bc6c544e159483c4a38f8ba3 8 | ROLLBACK_BATCH_SENDER=0x6cdebe940bc0f26850285caca097c11c33103e47 9 | -------------------------------------------------------------------------------- /sepolia/2024-09-11-deploy-new-PDG/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a81de910dc2fd9b2f67ee946466f2de70d62611a 2 | BASE_CONTRACTS_COMMIT=5d98dab6a4f3ba60713a17417a2df7a17d77c52f 3 | 4 | # Proposer 5 | PERMISSIONED_DISPUTE_GAME=0xCCEfe451048Eaa7df8D0d709bE3AA30d565694D2 6 | OLD_PROPOSER=0x20044a0d104E9e788A0C984A2B7eAe615afD046b 7 | NEW_PROPOSER=0x037637067c1dbe6d2430616d8f54cb774daa5999 8 | -------------------------------------------------------------------------------- /sepolia/2024-09-11-deploy-new-PDG/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ifndef LEDGER_ACCOUNT 6 | override LEDGER_ACCOUNT = 1 # Sepolia using hd-path of 1 7 | endif 8 | 9 | # Proposer 10 | .PHONY: execute-deploy-dispute-game 11 | execute-deploy-dispute-game: 12 | forge script --rpc-url $(L1_RPC_URL) --private-key $(PRIVATE_KEY) DeployNewPDG --broadcast 13 | 14 | 15 | -------------------------------------------------------------------------------- /sepolia/2024-09-11-update-proposer/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=a81de910dc2fd9b2f67ee946466f2de70d62611a 2 | BASE_CONTRACTS_COMMIT=5d98dab6a4f3ba60713a17417a2df7a17d77c52f 3 | 4 | # Proposer 5 | DISPUTE_GAME_FACTORY_PROXY=0xd6E6dBf4F7EA0ac412fD8b65ED297e64BB7a06E1 6 | DISPUTE_GAME_FACTORY_PROXY_OWNER=0x0fe884546476dDd290eC46318785046ef68a0BA9 7 | PERMISSIONED_DISPUTE_GAME=0xCCEfe451048Eaa7df8D0d709bE3AA30d565694D2 8 | OLD_PROPOSER=0x20044a0d104E9e788A0C984A2B7eAe615afD046b 9 | NEW_PROPOSER=0x037637067c1dbe6d2430616d8f54cb774daa5999 10 | NEW_PERMISSIONED_DISPUTE_GAME=0x593D20C4c69485B95D11507239BE2C725ea2A6fD 11 | -------------------------------------------------------------------------------- /sepolia/2024-10-09-increase-gas-limit/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=9047beb54c66a5c572784efec8984f259302ec92 2 | BASE_CONTRACTS_COMMIT=da4f4396f5219961b1b021936e39280e963102ba 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0xf272670eb55e895584501d564AfEB048bEd26194 5 | SYSTEM_CONFIG_OWNER=0x0fe884546476dDd290eC46318785046ef68a0BA9 6 | 7 | OLD_GAS_LIMIT=45000000 8 | NEW_GAS_LIMIT=60000000 9 | -------------------------------------------------------------------------------- /sepolia/2024-12-06-increase-max-gas-limit/.env: -------------------------------------------------------------------------------- 1 | BASE_CONTRACTS_COMMIT=ed36aac52a19bdad6dee09c59e7241fe3a194160 2 | 3 | OPTIMISM_REPO=https://github.com/ethereum-optimism/optimism.git 4 | OPTIMISM_VERSION=op-contracts/v1.5.0 5 | OPTIMISM_CONTRACT_PATCH=patch/max-gas-limit.patch 6 | 7 | SAFE_ADDRESS=0x0fe884546476dDd290eC46318785046ef68a0BA9 8 | PROXY_ADMIN_ADDRESS=0x0389E59Aa0a41E4A413Ae70f0008e76CAA34b1F3 9 | SYSTEM_CONFIG_ADDRESS=0xf272670eb55e895584501d564AfEB048bEd26194 10 | 11 | NEW_IMPLEMENTATION=0x31aad1062c25ce545c14bd9ee64dedef6c6b6fac 12 | -------------------------------------------------------------------------------- /sepolia/2024-12-06-increase-max-gas-limit/script/DeploySystemConfig.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity 0.8.15; 3 | 4 | import {Script, console} from "forge-std/Script.sol"; 5 | 6 | import {SystemConfig} from "@eth-optimism-bedrock/src/L1/SystemConfig.sol"; 7 | 8 | contract DeploySystemConfig is Script { 9 | function run() public { 10 | vm.startBroadcast(); 11 | SystemConfig systemConfigImpl = new SystemConfig(); 12 | console.log("SystemConfig implementation deployed at: ", address(systemConfigImpl)); 13 | vm.stopBroadcast(); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /sepolia/2025-01-23-upgrade-balance-tracker/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=dff5f16c510e7f44f1be0574372ccb08bfec045c 2 | BASE_CONTRACTS_COMMIT=07afeacaab6c69ad06394f7faee3271c82be6497 3 | 4 | BALANCE_TRACKER_DEPLOYER=0x4672425C27A942bB27e7b9709c1b21ab89a3cA13 5 | PROFIT_WALLET=0x5A822ea15764a6090b86B1EABfFc051cEC99AFE9 6 | OUTPUT_PROPOSER=0x037637067c1DbE6d2430616d8f54Cb774Daa5999 7 | BATCH_SENDER=0xfc56E7272EEBBBA5bC6c544e159483C4a38f8bA3 8 | OUTPUT_PROPOSER_TARGET_BALANCE=200000000000000000000 9 | BATCH_SENDER_TARGET_BALANCE=1000000000000000000000 10 | BALANCE_TRACKER_PROXY=0x8D1b5e5614300F5c7ADA01fFA4ccF8F1752D9A57 11 | -------------------------------------------------------------------------------- /sepolia/2025-01-23-upgrade-balance-tracker/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Foundry commands 7 | ## 8 | .PHONY: sim-upgrade 9 | sim-upgrade: 10 | forge script --rpc-url $(L1_RPC_URL) UpgradeBalanceTracker --sig "run()" -vvvv 11 | 12 | .PHONY: upgrade 13 | upgrade: 14 | forge script --rpc-url $(L1_RPC_URL) UpgradeBalanceTracker --sig "run()" --broadcast -vvvv 15 | -------------------------------------------------------------------------------- /sepolia/2025-02-14-upgrade-fault-proofs/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=2073f4059bd806af3e8b76b820aa3fa0b42016d0 2 | BASE_CONTRACTS_COMMIT=cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 3 | 4 | SYSTEM_CONFIG=0xf272670eb55e895584501d564AfEB048bEd26194 5 | ABSOLUTE_PRESTATE=0x035ac388b5cb22acf52a2063cfde108d09b1888655d21f02f595f9c3ea6cbdcd 6 | OWNER_SAFE=0x0fe884546476dDd290eC46318785046ef68a0BA9 7 | -------------------------------------------------------------------------------- /sepolia/2025-02-14-upgrade-fault-proofs/addresses.json: -------------------------------------------------------------------------------- 1 | { 2 | "faultDisputeGame": "0x605b4248500c0a144e39bbb04c05c539e388e222", 3 | "permissionedDisputeGame": "0x71ff927ee7b96f873c249093846aa292f374aef4" 4 | } 5 | -------------------------------------------------------------------------------- /sepolia/2025-03-12-upgrade-fault-proofs/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=2073f4059bd806af3e8b76b820aa3fa0b42016d0 2 | BASE_CONTRACTS_COMMIT=cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 3 | 4 | ABSOLUTE_PRESTATE=0x0354eee87a1775d96afee8977ef6d5d6bd3612b256170952a01bf1051610ee01 5 | 6 | SYSTEM_CONFIG=0xf272670eb55e895584501d564AfEB048bEd26194 7 | OWNER_SAFE=0x0fe884546476dDd290eC46318785046ef68a0BA9 8 | 9 | SAFE_A=0x646132a1667ca7ad00d36616afba1a28116c770a 10 | SAFE_B=0x6af0674791925f767060dd52f7fb20984e8639d8 11 | -------------------------------------------------------------------------------- /sepolia/2025-03-12-upgrade-fault-proofs/addresses.json: -------------------------------------------------------------------------------- 1 | { 2 | "faultDisputeGame": "0x76d7f861bbc8cbef20bad1a3f385eb95dd22306b", 3 | "permissionedDisputeGame": "0x58d465e2e31b811fdbbe5461627a0a88c3c1be2f" 4 | } 5 | -------------------------------------------------------------------------------- /sepolia/2025-03-14-mirror-mainnet-hierarchy/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=2073f4059bd806af3e8b76b820aa3fa0b42016d0 2 | BASE_CONTRACTS_COMMIT=cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 3 | 4 | L1_GNOSIS_SAFE_IMPLEMENTATION=0x90Ff2f4fAB3fB886cC60A1A5D5cAc2E774b5ce03 5 | L1_GNOSIS_COMPATIBILITY_FALLBACK_HANDLER=0x94eFE8be8E8E726cbc2ce0CdA98AE0d55DE2453B 6 | 7 | OWNER_SAFE=0x0fe884546476dDd290eC46318785046ef68a0BA9 8 | -------------------------------------------------------------------------------- /sepolia/2025-03-14-mirror-mainnet-hierarchy/addresses.json: -------------------------------------------------------------------------------- 1 | { 2 | "SafeA": "0x646132a1667ca7ad00d36616afba1a28116c770a", 3 | "SafeB": "0x6af0674791925f767060dd52f7fb20984e8639d8" 4 | } 5 | -------------------------------------------------------------------------------- /sepolia/2025-03-14-mirror-mainnet-hierarchy/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [{ access = "read-write", path = "./" }] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | via-ir = false 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts', 16 | 'solady/=lib/solady/src/', 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config 20 | -------------------------------------------------------------------------------- /sepolia/2025-04-01-nested-ownership-transfer/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=2073f4059bd806af3e8b76b820aa3fa0b42016d0 2 | BASE_CONTRACTS_COMMIT=cdedd0fe728eb1f9d63eaa4c6e59138cfb3803d3 3 | 4 | SAFE_PROXY_FACTORY=0x4e1DCf7AD4e460CfD30791CCC4F9c8a4f820ec67 5 | L1_GNOSIS_SAFE_IMPLEMENTATION=0x41675C099F32341bf84BFc5382aF534df5C7461a 6 | L1_GNOSIS_COMPATIBILITY_FALLBACK_HANDLER=0xfd0732Dc9E303f09fCEf3a7388Ad10A83459Ec99 7 | 8 | OWNER_SAFE=0x646132a1667ca7ad00d36616afba1a28116c770a 9 | -------------------------------------------------------------------------------- /sepolia/2025-04-01-nested-ownership-transfer/addresses.json: -------------------------------------------------------------------------------- 1 | { 2 | "SafeA": "0x5dfeb066334b67355a15dc9b67317fd2a2e1f77f", 3 | "SafeB": "0x6af0674791925f767060dd52f7fb20984e8639d8" 4 | } 5 | -------------------------------------------------------------------------------- /sepolia/2025-04-01-nested-ownership-transfer/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [{ access = "read-write", path = "./" }] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | via-ir = false 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts', 16 | 'solady/=lib/solady/src/', 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config -------------------------------------------------------------------------------- /sepolia/2025-04-09-testnet-multisig-signers/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=8d0dd96e494b2ba154587877351e87788336a4ec 2 | BASE_CONTRACTS_COMMIT=6ca464d118d2d33331ea44893f0930f753663f60 3 | 4 | SAFE_A=0x5dfeb066334b67355a15dc9b67317fd2a2e1f77f 5 | SAFE_B=0x6af0674791925f767060dd52f7fb20984e8639d8 6 | -------------------------------------------------------------------------------- /sepolia/2025-04-09-testnet-multisig-signers/OwnerDiff.json: -------------------------------------------------------------------------------- 1 | { 2 | "OwnersToAdd": [ 3 | "0xEdecf2c444559210a865a22acfc6A2a25590Ab1b", 4 | "0xf2Fb17eab635f036Da7864B8e39ef8e9A03441df", 5 | "0xE45AC81eA7f53dea5f0bd6Caa0733DD5c02d3b60", 6 | "0x931E24B032511d8dD029AedeB44837FAc251f3d8", 7 | "0x0CF2F86C3338993ce10F74d6f4B095712c7efe26" 8 | ], 9 | "OwnersToRemove": [ 10 | "0xa8c40CC18581Ff25c0D2605631514CCa6590c503", 11 | "0x2Fa5D8294575A8fA880A8aec008b860Fb6A70e26", 12 | "0x79dc63ba7b5D9817A0f0840Cd5373292E86735E4", 13 | "0x066a2b1419CCf2e1e672A03F14cC1d1146E717a0", 14 | "0xb04e501237d9a941b130172868201dEE9b965C38" 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /sepolia/2025-04-09-testnet-multisig-signers/foundry.toml: -------------------------------------------------------------------------------- 1 | [profile.default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | broadcast = 'records' 6 | fs_permissions = [{ access = "read-write", path = "./" }] 7 | optimizer = true 8 | optimizer_runs = 999999 9 | via-ir = false 10 | remappings = [ 11 | '@eth-optimism-bedrock/=lib/optimism/packages/contracts-bedrock/', 12 | '@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts', 13 | '@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts', 14 | '@rari-capital/solmate/=lib/solmate/', 15 | '@base-contracts/=lib/base-contracts', 16 | 'solady/=lib/solady/src/', 17 | ] 18 | 19 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config 20 | -------------------------------------------------------------------------------- /sepolia/2025-04-14-upgrade-fault-proofs/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=6f68dc35e103278e366d2b8ba178ca87bbaacb0c 2 | BASE_CONTRACTS_COMMIT=e6bfc862e38e96aafdb8610ec8209d9c0fa36aba 3 | 4 | ABSOLUTE_PRESTATE=0x03682932cec7ce0a3874b19675a6bbc923054a7b321efc7d3835187b172494b6 5 | 6 | SYSTEM_CONFIG=0xf272670eb55e895584501d564AfEB048bEd26194 7 | OWNER_SAFE=0x0fe884546476dDd290eC46318785046ef68a0BA9 8 | COORDINATOR_SAFE_ADDR=0x646132a1667ca7ad00d36616afba1a28116c770a 9 | SAFE_A=0x5dfEB066334B67355A15dc9b67317fD2a2e1f77f 10 | SAFE_B=0x6af0674791925f767060dd52f7fb20984e8639d8 11 | -------------------------------------------------------------------------------- /sepolia/2025-04-14-upgrade-fault-proofs/addresses.json: -------------------------------------------------------------------------------- 1 | { 2 | "faultDisputeGame": "0xcfce7dd673fbbbffd16ab936b7245a2f2db31c9a", 3 | "permissionedDisputeGame": "0xf0102ffe22649a5421d53acc96e309660960cf44" 4 | } 5 | -------------------------------------------------------------------------------- /sepolia/2025-05-08-update-fee-disperser-ownership/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=6f68dc35e103278e366d2b8ba178ca87bbaacb0c 2 | BASE_CONTRACTS_COMMIT=838514551165f03360f52b2b9ceca69844a98f48 3 | 4 | # Fee Disperser Contract on Base Sepolia 5 | TARGET=0x76355A67fCBCDE6F9a69409A8EAd5EaA9D8d875d 6 | 7 | # Current admin for our FeeDispurser contract. 8 | # Confirmed with the command cast call 0x76355A67fCBCDE6F9a69409A8EAd5EaA9D8d875d "admin()" --rpc-url https://sepolia.base.org 9 | OWNER_EOA=0x4672425c27a942bb27e7b9709c1b21ab89a3ca13 10 | 11 | # L1 Sepolia Base Eng Multisig 12 | L1_SAFE=0x5dfEB066334B67355A15dc9b67317fD2a2e1f77f -------------------------------------------------------------------------------- /sepolia/2025-05-08-update-fee-disperser-ownership/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | .PHONY: sim-transfer 6 | sim-transfer: 7 | forge script --rpc-url $(L2_RPC_URL) OwnershipTransfer --sig "run()" --sender "${OWNER_EOA}" -vvvv 8 | 9 | .PHONY: transfer 10 | transfer: 11 | forge script --rpc-url $(L2_RPC_URL) \ 12 | OwnershipTransfer --sig "run()" \ 13 | --account sepolia-fee-disperser-owner --broadcast -vvvv 14 | -------------------------------------------------------------------------------- /sepolia/2025-05-15-eip1559-denominator-reduction/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=ef7a933ca7f3d27ac40406f87fea25e0c3ba2016 2 | BASE_CONTRACTS_COMMIT=cab46f4c34f11e22640ec3073aa6f0b46cdaa1b7 3 | 4 | OWNER_SAFE=0x0fe884546476dDd290eC46318785046ef68a0BA9 5 | SYSTEM_CONFIG=0xf272670eb55e895584501d564AfEB048bEd26194 6 | 7 | -------------------------------------------------------------------------------- /sepolia/2025-06-04-upgrade-system-config/.env: -------------------------------------------------------------------------------- 1 | OP_REPO=https://github.com/ethereum-optimism/optimism.git 2 | OP_VERSION=op-contracts/v3.0.0-rc.2 3 | OP_CONTRACT_PATCH=patch/max-gas-limit.patch 4 | BASE_CONTRACTS_COMMIT=cab46f4c34f11e22640ec3073aa6f0b46cdaa1b7 5 | 6 | # Used by the scripts. 7 | OWNER_SAFE=0x0fe884546476dDd290eC46318785046ef68a0BA9 8 | PROXY_ADMIN=0x0389E59Aa0a41E4A413Ae70f0008e76CAA34b1F3 9 | SYSTEM_CONFIG=0xf272670eb55e895584501d564AfEB048bEd26194 10 | 11 | # Used by the make commands. 12 | OP_MULTISIG=0x6AF0674791925f767060Dd52f7fB20984E8639d8 13 | BASE_NESTED_MULTISIG=0x5dfEB066334B67355A15dc9b67317fD2a2e1f77f 14 | BASE_SC_MULTISIG=0x6AF0674791925f767060Dd52f7fB20984E8639d8 15 | BASE_MULTISIG=0x646132A1667ca7aD00d36616AFBA1A28116C770A -------------------------------------------------------------------------------- /sepolia/2025-06-04-upgrade-system-config/addresses.json: -------------------------------------------------------------------------------- 1 | { 2 | "systemConfig": "0xfdA350e8038728B689976D4A9E8A318400A150C5" 3 | } -------------------------------------------------------------------------------- /setup-templates/template-deploy/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT= 2 | BASE_CONTRACTS_COMMIT= 3 | -------------------------------------------------------------------------------- /setup-templates/template-deploy/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ## 6 | # Deploy command 7 | ## 8 | .PHONY: deploy 9 | deploy: 10 | ./inputs/construct-config.sh && \ 11 | forge script --rpc-url $(L1_RPC_URL) RunDeployBedrock && \ 12 | jq --sort-keys . unsorted.json > deployed/addresses.json && cp deployed/addresses.json ../addresses.json && \ 13 | rm unsorted.json && rm inputs/foundry-config.json 14 | -------------------------------------------------------------------------------- /setup-templates/template-deploy/deployed/addresses.json: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /setup-templates/template-deploy/inputs/deploy-config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/base/contract-deployments/2ac0ef17ab67eebd9d3b9d2c1946b04dbc9e4299/setup-templates/template-deploy/inputs/deploy-config.json -------------------------------------------------------------------------------- /setup-templates/template-deploy/inputs/misc-config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/base/contract-deployments/2ac0ef17ab67eebd9d3b9d2c1946b04dbc9e4299/setup-templates/template-deploy/inputs/misc-config.json -------------------------------------------------------------------------------- /setup-templates/template-deploy/script/RunDeployBedrock.s.sol: -------------------------------------------------------------------------------- 1 | 2 | // SPDX-License-Identifier: MIT 3 | pragma solidity 0.8.15; 4 | 5 | import "forge-std/Script.sol"; 6 | import "forge-std/StdJson.sol"; 7 | import "@base-contracts/script/deploy/l1/DeployBedrock.s.sol"; 8 | 9 | contract RunDeployBedrock is Script { 10 | function run() public { 11 | DeployBedrock deployBedrock = new DeployBedrock(); 12 | deployBedrock.run(); 13 | } 14 | } -------------------------------------------------------------------------------- /setup-templates/template-funding/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT= 2 | BASE_CONTRACTS_COMMIT= 3 | 4 | SAFE= 5 | -------------------------------------------------------------------------------- /setup-templates/template-funding/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ifndef LEDGER_ACCOUNT 6 | override LEDGER_ACCOUNT = 0 7 | endif 8 | 9 | .PHONY: sign 10 | sign: 11 | $(GOPATH)/bin/eip712sign --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" -- \ 12 | forge script --rpc-url $(L1_RPC_URL) FundScript \ 13 | --sig "sign(address[])" "[]" 14 | 15 | .PHONY: execute 16 | execute: 17 | forge script --rpc-url $(L1_RPC_URL) FundScript \ 18 | --sig "run(bytes)" $(SIGNATURES) --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" --broadcast -vvvv 19 | -------------------------------------------------------------------------------- /setup-templates/template-funding/funding.json: -------------------------------------------------------------------------------- 1 | { 2 | "recipients": [ 3 | "0x0000000000000000000000000000000000000042", 4 | "0x0000000000000000000000000000000000000043" 5 | ], 6 | "funds": [ 7 | 100000000000000000, 8 | 50000000000000000 9 | ] 10 | } -------------------------------------------------------------------------------- /setup-templates/template-gas-increase/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT=TODO # Recommend using the version of https://github.com/ethereum-optimism/optimism that the current SystemConfig contract is on 2 | BASE_CONTRACTS_COMMIT=TODO # Recommend using the latest version of https://github.com/base-org/contracts 3 | 4 | L1_SYSTEM_CONFIG_ADDRESS=0x73a79Fab69143498Ed3712e519A88a918e1f4072 5 | SYSTEM_CONFIG_OWNER=0x14536667Cd30e52C0b458BaACcB9faDA7046E056 6 | 7 | OLD_GAS_LIMIT=TODO 8 | NEW_GAS_LIMIT=TODO 9 | -------------------------------------------------------------------------------- /setup-templates/template-generic/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT= 2 | BASE_CONTRACTS_COMMIT= 3 | -------------------------------------------------------------------------------- /setup-templates/template-generic/script/BasicScript.s.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity 0.8.15; 3 | 4 | import "forge-std/Script.sol"; 5 | 6 | contract BasicScript is Script { 7 | function setUp() public {} 8 | 9 | function run() public { 10 | RunThis runThis = new RunThis(); 11 | runThis.run(); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /setup-templates/template-incident/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT= # commit number to use of Optimism's code (https://github.com/ethereum-optimism/optimism) 2 | BASE_CONTRACTS_COMMIT= # commit number to use of Base contract code (https://github.com/base-org/contracts) 3 | -------------------------------------------------------------------------------- /setup-templates/template-safe-management/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT= 2 | BASE_CONTRACTS_COMMIT= 3 | 4 | OWNER_SAFE= 5 | OLD_SIGNER= 6 | NEW_SIGNER= 7 | -------------------------------------------------------------------------------- /setup-templates/template-safe-management/Makefile: -------------------------------------------------------------------------------- 1 | include ../../Makefile 2 | include ../.env 3 | include .env 4 | 5 | ifndef LEDGER_ACCOUNT 6 | override LEDGER_ACCOUNT = 0 7 | endif 8 | 9 | .PHONY: sign 10 | sign: 11 | $(GOPATH)/bin/eip712sign --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" -- \ 12 | forge script --rpc-url $(L1_RPC_URL) SwapOwner \ 13 | --sig "sign()" 14 | 15 | .PHONY: execute 16 | execute: 17 | forge script --rpc-url $(L1_RPC_URL) SwapOwner \ 18 | --sig "run(bytes)" $(SIGNATURES) --ledger --hd-paths "m/44'/60'/$(LEDGER_ACCOUNT)'/0/0" --broadcast 19 | -------------------------------------------------------------------------------- /setup-templates/template-upgrade-fault-proofs/.env: -------------------------------------------------------------------------------- 1 | OP_COMMIT= 2 | BASE_CONTRACTS_COMMIT= 3 | 4 | ABSOLUTE_PRESTATE= 5 | 6 | # Sepolia Config 7 | # SYSTEM_CONFIG=0xf272670eb55e895584501d564AfEB048bEd26194 8 | # OWNER_SAFE=0x0fe884546476dDd290eC46318785046ef68a0BA9 9 | # COORDINATOR_SAFE_ADDR=0x646132a1667ca7ad00d36616afba1a28116c770a 10 | # SAFE_A=0x5dfEB066334B67355A15dc9b67317fD2a2e1f77f 11 | # SAFE_B=0x6af0674791925f767060dd52f7fb20984e8639d8 12 | # LEDGER_ACCOUNT=1 13 | 14 | # Mainnet Config 15 | SYSTEM_CONFIG=0x73a79Fab69143498Ed3712e519A88a918e1f4072 16 | OWNER_SAFE=0x7bB41C3008B3f03FE483B28b8DB90e19Cf07595c 17 | CB_SIGNER_SAFE_ADDR=0x9855054731540A48b28990B63DcF4f33d8AE46A1 18 | OP_SIGNER_SAFE_ADDR=0x9BA6e03D8B90dE867373Db8cF1A58d2F7F006b3A 19 | --------------------------------------------------------------------------------