[deprecated] Upgrade 17 Proposal: Jovian Hardfork

This proposal has been deprecated.

Proposal Title: Upgrade 17 Proposal: Jovian Hardfork

Proposal Type: Protocol Upgrade

This proposal will go to vote during voting cycle 44

Hi I’m George, a Protocol Engineer at OP Labs and core contributor of the OP Stack. I reviewed this proposal in collaboration with Paul Dowman and Matt Solomon from the OP Labs Team.

Executive Summary

The Jovian hardfork is a proposed network upgrade for OPStack chains, which brings several improvements to the way rollup fees are calculated as well as performing a maintenance update to the fault proof virtual machine. It includes the following features:

  • Cannon is being updated to support Go 1.24, which allows the OP Stack to stay up to date with upstream changes to go-ethereum (which are included in op-geth)

    • This allows users to continue to be protected by the very latest execution-layer code; both when they transact and when disputes are contended in the fault proof system.
  • Minimum Base Fee and Data Availability Footprint Block Limit which allow the L2 base fee to respond more rapidly to changes in block composition, particularly when this implies an increased demand on the rollup’s capacity to batch blocks to the data availability layer.

    • Pricing this demand more accurately will greatly reduce the need for batcher-sequencer throttling, which in turn will prevent users experiencing undesirable priority fee auctions.

    • When priority fee auctions do ensue, the minimum base fee will cause normal, EIP-1559 market conditions to be restored more rapidly.

    • These features will also protect rollup operators from being overloaded with ā€œspamā€ transactions which otherwise could cause a drop in profitability and denial of service.

  • Operator Fee Fix which modifies the existing, optional ā€œoperator feeā€ feature.

    • This allows operator fees to be set to more realistic levels, allowing for rollup operators to recover a fair compensation for generating zk proofs or other costs which otherwise cannot be recovered. This also lays a necessary foundation for delivering the Custom Gas Token feature in a future upgrade.

Motivation

We are submitting this proposal to a) perform routine maintenance of the fault proof system (following best security practices) and b) make improvements to the Optimism protocol (concerning transaction fees) which will improve the transaction fee experience for users and which lower the risk to chain operators and the ecosystem as a whole.

There are no anticipated conflicts of interest, and we believe the Collective should adopt the proposal so that the optimism protocol can provide increased value to operators and users alike.

Impacted Stakeholders and Expected Outcomes

  • All node operators: will be required to update node software in advance of the activation time for Jovian

  • Users, developers and ecosystem tools: may wish to adapt to the newly populated BlobGasUsed header and transaction receipt field (see the DA footprint block limit feature specifications linked below)

Specifications

Blockspace Charter

Technical details

Minimum Base Fee

Data Availability Footprint Block Limit

Operator Fee Fix

Cannon Go 1.24 support

Contract changes

The contracts changes include in this upgrade are summarized in the release notes for op-contracts/v5.0.0.

After the veto period has ended, we will ask the Security Council to sign transactions to update the contracts using OP Contracts Manager, and to establish a new absolute prestate hash for chains using permisionless fault proofs. These transactions must to be executed before the actual Jovian activation to avoid a broken Fault Proofs system after the activation.

Absolute Prestate

This upgrade includes the absolute prestate for op-program/v1.8.0-rc.3. The absolute prestate hash (cannon64 variant) is 0x03799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f3. It has been publicly verified here.

Calldata

The expected calldata to sign for OP Mainnet is below. This also includes the upgrade on Soneium Mainnet and Ink Mainnet, as these networks will be upgrades in one superchain-ops task alongside OP Mainnet.

0x82ad56cb00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001200000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044b0b807eb00000000000000000000000095703e0982140d16f8eba6d158fccede42f04a4c000000000000000000000000543ba4aadbab8f9025686bd03993043599c6fb04000000000000000000000000000000000000000000000000000000000000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000164ff2dd5a100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000003000000000000000000000000229047fed2591dbec1ef1118d64f7af3db9eb290000000000000000000000000543ba4aadbab8f9025686bd03993043599c6fb0403799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f300000000000000000000000062c0a111929fa32cec2f76adba54c16afb6e8364000000000000000000000000d56045e68956fce2576e680c95a4750cf8241f7903799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f30000000000000000000000007a8ed66b319911a0f3e7288bddab30d9c0c875c300000000000000000000000089889b569c3a505f3640ee1bd0ac1d557f436d2a03799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f300000000000000000000000000000000000000000000000000000000

To generate the above calldata:

  1. Clone the superchain-ops repository

  2. git checkout u17-main-op-sony-ink

  3. cd src/tasks/eth/032-U17-main-op-sony-ink

  4. Run the below command either as council or foundation:

SIMULATE_WITHOUT_LEDGER=1 just --dotenv-path $(pwd)/.env simulate <council|foundation>

The terminal output will include the calldata and state changes.

The tasks use the OPCMUpgradeV500 template, refer to it to see how the calldata is generated: https://github.com/ethereum-optimism/superchain-ops/blob/main/src/template/OPCMUpgradeV500.sol

There are several other chains which will be upgraded, in bundles, in additional transactions outlined below. The calldata can be verified in the same way as above (in the superchain-ops repository).

Metal, Mode, Zora

0x82ad56cb00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001200000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044b0b807eb00000000000000000000000095703e0982140d16f8eba6d158fccede42f04a4c000000000000000000000000543ba4aadbab8f9025686bd03993043599c6fb04000000000000000000000000000000000000000000000000000000000000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000164ff2dd5a1000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000030000000000000000000000007bd909970b0eedcf078de6aeff23ce571663b8aa00000000000000000000000037ff0ae34dada1a95a4251d10ef7caa868c7ac9903799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f30000000000000000000000005e6432f18bc5d497b1ab2288a025fbf9d69e2221000000000000000000000000470d87b1dae09a454a43d1fd772a561a03276ab703799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f3000000000000000000000000a3cab0126d5f504b071b81a3e8a2bbbf17930d86000000000000000000000000d4ef175b9e72caee9f1fe7660a6ec19009903b4903799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f300000000000000000000000000000000000000000000000000000000

Arena-Z, Swell

0x82ad56cb00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001200000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044b0b807eb00000000000000000000000095703e0982140d16f8eba6d158fccede42f04a4c000000000000000000000000543ba4aadbab8f9025686bd03993043599c6fb04000000000000000000000000000000000000000000000000000000000000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000104ff2dd5a10000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000200000000000000000000000034a564bbd863c4bf73eca711cf38a77c4ccbdd6a000000000000000000000000eefd1782d70824cbcacf9438afab7f353f1797f003799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f3000000000000000000000000d3d4c6b703978a5d24fecf3a70a51127667ff1a40000000000000000000000004c4710a4ec3f514a492cc6460818c4a6a6269dd603799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f300000000000000000000000000000000000000000000000000000000

Unichain

0x82ad56cb0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c50000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a4ff2dd5a100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000c407398d063f942febbcc6f80a156b47f3f1bda60000000000000000000000003b73fa8d82f511a3cae17b5a26e4e1a2d5e2f2a403799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f300000000000000000000000000000000000000000000000000000000

Base

0x82ad56cb0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000009e86a129e86a570fb13e89bd5e9aa98b642ae4c50000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a4ff2dd5a10000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000100000000000000000000000073a79fab69143498ed3712e519a88a918e1f40720000000000000000000000000475cbcaebd9ce8afa5025828d5b98dfb67e059e03799051d2bfe459127d4597f469f535ff1bd2a6e1e2134443167620871c11f300000000000000000000000000000000000000000000000000000000

Impact summary

Minimum Base Fee, Data Availability Footprint Block Limit, Operator Fee Fix

These features will be activated by the Jovian hardfork, and will require execution layer, consensus layer, and contracts layer updates. Because the hardfork changes consensus rules, a new absolute prestate will be required for chains running permissionless fault proofs.

We have published a notice page clarifying the required software versions and activation times here https://docs.optimism.io/notices/upgrade-17.

Cannon Go 1.24 support

This feature requires the deployment of a new MIPS contract for chains running permissionless fault proofs.

Precommitment impact review:

This Upgrade Proposal only impacts the Collective Fee Take precommitment in the Standard Rollup Charter.

  • Collective Fee Take: while the operator fee’s offchain codepath is updated in this release, it is still required to be set to 0 for standard chains and thus does not impact the fee take today.

  • Governor/Servicer Role Separation: no change to role structures or authorization patterns.

  • Ossified GasLimits: no changes to ossified gasLimits

  • Direct Fee Margin Controls: no change to the relevant configuration structure and authorization.

Action Plan

  • Alphanet and Betanet testing will commence 29th October.

  • Sepolia upgrade will be executed on 10th November.

  • Sepolia activation will be scheduled for 12th November.

  • Mainnet upgrade will be executed on 20th November.

  • Mainnet activation will be scheduled for 25th November.

The upgrade will occur automatically for chains on the Jovian releases of op-geth and op-node if those chains have opted-in to activate at Superchain times via their superchain-registry configuration (i.e., have the superchain_time set to a timestamp before or at the mainnet activation time, or have set their jovian_time directly) and are using the --network (op-node) and --op-network (op-geth) flags or corresponding environment variables or corresponding flags for kona-node and op-reth.

Chain operators running fault proof infrastructure should ensure they are running op-challenger version v1.7.0-rc.1.

Conclusion

The Jovian hardfork is a proposed network upgrade for OPStack chains that addresses several key improvements:

  1. Cannon update to support Go 1.24, ensuring the OP Stack remains compatible with upstream changes to go-ethereum and provides users with the latest execution-layer security.

  2. Fee mechanism improvements including:

    • Minimum Base Fee

    • Data Availability Footprint Block Limit

    • Operator Fee Fix

These fee improvements will allow the L2 base fee to respond more quickly to changes in block composition, reduce the need for batcher-sequencer throttling, and protect rollup operators from potential spam attacks.

This upgrade is essential for maintaining security best practices and addressing deficiencies in the Optimism protocol’s transaction fee system that can lead to poor user experiences and pose risks to chain operators.

We request the Collective’s approval to proceed with this upgrade according to the timeline above.

By approving this proposal, the Optimism Collective will enable increased value to both operators and users of the protocol.

5 Likes

Hi, I’m Sanjana, a Product Manager on the Protocol team at OP Labs.

We identified an error made during the contract deployment process, which resulted in the calldata referenced in this post being incorrect. We’ll be marking this post as [deprecated] and will publish a new post shortly.

2 Likes

The new post superseding this one is available here Upgrade 17 - Jovian Hardfork and Fusaka Readiness .