From 762d1b71451a8b69b531683d20922d05bd88191d Mon Sep 17 00:00:00 2001 From: soyboy Date: Wed, 5 Nov 2025 12:13:20 -0800 Subject: [PATCH 1/6] updating notice pages for comms --- notices/fusaka-notice.mdx | 107 ++++++++++++++++++++++---------------- notices/upgrade-17.mdx | 25 +++++++-- 2 files changed, 84 insertions(+), 48 deletions(-) diff --git a/notices/fusaka-notice.mdx b/notices/fusaka-notice.mdx index adb246a4f..af2b64acb 100644 --- a/notices/fusaka-notice.mdx +++ b/notices/fusaka-notice.mdx @@ -18,7 +18,7 @@ is_imported_content: 'false' This page provides external-facing information about the Fusaka readiness upgrade for OP Stack chains. It summarizes scope, timelines, required actions, and resources for chain operators and partners. This upgrade is necessary for all OP Stack chains deriving from an L1 chain which is due to activate Fusaka (including Ethereum Mainnet and Sepolia). -This is NOT Fusaka adoption on L2. It's a readiness upgrade to make the Optimism protocol compatible with L1 that activates the Fusaka fork. L2 adoption will happen in a future upgrade. +This is NOT Fusaka adoption on L2. It's a readiness upgrade to make the OP Stack protocol compatible with L1 that activates the Fusaka fork. L2 adoption will happen in a future upgrade. All of the tasks below must be performed before Fusaka activates on L1. @@ -30,16 +30,20 @@ Fusaka contains various breaking changes. See [EIP-7607: Hardfork Meta - Fusaka] **Important dates:** -Ethereum Sepolia Fusaka hard fork: Tuesday, October 14th, 2025 07:36:00 UTC (affects chains posting data to Sepolia) - -Ethereum Mainnet Fusaka hard fork: Wednesday, December 3rd, 2025 21:49:11 UTC, 1764798551 +* Ethereum Sepolia Fusaka hard fork: Tuesday, October 14th, 2025 07:36:00 UTC (`1760427360`) +* Sepolia BPO 1: Tuesday, October 21st, 2025 03:26:24 UTC (`1761017184`) +* Sepolia BPO 2: Monday, October 27th, 2025 23:16:48 UTC (`1761607008`) +* Ethereum Mainnet Fusaka hard fork: Wednesday, December 3rd, 2025 21:49:11 UTC (`1764798551`) +* Ethereum Mainnet BPO 1: Tuesday, December 9th, 2025 14:21:11 UTC (`1765290071`) +* Ethereum Mainnet BPO 2: Wednesday, January 7th, 2026 01:01:11 UTC (`1767747671`) ## For node operators Update your node software as soon as possible after release: -* Update `op-node` to [v1.14.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-node%2Fv1.14.1). See the release notes for new config flags and env variables (not necessary for chains deriving from Ethereum Mainnet, Sepolia, Holesky or Hoodi.) -* Update `op-geth` to [v1.101603.1](https://github.com/ethereum-optimism/op-geth/releases/tag/v1.101603.1) + * [op-node version will be published soon]() + * [op-geth version will be published soon]() + * [op-reth version will be published next week]() ### Ensure your L1 beacon node endpoint can serve all blobs @@ -50,9 +54,9 @@ If your external L1 Beacon Chain RPC provider doesn't subscribe to all subnets, **For operators running their own L1 Ethereum Beacon Chain Node:** -**If you operate your own L1 nodes, ensure also both the L1 execution and beacon nodes are upgraded** and configured for the Fusaka fork (see [Fusaka specs here](https://blog.ethereum.org/2025/09/26/fusaka-testnet-announcement)). +**If you operate your own L1 nodes, ensure also both the L1 execution and beacon nodes are upgraded** and configured for the Fusaka fork. -Outdated L1 nodes can cause derivation failures, blob unavailability, or chain divergence after the fork. +Outdated L1 nodes will cause derivation failures, blob unavailability, or chain divergence after the fork. Configure your Beacon Node with the new flag (detailed below) before the relevant Fusaka hard fork date. @@ -67,7 +71,7 @@ L1 Beacon Chain Node flags: ## For chain operators -Be ready to restart your batcher with the new configuration immediately after the Fusaka fork on L1: e.g. for Sepolia this is at Unix timestamp 1760427360 (Tue Oct 14 2025 07:36:00 UTC). For Mainnet this is at Unix timestamp 1764798551 (Wed Dec 03 2025 21:49:11 UTC). +Be ready to restart your batcher with the new configuration immediately after the Fusaka fork on L1: e.g. for Sepolia this is at Unix timestamp 1760427360 (Tue Oct 14 2025 07:36:00 UTC). For Mainnet this is at Unix timestamp `1764798551` (Wed Dec 03 2025 21:49:11 UTC). @@ -79,65 +83,78 @@ Update the following: | Component | Version | Notes | | --------------- | ----------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `proxyd` | [v4.19.0](https://github.com/ethereum-optimism/infra/releases/tag/proxyd%2Fv4.19.0) or greater | You need to whitelist `eth_blobBaseFee` rpc if using proxyd for L1 load balancing. If you use `dugtrio` ensure this is also updated to the latest release. | -| `op-batcher` | [v1.16.0](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher%2Fv1.16.0) | `OP_BATCHER_TXMGR_ENABLE_CELL_PROOFS`: `true` or equivalent CLI flag needs to be set and the batcher restarted just after Fusaka activates on L1. | -| `op-node` | [v1.14.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-node%2Fv1.14.1) | L1 chain config must be supplied via a new flag (see the release notes). Not necessary for chains deriving from Ethereum Mainnet, Sepolia, Holesky or Hoodi. | +| `op-batcher` | []() | `OP_BATCHER_TXMGR_ENABLE_CELL_PROOFS`: `true` or equivalent CLI flag needs to be set and the batcher restarted just after Fusaka activates on L1. | +| `op-node` | []() | L1 chain config must be supplied via a new flag (see the release notes). Not necessary for chains deriving from Ethereum Mainnet, Sepolia, Holesky or Hoodi. | | `op-geth` | [v1.101603.1](https://github.com/ethereum-optimism/op-geth/releases/tag/v1.101603.1) | | | `op-challenger` | [v1.6.0](https://github.com/ethereum-optimism/optimism/releases/tag/op-challenger%2Fv1.6.0) | L1 chain config must be supplied via a new flag (see the release notes). Not necessary for chains deriving from Ethereum Mainnet, Sepolia, Holesky or Hoodi. | -| `kona-node` | [v1.1.6](https://github.com/op-rs/kona/releases/tag/kona-node%2Fv1.1.6) | | -| `kona-host` | [v1.1.6](https://github.com/op-rs/kona/releases/tag/kona-host%2Fv1.1.6) | | -| `kona-client` | [v1.1.6](https://github.com/op-rs/kona/releases/tag/kona-client%2Fv1.1.6) | | -| `op-reth` | [v1.8.2](https://github.com/paradigmxyz/reth/releases/tag/v1.8.2) | | +| `kona-node` | []() | | +| `kona-host` | []() | | +| `kona-client` | []() | | +| `op-reth` | []() | | -**Note:** `op-node` v1.14.1 uses the new `/eth/v1/beacon/blobs/` API for fetching blob data from L1 beacon nodes. If you run a proxy/load balancer in front of your beacon API, ensure it correctly forwards all query parameters. +**Note:** `op-node` uses the new `/eth/v1/beacon/blobs/` API for fetching blob data from L1 beacon nodes. If you run a proxy/load balancer in front of your beacon API, ensure it correctly forwards all query parameters. Misconfigured proxies may cause blob fetch failures or derivation stalls after the Fusaka fork. -### For Permissionless Fault Proof enabled chains -Chains running permissionless fault proofs will need to deploy new dispute game contracts with new absolute prestates. The new 64 bit version of cannon will be utilized moving forward. The Sepolia Superchain, will utilize [op-program/v1.7.0-rc.3](https://github.com/ethereum-optimism/optimism/tree/op-program/v1.7.0-rc.3). +### For permissionless fault proof enabled chains - - Optimism will complete the on-chain prestate update (including Dispute Game deployment and implementation set) on OP Sepolia, Base Sepolia, Ink Sepolia, and Uni Sepolia. However, off-chain components (op-challenger) must still be configured by operators to use the new prestate. + + The Superchain will be bundling the new absolute prestate for Fusaka support and the Mainnet [Jovian hard fork](/notices/upgrade-17). + This step will only need to be performed once. + -If you are a Permissionless FP–enabled chain not included in the list above, you must perform all steps below yourself. - +Chains running permissionless fault proofs will need to deploy new dispute game contracts with new absolute prestates. - + - - As of upgrade 14, the 64 bit multi-threaded version of cannon is utilized. - + The absolute prestate is generated with the [op-program/v1.8.0-rc.4](https://github.com/ethereum-optimism/optimism/tree/op-program/v1.8.0-rc.4). You can use this new absolute prestate `0x03caa1871bb9fe7f9b11217c245c16e4ded33367df5b3ccb2c6d0a847a217d1b` for the following chains: + + * Mainnet and Sepolia: `OP`, `Base`, `Ink`, and `Unichain` + + You can verify this absolute prestate by running the following command in the root of the monorepo on the `op-program/v1.8.0-rc.4` tag: + + ```shell + make reproducible-prestate + ``` + + This will output the calculated prestates, the tail end of the output should look like this: -The absolute prestate is generated with the [op-program/v1.7.0-rc.3](https://github.com/ethereum-optimism/optimism/tree/op-program/v1.7.0-rc.3). You can use this new absolute prestate (`0x0339db503776757491b9f3038bf6f1d37b7988a2f75e823fe2656c1352ef2f91`) for chains in the superchain registry. + ```shell + -------------------- Production Prestates -------------------- -You can verify this absolute prestate by running the following [command](https://github.com/ethereum-optimism/optimism/blob/op-program/v1.7.0-rc.3/Makefile#L130-L132) in the root of the monorepo on the `op-program/v1.7.0-rc.3` tag: + Cannon64 Absolute prestate hash: + 0x03caa1871bb9fe7f9b11217c245c16e4ded33367df5b3ccb2c6d0a847a217d1b -```shell -make reproducible-prestate -``` - + -------------------- Experimental Prestates -------------------- - + Cannon64Next Absolute prestate hash: + 0x03caa1871bb9fe7f9b11217c245c16e4ded33367df5b3ccb2c6d0a847a217d1b -During the previous step, you also generated the preimage of the absolute prestate, which is basically the op-program serialized into a binary file. You'll find that new file at `optimism/op-program/bin/prestate-mt64.bin.gz`. Rename that file to have the absolute prestate hash as the filename so it looks like `0x0339db503776757491b9f3038bf6f1d37b7988a2f75e823fe2656c1352ef2f91.bin.gz`. + CannonInterop Absolute prestate hash: + 0x03455f7f2179327853a989648c3ac9f2d58be45137bae603271660519b4d5245 -Upload that file to where you're storing your other absolute preimage files. This should be the location where you're pointing your `--cannon-prestates-url` at. The `op-challenger` will grab this file and use it when it needs to challenge games. - + CannonInteropNext Absolute prestate hash: + 0x03455f7f2179327853a989648c3ac9f2d58be45137bae603271660519b4d5245 + ``` - + * The "Cannon64" hash is the 64-bit prestate. -You will then take the absolute prestate and deploy new `FaultDisputeGame` and `PermissionedDisputeGame` contracts with that value. - + Verify that your target prestate was calculated as expected and matches the corresponding entry in + [standard-prestates.toml](https://github.com/ethereum-optimism/superchain-registry/blob/main/validation/standard/standard-prestates.toml). + - + + During the previous step, you also generated the preimage of the absolute prestate, which is the op-program serialized into a binary file. You'll find that new file at `optimism/op-program/bin/prestate-mt64.bin.gz`. Rename that file to have the absolute prestate hash as the filename so it looks like `PRESTATEHASH.bin.gz`. -You will then need to update the `DisputeGameFactory` to point to the new `FaultDisputeGame` and `PermissionedDisputeGame` contracts by calling `DisputeGameFactory.setImplementation`. - + Upload that file to where you're storing your other absolute preimage files. This should be the location where you're pointing your `--cannon-prestates-url` at. The `op-challenger` will grab this file and use it when it needs to challenge games. + - + + Once your `op-challenger` is ready with the new preimage, you can execute the upgrade transaction. This should be done by making a delegatecall to the `upgrade()` function of the OP Contract Manager (at the address listed in [the registry](https://github.com/ethereum-optimism/superchain-registry/blob/6621a0f13ce523fe1bb8deea739fe37abe20f90d/validation/standard/standard-versions-mainnet.toml#L22). -Once your `op-challenger` is ready with the new preimage, you can execute the "Set Dispute Game Implementation" transaction. Please simulate and validate that the expected output prior to executing the transaction. - + Please simulate and validate the expected output prior to executing the transaction. + diff --git a/notices/upgrade-17.mdx b/notices/upgrade-17.mdx index 53344690e..62710aeac 100644 --- a/notices/upgrade-17.mdx +++ b/notices/upgrade-17.mdx @@ -56,7 +56,6 @@ These following steps are necessary for every node operator: * [op-node version will be published soon]() * [op-geth version will be published soon]() - * [op-batcher version will be published soon]() * [op-reth version will be published next week]() @@ -89,7 +88,13 @@ Chain operators must prepare their nodes and additionally upgrade the following * Update [op-challenger/v1.7.0-rc.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-challenger%2Fv1.7.0-rc.1) * Update [op-conductor/v0.9.0](https://github.com/ethereum-optimism/optimism/releases/tag/op-conductor%2Fv0.9.0) +* Update [op-batcher version will be published soon]() + + The `op-batcher` must be restarted at least once after updating `op-node` to the latest release. + The batcher loads the rollup config once at startup and this will need to happen to update the activation timestamps for Jovian. + We've opened this [issue](https://github.com/ethereum-optimism/optimism/issues/18178) to improve this experience in the future. + For operators running the rust stack, you will need to update to the following versions: @@ -105,7 +110,7 @@ Chains running permissionless fault proofs will need to deploy new dispute game - The absolute prestate is generated with the [op-program/v1.8.0-rc.4](). You can use this new absolute prestate `todo: add prestate hash once published` for the following chains: + The absolute prestate is generated with the [op-program/v1.8.0-rc.4](https://github.com/ethereum-optimism/optimism/tree/op-program/v1.8.0-rc.4). You can use this new absolute prestate `0x03caa1871bb9fe7f9b11217c245c16e4ded33367df5b3ccb2c6d0a847a217d1b` for the following chains: * Mainnet and Sepolia: `OP`, `Base`, `Ink`, and `Unichain` @@ -118,7 +123,21 @@ Chains running permissionless fault proofs will need to deploy new dispute game This will output the calculated prestates, the tail end of the output should look like this: ```shell - will update soon with the new prestate hash + -------------------- Production Prestates -------------------- + + Cannon64 Absolute prestate hash: + 0x03caa1871bb9fe7f9b11217c245c16e4ded33367df5b3ccb2c6d0a847a217d1b + + -------------------- Experimental Prestates -------------------- + + Cannon64Next Absolute prestate hash: + 0x03caa1871bb9fe7f9b11217c245c16e4ded33367df5b3ccb2c6d0a847a217d1b + + CannonInterop Absolute prestate hash: + 0x03455f7f2179327853a989648c3ac9f2d58be45137bae603271660519b4d5245 + + CannonInteropNext Absolute prestate hash: + 0x03455f7f2179327853a989648c3ac9f2d58be45137bae603271660519b4d5245 ``` * The "Cannon64" hash is the 64-bit prestate. From 95f67e087fc15421a9168cba3ed7917cc63c90fa Mon Sep 17 00:00:00 2001 From: soyboy Date: Wed, 5 Nov 2025 14:14:06 -0800 Subject: [PATCH 2/6] adding callout --- notices/upgrade-17.mdx | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/notices/upgrade-17.mdx b/notices/upgrade-17.mdx index 62710aeac..02ae5979b 100644 --- a/notices/upgrade-17.mdx +++ b/notices/upgrade-17.mdx @@ -106,6 +106,12 @@ For operators running the rust stack, you will need to update to the following v ### For permissionless fault proof enabled chains Chains running permissionless fault proofs will need to deploy new dispute game contracts with new absolute prestates. +These prestates also contain support for the L1 Fusaka activation. + + +Optimism will complete the onchain prestate update (including Dispute Game deployment and implementation set) on OP Sepolia, Base Sepolia, Ink Sepolia, and Uni Sepolia. However, off chain components (op-challenger) must still be configured by operators to use the new prestate. +If you are a Permissionless FP enabled chain not included in the list above, you must perform all steps below yourself. + From 7964da3ad0ef27fc8b43e1ad12d620c4c5c989e9 Mon Sep 17 00:00:00 2001 From: soyboy Date: Wed, 5 Nov 2025 14:19:22 -0800 Subject: [PATCH 3/6] updating callouts --- notices/fusaka-notice.mdx | 9 +++++++-- notices/upgrade-17.mdx | 9 +++++++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/notices/fusaka-notice.mdx b/notices/fusaka-notice.mdx index af2b64acb..44c243423 100644 --- a/notices/fusaka-notice.mdx +++ b/notices/fusaka-notice.mdx @@ -101,10 +101,15 @@ Misconfigured proxies may cause blob fetch failures or derivation stalls after t ### For permissionless fault proof enabled chains - The Superchain will be bundling the new absolute prestate for Fusaka support and the Mainnet [Jovian hard fork](/notices/upgrade-17). - This step will only need to be performed once. + The Superchain will be bundling Fusaka support and the Mainnet [Jovian hard fork](/notices/upgrade-17) support into a single absolute prestate. + + Optimism will complete the onchain prestate update (including Dispute Game deployment and implementation set) on OP, Ink, and Unichain Mainnet and Sepolia. + However, off chain components (op-challenger) must still be configured by operators to use the new prestate. + If you are a Permissionless FP enabled chain not included in the list above, you must perform all steps below yourself. + + Chains running permissionless fault proofs will need to deploy new dispute game contracts with new absolute prestates. diff --git a/notices/upgrade-17.mdx b/notices/upgrade-17.mdx index 02ae5979b..a323010d1 100644 --- a/notices/upgrade-17.mdx +++ b/notices/upgrade-17.mdx @@ -108,9 +108,14 @@ For operators running the rust stack, you will need to update to the following v Chains running permissionless fault proofs will need to deploy new dispute game contracts with new absolute prestates. These prestates also contain support for the L1 Fusaka activation. + + The Superchain will be bundling [Fusaka support](/notices/fusaka-notice) and the Mainnet Jovian hard fork support into a single absolute prestate. + + -Optimism will complete the onchain prestate update (including Dispute Game deployment and implementation set) on OP Sepolia, Base Sepolia, Ink Sepolia, and Uni Sepolia. However, off chain components (op-challenger) must still be configured by operators to use the new prestate. -If you are a Permissionless FP enabled chain not included in the list above, you must perform all steps below yourself. + Optimism will complete the onchain prestate update (including Dispute Game deployment and implementation set) on OP, Ink, and Unichain Mainnet and Sepolia. + However, off chain components (op-challenger) must still be configured by operators to use the new prestate. + If you are a Permissionless FP enabled chain not included in the list above, you must perform all steps below yourself. From c70d1894d41b268013c278080d942995cd1df4b0 Mon Sep 17 00:00:00 2001 From: soyboy Date: Wed, 5 Nov 2025 14:46:46 -0800 Subject: [PATCH 4/6] making small updates --- notices/fusaka-notice.mdx | 8 ++++---- notices/upgrade-17.mdx | 41 +++++++++++++++++---------------------- 2 files changed, 22 insertions(+), 27 deletions(-) diff --git a/notices/fusaka-notice.mdx b/notices/fusaka-notice.mdx index 44c243423..bcf7ea7f8 100644 --- a/notices/fusaka-notice.mdx +++ b/notices/fusaka-notice.mdx @@ -78,15 +78,15 @@ Be ready to restart your batcher with the new configuration immediately after th Although new chains deriving from Holesky are supported, existing chains deriving from Holesky are not supported since Holesky already activated Fusaka on L1. -Update the following: +Update the following components: | Component | Version | Notes | | --------------- | ----------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `proxyd` | [v4.19.0](https://github.com/ethereum-optimism/infra/releases/tag/proxyd%2Fv4.19.0) or greater | You need to whitelist `eth_blobBaseFee` rpc if using proxyd for L1 load balancing. If you use `dugtrio` ensure this is also updated to the latest release. | | `op-batcher` | []() | `OP_BATCHER_TXMGR_ENABLE_CELL_PROOFS`: `true` or equivalent CLI flag needs to be set and the batcher restarted just after Fusaka activates on L1. | | `op-node` | []() | L1 chain config must be supplied via a new flag (see the release notes). Not necessary for chains deriving from Ethereum Mainnet, Sepolia, Holesky or Hoodi. | -| `op-geth` | [v1.101603.1](https://github.com/ethereum-optimism/op-geth/releases/tag/v1.101603.1) | | -| `op-challenger` | [v1.6.0](https://github.com/ethereum-optimism/optimism/releases/tag/op-challenger%2Fv1.6.0) | L1 chain config must be supplied via a new flag (see the release notes). Not necessary for chains deriving from Ethereum Mainnet, Sepolia, Holesky or Hoodi. | +| `op-geth` | []() | | +| `op-challenger` | [v1.7.0-rc.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-challenger%2Fv1.7.0-rc.1) | If deriving from a chain other than Ethereum Mainnet, Sepolia or Hoodi then L1 chain config must be supplied via a new flag. | | `kona-node` | []() | | | `kona-host` | []() | | | `kona-client` | []() | | @@ -158,7 +158,7 @@ Chains running permissionless fault proofs will need to deploy new dispute game - Once your `op-challenger` is ready with the new preimage, you can execute the upgrade transaction. This should be done by making a delegatecall to the `upgrade()` function of the OP Contract Manager (at the address listed in [the registry](https://github.com/ethereum-optimism/superchain-registry/blob/6621a0f13ce523fe1bb8deea739fe37abe20f90d/validation/standard/standard-versions-mainnet.toml#L22). + Once your `op-challenger` is ready with the new preimage, you can execute the upgrade transaction. This should be done by making a delegatecall to the `upgrade()` function of the OP Contract Manager at the address listed in [the registry](https://github.com/ethereum-optimism/superchain-registry/blob/main/validation/standard/standard-versions-mainnet.toml). Please simulate and validate the expected output prior to executing the transaction. diff --git a/notices/upgrade-17.mdx b/notices/upgrade-17.mdx index 91f272b43..5f5052211 100644 --- a/notices/upgrade-17.mdx +++ b/notices/upgrade-17.mdx @@ -84,24 +84,19 @@ These following steps are necessary for every node operator: ## For chain operators -Chain operators must prepare their nodes and additionally upgrade the following versions: - -* Update [op-challenger/v1.7.0-rc.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-challenger%2Fv1.7.0-rc.1) -* Update [op-conductor/v0.9.0](https://github.com/ethereum-optimism/optimism/releases/tag/op-conductor%2Fv0.9.0) -* Update [op-batcher version will be published soon]() - - - The `op-batcher` must be restarted at least once after updating `op-node` to the latest release. - The batcher loads the rollup config once at startup and this will need to happen to update the activation timestamps for Jovian. - We've opened this [issue](https://github.com/ethereum-optimism/optimism/issues/18178) to improve this experience in the future. - - -For operators running the rust stack, you will need to update to the following versions: - - * [kona-node version will be published soon]() - * [kona-client version will be published soon]() - * [kona-host version will be published soon]() - +Update the following components: + +| Component | Version | Notes | +| --------------- | ----------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `proxyd` | [v4.19.0](https://github.com/ethereum-optimism/infra/releases/tag/proxyd%2Fv4.19.0) or greater | You need to whitelist `eth_blobBaseFee` rpc if using proxyd for L1 load balancing. If you use `dugtrio` ensure this is also updated to the latest release. | +| `op-batcher` | []() | The `op-batcher` must be restarted at least once after updating `op-node` to the latest release. The batcher loads the rollup config once at startup and this will need to happen to update the activation timestamps for Jovian. We've opened this [issue](https://github.com/ethereum-optimism/optimism/issues/18178) to improve this experience in the future. | +| `op-node` | []() | L1 chain config must be supplied via a new flag (see the release notes). Not necessary for chains deriving from Ethereum Mainnet, Sepolia, Holesky or Hoodi. | +| `op-geth` | []() | | +| `op-challenger` | [v1.7.0-rc.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-challenger%2Fv1.7.0-rc.1) | If deriving from a chain other than Ethereum Mainnet, Sepolia or Hoodi then L1 chain config must be supplied via a new flag. | +| `kona-node` | []() | | +| `kona-host` | []() | | +| `kona-client` | []() | | +| `op-reth` | []() | | ### For permissionless fault proof enabled chains @@ -162,10 +157,10 @@ These prestates also contain support for the L1 Fusaka activation. Upload that file to where you're storing your other absolute preimage files. This should be the location where you're pointing your `--cannon-prestates-url` at. The `op-challenger` will grab this file and use it when it needs to challenge games. + - - Once your `op-challenger` is ready with the new preimage, you can execute the upgrade transaction. This should be done by making a delegatecall to the `upgrade()` function of the OP Contract Manager (at the address listed in [the registry](https://github.com/ethereum-optimism/superchain-registry/blob/6621a0f13ce523fe1bb8deea739fe37abe20f90d/validation/standard/standard-versions-mainnet.toml#L22). +## Execute the L1 Contract Upgrade - Please simulate and validate the expected output prior to executing the transaction. - - +Once your `op-challenger` is ready with the new preimage, you can execute the upgrade transaction. This should be done by making a delegatecall to the `upgrade()` function of the OP Contract Manager at the address listed in [the registry](https://github.com/ethereum-optimism/superchain-registry/blob/main/validation/standard/standard-versions-mainnet.toml). + +Please simulate and validate the expected output prior to executing the transaction. From aaa71e71083c57c28727e15b244069e21120b223 Mon Sep 17 00:00:00 2001 From: soyboy Date: Thu, 6 Nov 2025 12:45:32 -0800 Subject: [PATCH 5/6] adding release links and removing out of date callouts --- notices/fusaka-notice.mdx | 24 ++++++++---------------- notices/upgrade-17.mdx | 14 +++++++------- 2 files changed, 15 insertions(+), 23 deletions(-) diff --git a/notices/fusaka-notice.mdx b/notices/fusaka-notice.mdx index bcf7ea7f8..1e7335dd1 100644 --- a/notices/fusaka-notice.mdx +++ b/notices/fusaka-notice.mdx @@ -41,9 +41,9 @@ Fusaka contains various breaking changes. See [EIP-7607: Hardfork Meta - Fusaka] Update your node software as soon as possible after release: - * [op-node version will be published soon]() - * [op-geth version will be published soon]() - * [op-reth version will be published next week]() + * [op-node/v1.16.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-node%2Fv1.16.1) + * [op-geth/v1.101603.4](https://github.com/ethereum-optimism/op-geth/releases/tag/v1.101603.4) + * [op-reth/v1.9.0](https://github.com/paradigmxyz/reth/releases/tag/v1.9.0) ### Ensure your L1 beacon node endpoint can serve all blobs @@ -70,27 +70,19 @@ L1 Beacon Chain Node flags: ## For chain operators - -Be ready to restart your batcher with the new configuration immediately after the Fusaka fork on L1: e.g. for Sepolia this is at Unix timestamp 1760427360 (Tue Oct 14 2025 07:36:00 UTC). For Mainnet this is at Unix timestamp `1764798551` (Wed Dec 03 2025 21:49:11 UTC). - - - - Although new chains deriving from Holesky are supported, existing chains deriving from Holesky are not supported since Holesky already activated Fusaka on L1. - - Update the following components: | Component | Version | Notes | | --------------- | ----------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `proxyd` | [v4.19.0](https://github.com/ethereum-optimism/infra/releases/tag/proxyd%2Fv4.19.0) or greater | You need to whitelist `eth_blobBaseFee` rpc if using proxyd for L1 load balancing. If you use `dugtrio` ensure this is also updated to the latest release. | -| `op-batcher` | []() | `OP_BATCHER_TXMGR_ENABLE_CELL_PROOFS`: `true` or equivalent CLI flag needs to be set and the batcher restarted just after Fusaka activates on L1. | -| `op-node` | []() | L1 chain config must be supplied via a new flag (see the release notes). Not necessary for chains deriving from Ethereum Mainnet, Sepolia, Holesky or Hoodi. | -| `op-geth` | []() | | -| `op-challenger` | [v1.7.0-rc.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-challenger%2Fv1.7.0-rc.1) | If deriving from a chain other than Ethereum Mainnet, Sepolia or Hoodi then L1 chain config must be supplied via a new flag. | +| `op-batcher` | [v1.16.2](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher%2Fv1.16.2) | The `op-batcher` must be restarted at least once after updating `op-node` to the latest release. The batcher loads the rollup config once at startup and this will need to happen to update the activation timestamps for Jovian. We've opened this [issue](https://github.com/ethereum-optimism/optimism/issues/18178) to improve this experience in the future. | +| `op-node` | [v1.16.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-node%2Fv1.16.1) | L1 chain config must be supplied via a new flag (see the release notes). Not necessary for chains deriving from Ethereum Mainnet, Sepolia, Holesky or Hoodi. | +| `op-geth` | [v1.101603.4](https://github.com/ethereum-optimism/op-geth/releases/tag/v1.101603.4) | | +| `op-challenger` | [v1.7.0-rc.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-challenger%2Fv1.7.0-rc.1) | If deriving from a chain other than Ethereum Mainnet, Sepolia or Hoodi then L1 chain config must be supplied via a new flag. | | `kona-node` | []() | | | `kona-host` | []() | | | `kona-client` | []() | | -| `op-reth` | []() | | +| `op-reth` | [v1.9.0](https://github.com/paradigmxyz/reth/releases/tag/v1.9.0) | | **Note:** `op-node` uses the new `/eth/v1/beacon/blobs/` API for fetching blob data from L1 beacon nodes. If you run a proxy/load balancer in front of your beacon API, ensure it correctly forwards all query parameters. diff --git a/notices/upgrade-17.mdx b/notices/upgrade-17.mdx index 5f5052211..1f5f99372 100644 --- a/notices/upgrade-17.mdx +++ b/notices/upgrade-17.mdx @@ -54,9 +54,9 @@ These following steps are necessary for every node operator: The releases contain both the Jovian Mainnet and Sepolia Superchain activation timestamps. - * [op-node version will be published soon]() - * [op-geth version will be published soon]() - * [op-reth version will be published next week]() + * [op-node/v1.16.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-node%2Fv1.16.1) + * [op-geth/v1.101603.4](https://github.com/ethereum-optimism/op-geth/releases/tag/v1.101603.4) + * [op-reth/v1.9.0](https://github.com/paradigmxyz/reth/releases/tag/v1.9.0) @@ -89,14 +89,14 @@ Update the following components: | Component | Version | Notes | | --------------- | ----------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `proxyd` | [v4.19.0](https://github.com/ethereum-optimism/infra/releases/tag/proxyd%2Fv4.19.0) or greater | You need to whitelist `eth_blobBaseFee` rpc if using proxyd for L1 load balancing. If you use `dugtrio` ensure this is also updated to the latest release. | -| `op-batcher` | []() | The `op-batcher` must be restarted at least once after updating `op-node` to the latest release. The batcher loads the rollup config once at startup and this will need to happen to update the activation timestamps for Jovian. We've opened this [issue](https://github.com/ethereum-optimism/optimism/issues/18178) to improve this experience in the future. | -| `op-node` | []() | L1 chain config must be supplied via a new flag (see the release notes). Not necessary for chains deriving from Ethereum Mainnet, Sepolia, Holesky or Hoodi. | -| `op-geth` | []() | | +| `op-batcher` | [v1.16.2](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher%2Fv1.16.2) | The `op-batcher` must be restarted at least once after updating `op-node` to the latest release. The batcher loads the rollup config once at startup and this will need to happen to update the activation timestamps for Jovian. We've opened this [issue](https://github.com/ethereum-optimism/optimism/issues/18178) to improve this experience in the future. | +| `op-node` | [v1.16.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-node%2Fv1.16.1) | L1 chain config must be supplied via a new flag (see the release notes). Not necessary for chains deriving from Ethereum Mainnet, Sepolia, Holesky or Hoodi. | +| `op-geth` | [v1.101603.4](https://github.com/ethereum-optimism/op-geth/releases/tag/v1.101603.4) | | | `op-challenger` | [v1.7.0-rc.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-challenger%2Fv1.7.0-rc.1) | If deriving from a chain other than Ethereum Mainnet, Sepolia or Hoodi then L1 chain config must be supplied via a new flag. | | `kona-node` | []() | | | `kona-host` | []() | | | `kona-client` | []() | | -| `op-reth` | []() | | +| `op-reth` | [v1.9.0](https://github.com/paradigmxyz/reth/releases/tag/v1.9.0) | | ### For permissionless fault proof enabled chains From 3cfa448ae6bdf776a06fd3036414a888966ebb45 Mon Sep 17 00:00:00 2001 From: soyboy Date: Thu, 6 Nov 2025 12:51:00 -0800 Subject: [PATCH 6/6] adding challenger releases --- notices/fusaka-notice.mdx | 2 +- notices/upgrade-17.mdx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/notices/fusaka-notice.mdx b/notices/fusaka-notice.mdx index 1e7335dd1..d63b56908 100644 --- a/notices/fusaka-notice.mdx +++ b/notices/fusaka-notice.mdx @@ -78,7 +78,7 @@ Update the following components: | `op-batcher` | [v1.16.2](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher%2Fv1.16.2) | The `op-batcher` must be restarted at least once after updating `op-node` to the latest release. The batcher loads the rollup config once at startup and this will need to happen to update the activation timestamps for Jovian. We've opened this [issue](https://github.com/ethereum-optimism/optimism/issues/18178) to improve this experience in the future. | | `op-node` | [v1.16.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-node%2Fv1.16.1) | L1 chain config must be supplied via a new flag (see the release notes). Not necessary for chains deriving from Ethereum Mainnet, Sepolia, Holesky or Hoodi. | | `op-geth` | [v1.101603.4](https://github.com/ethereum-optimism/op-geth/releases/tag/v1.101603.4) | | -| `op-challenger` | [v1.7.0-rc.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-challenger%2Fv1.7.0-rc.1) | If deriving from a chain other than Ethereum Mainnet, Sepolia or Hoodi then L1 chain config must be supplied via a new flag. | +| `op-challenger` | [v1.7.0](https://github.com/ethereum-optimism/optimism/releases/tag/op-challenger%2Fv1.7.0) | If deriving from a chain other than Ethereum Mainnet, Sepolia or Hoodi then L1 chain config must be supplied via a new flag. | | `kona-node` | []() | | | `kona-host` | []() | | | `kona-client` | []() | | diff --git a/notices/upgrade-17.mdx b/notices/upgrade-17.mdx index 1f5f99372..0cd5a65c7 100644 --- a/notices/upgrade-17.mdx +++ b/notices/upgrade-17.mdx @@ -92,7 +92,7 @@ Update the following components: | `op-batcher` | [v1.16.2](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher%2Fv1.16.2) | The `op-batcher` must be restarted at least once after updating `op-node` to the latest release. The batcher loads the rollup config once at startup and this will need to happen to update the activation timestamps for Jovian. We've opened this [issue](https://github.com/ethereum-optimism/optimism/issues/18178) to improve this experience in the future. | | `op-node` | [v1.16.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-node%2Fv1.16.1) | L1 chain config must be supplied via a new flag (see the release notes). Not necessary for chains deriving from Ethereum Mainnet, Sepolia, Holesky or Hoodi. | | `op-geth` | [v1.101603.4](https://github.com/ethereum-optimism/op-geth/releases/tag/v1.101603.4) | | -| `op-challenger` | [v1.7.0-rc.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-challenger%2Fv1.7.0-rc.1) | If deriving from a chain other than Ethereum Mainnet, Sepolia or Hoodi then L1 chain config must be supplied via a new flag. | +| `op-challenger` | [v1.7.0](https://github.com/ethereum-optimism/optimism/releases/tag/op-challenger%2Fv1.7.0) | If deriving from a chain other than Ethereum Mainnet, Sepolia or Hoodi then L1 chain config must be supplied via a new flag. | | `kona-node` | []() | | | `kona-host` | []() | | | `kona-client` | []() | |