Skip to content

Release op-contracts v1.3.0-rc.1 - Multi-Chain Prep (MCP) L1

Pre-release
Pre-release
Compare
Choose a tag to compare
@0xfuturistic 0xfuturistic released this 15 Feb 12:08
· 828 commits to develop since this release
e6ef3a9

This release enables atomic, cross-chain upgrades and mitigates potential exploitation risks during emergency, multi-chain upgrades by transitioning chain-specific deployment configuration variables from immutables into storage. It also extends SystemConfig to contain the addresses of the network’s contracts.

Gov post: https://gov.optimism.io/t/upgrade-proposal-6-multi-chain-prep-mcp-l1/7677

Contracts Changed

The following contracts would be changed as part of this upgrade. Each contract links to the pull request where the changes were made, and the bullet points corresponds to the immutable variables moved into state (in format {type} {varName}):

  1. OptimismPortal (#8629)
    • L2OutputOracle l2Oracle
    • SystemConfig systemConfig
  2. L1CrossDomainMessenger (#8631)
    • OptimismPortal portal
    • CrossDomainMessenger otherMessenger
  3. L1StandardBridge (#8632)
    • CrossDomainMessenger messenger
    • StandardBridge otherBridge
  4. L1ERC721Bridge (#8633)
    • CrossDomainMessenger messenger
    • StandardBridge otherBridge
  5. OptimismMintableERC20Factory (#8700)
    • address bridge
  6. L2OutputOracle (#8720)
    • uint256 submissionInterval
    • uint256 l2BlockTime
    • address challenger
    • address proposer
    • uint256 finalizationPeriodSeconds
  7. SystemConfig (#8772)

Partial Changelog

  • contracts-bedrock: Move broadcast modifier to inner deploy func by @maurelian in #9130
  • contracts-bedrock: delete unused sync() method by @tynes in #9100
  • feat: MCP L1 by @tynes in #9058

Full Changelog: op-contracts/v1.2.0-rc.1...op-contracts/v1.3.0-rc.1