Builders
Notices (README)
Preparing for Ecotone Breaking Changes

Preparing for Ecotone Breaking Changes

This page outlines breaking changes related to Ecotone network upgrade for wallets and front-end developers, chain operators, and node operators. If you experience difficulty at any stage of this process, please reach out to developer support (opens in a new tab).

⚠️
  • The Ecotone upgrade for OP Sepolia activated at 1708534800 Wed Feb 21 17:00:00 UTC 2024.
  • The Ecotone OP Mainnet upgrade will be at 1710374401 Thu Mar 14 00:00:01 UTC 2024, pending governance approval (opens in a new tab).

For Wallets and Front-End Developers

The proposed Ecotone upgrade to the OP Stack and OP Mainnet changes the formula for estimating the L1 Data Fee component of the OP Stack Transaction Fee in preparation for the introduction of EIP-4844 (opens in a new tab) support.

Your application may need to be updated to account for this change. Read on to learn more about how you can prepare for Ecotone.

Preparing Your Wallet or Front-End

⚠️

Changes to the L1 Data Fee formula may affect your application if you are computing this fee component on your own.

It's strongly recommended that you use existing tooling to estimate transaction fees instead of computing them yourself. Refer to the tooling section of the Estimating Fees page for recommendations on which tooling might be best suited for your application.

If you cannot use existing tooling, use the getL1Fee function on the GasPriceOracle smart contract to compute the L1 Data Fee component of the transaction fee. This function would be automatically updated during the proposed upgrade. Avoid implementing the formula yourself, as it may change in the future.

For Chain Operators

The proposed Ecotone upgrade impacts OP chains and requires chain operators to upgrade their chain and configure the sequencer for Ecotone. Chain operators will also want to review the guide on Using Blobs for next steps after Ecotone activation.

Preparing Your Chain

Prepare Sequencer Node

Ensure your sequencer node is prepared by following the three node operator steps: update to latest release, configure the Ecotone activation date, and preparing for activation.

Prepare SystemConfig Transaction

Encode and prepare to send an L1 transaction from your SystemConfigProxy owner shortly after Ecotone activation. See the guide on Using Blobs for more details.

At the point of activation of the Ecotone fork, your current scalar setting will by default become the BaseFeeScalar value, and the BlobBaseFeeScalar will be set to 0.

Prepare Batcher

Prepare your batcher to be restarted with the updated configuration in advance of the Ecotone activation to submit blobs. See the guide on Using Blobs for more details.

Take Full Advantage of Blobs

You will want to do the above steps very shortly after the activation of Ecotone to take full advantage of cheaper fees with 4844. Also, due to the removal of the overhead in the calculation of L1 data fees, after Ecotone activates, chain operators are expected to experience an up to 10% decrease in L1 fee margin. This could result in operating at a loss until the above steps are completed.

For Node Operators

The proposed Ecotone upgrade impacts node operators because of the new Beacon endpoint for `op-node. Soon after the Ecotone activation, batch transactions will be sent as 4844 blobs, and blobs can only be retrieved from Beacon nodes. This means node operators will need access to a beacon node/consensus client (opens in a new tab) (i.e. Lighthouse, Lodestar, Nimbus, Prysm, Teku, etc.).

Preparing Your Node

These steps are necessary for EVERY node operator:

Update to the latest release

Configure the Ecotone Activation Date

  • If you are operating a node for an OP Chain that has an entry in the superchain-registry (opens in a new tab), the Ecotone 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.
  • For node operators of custom chains not included in the superchain-registry (opens in a new tab), the activation dates can be set in the rollup.json (set ecotone_time) or 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.
⚠️

Even if the ecotone activation is configured via the rollup.json, it still needs to be configured separately on op-geth via command line flag.

--override.ecotone value            (default: 0)                       ($OP_NODE_OVERRIDE_ECOTONE)
          Manually specify the Ecotone fork timestamp, overriding the bundled setting

Prepare for Activation

  • All node operators must set an L1 beacon value in your op-node as soon as you update to the latest release.
⚠️

If Ecotone activates and you have not set an l1 beacon value on your op-node, your node will crash.

--l1.beacon value                                                      ($OP_NODE_L1_BEACON)
          HTTP endpoint Address of L1 Beacon-node.
💡

Existing node operators have additional steps to follow and should read the guide on using blobs.

You can verify your node is configured correctly with the following:

  • op-node and op-geth will log their configurations at startup
  • Check that Ecotone time is set to activation-timestamp in the op-node logs
  • Check that Ecotone and Cancun time is set to activation-timestamp in the op-geth logs