diff --git a/pages/notices/_meta.json b/pages/notices/_meta.json index b350aa2ce..95ba3bee4 100644 --- a/pages/notices/_meta.json +++ b/pages/notices/_meta.json @@ -1,4 +1,5 @@ { + "upgrade-15": "Upgrade 15: Isthmus Hard Fork", "upgrade-14": "Upgrade 14: MT-Cannon and Isthmus L1 Contracts", "upgrade-13": "Upgrade 13: OPCM and incident response improvements", "blob-fee-bug": "Superchain testnets' blob fee bug", diff --git a/pages/notices/superchain-withdrawal-pause-test.mdx b/pages/notices/superchain-withdrawal-pause-test.mdx new file mode 100644 index 000000000..9323ea583 --- /dev/null +++ b/pages/notices/superchain-withdrawal-pause-test.mdx @@ -0,0 +1,22 @@ +--- +title: Superchain withdrawal pause test +description: Information about testing the Superchain withdrawal pause functionality. +lang: en-US +content_type: notice +topic: pause-withdrawal-test +personas: + - chain-operator + - node-operator + - user +categories: + - security + - automated-pause + - protocol +is_imported_content: 'false' +--- + +import { Steps, Callout } from 'nextra/components' + +# Superchain withdrawal pause test + + diff --git a/pages/notices/upgrade-15.mdx b/pages/notices/upgrade-15.mdx new file mode 100644 index 000000000..b91a733df --- /dev/null +++ b/pages/notices/upgrade-15.mdx @@ -0,0 +1,85 @@ +--- +title: Upgrade 15 - Isthumus Hard Fork +description: Learn how to prepare for Isthmus hard fork breaking changes. +lang: en-US +content_type: notice +topic: upgrade-15-changes +personas: + - chain-operator + - node-operator +categories: + - security + - automated-pause + - protocol + - infrastructure +is_imported_content: 'false' +--- + +import { Steps, Callout } from 'nextra/components' + +# Upgrade 15: Isthumus Hard Fork + +This page outlines breaking changes related to the Isthmus network upgrade for chain operators and node operators. The upgrade proposal is available [here](https://gov.optimism.io/t/upgrade-proposal-15-isthmus-hard-fork/9804) and the governance vote is available [here](https://gov.optimism.io/t/proposal-preview-implement-prague-features-on-the-op-stack/9703). + +If you experience difficulty at any stage of this process, please reach out to developer support. + + + The Isthmus hard fork for the Sepolia Superchain will be activated at **Thu Apr 17 16:00:00 UTC 2025** (`1744905600`). + This is for all chains who have opted into the [hard fork inheritance behavior](/superchain/superchain-registry#hard-fork-activation-inheritance-behavior). The activation for the Mainnet Superchain will be decided after Pectra activates on Ethereum. This time is still to be determined. The last tentative timeline from the Ethereum All Core Devs call is May 7th (from the call on Thursday, April 3rd). + + +## What's included in Isthmus + +Isthmus contains these main changes: + +* **Implement Prague features on the OP Stack**: This includes the EIPs that are relevant to the L2 that are being added to Ethereum with its Pectra activation. Learn more about this [here](https://gov.optimism.io/t/proposal-preview-implement-prague-features-on-the-op-stack/9703). +* **L2 Withdrawals Root in Block Header**: This lowers the lift for chain operators by allowing them to run a full node to operate `op-dispute-mon` making it easier to guarantee the security of the fault proofs for the chains in the Superchain as the number of chains scales. Learn more about this [here](https://gov.optimism.io/t/proposal-preview-l2-withdrawals-root-in-block-header/9730). +* **Operator Fee**: A new component to the fee formula for the OP Stack which is a first step towards better resource pricing. This improves the OP Stack ability to support chains using Alt-DA or using ZK proving. Learn more about this [here](https://gov.optimism.io/t/proposal-preview-operator-fee/9715). + +For more information on the Isthmus implementation details, please review [Isthmus specification](https://specs.optimism.io/protocol/isthmus/overview.html). + +## For chain operators + +Chain operators should upgrade their nodes ahead of the activation times to a release that contains the Isthmus changes and has the activation times for their chains baked in, or set the activation times manually via overrides. The details are outlined in the node operator section below. + +In addition to this, the L1 smart contract upgrades in [upgrade 14](/notices/upgrade-14) are required to utilize this new functionality. + +### For permissionless fault proof enabled chains + +In addition to the upgrade 14 contract updates. Chains running permissionless fault proofs will need to deploy new dispute game contracts with new absolute prestates. The new op-program release that contains the activation timestamps will be available soon. + +## For node operators + +Node operators will need to upgrade to the respective Isthmus releases before the activation dates. + +These following steps are necessary for every node operator: + + + ### Update to the latest release + + The releases are for the Isthmus Sepolia Superchain activation. Mainnet releases will be cut when the activation timestamp has been determined. + + * [`op-node` at `v1.13.0`](https://github.com/ethereum-optimism/optimism/releases/tag/op-node%2Fv1.13.0) + * [`op-geth` at `v1.101503.2`](https://github.com/ethereum-optimism/op-geth/releases/tag/v1.101503.2) + + ### Configure the Isthmus activation date + + + If you are operating a node for an OP Chain that has opted into the [hardfork activation inheritance behavior](https://github.com/ethereum-optimism/superchain-registry/blob/main/docs/hardfork-activation-inheritance.md) and are utilizing the network flags, the Isthmus activation date is part of the `op-node` and `op-geth` nodes. So, no action is needed for the sequencer after upgrading to the latest release. Please skip to [Step 3: Verify Your Configuration](#verify-your-configuration). + + The following chains are included but are subject to change: `Base Sepolia`, `Creator Chain Testnet`, `Ethernity Sepolia`, `Ink Sepolia`, `Lisk Sepolia`, `Metal Sepolia`, `Mode Sepolia`, `Minato (Soneium) Sepolia`, `OP Sepolia`, `Unichain Sepolia`, and `Zora Sepolia`. + + + For node operators of not using the [hardfork activation inheritance behavior](https://github.com/ethereum-optimism/superchain-registry/blob/main/docs/hardfork-activation-inheritance.md), you will need to manually configure the activation. This can be done one of two ways: + + * **Option 1:** Set the activation time in the `rollup.json` for `op-node`. You will still need to set the `override.isthmus` flag in `op-geth` if you use this option. Please note that the chain configuration file is subject to a stricter format and needs to contain the `chain_op_config` outlined in the `op-node/v1.11.0` [release notes](https://github.com/ethereum-optimism/optimism/releases/tag/op-node%2Fv1.11.0). + * **Option 2:** Set the activation time via overrides (CLI) in both `op-node` and `op-geth`. These will need to be set on `op-node` and `op-geth` for the sequencer and all other nodes. + + ### Verify Your Configuration + + Make the following checks to verify that your node is properly configured. + + * `op-node` and `op-geth` will log their configurations at startup + * Check that the Isthmus time is set to `activation-timestamp` in the op-node startup logs + * Check that the Isthmus time is set to `activation-timestamp` in the op-geth startup logs + diff --git a/pages/superchain/superchain-registry.mdx b/pages/superchain/superchain-registry.mdx index 7a177fe0b..1e7e5040f 100644 --- a/pages/superchain/superchain-registry.mdx +++ b/pages/superchain/superchain-registry.mdx @@ -41,3 +41,10 @@ You can find more details in the [Standard Rollup Charter documentation](/superc ## Joining the Registry All Superchain Ecosystem members are welcome to join the Superchain Registry, regardless of whether they adhere to the standard rollup charter or not. To join the Registry, [follow the steps in this guide](https://github.com/ethereum-optimism/superchain-registry/blob/main/docs/ops.md#adding-a-chain) to submit a pull request and join the Superchain Ecosystem. This guide will help you set up your chain, create your environment, and run all the validation checks needed to ensure your chain is ready to join the Registry. + +## Hard fork activation inheritance behavior + +After being included into the Superchain Registry, subsequent releases of the `op-node` and `op-geth` will contain the chain's genesis and rollup configurations baked in. You can use then use the `--network` (`op-node`) and `--op-network` (`op-geth`) flags to start up your node with this information. Using these flags means that the node will automatically inherit the hard fork activation times from the Superchain Registry, so you don't need to manually set them in your node configuration. + +Additionally, chains can opt into the hard fork activation inheritance behavior by specifying the `superchain_time` in the chain's TOML file to start inheriting Superchain wide activation timestamps. +Networks who have utilize this mechanism will activate network hard forks specified in the `superchain.toml` files: [Sepolia superchain.toml](https://github.com/ethereum-optimism/superchain-registry/blob/main/superchain/configs/sepolia/superchain.toml) and [Mainnet superchain.toml](https://github.com/ethereum-optimism/superchain-registry/blob/main/superchain/configs/mainnet/superchain.toml). diff --git a/pages/superchain/superchain-upgrades.mdx b/pages/superchain/superchain-upgrades.mdx index de7b636d8..79f66d41b 100644 --- a/pages/superchain/superchain-upgrades.mdx +++ b/pages/superchain/superchain-upgrades.mdx @@ -52,6 +52,8 @@ These rules are based on specific timestamps, dictating when the new protocol ch * **Block Height Activation:** The upgrade activates at a predetermined block number. * **Time-Based Activation:** The upgrade becomes effective at a specific timestamp. +Networks that have opted into the [hard fork inheritance behavior](/superchain/superchain-registry#hard-fork-activation-inheritance-behavior) will automatically inherit the activation rules from the Superchain Registry. + ## `rollup.halt` flags on node binaries The [`rollup.halt`](/operators/node-operators/configuration/execution-config#rolluphalt) flag is an opt-in configuration option available in both the execution and consensus layer node binaries. diff --git a/words.txt b/words.txt index 33db5dc56..cff5a4ee2 100644 --- a/words.txt +++ b/words.txt @@ -95,6 +95,7 @@ Devnet devnet Devnets devnets +Devs direnv DISABLETXPOOLGOSSIP disabletxpoolgossip @@ -178,6 +179,7 @@ ipcfile IPCPATH ipcpath IPFS +Isthumus JALR JOURNALREMOTES journalremotes