From e1801e9e053019dccad486ab812c32ddc5d75933 Mon Sep 17 00:00:00 2001 From: Wazabie <48911235+Wazabie@users.noreply.github.com> Date: Mon, 27 Oct 2025 09:52:51 +0100 Subject: [PATCH 01/12] U17 Unichain Main --- src/tasks/eth/035-U17-main-unichain/.env | 1 + src/tasks/eth/035-U17-main-unichain/README.md | 27 +++++++++++ .../eth/035-U17-main-unichain/VALIDATION.md | 34 +++++++++++++ .../eth/035-U17-main-unichain/config.toml | 48 +++++++++++++++++++ 4 files changed, 110 insertions(+) create mode 100644 src/tasks/eth/035-U17-main-unichain/.env create mode 100644 src/tasks/eth/035-U17-main-unichain/README.md create mode 100644 src/tasks/eth/035-U17-main-unichain/VALIDATION.md create mode 100644 src/tasks/eth/035-U17-main-unichain/config.toml diff --git a/src/tasks/eth/035-U17-main-unichain/.env b/src/tasks/eth/035-U17-main-unichain/.env new file mode 100644 index 0000000000..7c96bef7da --- /dev/null +++ b/src/tasks/eth/035-U17-main-unichain/.env @@ -0,0 +1 @@ +TENDERLY_GAS=30000000 diff --git a/src/tasks/eth/035-U17-main-unichain/README.md b/src/tasks/eth/035-U17-main-unichain/README.md new file mode 100644 index 0000000000..f61501ace8 --- /dev/null +++ b/src/tasks/eth/035-U17-main-unichain/README.md @@ -0,0 +1,27 @@ +# 035-U17-main-unichain + +Status: [DRAFT, NOT READY TO SIGN] + +## Objective + +This task upgrades Unichain Mainnet to U17. + +## Simulation & Signing + +Simulation commands for each safe: + +```bash +cd src/tasks/eth/035-U17-main-unichain + +# Foundation - Simulate and Sign +SIMULATE_WITHOUT_LEDGER=1 just --dotenv-path $(pwd)/.env simulate foundation +just --dotenv-path $(pwd)/.env sign foundation + +# Security Council - Simulate and Sign +SIMULATE_WITHOUT_LEDGER=1 just --dotenv-path $(pwd)/.env simulate council +just --dotenv-path $(pwd)/.env sign council + +# Chain Governor - Simulate and Sign +SIMULATE_WITHOUT_LEDGER=1 just --dotenv-path $(pwd)/.env simulate chain-governor +just --dotenv-path $(pwd)/.env sign chain-governor +``` \ No newline at end of file diff --git a/src/tasks/eth/035-U17-main-unichain/VALIDATION.md b/src/tasks/eth/035-U17-main-unichain/VALIDATION.md new file mode 100644 index 0000000000..28692ba9dd --- /dev/null +++ b/src/tasks/eth/035-U17-main-unichain/VALIDATION.md @@ -0,0 +1,34 @@ +# Validation + +This document can be used to validate the inputs and result of the execution of the upgrade transaction which you are +signing. + +## Expected Domain and Message Hashes + +Validate the domain and message hashes. These values should match both the values on your ledger and +the values printed to the terminal when you run the task. + +> [!CAUTION] +> +> Before signing, ensure the below hashes match what is on your ledger. +> +> ### Nested Safe 1 (Foundation): `0x847B5c174615B1B7fDF770882256e2D3E95b9D92` +> +> - Domain Hash: `0xa4a9c312badf3fcaa05eafe5dc9bee8bd9316c78ee8b0bebe3115bb21b732672` +> - Message Hash: `0x01bdc123c9d8c24f36748875ebbfa43edc5be26a165455e9ea8cb0668c4f9feb` +> +> ### Nested Safe 2 (Security Council): `0xc2819DC788505Aac350142A7A707BF9D03E3Bd03` +> +> - Domain Hash: `0xdf53d510b56e539b90b369ef08fce3631020fbf921e3136ea5f8747c20bce967` +> - Message Hash: `0xfd0423f3d23dc510f3d311615022a7b123c810791f93a45dd9fa7186c0ae613a` +> +> ### Nested Safe 3 (Chain Governor): `0xb0c4C487C5cf6d67807Bc2008c66fa7e2cE744EC` +> +> - Domain Hash: `0x4f0b6efb6c01fa7e127a0ff87beefbeb53e056d30d3216c5ac70371b909ca66d` +> - Message Hash: `0xfb0ef475958a41cb4b4281c1c0677d6148c2b7ee6d46ab9f79a8f6680d0b28ec` + +## Task Calldata + +``` +0x82ad56cb00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001200000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044b0b807eb00000000000000000000000095703e0982140d16f8eba6d158fccede42f04a4c000000000000000000000000543ba4aadbab8f9025686bd03993043599c6fb04000000000000000000000000000000000000000000000000000000000000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000164ff2dd5a100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000003000000000000000000000000229047fed2591dbec1ef1118d64f7af3db9eb290000000000000000000000000543ba4aadbab8f9025686bd03993043599c6fb04038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec875500000000000000000000000062c0a111929fa32cec2f76adba54c16afb6e8364000000000000000000000000d56045e68956fce2576e680c95a4750cf8241f79038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec87550000000000000000000000007a8ed66b319911a0f3e7288bddab30d9c0c875c300000000000000000000000089889b569c3a505f3640ee1bd0ac1d557f436d2a038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec875500000000000000000000000000000000000000000000000000000000 +``` \ No newline at end of file diff --git a/src/tasks/eth/035-U17-main-unichain/config.toml b/src/tasks/eth/035-U17-main-unichain/config.toml new file mode 100644 index 0000000000..51e86f19b4 --- /dev/null +++ b/src/tasks/eth/035-U17-main-unichain/config.toml @@ -0,0 +1,48 @@ +l2chains = [ + {name = "Unichain", chainId = 130} +] + +templateName = "OPCMUpgradeV500" + +allowOverwrite = ["SuperchainConfig"] + + + +# Unichain (Permissionless) + +[[opcmUpgrades]] +chainId = 130 +absolutePrestate = "0x038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec8755" # prestates."1.7.0-rc.5" https://github.com/ethereum-optimism/devnets/issues/123#issuecomment-3444735369 +expectedValidationErrors = "PDDG-VM-30,PLDG-VM-30" + + + +[addresses] + +OPCM = "0x9e86a129e86a570fb13e89bd5e9aa98b642ae4c5" # Source: https://www.notion.so/oplabs/op-contracts-release-for-U17-Jovian-294f153ee16280b99539c5b6de67c72f?source=copy_link#295f153ee16280fe9c9af13970a5fac6 +StandardValidatorV500 = "0xE0b673cB5Da8DaC181d4D712eA563c4B14230286" # Source: cast call validator's from OPCM above +SuperchainConfig = "0x95703e0982140D16f8ebA6d158FccEde42f04a4C" # Source: https://github.com/ethereum-optimism/superchain-registry/blob/6748f8050bfab9930abdfc46288f9629af2f7b38/superchain/configs/mainnet/superchain.toml#L3C27-L3C69 +SuperchainConfigProxyAdmin = "0x543bA4AADBAb8f9025686Bd03993043599c6fB04" # Source: cast call ProxyAdmin address from SuperchainConfig above + + +[stateOverrides] + +# Unichain 3/3 (L1PAO) +0x6d5B183F538ABB8572F5cD17109c617b994D5833 = [ + {key = "0x0000000000000000000000000000000000000000000000000000000000000005", value = 7} +] + +# Unichain Operations Safe +0xb0c4C487C5cf6d67807Bc2008c66fa7e2cE744EC = [ + {key = "0x0000000000000000000000000000000000000000000000000000000000000005", value = 14} +] + +# Foundation Upgrade Safe +0x847B5c174615B1B7fDF770882256e2D3E95b9D92 = [ + {key = "0x0000000000000000000000000000000000000000000000000000000000000005", value = 46} +] + +# Security Council +0xc2819DC788505Aac350142A7A707BF9D03E3Bd03 = [ + {key = "0x0000000000000000000000000000000000000000000000000000000000000005", value = 49} +] \ No newline at end of file From dbee3a6a1d3000334f7c3cc55fb9e8b65de10336 Mon Sep 17 00:00:00 2001 From: Wazabie <48911235+Wazabie@users.noreply.github.com> Date: Mon, 27 Oct 2025 16:09:23 +0100 Subject: [PATCH 02/12] Add arena-z task to run stacked simulation correctly --- src/tasks/eth/034-U17-main-arena-z-swell/.env | 1 + .../eth/034-U17-main-arena-z-swell/README.md | 21 ++++++++ .../034-U17-main-arena-z-swell/VALIDATION.md | 29 +++++++++++ .../034-U17-main-arena-z-swell/config.toml | 48 +++++++++++++++++++ .../eth/035-U17-main-unichain/VALIDATION.md | 4 +- .../eth/035-U17-main-unichain/config.toml | 2 +- 6 files changed, 102 insertions(+), 3 deletions(-) create mode 100644 src/tasks/eth/034-U17-main-arena-z-swell/.env create mode 100644 src/tasks/eth/034-U17-main-arena-z-swell/README.md create mode 100644 src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md create mode 100644 src/tasks/eth/034-U17-main-arena-z-swell/config.toml diff --git a/src/tasks/eth/034-U17-main-arena-z-swell/.env b/src/tasks/eth/034-U17-main-arena-z-swell/.env new file mode 100644 index 0000000000..7c96bef7da --- /dev/null +++ b/src/tasks/eth/034-U17-main-arena-z-swell/.env @@ -0,0 +1 @@ +TENDERLY_GAS=30000000 diff --git a/src/tasks/eth/034-U17-main-arena-z-swell/README.md b/src/tasks/eth/034-U17-main-arena-z-swell/README.md new file mode 100644 index 0000000000..6c6572c2e6 --- /dev/null +++ b/src/tasks/eth/034-U17-main-arena-z-swell/README.md @@ -0,0 +1,21 @@ +# 034-U17-main-arena-z-swell + +Status: [DRAFT, NOT READY TO SIGN] + +## Objective + +This task upgrades Arena-Z and Swell Mainnet to U17. + +## Simulation & Signing + +Simulation commands for each safe: +```bash +cd src/tasks/eth/034-U17-main-arena-z-swell +SIMULATE_WITHOUT_LEDGER=1 just --dotenv-path $(pwd)/.env simulate +``` + +Signing commands for each safe: +```bash +cd src/tasks/eth/034-U17-main-arena-z-swell +just --dotenv-path $(pwd)/.env sign +``` diff --git a/src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md b/src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md new file mode 100644 index 0000000000..ae555725c8 --- /dev/null +++ b/src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md @@ -0,0 +1,29 @@ +# Validation + +This document can be used to validate the inputs and result of the execution of the upgrade transaction which you are +signing. + +## Expected Domain and Message Hashes + +Validate the domain and message hashes. These values should match both the values on your ledger and +the values printed to the terminal when you run the task. + +> [!CAUTION] +> +> Before signing, ensure the below hashes match what is on your ledger. +> +> ### Nested Safe 1 (Foundation): `0x847B5c174615B1B7fDF770882256e2D3E95b9D92` +> +> - Domain Hash: `0xa4a9c312badf3fcaa05eafe5dc9bee8bd9316c78ee8b0bebe3115bb21b732672` +> - Message Hash: `0x217eb40268563e05b26fb1e487a307d8db494190efec5afb29b17971c8b8a116` +> +> ### Nested Safe 2 (Security Council): `0xc2819DC788505Aac350142A7A707BF9D03E3Bd03` +> +> - Domain Hash: `0xdf53d510b56e539b90b369ef08fce3631020fbf921e3136ea5f8747c20bce967` +> - Message Hash: `0x3cc2f5da158352f9690a7cc6c54dcd1938352f443ffb72d77af95072b3e707ce` + +## Task Calldata + +``` +0x82ad56cb00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001200000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044b0b807eb00000000000000000000000095703e0982140d16f8eba6d158fccede42f04a4c000000000000000000000000543ba4aadbab8f9025686bd03993043599c6fb04000000000000000000000000000000000000000000000000000000000000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000104ff2dd5a10000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000200000000000000000000000034a564bbd863c4bf73eca711cf38a77c4ccbdd6a000000000000000000000000eefd1782d70824cbcacf9438afab7f353f1797f0038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec8755000000000000000000000000d3d4c6b703978a5d24fecf3a70a51127667ff1a40000000000000000000000004c4710a4ec3f514a492cc6460818c4a6a6269dd6038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec875500000000000000000000000000000000000000000000000000000000 +``` \ No newline at end of file diff --git a/src/tasks/eth/034-U17-main-arena-z-swell/config.toml b/src/tasks/eth/034-U17-main-arena-z-swell/config.toml new file mode 100644 index 0000000000..aaca2fef3e --- /dev/null +++ b/src/tasks/eth/034-U17-main-arena-z-swell/config.toml @@ -0,0 +1,48 @@ +l2chains = [ + {name = "arena-z", chainId = 7897}, + {name = "Swellchain", chainId = 1923} +] + +templateName = "OPCMUpgradeV500" + +allowOverwrite = ["SuperchainConfig"] + + + +# Arena-Z (Permissioned) + +[[opcmUpgrades]] +chainId = 7897 +absolutePrestate = "0x038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec8755" # prestates."1.7.0-rc.5" https://github.com/ethereum-optimism/devnets/issues/123#issuecomment-3444735369 +expectedValidationErrors = "PDDG-VM-30,PLDG-10" + +# Swell (Permissioned) + +[[opcmUpgrades]] +chainId = 1923 +absolutePrestate = "0x038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec8755" # prestates."1.7.0-rc.5" https://github.com/ethereum-optimism/devnets/issues/123#issuecomment-3444735369 +expectedValidationErrors = "PDDG-VM-30,PLDG-10" + + +[addresses] + +OPCM = "0x9e86a129e86a570fb13e89bd5e9aa98b642ae4c5" # Source: https://www.notion.so/oplabs/op-contracts-release-for-U17-Jovian-294f153ee16280b99539c5b6de67c72f?source=copy_link#295f153ee16280fe9c9af13970a5fac6 +StandardValidatorV500 = "0xE0b673cB5Da8DaC181d4D712eA563c4B14230286" # Source: cast call validator's from OPCM above +SuperchainConfig = "0x95703e0982140D16f8ebA6d158FccEde42f04a4C" # Source: https://github.com/ethereum-optimism/superchain-registry/blob/6748f8050bfab9930abdfc46288f9629af2f7b38/superchain/configs/mainnet/superchain.toml#L3C27-L3C69 +SuperchainConfigProxyAdmin = "0x543bA4AADBAb8f9025686Bd03993043599c6fB04" # Source: cast call ProxyAdmin address from SuperchainConfig above + + +[stateOverrides] + +# ProxyAdminOwner +0x5a0Aae59D09fccBdDb6C6CcEB07B7279367C3d2A = [ + {key = "0x0000000000000000000000000000000000000000000000000000000000000005", value = 30} +] +# Foundation Upgrades Safe +0x847B5c174615B1B7fDF770882256e2D3E95b9D92 = [ + {key = "0x0000000000000000000000000000000000000000000000000000000000000005", value = 45} +] +# Security Council +0xc2819DC788505Aac350142A7A707BF9D03E3Bd03 = [ + {key = "0x0000000000000000000000000000000000000000000000000000000000000005", value = 48} +] \ No newline at end of file diff --git a/src/tasks/eth/035-U17-main-unichain/VALIDATION.md b/src/tasks/eth/035-U17-main-unichain/VALIDATION.md index 28692ba9dd..8db1275038 100644 --- a/src/tasks/eth/035-U17-main-unichain/VALIDATION.md +++ b/src/tasks/eth/035-U17-main-unichain/VALIDATION.md @@ -25,10 +25,10 @@ the values printed to the terminal when you run the task. > ### Nested Safe 3 (Chain Governor): `0xb0c4C487C5cf6d67807Bc2008c66fa7e2cE744EC` > > - Domain Hash: `0x4f0b6efb6c01fa7e127a0ff87beefbeb53e056d30d3216c5ac70371b909ca66d` -> - Message Hash: `0xfb0ef475958a41cb4b4281c1c0677d6148c2b7ee6d46ab9f79a8f6680d0b28ec` +> - Message Hash: `0x48839aade65a5b8806437377e8cd9b91717a87173dc2fc391fe18802665ec694` ## Task Calldata ``` -0x82ad56cb00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001200000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044b0b807eb00000000000000000000000095703e0982140d16f8eba6d158fccede42f04a4c000000000000000000000000543ba4aadbab8f9025686bd03993043599c6fb04000000000000000000000000000000000000000000000000000000000000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000164ff2dd5a100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000003000000000000000000000000229047fed2591dbec1ef1118d64f7af3db9eb290000000000000000000000000543ba4aadbab8f9025686bd03993043599c6fb04038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec875500000000000000000000000062c0a111929fa32cec2f76adba54c16afb6e8364000000000000000000000000d56045e68956fce2576e680c95a4750cf8241f79038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec87550000000000000000000000007a8ed66b319911a0f3e7288bddab30d9c0c875c300000000000000000000000089889b569c3a505f3640ee1bd0ac1d557f436d2a038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec875500000000000000000000000000000000000000000000000000000000 +0x82ad56cb0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c50000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a4ff2dd5a100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000c407398d063f942febbcc6f80a156b47f3f1bda60000000000000000000000003b73fa8d82f511a3cae17b5a26e4e1a2d5e2f2a4038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec875500000000000000000000000000000000000000000000000000000000 ``` \ No newline at end of file diff --git a/src/tasks/eth/035-U17-main-unichain/config.toml b/src/tasks/eth/035-U17-main-unichain/config.toml index 51e86f19b4..4bbbddc3c0 100644 --- a/src/tasks/eth/035-U17-main-unichain/config.toml +++ b/src/tasks/eth/035-U17-main-unichain/config.toml @@ -13,7 +13,7 @@ allowOverwrite = ["SuperchainConfig"] [[opcmUpgrades]] chainId = 130 absolutePrestate = "0x038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec8755" # prestates."1.7.0-rc.5" https://github.com/ethereum-optimism/devnets/issues/123#issuecomment-3444735369 -expectedValidationErrors = "PDDG-VM-30,PLDG-VM-30" +expectedValidationErrors = "PROXYA-10,DF-30,PDDG-DWETH-30,PDDG-VM-30,PLDG-DWETH-30,PLDG-VM-30" From 4fd5bc419319f6d0209857cc213bf335123cd6cf Mon Sep 17 00:00:00 2001 From: Wazabie <48911235+Wazabie@users.noreply.github.com> Date: Mon, 27 Oct 2025 20:03:59 +0100 Subject: [PATCH 03/12] Pin block number --- src/tasks/eth/034-U17-main-arena-z-swell/.env | 1 + src/tasks/eth/035-U17-main-unichain/.env | 1 + 2 files changed, 2 insertions(+) diff --git a/src/tasks/eth/034-U17-main-arena-z-swell/.env b/src/tasks/eth/034-U17-main-arena-z-swell/.env index 7c96bef7da..281337b002 100644 --- a/src/tasks/eth/034-U17-main-arena-z-swell/.env +++ b/src/tasks/eth/034-U17-main-arena-z-swell/.env @@ -1 +1,2 @@ TENDERLY_GAS=30000000 +FORK_BLOCK_NUMBER=23669561 diff --git a/src/tasks/eth/035-U17-main-unichain/.env b/src/tasks/eth/035-U17-main-unichain/.env index 7c96bef7da..281337b002 100644 --- a/src/tasks/eth/035-U17-main-unichain/.env +++ b/src/tasks/eth/035-U17-main-unichain/.env @@ -1 +1,2 @@ TENDERLY_GAS=30000000 +FORK_BLOCK_NUMBER=23669561 From a8a5e768abfb7e672c9d78c4b0ab0a8665305371 Mon Sep 17 00:00:00 2001 From: Wazabie <48911235+Wazabie@users.noreply.github.com> Date: Mon, 27 Oct 2025 20:21:48 +0100 Subject: [PATCH 04/12] update fork block number --- .../eth/023-U16a-opcm-upgrade-v410-op-soneium-ink/.env | 1 - src/tasks/eth/034-U17-main-arena-z-swell/.env | 1 - test/tasks/TaskManager.t.sol | 6 +++--- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/tasks/eth/023-U16a-opcm-upgrade-v410-op-soneium-ink/.env b/src/tasks/eth/023-U16a-opcm-upgrade-v410-op-soneium-ink/.env index ec1f573a10..16c7320407 100644 --- a/src/tasks/eth/023-U16a-opcm-upgrade-v410-op-soneium-ink/.env +++ b/src/tasks/eth/023-U16a-opcm-upgrade-v410-op-soneium-ink/.env @@ -1,2 +1 @@ TENDERLY_GAS=32000000 -FORK_BLOCK_NUMBER=23491327 diff --git a/src/tasks/eth/034-U17-main-arena-z-swell/.env b/src/tasks/eth/034-U17-main-arena-z-swell/.env index 281337b002..7c96bef7da 100644 --- a/src/tasks/eth/034-U17-main-arena-z-swell/.env +++ b/src/tasks/eth/034-U17-main-arena-z-swell/.env @@ -1,2 +1 @@ TENDERLY_GAS=30000000 -FORK_BLOCK_NUMBER=23669561 diff --git a/test/tasks/TaskManager.t.sol b/test/tasks/TaskManager.t.sol index 53c5f5a7c0..6d309f16ac 100644 --- a/test/tasks/TaskManager.t.sol +++ b/test/tasks/TaskManager.t.sol @@ -45,9 +45,9 @@ contract TaskManagerUnitTest is StateOverrideManager, Test { assertEq(vm.envString("TENDERLY_GAS"), "16000000"); // Test loading multiple environment variables including FORK_BLOCK_NUMBER - tm.setEnv("./src/tasks/eth/022-U16a-opcm-upgrade-v410-base/"); - assertEq(vm.envString("TENDERLY_GAS"), "15000000"); - assertEq(vm.envString("FORK_BLOCK_NUMBER"), "23491327"); + tm.setEnv("./src/tasks/eth/035-U17-unichain/"); + assertEq(vm.envString("TENDERLY_GAS"), "30000000"); + assertEq(vm.envString("FORK_BLOCK_NUMBER"), "23669561"); } function createStateDiff(address who, bytes32 slot, bytes32 oldValue, bytes32 newValue) From 3f5a2519f40629fe2cc3d20ee1a2f1b111627f9c Mon Sep 17 00:00:00 2001 From: Wazabie <48911235+Wazabie@users.noreply.github.com> Date: Mon, 27 Oct 2025 20:26:17 +0100 Subject: [PATCH 05/12] Update .env --- src/tasks/eth/034-U17-main-arena-z-swell/.env | 1 + 1 file changed, 1 insertion(+) diff --git a/src/tasks/eth/034-U17-main-arena-z-swell/.env b/src/tasks/eth/034-U17-main-arena-z-swell/.env index 7c96bef7da..281337b002 100644 --- a/src/tasks/eth/034-U17-main-arena-z-swell/.env +++ b/src/tasks/eth/034-U17-main-arena-z-swell/.env @@ -1 +1,2 @@ TENDERLY_GAS=30000000 +FORK_BLOCK_NUMBER=23669561 From b62c859010ede69c9b0b6f4e2e241a611a658bc7 Mon Sep 17 00:00:00 2001 From: Wazabie <48911235+Wazabie@users.noreply.github.com> Date: Mon, 27 Oct 2025 20:30:15 +0100 Subject: [PATCH 06/12] Update TaskManager.t.sol --- test/tasks/TaskManager.t.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/tasks/TaskManager.t.sol b/test/tasks/TaskManager.t.sol index 6d309f16ac..2e56045d73 100644 --- a/test/tasks/TaskManager.t.sol +++ b/test/tasks/TaskManager.t.sol @@ -45,7 +45,7 @@ contract TaskManagerUnitTest is StateOverrideManager, Test { assertEq(vm.envString("TENDERLY_GAS"), "16000000"); // Test loading multiple environment variables including FORK_BLOCK_NUMBER - tm.setEnv("./src/tasks/eth/035-U17-unichain/"); + tm.setEnv("./src/tasks/eth/034-U17-arena-z-swell/"); assertEq(vm.envString("TENDERLY_GAS"), "30000000"); assertEq(vm.envString("FORK_BLOCK_NUMBER"), "23669561"); } From a431d77b863026c559c16d05e1c0b39a91256e4d Mon Sep 17 00:00:00 2001 From: Wazabie <48911235+Wazabie@users.noreply.github.com> Date: Mon, 27 Oct 2025 20:32:31 +0100 Subject: [PATCH 07/12] Update TaskManager.t.sol --- test/tasks/TaskManager.t.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/tasks/TaskManager.t.sol b/test/tasks/TaskManager.t.sol index 2e56045d73..deb40eebae 100644 --- a/test/tasks/TaskManager.t.sol +++ b/test/tasks/TaskManager.t.sol @@ -45,7 +45,7 @@ contract TaskManagerUnitTest is StateOverrideManager, Test { assertEq(vm.envString("TENDERLY_GAS"), "16000000"); // Test loading multiple environment variables including FORK_BLOCK_NUMBER - tm.setEnv("./src/tasks/eth/034-U17-arena-z-swell/"); + tm.setEnv("./src/tasks/eth/034-U17-main-arena-z-swell/"); assertEq(vm.envString("TENDERLY_GAS"), "30000000"); assertEq(vm.envString("FORK_BLOCK_NUMBER"), "23669561"); } From 09ffe36417dc818aff97992ff34c03792afe34fb Mon Sep 17 00:00:00 2001 From: Wazabie <48911235+Wazabie@users.noreply.github.com> Date: Mon, 27 Oct 2025 20:42:43 +0100 Subject: [PATCH 08/12] Update .env --- src/tasks/eth/022-U16a-opcm-upgrade-v410-base/.env | 1 - 1 file changed, 1 deletion(-) diff --git a/src/tasks/eth/022-U16a-opcm-upgrade-v410-base/.env b/src/tasks/eth/022-U16a-opcm-upgrade-v410-base/.env index 205f6ffe64..adf17d369c 100644 --- a/src/tasks/eth/022-U16a-opcm-upgrade-v410-base/.env +++ b/src/tasks/eth/022-U16a-opcm-upgrade-v410-base/.env @@ -1,2 +1 @@ TENDERLY_GAS=15000000 -FORK_BLOCK_NUMBER=23491327 From 95f07ab781d2add3ff9726fe8428cc037ef35ac7 Mon Sep 17 00:00:00 2001 From: Wazabie <48911235+Wazabie@users.noreply.github.com> Date: Wed, 29 Oct 2025 15:05:45 +0100 Subject: [PATCH 09/12] Update prestates --- src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md | 6 +++--- src/tasks/eth/034-U17-main-arena-z-swell/config.toml | 4 ++-- src/tasks/eth/035-U17-main-unichain/VALIDATION.md | 8 ++++---- src/tasks/eth/035-U17-main-unichain/config.toml | 2 +- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md b/src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md index ae555725c8..30082cca16 100644 --- a/src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md +++ b/src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md @@ -15,15 +15,15 @@ the values printed to the terminal when you run the task. > ### Nested Safe 1 (Foundation): `0x847B5c174615B1B7fDF770882256e2D3E95b9D92` > > - Domain Hash: `0xa4a9c312badf3fcaa05eafe5dc9bee8bd9316c78ee8b0bebe3115bb21b732672` -> - Message Hash: `0x217eb40268563e05b26fb1e487a307d8db494190efec5afb29b17971c8b8a116` +> - Message Hash: `0xdc2b54a1b171d84a1b082122b0dc011f80932f1c9bb48a3b527bc4f31db459ce` > > ### Nested Safe 2 (Security Council): `0xc2819DC788505Aac350142A7A707BF9D03E3Bd03` > > - Domain Hash: `0xdf53d510b56e539b90b369ef08fce3631020fbf921e3136ea5f8747c20bce967` -> - Message Hash: `0x3cc2f5da158352f9690a7cc6c54dcd1938352f443ffb72d77af95072b3e707ce` +> - Message Hash: `0x3a719c5d7568c3e8afe481d27c436dbb103ddec05cad1671f23f09e22a4cf84d` ## Task Calldata ``` -0x82ad56cb00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001200000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044b0b807eb00000000000000000000000095703e0982140d16f8eba6d158fccede42f04a4c000000000000000000000000543ba4aadbab8f9025686bd03993043599c6fb04000000000000000000000000000000000000000000000000000000000000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000104ff2dd5a10000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000200000000000000000000000034a564bbd863c4bf73eca711cf38a77c4ccbdd6a000000000000000000000000eefd1782d70824cbcacf9438afab7f353f1797f0038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec8755000000000000000000000000d3d4c6b703978a5d24fecf3a70a51127667ff1a40000000000000000000000004c4710a4ec3f514a492cc6460818c4a6a6269dd6038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec875500000000000000000000000000000000000000000000000000000000 +0x82ad56cb00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001200000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044b0b807eb00000000000000000000000095703e0982140d16f8eba6d158fccede42f04a4c000000000000000000000000543ba4aadbab8f9025686bd03993043599c6fb04000000000000000000000000000000000000000000000000000000000000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000104ff2dd5a10000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000200000000000000000000000034a564bbd863c4bf73eca711cf38a77c4ccbdd6a000000000000000000000000eefd1782d70824cbcacf9438afab7f353f1797f003799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f3000000000000000000000000d3d4c6b703978a5d24fecf3a70a51127667ff1a40000000000000000000000004c4710a4ec3f514a492cc6460818c4a6a6269dd603799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f300000000000000000000000000000000000000000000000000000000 ``` \ No newline at end of file diff --git a/src/tasks/eth/034-U17-main-arena-z-swell/config.toml b/src/tasks/eth/034-U17-main-arena-z-swell/config.toml index aaca2fef3e..d0a5d20d1a 100644 --- a/src/tasks/eth/034-U17-main-arena-z-swell/config.toml +++ b/src/tasks/eth/034-U17-main-arena-z-swell/config.toml @@ -13,14 +13,14 @@ allowOverwrite = ["SuperchainConfig"] [[opcmUpgrades]] chainId = 7897 -absolutePrestate = "0x038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec8755" # prestates."1.7.0-rc.5" https://github.com/ethereum-optimism/devnets/issues/123#issuecomment-3444735369 +absolutePrestate = "0x03799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f3" # prestates."1.8.0-rc.3" https://github.com/ethereum-optimism/superchain-registry/blob/c9881d543174ff00b8f3a9ad3f31bf4630b9743b/validation/standard/standard-prestates.toml#L6 expectedValidationErrors = "PDDG-VM-30,PLDG-10" # Swell (Permissioned) [[opcmUpgrades]] chainId = 1923 -absolutePrestate = "0x038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec8755" # prestates."1.7.0-rc.5" https://github.com/ethereum-optimism/devnets/issues/123#issuecomment-3444735369 +absolutePrestate = "0x03799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f3" # prestates."1.8.0-rc.3" https://github.com/ethereum-optimism/superchain-registry/blob/c9881d543174ff00b8f3a9ad3f31bf4630b9743b/validation/standard/standard-prestates.toml#L6 expectedValidationErrors = "PDDG-VM-30,PLDG-10" diff --git a/src/tasks/eth/035-U17-main-unichain/VALIDATION.md b/src/tasks/eth/035-U17-main-unichain/VALIDATION.md index 8db1275038..f768ae3275 100644 --- a/src/tasks/eth/035-U17-main-unichain/VALIDATION.md +++ b/src/tasks/eth/035-U17-main-unichain/VALIDATION.md @@ -15,20 +15,20 @@ the values printed to the terminal when you run the task. > ### Nested Safe 1 (Foundation): `0x847B5c174615B1B7fDF770882256e2D3E95b9D92` > > - Domain Hash: `0xa4a9c312badf3fcaa05eafe5dc9bee8bd9316c78ee8b0bebe3115bb21b732672` -> - Message Hash: `0x01bdc123c9d8c24f36748875ebbfa43edc5be26a165455e9ea8cb0668c4f9feb` +> - Message Hash: `0xb138c4c194123b7936fd9ce42df3d3b51272af9e633590b2ecbb59b39936526f` > > ### Nested Safe 2 (Security Council): `0xc2819DC788505Aac350142A7A707BF9D03E3Bd03` > > - Domain Hash: `0xdf53d510b56e539b90b369ef08fce3631020fbf921e3136ea5f8747c20bce967` -> - Message Hash: `0xfd0423f3d23dc510f3d311615022a7b123c810791f93a45dd9fa7186c0ae613a` +> - Message Hash: `0x67acb53b20744e1891c8e2078288f7525b5ecf2de14dffb897853152c2438ecd` > > ### Nested Safe 3 (Chain Governor): `0xb0c4C487C5cf6d67807Bc2008c66fa7e2cE744EC` > > - Domain Hash: `0x4f0b6efb6c01fa7e127a0ff87beefbeb53e056d30d3216c5ac70371b909ca66d` -> - Message Hash: `0x48839aade65a5b8806437377e8cd9b91717a87173dc2fc391fe18802665ec694` +> - Message Hash: `0xc37484ddc1967612a813a4522a22c3449addc6c75d51e533a7730ac1e8f4d02d` ## Task Calldata ``` -0x82ad56cb0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c50000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a4ff2dd5a100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000c407398d063f942febbcc6f80a156b47f3f1bda60000000000000000000000003b73fa8d82f511a3cae17b5a26e4e1a2d5e2f2a4038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec875500000000000000000000000000000000000000000000000000000000 +0x82ad56cb0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c50000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a4ff2dd5a100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000c407398d063f942febbcc6f80a156b47f3f1bda60000000000000000000000003b73fa8d82f511a3cae17b5a26e4e1a2d5e2f2a403799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f300000000000000000000000000000000000000000000000000000000 ``` \ No newline at end of file diff --git a/src/tasks/eth/035-U17-main-unichain/config.toml b/src/tasks/eth/035-U17-main-unichain/config.toml index 4bbbddc3c0..1320156797 100644 --- a/src/tasks/eth/035-U17-main-unichain/config.toml +++ b/src/tasks/eth/035-U17-main-unichain/config.toml @@ -12,7 +12,7 @@ allowOverwrite = ["SuperchainConfig"] [[opcmUpgrades]] chainId = 130 -absolutePrestate = "0x038dca684026d946d1d0ddb05d50685d1a0dab350b89d10b6705e83c41ec8755" # prestates."1.7.0-rc.5" https://github.com/ethereum-optimism/devnets/issues/123#issuecomment-3444735369 +absolutePrestate = "0x03799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f3" # prestates."1.8.0-rc.3" https://github.com/ethereum-optimism/superchain-registry/blob/c9881d543174ff00b8f3a9ad3f31bf4630b9743b/validation/standard/standard-prestates.toml#L6 expectedValidationErrors = "PROXYA-10,DF-30,PDDG-DWETH-30,PDDG-VM-30,PLDG-DWETH-30,PLDG-VM-30" From 880215edbc319b64e5bbeadef73548a098350620 Mon Sep 17 00:00:00 2001 From: Wazabie <48911235+Wazabie@users.noreply.github.com> Date: Wed, 5 Nov 2025 16:34:11 +0100 Subject: [PATCH 10/12] Update opcm and prestate --- src/tasks/eth/034-U17-main-arena-z-swell/.env | 1 - .../eth/034-U17-main-arena-z-swell/README.md | 2 +- .../034-U17-main-arena-z-swell/VALIDATION.md | 6 ++--- .../034-U17-main-arena-z-swell/config.toml | 22 ++++++------------- src/tasks/eth/035-U17-main-unichain/.env | 1 - src/tasks/eth/035-U17-main-unichain/README.md | 2 +- .../eth/035-U17-main-unichain/VALIDATION.md | 8 +++---- .../eth/035-U17-main-unichain/config.toml | 17 ++++---------- 8 files changed, 20 insertions(+), 39 deletions(-) diff --git a/src/tasks/eth/034-U17-main-arena-z-swell/.env b/src/tasks/eth/034-U17-main-arena-z-swell/.env index 281337b002..7c96bef7da 100644 --- a/src/tasks/eth/034-U17-main-arena-z-swell/.env +++ b/src/tasks/eth/034-U17-main-arena-z-swell/.env @@ -1,2 +1 @@ TENDERLY_GAS=30000000 -FORK_BLOCK_NUMBER=23669561 diff --git a/src/tasks/eth/034-U17-main-arena-z-swell/README.md b/src/tasks/eth/034-U17-main-arena-z-swell/README.md index 6c6572c2e6..1ab26a0138 100644 --- a/src/tasks/eth/034-U17-main-arena-z-swell/README.md +++ b/src/tasks/eth/034-U17-main-arena-z-swell/README.md @@ -1,6 +1,6 @@ # 034-U17-main-arena-z-swell -Status: [DRAFT, NOT READY TO SIGN] +Status: [READY TO SIGN] ## Objective diff --git a/src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md b/src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md index 30082cca16..115986a784 100644 --- a/src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md +++ b/src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md @@ -15,15 +15,15 @@ the values printed to the terminal when you run the task. > ### Nested Safe 1 (Foundation): `0x847B5c174615B1B7fDF770882256e2D3E95b9D92` > > - Domain Hash: `0xa4a9c312badf3fcaa05eafe5dc9bee8bd9316c78ee8b0bebe3115bb21b732672` -> - Message Hash: `0xdc2b54a1b171d84a1b082122b0dc011f80932f1c9bb48a3b527bc4f31db459ce` +> - Message Hash: `0x62dbbb77a71fde92ef9fb8866f994bbceae04a5e733163580a89369b3c359fb8` > > ### Nested Safe 2 (Security Council): `0xc2819DC788505Aac350142A7A707BF9D03E3Bd03` > > - Domain Hash: `0xdf53d510b56e539b90b369ef08fce3631020fbf921e3136ea5f8747c20bce967` -> - Message Hash: `0x3a719c5d7568c3e8afe481d27c436dbb103ddec05cad1671f23f09e22a4cf84d` +> - Message Hash: `0xdc4478ff4789060cbd397e3dce852ffa9e25161c0eb01fd56e219637b109280e` ## Task Calldata ``` -0x82ad56cb00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001200000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044b0b807eb00000000000000000000000095703e0982140d16f8eba6d158fccede42f04a4c000000000000000000000000543ba4aadbab8f9025686bd03993043599c6fb04000000000000000000000000000000000000000000000000000000000000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000104ff2dd5a10000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000200000000000000000000000034a564bbd863c4bf73eca711cf38a77c4ccbdd6a000000000000000000000000eefd1782d70824cbcacf9438afab7f353f1797f003799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f3000000000000000000000000d3d4c6b703978a5d24fecf3a70a51127667ff1a40000000000000000000000004c4710a4ec3f514a492cc6460818c4a6a6269dd603799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f300000000000000000000000000000000000000000000000000000000 +0x82ad56cb0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000120000000000000000000000000fa1ef97fb02b0da2ee2346b8e310907ab5519449000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044b0b807eb00000000000000000000000095703e0982140d16f8eba6d158fccede42f04a4c000000000000000000000000543ba4aadbab8f9025686bd03993043599c6fb0400000000000000000000000000000000000000000000000000000000000000000000000000000000fa1ef97fb02b0da2ee2346b8e310907ab5519449000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000104ff2dd5a10000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000200000000000000000000000034a564bbd863c4bf73eca711cf38a77c4ccbdd6a000000000000000000000000eefd1782d70824cbcacf9438afab7f353f1797f003caa1871bb9fe7f9b11217c245c16e4ded33367df5b3ccb2c6d0a847a217d1b000000000000000000000000d3d4c6b703978a5d24fecf3a70a51127667ff1a40000000000000000000000004c4710a4ec3f514a492cc6460818c4a6a6269dd603caa1871bb9fe7f9b11217c245c16e4ded33367df5b3ccb2c6d0a847a217d1b00000000000000000000000000000000000000000000000000000000 ``` \ No newline at end of file diff --git a/src/tasks/eth/034-U17-main-arena-z-swell/config.toml b/src/tasks/eth/034-U17-main-arena-z-swell/config.toml index d0a5d20d1a..1a5ead6aa3 100644 --- a/src/tasks/eth/034-U17-main-arena-z-swell/config.toml +++ b/src/tasks/eth/034-U17-main-arena-z-swell/config.toml @@ -5,35 +5,27 @@ l2chains = [ templateName = "OPCMUpgradeV500" -allowOverwrite = ["SuperchainConfig"] - - # Arena-Z (Permissioned) - [[opcmUpgrades]] chainId = 7897 -absolutePrestate = "0x03799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f3" # prestates."1.8.0-rc.3" https://github.com/ethereum-optimism/superchain-registry/blob/c9881d543174ff00b8f3a9ad3f31bf4630b9743b/validation/standard/standard-prestates.toml#L6 -expectedValidationErrors = "PDDG-VM-30,PLDG-10" +# Jovian prestate: +absolutePrestate = "0x03caa1871bb9fe7f9b11217c245c16e4ded33367df5b3ccb2c6d0a847a217d1b" # prestates."1.8.0-rc.4" https://github.com/ethereum-optimism/superchain-registry/blob/9e3f71cee0e4e2acb4864cb00f5fbee3555d8e9f/validation/standard/standard-prestates.toml#L6C7-L6C73 +expectedValidationErrors = "OVERRIDES-L1PAOMULTISIG,OVERRIDES-CHALLENGER,PLDG-10" # The template provides PAO and Challenger overrides to the validator from the SCR. These simply indicate overrides were used. PLDG-10 (missing Permissionless implementation) is expected as this is a permissioned chain. # Swell (Permissioned) - [[opcmUpgrades]] chainId = 1923 -absolutePrestate = "0x03799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f3" # prestates."1.8.0-rc.3" https://github.com/ethereum-optimism/superchain-registry/blob/c9881d543174ff00b8f3a9ad3f31bf4630b9743b/validation/standard/standard-prestates.toml#L6 -expectedValidationErrors = "PDDG-VM-30,PLDG-10" +# Jovian prestate: +absolutePrestate = "0x03caa1871bb9fe7f9b11217c245c16e4ded33367df5b3ccb2c6d0a847a217d1b" # prestates."1.8.0-rc.4" https://github.com/ethereum-optimism/superchain-registry/blob/9e3f71cee0e4e2acb4864cb00f5fbee3555d8e9f/validation/standard/standard-prestates.toml#L6C7-L6C73 +expectedValidationErrors = "OVERRIDES-L1PAOMULTISIG,OVERRIDES-CHALLENGER,PLDG-10" # The template provides PAO and Challenger overrides to the validator from the SCR. These simply indicate overrides were used. PLDG-10 (missing Permissionless implementation) is expected as this is a permissioned chain. [addresses] - -OPCM = "0x9e86a129e86a570fb13e89bd5e9aa98b642ae4c5" # Source: https://www.notion.so/oplabs/op-contracts-release-for-U17-Jovian-294f153ee16280b99539c5b6de67c72f?source=copy_link#295f153ee16280fe9c9af13970a5fac6 -StandardValidatorV500 = "0xE0b673cB5Da8DaC181d4D712eA563c4B14230286" # Source: cast call validator's from OPCM above -SuperchainConfig = "0x95703e0982140D16f8ebA6d158FccEde42f04a4C" # Source: https://github.com/ethereum-optimism/superchain-registry/blob/6748f8050bfab9930abdfc46288f9629af2f7b38/superchain/configs/mainnet/superchain.toml#L3C27-L3C69 -SuperchainConfigProxyAdmin = "0x543bA4AADBAb8f9025686Bd03993043599c6fB04" # Source: cast call ProxyAdmin address from SuperchainConfig above +OPCM = "0xfa1ef97fb02b0da2ee2346b8e310907ab5519449" # Source: https://github.com/ethereum-optimism/superchain-registry/blob/9e3f71cee0e4e2acb4864cb00f5fbee3555d8e9f/validation/standard/standard-versions-mainnet.toml#L23C56-L23C98 [stateOverrides] - # ProxyAdminOwner 0x5a0Aae59D09fccBdDb6C6CcEB07B7279367C3d2A = [ {key = "0x0000000000000000000000000000000000000000000000000000000000000005", value = 30} diff --git a/src/tasks/eth/035-U17-main-unichain/.env b/src/tasks/eth/035-U17-main-unichain/.env index 281337b002..7c96bef7da 100644 --- a/src/tasks/eth/035-U17-main-unichain/.env +++ b/src/tasks/eth/035-U17-main-unichain/.env @@ -1,2 +1 @@ TENDERLY_GAS=30000000 -FORK_BLOCK_NUMBER=23669561 diff --git a/src/tasks/eth/035-U17-main-unichain/README.md b/src/tasks/eth/035-U17-main-unichain/README.md index f61501ace8..0330ecf701 100644 --- a/src/tasks/eth/035-U17-main-unichain/README.md +++ b/src/tasks/eth/035-U17-main-unichain/README.md @@ -1,6 +1,6 @@ # 035-U17-main-unichain -Status: [DRAFT, NOT READY TO SIGN] +Status: [READY TO SIGN] ## Objective diff --git a/src/tasks/eth/035-U17-main-unichain/VALIDATION.md b/src/tasks/eth/035-U17-main-unichain/VALIDATION.md index f768ae3275..9a21d7c54e 100644 --- a/src/tasks/eth/035-U17-main-unichain/VALIDATION.md +++ b/src/tasks/eth/035-U17-main-unichain/VALIDATION.md @@ -15,20 +15,20 @@ the values printed to the terminal when you run the task. > ### Nested Safe 1 (Foundation): `0x847B5c174615B1B7fDF770882256e2D3E95b9D92` > > - Domain Hash: `0xa4a9c312badf3fcaa05eafe5dc9bee8bd9316c78ee8b0bebe3115bb21b732672` -> - Message Hash: `0xb138c4c194123b7936fd9ce42df3d3b51272af9e633590b2ecbb59b39936526f` +> - Message Hash: `0xcf4f3369bd2575ac3f8217f3e7c6aba4adff055877d31b082dd4b99057b5618e` > > ### Nested Safe 2 (Security Council): `0xc2819DC788505Aac350142A7A707BF9D03E3Bd03` > > - Domain Hash: `0xdf53d510b56e539b90b369ef08fce3631020fbf921e3136ea5f8747c20bce967` -> - Message Hash: `0x67acb53b20744e1891c8e2078288f7525b5ecf2de14dffb897853152c2438ecd` +> - Message Hash: `0xad2bac47957352becbbb8bd6030b7dd78f8b3cca7394d4f2a6af6e1a8b9ea22f` > > ### Nested Safe 3 (Chain Governor): `0xb0c4C487C5cf6d67807Bc2008c66fa7e2cE744EC` > > - Domain Hash: `0x4f0b6efb6c01fa7e127a0ff87beefbeb53e056d30d3216c5ac70371b909ca66d` -> - Message Hash: `0xc37484ddc1967612a813a4522a22c3449addc6c75d51e533a7730ac1e8f4d02d` +> - Message Hash: `0x4a00bc5afeeb5a0163fe4b99a6dc5aed18aee96862d928dc42f2d3d4d63b6f0d` ## Task Calldata ``` -0x82ad56cb0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c50000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a4ff2dd5a100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000c407398d063f942febbcc6f80a156b47f3f1bda60000000000000000000000003b73fa8d82f511a3cae17b5a26e4e1a2d5e2f2a403799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f300000000000000000000000000000000000000000000000000000000 +0x82ad56cb000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000fa1ef97fb02b0da2ee2346b8e310907ab55194490000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a4ff2dd5a100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000c407398d063f942febbcc6f80a156b47f3f1bda60000000000000000000000003b73fa8d82f511a3cae17b5a26e4e1a2d5e2f2a403caa1871bb9fe7f9b11217c245c16e4ded33367df5b3ccb2c6d0a847a217d1b00000000000000000000000000000000000000000000000000000000 ``` \ No newline at end of file diff --git a/src/tasks/eth/035-U17-main-unichain/config.toml b/src/tasks/eth/035-U17-main-unichain/config.toml index 1320156797..2a3ecbf54b 100644 --- a/src/tasks/eth/035-U17-main-unichain/config.toml +++ b/src/tasks/eth/035-U17-main-unichain/config.toml @@ -4,29 +4,20 @@ l2chains = [ templateName = "OPCMUpgradeV500" -allowOverwrite = ["SuperchainConfig"] - - # Unichain (Permissionless) - [[opcmUpgrades]] chainId = 130 -absolutePrestate = "0x03799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f3" # prestates."1.8.0-rc.3" https://github.com/ethereum-optimism/superchain-registry/blob/c9881d543174ff00b8f3a9ad3f31bf4630b9743b/validation/standard/standard-prestates.toml#L6 -expectedValidationErrors = "PROXYA-10,DF-30,PDDG-DWETH-30,PDDG-VM-30,PLDG-DWETH-30,PLDG-VM-30" - +# Jovian prestate: +absolutePrestate = "0x03caa1871bb9fe7f9b11217c245c16e4ded33367df5b3ccb2c6d0a847a217d1b" # prestates."1.8.0-rc.4" https://github.com/ethereum-optimism/superchain-registry/blob/9e3f71cee0e4e2acb4864cb00f5fbee3555d8e9f/validation/standard/standard-prestates.toml#L6C7-L6C73 +expectedValidationErrors = "OVERRIDES-L1PAOMULTISIG,OVERRIDES-CHALLENGER" # The template provides PAO and Challenger overrides to the validator from the SCR. These simply indicate overrides were used. PLDG-10 (missing Permissionless implementation) is expected as this is a permissioned chain. [addresses] - -OPCM = "0x9e86a129e86a570fb13e89bd5e9aa98b642ae4c5" # Source: https://www.notion.so/oplabs/op-contracts-release-for-U17-Jovian-294f153ee16280b99539c5b6de67c72f?source=copy_link#295f153ee16280fe9c9af13970a5fac6 -StandardValidatorV500 = "0xE0b673cB5Da8DaC181d4D712eA563c4B14230286" # Source: cast call validator's from OPCM above -SuperchainConfig = "0x95703e0982140D16f8ebA6d158FccEde42f04a4C" # Source: https://github.com/ethereum-optimism/superchain-registry/blob/6748f8050bfab9930abdfc46288f9629af2f7b38/superchain/configs/mainnet/superchain.toml#L3C27-L3C69 -SuperchainConfigProxyAdmin = "0x543bA4AADBAb8f9025686Bd03993043599c6fB04" # Source: cast call ProxyAdmin address from SuperchainConfig above +OPCM = "0xfa1ef97fb02b0da2ee2346b8e310907ab5519449" # Source: https://github.com/ethereum-optimism/superchain-registry/blob/9e3f71cee0e4e2acb4864cb00f5fbee3555d8e9f/validation/standard/standard-versions-mainnet.toml#L23C56-L23C98 [stateOverrides] - # Unichain 3/3 (L1PAO) 0x6d5B183F538ABB8572F5cD17109c617b994D5833 = [ {key = "0x0000000000000000000000000000000000000000000000000000000000000005", value = 7} From 83af3ffb7e6cc84de5804e44c48e313bc20a3a26 Mon Sep 17 00:00:00 2001 From: Matt Solomon Date: Thu, 6 Nov 2025 17:21:36 -0800 Subject: [PATCH 11/12] doc: fix readme --- src/tasks/eth/035-U17-main-unichain/README.md | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/src/tasks/eth/035-U17-main-unichain/README.md b/src/tasks/eth/035-U17-main-unichain/README.md index 0330ecf701..fd39cf64dc 100644 --- a/src/tasks/eth/035-U17-main-unichain/README.md +++ b/src/tasks/eth/035-U17-main-unichain/README.md @@ -9,19 +9,13 @@ This task upgrades Unichain Mainnet to U17. ## Simulation & Signing Simulation commands for each safe: - ```bash cd src/tasks/eth/035-U17-main-unichain +just simulate-stack eth 035-U17-main-unichain +``` -# Foundation - Simulate and Sign -SIMULATE_WITHOUT_LEDGER=1 just --dotenv-path $(pwd)/.env simulate foundation -just --dotenv-path $(pwd)/.env sign foundation - -# Security Council - Simulate and Sign -SIMULATE_WITHOUT_LEDGER=1 just --dotenv-path $(pwd)/.env simulate council -just --dotenv-path $(pwd)/.env sign council - -# Chain Governor - Simulate and Sign -SIMULATE_WITHOUT_LEDGER=1 just --dotenv-path $(pwd)/.env simulate chain-governor -just --dotenv-path $(pwd)/.env sign chain-governor +Signing commands for each safe: +```bash +cd src/tasks/eth/035-U17-main-unichain +just sign-stack eth 035-U17-main-unichain ``` \ No newline at end of file From 9542c642ca239829d6644db4620f708acebee00b Mon Sep 17 00:00:00 2001 From: Matt Solomon Date: Thu, 6 Nov 2025 17:23:10 -0800 Subject: [PATCH 12/12] fix: restore arena-z validations --- .../034-U17-main-arena-z-swell/VALIDATION.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md b/src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md index e69de29bb2..bfbeba333a 100644 --- a/src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md +++ b/src/tasks/eth/034-U17-main-arena-z-swell/VALIDATION.md @@ -0,0 +1,29 @@ +# Validation + +This document can be used to validate the inputs and result of the execution of the upgrade transaction which you are +signing. + +## Expected Domain and Message Hashes + +Validate the domain and message hashes. These values should match both the values on your ledger and +the values printed to the terminal when you run the task. + +> [!CAUTION] +> +> Before signing, ensure the below hashes match what is on your ledger. +> +> ### Nested Safe 1 (Foundation): `0x847B5c174615B1B7fDF770882256e2D3E95b9D92` +> +> - Domain Hash: `0xa4a9c312badf3fcaa05eafe5dc9bee8bd9316c78ee8b0bebe3115bb21b732672` +> - Message Hash: `0xed7acb2b3287ae2af7b3e5f79b03b75b67289674e011099bcfd6c6edded201ff` +> +> ### Nested Safe 2 (Security Council): `0xc2819DC788505Aac350142A7A707BF9D03E3Bd03` +> +> - Domain Hash: `0xdf53d510b56e539b90b369ef08fce3631020fbf921e3136ea5f8747c20bce967` +> - Message Hash: `0x28b7bfa8e9e5d3500eaac46205c401d652b764037faa9b5c37a98a7d4c211def` + +## Task Calldata + +``` +0x82ad56cb000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000fa1ef97fb02b0da2ee2346b8e310907ab5519449000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000104ff2dd5a10000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000200000000000000000000000034a564bbd863c4bf73eca711cf38a77c4ccbdd6a000000000000000000000000eefd1782d70824cbcacf9438afab7f353f1797f003caa1871bb9fe7f9b11217c245c16e4ded33367df5b3ccb2c6d0a847a217d1b000000000000000000000000d3d4c6b703978a5d24fecf3a70a51127667ff1a40000000000000000000000004c4710a4ec3f514a492cc6460818c4a6a6269dd603caa1871bb9fe7f9b11217c245c16e4ded33367df5b3ccb2c6d0a847a217d1b00000000000000000000000000000000000000000000000000000000 +```