Skip to content

Releases: ethereum-optimism/optimism

op-stack v1.7.7 - Optimistic Fjord Mainnet release

13 Jun 16:58
f8143c8
Compare
Choose a tag to compare

✨🔴 Optimistic Fjord Mainnet Release

Mainnet operators are required to update to this release to follow the chain post-Fjord. This release contains an optimistic Fjord Mainnet activation time of Wed Jul 10 16:00:01 UTC 2024.

It is a recommended release for all node operators, as it contains various improvements and updates to the libp2p dependencies.

The corresponding op-geth release is v1.101315.2.

Optimism Governance Voting Cycle 23b

The Fjord activation contained in this release is still subject to approval during the currently ongoing Optimism Governance voting cycle 23b, see the Governance Proposal of the Fjord Protocol Upgrade. The reflection voting period ends on Jun 19 while the veto period ends on Jun 26, 19:00 UTC.

In the unlikely event that the veto period ends in a veto, we will publish a Veto Release. The fjord activation can also be disabled by setting the override.fjord configuration flag to a date in the far future, e.g. --override.fjord 2281580442. Always confirm in startup logs that overrides have been applied correctly.

Important Changes

  • The missing Fjord override flag got added #10648
  • op-node now supports specifying multiple L1 beacon endpoint fallbacks #10655
    • The flag l1.beacon-archiver got renamed to l1.beacon-fallbacks, but the old flag is retained for backwards compatibility, as are the old env vars.
  • Multiple refactors of the derivation pipeline were performed #10580 #10580 #10642
  • The batcher's and proposer's active sequencer follow mode got improved, ensuring that each endpoint is dialed exactly once #10696 #10705

Partial Changelog

New Contributors (all monorepo)

Full Changelog: v1.7.6...v1.7.7

🚢 Docker Images:

op-dispute-mon v1.0.0

10 Jun 10:29
op-dispute-mon/v1.0.0
384e2dc
Compare
Choose a tag to compare

Overview

This is the 1.0 release of op-dispute-mon, a monitoring agent for fault dispute games. To learn more about dispute games, visit the fault proof specs.

🚢 Docker Image:

op-challenger v1.0.0

10 Jun 10:28
op-challenger/v1.0.0
384e2dc
Compare
Choose a tag to compare

Overview

This is the 1.0 release of op-challenger, an implementation of the honest actor algorithm for fault dispute games. To learn more about dispute games, visit the fault proof specs.

🚢 Docker Image:

op-contracts/v1.5.0 — Safe Extensions

07 Jun 19:35
9047beb
Compare
Choose a tag to compare

Overview

This release adds 3 Safe extensions that are intended to help OP Stack chains reach Stage 1. You can read more about this in the governance post.

Contract Changes

Only the following 3 contracts are released with the version:

  • LivenessGuard, a guard for Safes
  • LivenessModule, a module for Safes, intended to be paired with LivenessGuard.
  • DeputyGuardianModule, a module for Safes.

These are all unrelated to the core OP Stack protocol contracts.

Full Contract Set

A chain using this contracts release must be using the following contracts at the specified semvers.

The three new contracts outside of the core protocol contracts:

  • LivenessGuard: 1.0.0
  • LivenessModule: 1.2.0
  • DeputyGuardianModule: 1.1.0

And the core protocol contracts are unchanged from the prior release of op-contracts/v1.4.0:

  • AddressManager: Latest (this has no version)
  • L1CrossDomainMessenger: 2.3.0
  • L1ERC721Bridge: 2.1.0
  • L1StandardBridge: 2.1.0
  • OptimismMintableERC20Factory: 1.9.0
  • OptimismPortal: 3.10.0
  • SystemConfig: 2.2.0
  • FaultDisputeGame: 1.2.0
  • PermissionedDisputeGame: 1.2.0
  • DisputeGameFactory: 1.0.0
  • AnchorStateRegistry: 1.0.0
  • DelayedWETH: 1.0.0
  • MIPS: 1.0.1
  • PreimageOracle: 1.0.0
  • SuperchainConfig: 1.1.0
  • ProtocolVersions: 1.0.0

Full Changelog

The full contracts diff between this release and the prior release can be found at the link below. Note that, because this is a monorepo, this will likely include many unrelated changes and will be a noisy diff. Because op-contracts/v1.4.0 is also pending governance approval, this release is compared to op-contracts/v1.3.0

op-contracts/v1.4.0...op-contracts/v1.5.0

op-contracts/v1.4.0 — Fault Proofs

07 Jun 19:28
547ea72
Compare
Choose a tag to compare

Overview

This release adds Fault Proofs to help OP Stack chains reach Stage 1. You can read more about this in the governance post.

Contract Changes

This includes the following new contracts:

  • FaultDisputeGame, An implementation of the IDisputeGame interface for Fault Proofs
  • PermissionedDisputeGame, A FaultDisputeGame contract that is permissioned
  • DisputeGameFactory, A factory contract for creating IDisputeGame contracts
  • AnchorStateRegistry, Stores the latest "anchor" state used by the FaultDisputeGame contract
  • DelayedWETH, An extension to WETH9 that allows delayed withdrawals
  • MIPS, An onchain MIPS32 VM
  • PreimageOracle, A contract for storing permissioned pre-images

Full Contract Set

A chain using this contracts release must be using the following contracts at the specified semvers.

The new contracts:

  • FaultDisputeGame: 1.2.0
  • PermissionedDisputeGame: 1.2.0
  • DisputeGameFactory: 1.0.0
  • AnchorStateRegistry: 1.0.0
  • DelayedWETH: 1.0.0
  • MIPS: 1.0.1
  • PreimageOracle: 1.0.0

The updated contracts:

  • OptimismPortal: 3.10.0
  • SystemConfig: 2.2.0

And contracts unchanged from the prior op-contracts/v1.3.0 release:

  • AddressManager: Latest (This has no version)
  • L1CrossDomainMessenger: 2.3.0
  • L1ERC721Bridge: 2.1.0
  • L1StandardBridge: 2.1.0
  • OptimismMintableERC20Factory: 1.9.0
  • SuperchainConfig: 1.1.0
  • ProtocolVersions: 1.0.0

Note that the L2OutputOracle has been removed, and is no longer used for chains running this version of the contracts.

Full Changelog

The full contracts diff between this release and the prior release can be found at the link below. Note that, because this is a monorepo, this will likely include many unrelated changes and will be a noisy diff.

op-contracts/v1.3.0...op-contracts/v1.4.0

op-stack v1.7.6 - Sepolia Fjord activation

24 May 16:23
4a487b8
Compare
Choose a tag to compare

❗ Sepolia Superchain Fjord activation Next Wednesday 5/29

This release contains the activation of the Fjord hardfork on the Sepolia Superchain on Wed May 29 16:00:00 UTC 2024. Node operators of any Sepolia OP Chains (OP, Base, Mode, Zora, PGN) must update before this activation timestamp, or their nodes will halt when the chains activate Fjord.

It is a recommended update for all other node operators as it contains various improvements and bug fixes.

🤝 The corresponding Fjord Sepolia op-geth release is v1.101315.1.

⚠️ This op-node/v1.7.6 release misses the fjord override flag. If you need it, use op-node/v1.7.7-rc.1 instead.

Fjord

This release contains all features of the upcoming Fjord protocol upgrade. The Fjord activation can be manually enabled via overrides for chains which don't activate Fjord via the Superchain (currently only the Sepolia Superchain).

Update of op-geth dependency

The op-geth dependency is updated to v1.101315.1-rc.5, which implies an update of the underlying geth version to v1.13.15.

L1 Beacon client improvements

The L1 beacon client in the op-node now better detects missing blobs and falls back to the l1.beacon-archiver endpoint, if configured.

Partial Changelog

New Contributors (all monorepo)

Full Changelog: v1.7.4...v1.7.6

🚢 Docker Images:

op-node/v1.7.7-rc.1

24 May 18:28
4c3f63d
Compare
Choose a tag to compare
op-node/v1.7.7-rc.1 Pre-release
Pre-release

op-node Fjord override flag rc

This is a release candidate on top of op-node/v1.7.6 that adds the missing fjord override flag --override.fjord (or env var OP_NODE_OVERRIDE_FJORD) to op-node. #10648

🚢 Docker Image https://us-docker.pkg.dev/oplabs-tools-artifacts/images/op-node:v1.7.7-rc.1

Release op-contracts/v1.5.0-rc.1 — Safe Extensions

16 May 14:31
9047beb
Compare
Choose a tag to compare

Overview

This release adds 3 Safe extensions that are intended to help OP Stack chains reach Stage 1. You can read more about this in the governance post.

Contract Changes

Only the following 3 contracts are released with the version:

  • LivenessGuard, a guard for Safes
  • LivenessModule, a module for Safes, intended to be paired with LivenessGuard.
  • DeputyGuardianModule, a module for Safes.

These are all unrelated to the core OP Stack protocol contracts.

Full Contract Set

A chain using this contracts release must be using the following contracts at the specified semvers. Because the op-contracts/v1.4.0 release is pending governance approval, the versions below are from the op-contracts/v1.3.0 release.

The three new contracts:

  • LivenessGuard: 1.0.0
  • LivenessModule: 1.2.0
  • DeputyGuardianModule: 1.1.0

And the prior release from op-contracts/v1.3.0:

  • AddressManager: Latest (this has no version) (No change from prior version)
  • L1CrossDomainMessenger: 2.3.0
  • L1ERC721Bridge: 2.1.0
  • L1StandardBridge: 2.1.0
  • L2OutputOracle: 1.8.0
  • OptimismMintableERC20Factory: 1.9.0
  • OptimismPortal: 2.5.0
  • SystemConfig: 1.12.0
  • SuperchainConfig: 1.1.0 (No change from prior version)
  • ProtocolVersions: 1.0.0 (No change from prior version)

Full Changelog

The full contracts diff between this release and the prior release can be found at the link below. Note that, because this is a monorepo, this will likely include many unrelated changes and will be a noisy diff. Because op-contracts/v1.4.0 is also pending governance approval, this release is compared to op-contracts/v1.3.0

op-contracts/v1.3.0...op-contracts/v1.5.0-rc.1

Release op-contracts/v1.4.0-rc.4 - Fault Proofs

21 May 15:39
op-contracts/v1.4.0-rc.4
547ea72
Compare
Choose a tag to compare

Overview

This release adds Fault Proofs to help OP Stack chains reach Stage 1. You can read more about this in the governance post.

Contract Changes

This includes the following new contracts:

  • FaultDisputeGame, An implementation of the IDisputeGame interface for Fault Proofs
  • PermissionedDisputeGame, A FaultDisputeGame contract that is permissioned
  • DisputeGameFactory, A factory contract for creating IDisputeGame contracts
  • AnchorStateRegistry, Stores the latest "anchor" state used by the FaultDisputeGame contract
  • DelayedWETH, An extension to WETH9 that allows delayed withdrawals
  • MIPS, An onchain MIPS32 VM
  • PreimageOracle, A contract for storing permissioned pre-images

Full Contract Set

A chain using this contracts release must be using the following contracts at the specified semvers.

The new contracts:

  • FaultDisputeGame: 1.2.0
  • PermissionedDisputeGame: 1.2.0
  • DisputeGameFactory: 1.0.0
  • AnchorStateRegistry: 1.0.0
  • DelayedWETH: 1.0.0
  • MIPS: 1.0.1
  • PreimageOracle: 1.0.0

The updated contracts:

  • OptimismPortal: 3.10.0
  • SystemConfig: 2.2.0

And contracts unchanged from the prior op-contracts/v1.3.0 release:

  • AddressManager: Latest (This has no version)
  • L1CrossDomainMessenger: 2.3.0
  • L1ERC721Bridge: 2.1.0
  • L1StandardBridge: 2.1.0
  • OptimismMintableERC20Factory: 1.9.0
  • SuperchainConfig: 1.1.0
  • ProtocolVersions: 1.0.0

Note that the L2OutputOracle has been removed, and is no longer used for chains running this version of the contracts.

Full Changelog

The full contracts diff between this release and the prior release can be found at the link below. Note that, because this is a monorepo, this will likely include many unrelated changes and will be a noisy diff.

op-contracts/v1.3.0...op-contracts/v1.4.0-rc.4

Release op-contracts v1.4.0-rc.2 - Fault Proofs V1

03 May 17:21
a6d4eed
Compare
Choose a tag to compare

Overview

This release candidate enables fault proofs in the withdrawal path of the bridge on L1. It also modifies the SystemConfig to remove the legacy L2OutputOracle contract in favor of the DisputeGameFactory.

Specification here.

The full set of L1 contracts included in this release is:

  • AddressManager: Latest (this has no version) (No change from prior version)
  • AnchorStateRegistry: 1.0.0 (New Contract)
  • DelayedWETH: 1.0.0 (New Contract)
  • DisputeGameFactory: 1.0.0 (New Contract)
  • L1CrossDomainMessenger: 2.3.0 (No change from prior version)
  • L1ERC721Bridge: 2.1.0 (No change from prior version)
  • L1StandardBridge: 2.1.0 (No change from prior version)
  • OptimismMintableERC20Factory: 1.9.0 (No change from prior version)
  • OptimismPortal: 3.8.0 (Modified from prior version, with breaking changes)
  • SystemConfig: 2.0.0 (Modified from prior version, with breaking changes)
  • SuperchainConfig: 1.1.0 (No change from prior version)
  • ProtocolVersions: 1.0.0 (No change from prior version)

The L2OutputOracle is no longer used for chains running this version of the L1 contracts.

Contracts Changed

  1. L2OutputOracle
    • The L2OutputOracle has been removed from the deployed protocol.
  2. OptimismPortal
    • The OptimismPortal has been modified to allow users to prove their withdrawals against outputs that were proposed as dispute games, created via a trusted DisputeGameFactory contract. spec.
  3. SystemConfig
    • The SystemConfig has been changed to remove the L2_OUTPUT_ORACLE storage slot as well as the getter for the contract. To replace it, a new getter for the DisputeGameFactory proxy has been added.

New Contracts

  1. DisputeGameFactory
    • The DisputeGameFactory is the new inbox for L2 output proposals on L1, creating dispute games.
    • Output proposals are now permissionless by default.
    • Challenging output proposals is now permissionless by default.
  2. FaultDisputeGame
    • The FaultDisputeGame facilitates trustless disputes over L2 output roots proposed on L1. spec.
  3. PermissionedDisputeGame
    • A child of the FaultDisputeGame contract, that permissions proposing and challenging. Deployed as a safety mechanism to temporarily restore liveness in the event of the FaultDisputeGame's failure.
  4. MIPS
    • The MIPS VM is a minimal kernel emulating the MIPS32 ISA with a subset of available Linux syscalls. This contract allows for executing single steps of a fault proof program at the base case of disputes in the FaultDisputeGame. spec.
  5. PreimageOracle
    • The PreimageOracle contract is responsible for serving verified data to the program running on top of the MIPS VM during single-step execution. When data enters the PreimageOracle, it is verified to be correctly formatted and honest. spec.
  6. AnchorStateRegistry
    • The AnchorStateRegistry contract is responsible for tracking the latest finalized root claims from various dispute game types.
  7. DelayedWETH
    • DelayedWETH is an extension of WETH9 that delays unwrapping operations. Bonds that are placed in dispute games are held within this contract, and the owner may intervene in withdrawals to redistribute funds to submitters in case of dispute game resolution failure.

Full Changelog

op-contracts/v1.4.0-rc.1...op-contracts/v1.4.0-rc.2