# Metis Andromeda Markdown version of https://ethbeat.org/layer2s/projects/metis ## Summary **Warning:** Why is the project listed in others? There are less than 5 external actors that can submit challenges. The current proof system is forked from the standard permissionless OP stack proof system. Importantly, new state root proposals do not create new dispute games and although challenge requests can be made by any bonded user, creating dispute games (creator role) and deleting a state root (state deleter role) after winning a challenge is not permissionless. Consequence: projects without a sufficiently decentralized set of challengers rely on few entities to safely update the state. A small set of challengers can collude with the proposer to finalize an invalid state, which can cause loss of funds. Learn more about the [recategorisation](https://medium.com/l2beat/framework-update-l2-projects-recategorisation-5d43b0d1fe50). - Total Value Secured: $25.01 M (-12.7% compared to seven days ago; canonically bridged $25.01 M, natively minted $0.00, externally bridged $0.00; 0.00% with additional trust assumptions compared to the tokens involved and the Stage assigned to the project's canonical messaging bridge) - **Warning:** The Metis token associated with Metis Andromeda accounts for 72.9% of the TVS! (sentiment: warning) - TVS by asset: ETH & derivatives $990.42 K (3.95%), Stablecoins $5.72 M (22.8%), BTC & derivatives $37.98 K (0.15%), Other $18.25 M (72.9%) - Associated tokens: Metis: $18.25 M (72.9% of TVS) - Past day UOPS: 0.07 (-22.0% compared to seven days ago) - Gas token: METIS - Type: Other - Purpose: Universal - Host chain: Ethereum - Chain ID: 1088 ### Risks - Sequencer failure: No mechanism (sentiment: bad) - State validation: Fraud proofs (INT) (7d challenge period; sentiment: bad) - Data availability: Onchain (sentiment: good) - Exit window: None (sentiment: bad) - Proposer failure: Security Council minority (sentiment: warning) ### About Metis Andromeda is an EVM-equivalent solution originally forked from Optimism OVM. It uses a decentralized Sequencer pool running Tendermint consensus and MPC module to sign transaction batches. ### Links - Website: https://metis.io - Bridge: https://bridge.metis.io - Docs: https://docs.metis.io - Explorer: https://andromeda-explorer.metis.io, https://explorer.metis.io - Repository: https://github.com/MetisProtocol - Social: https://metisl2.medium.com/, https://twitter.com/MetisL2, https://discord.com/invite/metis, https://youtube.com/@Metis_L2, https://t.me/MetisL2, https://instagram.com/metisl2/ - Other: https://growthepie.com/chains/metis - Contracts explorer (Disco): https://disco.ethbeat.org/ui/p/metis ### Badges - EVM: This project uses the Ethereum Virtual Machine to run its smart contracts and supports the Solidity programming language - Ethereum with blobs: This project is posting its data to Ethereum as blobs - Fork of OVM: The project is a fork of the Optimistic Virtual Machine ## Value Secured The interactive TVS charts are shown on [the HTML page](https://ethbeat.org/layer2s/projects/metis#tvs). Token by token: [TVS breakdown](https://ethbeat.org/layer2s/projects/metis/tvs-breakdown). - [TVS chart (JSON)](https://ethbeat.org/api/scaling/tvs/metis) - [TVS breakdown by token (JSON)](https://ethbeat.org/api/scaling/tvs/metis/breakdown) ## Activity The interactive activity chart is shown on [the HTML page](https://ethbeat.org/layer2s/projects/metis#activity). - [Activity chart (JSON)](https://ethbeat.org/api/scaling/activity/metis) ## Onchain costs The section shows the operating costs that L2s pay to Ethereum. The interactive costs chart is shown on [the HTML page](https://ethbeat.org/layer2s/projects/metis#onchain-costs). ### Tracked transactions #### Batch submissions - transfer: 2025-05-14 14:59 UTC - now; currently used; from: [0xaE4d46bD9117Cb017C5185844699c51107cB28a9](https://etherscan.io/address/0xaE4d46bD9117Cb017C5185844699c51107cB28a9); to: [0xFf00000000000000000000000000000000001088](https://etherscan.io/address/0xFf00000000000000000000000000000000001088) #### State updates - functionCall: 2024-03-21 03:48 UTC - now; currently used; address: [0xA2FaAAC9120c1Ff75814F0c6DdB119496a12eEA6](https://etherscan.io/address/0xA2FaAAC9120c1Ff75814F0c6DdB119496a12eEA6); selector: 0x5b297172; signature: `function appendStateBatch(bytes32[] _batch, uint256 _shouldStartAtElement, bytes32 _lastBatchBlockHash, uint256 _lastBatchBlockNumber)` - functionCall: 2024-03-21 03:48 UTC - now; currently used; address: [0xA2FaAAC9120c1Ff75814F0c6DdB119496a12eEA6](https://etherscan.io/address/0xA2FaAAC9120c1Ff75814F0c6DdB119496a12eEA6); selector: 0x0a17d699; signature: `function appendStateBatchByChainId(uint256 _chainId, bytes32[] _batch, uint256 _shouldStartAtElement, string _proposer, bytes32 _lastBatchBlockHash, uint256 _lastBatchBlockNumber)` ## Data posted This section shows how much data the project publishes to Ethereum over time. It leaves out data posted to other data-availability (DA) layers. The project currently posts data to [Ethereum](https://ethbeat.org/projects/ethereum). The interactive data posted chart is shown on [the HTML page](https://ethbeat.org/layer2s/projects/metis#data-posted). ### Tracked transactions #### Blob submissions - DA layer Ethereum: from block 22472728 to now; currently used; inbox: [0xFf00000000000000000000000000000000001088](https://etherscan.io/address/0xFf00000000000000000000000000000000001088); sequencers: [0xaE4d46bD9117Cb017C5185844699c51107cB28a9](https://etherscan.io/address/0xaE4d46bD9117Cb017C5185844699c51107cB28a9) ## Liveness This section shows how "live" the project's operators are by displaying how frequently they submit transactions of the selected type. It also highlights anomalies - significant deviations from their typical schedule. No ongoing anomalies detected. The interactive liveness chart is shown on [the HTML page](https://ethbeat.org/layer2s/projects/metis#liveness). ### Tracked transactions #### Batch submissions - transfer: 2025-05-14 14:59 UTC - now; currently used; from: [0xaE4d46bD9117Cb017C5185844699c51107cB28a9](https://etherscan.io/address/0xaE4d46bD9117Cb017C5185844699c51107cB28a9); to: [0xFf00000000000000000000000000000000001088](https://etherscan.io/address/0xFf00000000000000000000000000000000001088) #### State updates - functionCall: 2024-03-21 03:48 UTC - now; currently used; address: [0xA2FaAAC9120c1Ff75814F0c6DdB119496a12eEA6](https://etherscan.io/address/0xA2FaAAC9120c1Ff75814F0c6DdB119496a12eEA6); selector: 0x5b297172; signature: `function appendStateBatch(bytes32[] _batch, uint256 _shouldStartAtElement, bytes32 _lastBatchBlockHash, uint256 _lastBatchBlockNumber)` - functionCall: 2024-03-21 03:48 UTC - now; currently used; address: [0xA2FaAAC9120c1Ff75814F0c6DdB119496a12eEA6](https://etherscan.io/address/0xA2FaAAC9120c1Ff75814F0c6DdB119496a12eEA6); selector: 0x0a17d699; signature: `function appendStateBatchByChainId(uint256 _chainId, bytes32[] _batch, uint256 _shouldStartAtElement, string _proposer, bytes32 _lastBatchBlockHash, uint256 _lastBatchBlockNumber)` ### Last 30 day anomalies All liveness anomalies detected for this project in the last 30 days, helping you review recent downtime and availability issues. - No state updates were performed for 5h 24m (from 2026-10-23 10:25 UTC until 2026-10-23 15:49 UTC). These typically occur every 39m 51s on average. - No tx data submissions were performed for 5h 20m (from 2026-10-23 10:22 UTC until 2026-10-23 15:42 UTC). These typically occur every 38m 54s on average. - No state updates were performed for 5d 7h (from 2026-06-13 03:34 UTC until 2026-06-18 11:05 UTC). These typically occur every 39m 51s on average. - No tx data submissions were performed for 5d 7h (from 2026-06-13 03:26 UTC until 2026-06-18 11:02 UTC). These typically occur every 38m 54s on average. - No tx data submissions were performed for 8h 19m (from 2025-09-02 02:47 UTC until 2025-09-02 11:06 UTC). These typically occur every 38m 54s on average. ## Milestones & Incidents - 2025-05-13: [Metis starts using blobs](https://etherscan.io/tx/0x1c28c8e7b89c5da880a52c3e4e4ca6da332816e72c0600d55c18479be897c8b7). Permissioned batcher is posting blobs to the inbox. - 2023-03-15: [Data hashes posted to EOA](https://etherscan.io/tx/0x4dbb3a65f411b2319dc5c824804a6593d6bf6b482a76493e9089e1e055267123). Hashes to data blobs are now posted to EOA address instead of CanonicalTransactionChain contract. - 2022-04-12: [Data availability change](https://metisdao.medium.com/decentralized-storage-goes-live-da876dc6eb70). Update moving data to an off-chain committee. - 2021-11-19: [Mainnet Launch](https://metisdao.medium.com/metis-to-launch-andromeda-honoring-our-commitment-to-decentralization-fa2d03394398). Public launch of Metis Layer 2 Andromeda, based on the Optimism codebase. ## Risk summary ### Funds can be stolen if 1. a contract receives a malicious code upgrade. There is no delay on code upgrades (CRITICAL), 2. the GameCreator colludes with the StateDeleter to block Challenges in the proof system (CRITICAL). ### Funds can be lost if 3. there are mistakes in the highly complex OVM implementation. ### Funds can be frozen if 4. the centralized validator goes down. Users cannot produce blocks themselves and exiting the system requires new block production (CRITICAL), 5. an invalid state root is successfully disputed but it is not deleted by the permissioned MVM_Fraud_Verifier (Metis Security Council minority). ### Users can be censored if 6. the operator refuses to include their transactions. ### MEV can be extracted if 7. the operator exploits their centralized position and frontruns user transactions. ## Risk analysis ### Sequencer failure No mechanism (sentiment: bad) There is no mechanism to have transactions be included if the sequencer is down or censoring. The single address acting as a sequencer on L1 is not trustlessly linkable to the claim of multiple decentralized sequencers being used. ### State validation Fraud proofs (INT) (7d challenge period; sentiment: bad) Fraud proofs allow actors watching the chain to prove that the state is incorrect. Interactive proofs (INT) require multiple transactions over time to resolve.Anyone can submit challenge requests. However, permissioned actors are needed to create the challenge and to delete successfully disputed state roots. Additionally, the current permissioned actors (GameCreator and Security Council minority) can collude and finalize malicious state roots. ### Data availability Onchain (sentiment: good) All of the data needed for proof construction is published on Ethereum L1. ### Exit window None (sentiment: bad) There is no window for users to exit in case of an unwanted upgrade since contracts are instantly upgradable. ### Proposer failure Security Council minority (sentiment: warning) Only the whitelisted proposer can update state roots on L1, so in the event of failure the withdrawals are frozen. The Security Council minority can be alerted to enforce censorship resistance because they own the proposer registry, controlling the active whitelisted proposer. ## Stage Metis Andromeda is not even a Stage 0 project. **Warning:** The requirement for available node software is under review ### Stage 0 4 requirements met, 1 under review. - Met: A complete and functional proof system is deployed. - Met: The project calls itself a rollup. - Met: State roots are posted to Ethereum L1. - Met: Inputs for the state transition function are posted to Ethereum L1. - Under review: A source-available node exists that can recreate the state from Ethereum L1 data. Please note that the ETHBEAT team has not verified the validity of the node source code. [View code](https://github.com/MetisProtocol/mvm) ### Stage 1 3 issues need fixing. **Principle** - Issue: Compromising ≥75% of the Security Council should be the only way (other than bugs) for a rollup to indefinitely block an L2→L1 message (e.g. a withdrawal) or push an invalid L2→L1 message (e.g. an invalid withdrawal) with a <7d exit window. **Guidelines** - Met: The Security Council is properly set up [(List of members)](https://docs.metis.io/andromeda/network/council). - Issue: Users' withdrawals can be censored by the permissioned operators. - Issue: Upgrades executed by actors with more centralized control than a Security Council provide less than 7d for users to exit if the permissioned operator is down or censoring. ### Stage 2 2 issues need fixing. - Issue: Upgrades unrelated to onchain provable bugs provide less than 30d to exit. - Issue: The Security Council's actions are not confined to onchain provable bugs. [Learn more about Stages](https://ethbeat.org/stages). Please keep in mind that these stages do not reflect project security, this is an opinionated assessment of project maturity based on subjective criteria, created with a goal of incentivizing projects to push toward better decentralization. Each team may have taken different paths to achieve this goal. ## Data availability ### All data required for proofs is published on chain Transaction data is posted to Ethereum using blobs. Initially, data was posted to the CanonicalTransactionChain contract, then it moved to just posting hashes to an EOA address, and as of May 2025, the system uses blobs for data availability. **References** - [Blobs batcher - Metis source code](https://github.com/MetisProtocol/mvm/blob/e816c6c461a8e91db3a9ccaa33d2d0f6a60633d5/go/op-program/chainconfig/rollupcfg.go#L85) Learn more about the DA layer here: [Ethereum](https://ethbeat.org/projects/ethereum) ## State validation ### State root proposals Dispute game contracts for state validation are deployed but not used to propose state roots as in standard OP Stack chains. Instead, the permissioned proposer submits state roots through the appendStateBatch function in the `StateCommitmentChain` contract. A state root gets confirmed if the challenge period has passed and the state batch is not disputed. **References** - [StateCommitmentChain - Etherscan source code](https://etherscan.io/address/0xA738573Ec0FD7959BfA60Aaa8a23Fe7BEC6c4Bd7#code) ### Challenges Games can only be created on demand by the permissioned GameCreator should a dispute be requested. Users can signal the need for a dispute by bonding 4.0 METIS and calling the dispute() function of the `DisputeGameFactory`. If a game is not created by the `GameCreator` within the dispute timeout period of 2d, anyone can call `disputeTimeout()`. This function calls `saveDisputedBatchTimeout()` on the `StateCommitmentChain`, which marks the batch as disputed. This blocks L2->L1 messaging and withdrawals for the disputed batch and any subsequent batches until the dispute is deleted. Should a game be created and resolved, disputed state batches can be marked as such in the `StateCommitmentChain`. Then, these flagged batches can be deleted (within the fraud proof window). Batches can only be deleted by the MVM_Fraud_Verifier contract address, which currently corresponds to the `Metis Security Council` minority. **Risks** - Funds can be frozen if an invalid state root is successfully disputed but it is not deleted by the permissioned MVM_Fraud_Verifier (Metis Security Council minority). - Funds can be stolen if the GameCreator colludes with the StateDeleter to block Challenges in the proof system (CRITICAL). **References** - [DisputeGameFactory - No games are created to propose state roots](https://etherscan.io/address/0x1C2f0A08762f0aD4598fB5de8f9D6626a4e4aeE3) ## Upgrades & Governance ### Past upgrades The metrics include upgrades on the currently used proxy contracts. Historical proxy contracts and changes of such are not included. - Count of upgrades: 7 - Last upgrade: 1y 3mo ago - Avg upgrade interval: 1y 1mo - 2025-07-23 04:50 UTC, upgrade of [L1CrossDomainMessenger](https://etherscan.io/address/0x081D1101855bD523bA69A9794e0217F0DB6323ff#code): transaction [0xcbea695d784f8a5c4a51baebf910f7c3f449b48d690b52c937ec1dc1d5458e2b](https://etherscan.io/tx/0xcbea695d784f8a5c4a51baebf910f7c3f449b48d690b52c937ec1dc1d5458e2b), implementations: [0xc1Ce5240B42AB158027095f658d530F9989b414F](https://etherscan.io/address/0xc1Ce5240B42AB158027095f658d530F9989b414F#code) ([diff](https://disco.ethbeat.org/diff/eth:0x8bF439ef7167023F009E24b21719Ca5f768Ecb36/eth:0xc1Ce5240B42AB158027095f658d530F9989b414F)) - 2025-07-23 04:50 UTC, upgrade of [DisputeGameFactory](https://etherscan.io/address/0x1C2f0A08762f0aD4598fB5de8f9D6626a4e4aeE3#code): transaction [0xcbea695d784f8a5c4a51baebf910f7c3f449b48d690b52c937ec1dc1d5458e2b](https://etherscan.io/tx/0xcbea695d784f8a5c4a51baebf910f7c3f449b48d690b52c937ec1dc1d5458e2b), implementations: [0x61B220bbfeF9A94163764928B039d85e94A509d9](https://etherscan.io/address/0x61B220bbfeF9A94163764928B039d85e94A509d9#code) ([diff](https://disco.ethbeat.org/diff/eth:0xEc2EB7E045EB9D835a93113DABaa6Ae7a6776E45/eth:0x61B220bbfeF9A94163764928B039d85e94A509d9)) - 2025-07-23 04:50 UTC, upgrade of [FaultProofLockingPool](https://etherscan.io/address/0x2CA48fF3bBC59Bff859543E63233116ecdA3DCBb#code): transaction [0xcbea695d784f8a5c4a51baebf910f7c3f449b48d690b52c937ec1dc1d5458e2b](https://etherscan.io/tx/0xcbea695d784f8a5c4a51baebf910f7c3f449b48d690b52c937ec1dc1d5458e2b), implementations: [0x1061528C33b8034952fb7355cC481e193b29FCa6](https://etherscan.io/address/0x1061528C33b8034952fb7355cC481e193b29FCa6#code) ([diff](https://disco.ethbeat.org/diff/eth:0xE141db3Ed25A58BB8BBd331AE373605108aaAAe4/eth:0x1061528C33b8034952fb7355cC481e193b29FCa6)) - 2025-06-19 02:52 UTC, upgrade of [FaultProofLockingPool](https://etherscan.io/address/0x2CA48fF3bBC59Bff859543E63233116ecdA3DCBb#code): transaction [0x6e859980e53cbf8c232b3c491787274de2ec78c2af68069d0d910cd452fd99a5](https://etherscan.io/tx/0x6e859980e53cbf8c232b3c491787274de2ec78c2af68069d0d910cd452fd99a5), implementations: [0xE141db3Ed25A58BB8BBd331AE373605108aaAAe4](https://etherscan.io/address/0xE141db3Ed25A58BB8BBd331AE373605108aaAAe4#code) ([diff](https://disco.ethbeat.org/diff/eth:0x6d554097D5784a7184650B95ba7EA359d162Dbb7/eth:0xE141db3Ed25A58BB8BBd331AE373605108aaAAe4)) - 2025-06-19 02:52 UTC, upgrade of [DisputeGameFactory](https://etherscan.io/address/0x1C2f0A08762f0aD4598fB5de8f9D6626a4e4aeE3#code): transaction [0xfca0728fa948cf329424111232b2c80521c66bf13f49e9fff118a8de282f1cd5](https://etherscan.io/tx/0xfca0728fa948cf329424111232b2c80521c66bf13f49e9fff118a8de282f1cd5), implementations: [0xEc2EB7E045EB9D835a93113DABaa6Ae7a6776E45](https://etherscan.io/address/0xEc2EB7E045EB9D835a93113DABaa6Ae7a6776E45#code) ([diff](https://disco.ethbeat.org/diff/eth:0xb864eEca2a047058Eb1e28e43FEAEBE8F38843B3/eth:0xEc2EB7E045EB9D835a93113DABaa6Ae7a6776E45)) - 2025-05-13 09:04 UTC, deployment of [FaultProofLockingPool](https://etherscan.io/address/0x2CA48fF3bBC59Bff859543E63233116ecdA3DCBb#code): transaction [0x5955dbbc10911769fdc4826d6eac373f3a88f9ea22fa07fc91dedbddd50df93c](https://etherscan.io/tx/0x5955dbbc10911769fdc4826d6eac373f3a88f9ea22fa07fc91dedbddd50df93c), implementations: [0x6d554097D5784a7184650B95ba7EA359d162Dbb7](https://etherscan.io/address/0x6d554097D5784a7184650B95ba7EA359d162Dbb7#code) - 2025-05-13 09:04 UTC, deployment of [DelayedWMetis](https://etherscan.io/address/0xfA947f70c3509d5b70A606e871aE0C85397D0738#code): transaction [0x01245dfca81d0eee17a1ed68eebcf822d05a17ad298e3879cd40002932079a12](https://etherscan.io/tx/0x01245dfca81d0eee17a1ed68eebcf822d05a17ad298e3879cd40002932079a12), implementations: [0xa2033fbb6213B2233a6998391ccc8E070BcC1B51](https://etherscan.io/address/0xa2033fbb6213B2233a6998391ccc8E070BcC1B51#code) - 2025-05-13 09:02 UTC, deployment of [DisputeGameFactory](https://etherscan.io/address/0x1C2f0A08762f0aD4598fB5de8f9D6626a4e4aeE3#code): transaction [0xbf5ee49e50e078552444649c10f208c22d68ec3854b6922449f8115d9c934733](https://etherscan.io/tx/0xbf5ee49e50e078552444649c10f208c22d68ec3854b6922449f8115d9c934733), implementations: [0xb864eEca2a047058Eb1e28e43FEAEBE8F38843B3](https://etherscan.io/address/0xb864eEca2a047058Eb1e28e43FEAEBE8F38843B3#code) - 2024-06-29 01:46 UTC, upgrade of [LockingInfo](https://etherscan.io/address/0x0fe382b74C3894B65c10E5C12ae60Bbd8FAf5b48#code): transaction [0x356768c4abdb1df76773881dc3c4d8ad7af36ac2154baaec83c3f878aedb6b57](https://etherscan.io/tx/0x356768c4abdb1df76773881dc3c4d8ad7af36ac2154baaec83c3f878aedb6b57), implementations: [0x0D30F0d7934f53aaF6a1630A4c109AF4513a65cC](https://etherscan.io/address/0x0D30F0d7934f53aaF6a1630A4c109AF4513a65cC#code) ([diff](https://disco.ethbeat.org/diff/eth:0x8db636418F10d514c4c68235ee3d640dDBCC7a8a/eth:0x0D30F0d7934f53aaF6a1630A4c109AF4513a65cC)) - 2024-06-29 01:46 UTC, upgrade of [LockingPool](https://etherscan.io/address/0xD54c868362C2098E0E46F12E7D924C6A332952Dd#code): transaction [0x356768c4abdb1df76773881dc3c4d8ad7af36ac2154baaec83c3f878aedb6b57](https://etherscan.io/tx/0x356768c4abdb1df76773881dc3c4d8ad7af36ac2154baaec83c3f878aedb6b57), implementations: [0xD8f38c831E5032d23065Eaaee8c0620e17c04D60](https://etherscan.io/address/0xD8f38c831E5032d23065Eaaee8c0620e17c04D60#code) ([diff](https://disco.ethbeat.org/diff/eth:0xd87Da73F82abe83915d61342199A4690cfdf4718/eth:0xD8f38c831E5032d23065Eaaee8c0620e17c04D60)) - 2024-03-13 07:28 UTC, deployment of [LockingPool](https://etherscan.io/address/0xD54c868362C2098E0E46F12E7D924C6A332952Dd#code): transaction [0x5a9766b27606f1c41f132a4a900131f39ab49a27607d27db667ecc1de2f9f0d1](https://etherscan.io/tx/0x5a9766b27606f1c41f132a4a900131f39ab49a27607d27db667ecc1de2f9f0d1), implementations: [0xd87Da73F82abe83915d61342199A4690cfdf4718](https://etherscan.io/address/0xd87Da73F82abe83915d61342199A4690cfdf4718#code) - 2024-03-13 07:27 UTC, deployment of [LockingInfo](https://etherscan.io/address/0x0fe382b74C3894B65c10E5C12ae60Bbd8FAf5b48#code): transaction [0x37356e30602c7e4e6b05129e3a0375c3fbeb08856eb198ef7ec2a6c75fd3ee78](https://etherscan.io/tx/0x37356e30602c7e4e6b05129e3a0375c3fbeb08856eb198ef7ec2a6c75fd3ee78), implementations: [0x8db636418F10d514c4c68235ee3d640dDBCC7a8a](https://etherscan.io/address/0x8db636418F10d514c4c68235ee3d640dDBCC7a8a#code) - 2021-11-16 15:26 UTC, deployment of [L1CrossDomainMessenger](https://etherscan.io/address/0x081D1101855bD523bA69A9794e0217F0DB6323ff#code): transaction [0xa752a872bee0f5d9be41b00f85e4d0b5e958f5644f5609dd0907dd74263ff7f4](https://etherscan.io/tx/0xa752a872bee0f5d9be41b00f85e4d0b5e958f5644f5609dd0907dd74263ff7f4), implementations: [0x8bF439ef7167023F009E24b21719Ca5f768Ecb36](https://etherscan.io/address/0x8bF439ef7167023F009E24b21719Ca5f768Ecb36#code) ## Updates Each date links the update on the HTML page, which also shows its contract diffs. ### [2025-09-30 17:07 UTC](https://ethbeat.org/layer2s/projects/metis?update=f98bc996) (high severity, 16 changes) Introduced MVM_ProposerRegistry. https://disco.l2beat.com/diff/eth:0x9334EE2D4CEAe693D4D6aAc8371043bcCEECDCe1/eth:0xA738573Ec0FD7959BfA60Aaa8a23Fe7BEC6c4Bd7 ### [2025-09-15 12:24 UTC](https://ethbeat.org/layer2s/projects/metis?update=bdfc03eb) (1 change) Ignore gas price value. ### [2025-09-12 12:29 UTC](https://ethbeat.org/layer2s/projects/metis?update=7bdd7702) (high severity, 15 changes) - StateCommitmentChain implementation change: https://disco.l2beat.com/diff/eth:0x49A4D7ae835eA21c919B363fa88614b61d7985E7/eth:0x9334EE2D4CEAe693D4D6aAc8371043bcCEECDCe1 explicit require makes deletion only possible for batches that are already marked disputed - ### [2025-08-14 07:47 UTC](https://ethbeat.org/layer2s/projects/metis?update=ce37937a) (22 changes) Most admins and owners moved to new Multisig ('Metis Multisig 2'). Metis has not published signers of this new 6/8 but they plan to make it a Security Council. Compare disco for the ~5 critical roles still held by the old multisig ('Metis Multisig'). - [MVM_CanonicalTransaction](https://etherscan.io/address/0x6A1DB7d799FBA381F2a518cA859ED30cB8E1d41a) admin - [DisputeGameFactory](https://etherscan.io/address/0x1C2f0A08762f0aD4598fB5de8f9D6626a4e4aeE3) gamecreator - [MVM_L2ChainManagerOnL1](https://etherscan.io/address/0xf3d58D1794f2634d6649a978f2dc093898FEEBc0) admin - [Lib_AddressManager](https://etherscan.io/address/0x918778e825747a892b17C66fe7D24C618262867d) manager - [MVM_Verifier](https://etherscan.io/address/0xe70DD4dE81D282B3fa92A6700FEE8339d2d9b5cb) admin security council reference: https://docs.metis.io/andromeda/network/council ### [2025-08-06 09:34 UTC](https://ethbeat.org/layer2s/projects/metis?update=d929917a) (11 changes) New dispute game, no diff: https://disco.l2beat.com/diff/eth:0xD362F83945118dC953924Da1E30D7029b9Cf113d/eth:0x388DEfE576077257074F77c727aA5F2e3B815E21 the state that we can see also did not change. all other changes are config related (i checked manually). ### [2025-07-28 17:42 UTC](https://ethbeat.org/layer2s/projects/metis?update=9a0d9eea) (high severity, 38 changes) Upgraded the proof system, new flow: 1. A watcher requests a dispute by bonding METIS (unchanged). 2. The request waits for a game to be deployed (by a whitelisted gameCreator) (unchanged) 3. If the deadline arrives and no game exists, anyone can call disputeTimeout. The difference here is that disputeTimeout is not just a flagging function, but it now calls saveDisputedBatchTimeout on the StateCommitmentChain, which marks the batch root as disputed with disputedBatches[root]=true. 4. Because the batch is now disputed, all later safety checks treat it as not final until MVM_Verifier deletes it. In particular, L2->L1 messaging/withdrawal is blocked for the batch root since the relayMessage() function in the L1CrossDomainMessanger eventually (in _verifyStateRootProofByChainId()) calls the ovmStateCommitmentChain to check the earliestDisputedBlockNumber, and any withdrawal whose L2 block ≥ earliestDisputedBlockNumber reverts until the dispute batch is deleted. ### [2025-07-14 12:45 UTC](https://ethbeat.org/layer2s/projects/metis?update=aeddf1e2) (26 changes) Discovery rerun on the same block number with only config-related changes. ### [2025-06-20 09:04 UTC](https://ethbeat.org/layer2s/projects/metis?update=41fc2562) (high severity, 34 changes) The game creator role is still permissioned. The DisputeGameFactory is updated to contain a disputeTimeout function. The function allows to transfer a bond from the new FaultProofLockingPool contract (through timeoutSlashs()) to the dispute creator (which created the dispute with dispute() on the DisputeGameFactory), should a game not be created within the DISPUTE_TIMEOUT_PERIOD (2 days from the dispute creation). Sequencers are supposed to deposit METIS tokens to this pool so that it can be slashed in case of successful dispute. In practice should a malicious state root be proposed and unchallenged by the Metis multisig, the user disputing gets partly compensated with a bond from the pool (currently an unknown amount as it depends on deposits), while the potential loss amounts to the full value in the bridge (~130m). ### [2025-05-23 13:41 UTC](https://ethbeat.org/layer2s/projects/metis?update=03e5f33e) (2 changes) Templatized contracts. Batcher is posting blobs to the inbox, the authorized batcher is in L2 node config (https://github.com/MetisProtocol/mvm/blob/e816c6c461a8e91db3a9ccaa33d2d0f6a60633d5/go/op-program/chainconfig/rollupcfg.go#L85) However, DisputeGameFactory is not used, meaning that no games a created. In theory, games could be played and disputed state batches can be marked as such in the StateCommitmentChain. Then, these flagged batches could be deleted (within the fraud proof window). However, batches can only be deleted from the MVM_Verifier contract, which currently is set to a Multisig. So proof system could be operational if a) games are created b) Multisig acts as permissioned challenger. ### [2025-05-16 12:25 UTC](https://ethbeat.org/layer2s/projects/metis?update=130bb381) (high severity, 15 changes) StateCommitmentChain. A heavily modified DisputeGameFactory/FaultDisputeGame is referenced but apparently not used as proof system yet. Also upgradeable by EOA. ### [2024-07-01 11:22 UTC](https://ethbeat.org/layer2s/projects/metis?update=c3669469) (high severity, 4 changes) Small upgrade of LockingInfo and LockingPool to add a `withdraw()` function that allows whitelisted sequencers to withdraw their collateral. No other changes. ### [2024-05-22 16:35 UTC](https://ethbeat.org/layer2s/projects/metis?update=6544a22d) (15 changes) One new signer (`0x1577D2b835f561BD021E3219Cd786181D0e17ff5`) is added to Metis Multisig and RewardEscrowerMultisig, which also gains another signer from Metis Multisig. ### [2024-05-06 10:30 UTC](https://ethbeat.org/layer2s/projects/metis?update=6facfff0) (3 changes) #### Enki liquid Metis staking A sequencer is added to the LockingPool at index 4. It seems to belong to [Enki](https://enkixyz.com/), a new liquid staking protocol on Metis L2. Enki deployed multiple contracts on L1 (Dealer, SequencerAgent) and L2 (eMetisMinter) to support their liquid staking protocol. The METIS gets bridged natively from L2 (eMetisMinter) to the Dealer contract on L1 and then deposited by SequencerAgent contracts through the Dealer to the standard LockingInfo contract. Rewards accrue to eMetisMinter on L2. #### Rewards change METIS rewards for sequencers have been increased by ~50% to 0.001504744 METIS (~10 cents, or 25% APY for 20k METIS per sequencer) per L1 block (L1 block because L2 block times are dynamic). ### [2024-04-27 06:12 UTC](https://ethbeat.org/layer2s/projects/metis?update=6f2e71cc) (4 changes) Owners of StateCommitment Chains and ProxyAdmin that upgrades LockingPool and LockingInfo contracts changed from EOA to Metis MultiSig ### [2024-04-24 15:11 UTC](https://ethbeat.org/layer2s/projects/metis?update=bd5e6677) (16 changes) Discovery now includes the addresses related to the Metis sequencer decentralization efforts. The current discovered.json in ProtocolBeat shows a good overview. Batches still get posted to `0xFf00000000000000000000000000000000001088`. The logic for the Sequencer Pool MPC that results in posted hash batches on Ethereum is off-chain and does not get verified on ethereum. LockinPool, LockingInfo (via ProxyAdmin) and SCC have an EOA as Admin. #### LockingInfo Escrow for METIS locked by bonded Sequencers. #### LockingPool Registry for Sequencers and the MPC address. Four sequencers are currently bonded of which 3 are funded by Metis and 1 is funded by Equilibria Finance. #### rewardPayer Multisig 2/2 Multisig that funds sequencing rewards. #### StakingPool and StakingPoolManager Deployed by Equilibria Finance. StakingPool is registered as a Sequencer owner (manages a Sequencer). Currently not included in discovery as it seems to be external to Metis. ### [2024-03-22 09:39 UTC](https://ethbeat.org/layer2s/projects/metis?update=eb0f012a) (high severity, 4 changes) The State Commitment Chain (SCC) is upgraded to a new implementation behind a proxy and the default proposer is changed. #### Decentralized proposer changes in the SCC The SCC now disregards the Canonical Transaction Chain (CTC). The logic for accepting state batches from permissionless proposers in the SCC is now present in appendStateBatch(), but the BondManager still disqualifies any non-default proposer and thus in practice the sequencer is still centralized until the BondManager code gets updated to actually verify collateralization when called. The old SCC rejected any third party state batches during a 'SEQUENCER_PUBLISH_WINDOW' of half a year, which effectively made the default sequencer the only one. This has now been deprecated in the new SCC implementation. ### [2024-03-14 09:14 UTC](https://ethbeat.org/layer2s/projects/metis?update=e8798840) (8 changes) Two signers are added to the multisig. ### [2023-12-21 10:01 UTC](https://ethbeat.org/layer2s/projects/metis?update=bb6fc253) (1 change) The total supply of the Metis Token has been increased to 10000000. ## Operator ### The system has a decentralized sequencer set As of April 2024 Metis uses a permissioned sequencer pool running a Tendermint consensus. Once consensus is reached on a block, an MPC address is used to submit a block hash to Ethereum. The infrastructure to manage the MPC is offchain and not trustless because Ethereum does not verify the validity of MPC address. **Risks** - MEV can be extracted if the operator exploits their centralized position and frontruns user transactions. **References** - [Decentralized Sequencer - Metis documentation](https://docs.metis.io/andromeda/sequencer/architecture/mpc) ### Users can't force any transaction There is no general mechanism to force the sequencer to include the transaction. **Risks** - Users can be censored if the operator refuses to include their transactions. **References** - [CanonicalTransactionChain - Etherscan source code](https://etherscan.io/address/0x56a76bcC92361f6DF8D75476feD8843EdC70e1C9#code) ## Withdrawals ### Regular messaging The user initiates L2->L1 messages by submitting a regular transaction on this chain. When the block containing that transaction is settled, the message becomes available for processing on L1. The process of block finalization usually takes several days to complete. **Risks** - Funds can be frozen if the centralized validator goes down. Users cannot produce blocks themselves and exiting the system requires new block production (CRITICAL). **References** - [Transaction finality - Metis documentation](https://docs.metis.io/andromeda/sequencer/architecture/transaction) ## Other considerations ### EVM compatible smart contracts are supported Metis uses the Optimistic Virtual Machine (OVM) 2.0 to execute transactions. **Risks** - Funds can be lost if there are mistakes in the highly complex OVM implementation. **References** - [MVM repository - Metis source code](https://github.com/MetisProtocol/mvm) ## Permissions Explore these contracts and permissions in Disco, ETHBEAT's contract explorer: https://disco.ethbeat.org/ui/p/metis ### Ethereum #### Actors ##### Metis Security Council Addresses: [0xbf1752DE62d825aF0634F514226F881a449874b6](https://etherscan.io/address/0xbf1752DE62d825aF0634F514226F881a449874b6) A Multisig with 6/8 threshold. - Can upgrade **with no delay** - L1CrossDomainMessenger - LockingInfo [via: ProxyAdmin] - DisputeGameFactory [via: ProxyAdmin] - FaultProofLockingPool [via: ProxyAdmin] - L1StandardBridge - MVM_InboxSenderManager - StateCommitmentChain - LockingPool [via: ProxyAdmin] - DelayedWMetis [via: ProxyAdmin] Participants (8): [0xc27896E7b4172D6B1C21177D91fd64A935EEc4EA](https://etherscan.io/address/0xc27896E7b4172D6B1C21177D91fd64A935EEc4EA), [0xF81F0E3490cF754dFB3247e5BF202601aA9C49f4](https://etherscan.io/address/0xF81F0E3490cF754dFB3247e5BF202601aA9C49f4), [0x9A73D57BB1fB280C5672A13f655675De25F13b70](https://etherscan.io/address/0x9A73D57BB1fB280C5672A13f655675De25F13b70), [0x308400748938E14789A40222b45163D073167136](https://etherscan.io/address/0x308400748938E14789A40222b45163D073167136), [0x4361eD603737246b36cABf27F26d63f2A691feD5](https://etherscan.io/address/0x4361eD603737246b36cABf27F26d63f2A691feD5), [0x671babD79cf53BE512F9549D3C30EB1A066aAeb8](https://etherscan.io/address/0x671babD79cf53BE512F9549D3C30EB1A066aAeb8), [0x886d5203cE6EDc8BA719ea5931E689606e84492B](https://etherscan.io/address/0x886d5203cE6EDc8BA719ea5931E689606e84492B), [0xDEe0AE49547c50E6B687f9242333E39b904fb2af](https://etherscan.io/address/0xDEe0AE49547c50E6B687f9242333E39b904fb2af) **References** - [Security Council members - Metis Docs](https://docs.metis.io/andromeda/network/council) ##### Metis Multisig Addresses: [0x48fE1f85ff8Ad9D088863A42Af54d06a1328cF21](https://etherscan.io/address/0x48fE1f85ff8Ad9D088863A42Af54d06a1328cF21) A Multisig with 4/9 threshold. Can pause, censor, instantly upgrade the bridge and upgrade other critical contracts in the system. - Can interact with DisputeGameFactory - Can create new dispute games Participants (9): [0x1577D2b835f561BD021E3219Cd786181D0e17ff5](https://etherscan.io/address/0x1577D2b835f561BD021E3219Cd786181D0e17ff5), [0x36B892a31b311E5e9960739A69D2dF0aa0F81A01](https://etherscan.io/address/0x36B892a31b311E5e9960739A69D2dF0aa0F81A01), [0x001088E383A00ff4ab36F37f7021Cb6d7B415751](https://etherscan.io/address/0x001088E383A00ff4ab36F37f7021Cb6d7B415751), [0x217fD54d336f710F8aee19572dBfBf0B2297ed69](https://etherscan.io/address/0x217fD54d336f710F8aee19572dBfBf0B2297ed69), [0xB383E1331dEE29864b68f7D84b0dC289F770d846](https://etherscan.io/address/0xB383E1331dEE29864b68f7D84b0dC289F770d846), [0x7a9059F4A6e50090e4f55994d465918200AB4454](https://etherscan.io/address/0x7a9059F4A6e50090e4f55994d465918200AB4454), [0x02058Bb1d98D88087008F2ac1273584591380e3F](https://etherscan.io/address/0x02058Bb1d98D88087008F2ac1273584591380e3F), [0xB961047013F974C5b6B6F8dA4402379525316550](https://etherscan.io/address/0xB961047013F974C5b6B6F8dA4402379525316550), [0xa6D8941F935932a531A856C2e48046DA73a1098E](https://etherscan.io/address/0xa6D8941F935932a531A856C2e48046DA73a1098E) ##### Metis Security Council Minority Addresses: [0xAd07701EE9348d2B9e7De061883C10574c543279](https://etherscan.io/address/0xAd07701EE9348d2B9e7De061883C10574c543279) A Multisig with 2/8 threshold. - Can interact with Lib_AddressManager - Can delete batches from the StateCommitmentChain Participants (8): [0xc27896E7b4172D6B1C21177D91fd64A935EEc4EA](https://etherscan.io/address/0xc27896E7b4172D6B1C21177D91fd64A935EEc4EA), [0xF81F0E3490cF754dFB3247e5BF202601aA9C49f4](https://etherscan.io/address/0xF81F0E3490cF754dFB3247e5BF202601aA9C49f4), [0x9A73D57BB1fB280C5672A13f655675De25F13b70](https://etherscan.io/address/0x9A73D57BB1fB280C5672A13f655675De25F13b70), [0x308400748938E14789A40222b45163D073167136](https://etherscan.io/address/0x308400748938E14789A40222b45163D073167136), [0x4361eD603737246b36cABf27F26d63f2A691feD5](https://etherscan.io/address/0x4361eD603737246b36cABf27F26d63f2A691feD5), [0x671babD79cf53BE512F9549D3C30EB1A066aAeb8](https://etherscan.io/address/0x671babD79cf53BE512F9549D3C30EB1A066aAeb8), [0x886d5203cE6EDc8BA719ea5931E689606e84492B](https://etherscan.io/address/0x886d5203cE6EDc8BA719ea5931E689606e84492B), [0xDEe0AE49547c50E6B687f9242333E39b904fb2af](https://etherscan.io/address/0xDEe0AE49547c50E6B687f9242333E39b904fb2af) ##### RewardEscrowerMultisig Addresses: [0x62478E4eeb4070fE399866aB05e821AB97200947](https://etherscan.io/address/0x62478E4eeb4070fE399866aB05e821AB97200947) A Multisig with 2/4 threshold. Escrows staking rewards for Sequencers. Participants (4): [0x36B892a31b311E5e9960739A69D2dF0aa0F81A01](https://etherscan.io/address/0x36B892a31b311E5e9960739A69D2dF0aa0F81A01), [0x1577D2b835f561BD021E3219Cd786181D0e17ff5](https://etherscan.io/address/0x1577D2b835f561BD021E3219Cd786181D0e17ff5), [0xa6D8941F935932a531A856C2e48046DA73a1098E](https://etherscan.io/address/0xa6D8941F935932a531A856C2e48046DA73a1098E), [0x26eC4FF77DF305d5a9A7660E046dd1c06ce517f6](https://etherscan.io/address/0x26eC4FF77DF305d5a9A7660E046dd1c06ce517f6) ##### EOA 1 Addresses: [0xAaaAA9A2e72753cE09915fee7c0AFa6f34745799](https://etherscan.io/address/0xAaaAA9A2e72753cE09915fee7c0AFa6f34745799) - Can interact with DisputeGameFactory - Can create new dispute games ##### EOA 2 Addresses: [0xaE4d46bD9117Cb017C5185844699c51107cB28a9](https://etherscan.io/address/0xaE4d46bD9117Cb017C5185844699c51107cB28a9) - Can interact with MVM_InboxSenderManager - Allowed to commit transactions from the current layer to the host chain ##### EOA 3 Addresses: [0xf3CEB4C2ef996CdBc95C4E18c6D0CA988CC09040](https://etherscan.io/address/0xf3CEB4C2ef996CdBc95C4E18c6D0CA988CC09040) - Can interact with MVM_ProposerRegistry - Allowed to post new state roots of the current layer to the host chain - Can interact with Lib_AddressManager - Allowed to post new state roots of the current layer to the host chain ## Smart contracts ![A diagram of the smart contract architecture](https://ethbeat.org/static/images/architecture/metis.248edb9c.png) Explore these contracts and permissions in Disco, ETHBEAT's contract explorer: https://disco.ethbeat.org/ui/p/metis ### Ethereum #### L1CrossDomainMessenger Addresses: [0x081D1101855bD523bA69A9794e0217F0DB6323ff](https://etherscan.io/address/0x081D1101855bD523bA69A9794e0217F0DB6323ff#code), [0xc1Ce5240B42AB158027095f658d530F9989b414F](https://etherscan.io/address/0xc1Ce5240B42AB158027095f658d530F9989b414F#code) (Implementation (Upgradable)), [0xbf1752DE62d825aF0634F514226F881a449874b6](https://etherscan.io/address/0xbf1752DE62d825aF0634F514226F881a449874b6#code) (Admin) **Past upgrades** (Count of upgrades: 1, Last upgrade: 1y 3mo ago, Avg upgrade interval: 2y 5mo) - 2025-07-23 04:50 UTC, upgrade of [L1CrossDomainMessenger](https://etherscan.io/address/0x081D1101855bD523bA69A9794e0217F0DB6323ff#code): transaction [0xcbea695d784f8a5c4a51baebf910f7c3f449b48d690b52c937ec1dc1d5458e2b](https://etherscan.io/tx/0xcbea695d784f8a5c4a51baebf910f7c3f449b48d690b52c937ec1dc1d5458e2b), implementations: [0xc1Ce5240B42AB158027095f658d530F9989b414F](https://etherscan.io/address/0xc1Ce5240B42AB158027095f658d530F9989b414F#code) ([diff](https://disco.ethbeat.org/diff/eth:0x8bF439ef7167023F009E24b21719Ca5f768Ecb36/eth:0xc1Ce5240B42AB158027095f658d530F9989b414F)) - 2021-11-16 15:26 UTC, deployment of [L1CrossDomainMessenger](https://etherscan.io/address/0x081D1101855bD523bA69A9794e0217F0DB6323ff#code): transaction [0xa752a872bee0f5d9be41b00f85e4d0b5e958f5644f5609dd0907dd74263ff7f4](https://etherscan.io/tx/0xa752a872bee0f5d9be41b00f85e4d0b5e958f5644f5609dd0907dd74263ff7f4), implementations: [0x8bF439ef7167023F009E24b21719Ca5f768Ecb36](https://etherscan.io/address/0x8bF439ef7167023F009E24b21719Ca5f768Ecb36#code) The L1 Cross Domain Messenger (L1xDM) contract sends messages from L1 to Metis, and relays messages from Metis onto L1. In the event that a message sent from L1 to Metis is rejected for exceeding the Metis epoch gas limit, it can be resubmitted via this contract's replay function. - Roles: - **admin**: Metis Security Council Can be upgraded by: Metis Security Council with no delay #### CanonicalTransactionChain Addresses: [0x56a76bcC92361f6DF8D75476feD8843EdC70e1C9](https://etherscan.io/address/0x56a76bcC92361f6DF8D75476feD8843EdC70e1C9#code) The Canonical Transaction Chain (CTC) contract is an append-only log of transactions which must be applied to the OVM state. Given that transactions batch hashes are sent to an EOA address, it allows any account to enqueue() a transaction, which the Sequencer must eventually append to the rollup state. #### StateCommitmentChain Addresses: [0xA2FaAAC9120c1Ff75814F0c6DdB119496a12eEA6](https://etherscan.io/address/0xA2FaAAC9120c1Ff75814F0c6DdB119496a12eEA6#code), [0xA738573Ec0FD7959BfA60Aaa8a23Fe7BEC6c4Bd7](https://etherscan.io/address/0xA738573Ec0FD7959BfA60Aaa8a23Fe7BEC6c4Bd7#code) (Implementation (Upgradable)), [0xbf1752DE62d825aF0634F514226F881a449874b6](https://etherscan.io/address/0xbf1752DE62d825aF0634F514226F881a449874b6#code) (Admin) The State Commitment Chain (SCC) stores a list of proposed state roots in a linked ChainStorageContainer contract. Only a permissioned state root proposer (MVM_Proposer) can submit new state roots. - Roles: - **admin**: Metis Security Council Can be upgraded by: Metis Security Council with no delay #### LockingInfo Addresses: [0x0fe382b74C3894B65c10E5C12ae60Bbd8FAf5b48](https://etherscan.io/address/0x0fe382b74C3894B65c10E5C12ae60Bbd8FAf5b48#code), [0x0D30F0d7934f53aaF6a1630A4c109AF4513a65cC](https://etherscan.io/address/0x0D30F0d7934f53aaF6a1630A4c109AF4513a65cC#code) (Implementation (Upgradable)), [0x8FbB8D00f7621B68F219B0B18738F07aF513D5C8](https://etherscan.io/address/0x8FbB8D00f7621B68F219B0B18738F07aF513D5C8#code) (Admin) **Past upgrades** (Count of upgrades: 1, Last upgrade: 2y 4mo ago, Avg upgrade interval: 1y 3mo) - 2024-06-29 01:46 UTC, upgrade of [LockingInfo](https://etherscan.io/address/0x0fe382b74C3894B65c10E5C12ae60Bbd8FAf5b48#code): transaction [0x356768c4abdb1df76773881dc3c4d8ad7af36ac2154baaec83c3f878aedb6b57](https://etherscan.io/tx/0x356768c4abdb1df76773881dc3c4d8ad7af36ac2154baaec83c3f878aedb6b57), implementations: [0x0D30F0d7934f53aaF6a1630A4c109AF4513a65cC](https://etherscan.io/address/0x0D30F0d7934f53aaF6a1630A4c109AF4513a65cC#code) ([diff](https://disco.ethbeat.org/diff/eth:0x8db636418F10d514c4c68235ee3d640dDBCC7a8a/eth:0x0D30F0d7934f53aaF6a1630A4c109AF4513a65cC)) - 2024-03-13 07:27 UTC, deployment of [LockingInfo](https://etherscan.io/address/0x0fe382b74C3894B65c10E5C12ae60Bbd8FAf5b48#code): transaction [0x37356e30602c7e4e6b05129e3a0375c3fbeb08856eb198ef7ec2a6c75fd3ee78](https://etherscan.io/tx/0x37356e30602c7e4e6b05129e3a0375c3fbeb08856eb198ef7ec2a6c75fd3ee78), implementations: [0x8db636418F10d514c4c68235ee3d640dDBCC7a8a](https://etherscan.io/address/0x8db636418F10d514c4c68235ee3d640dDBCC7a8a#code) Contract acting as an escrow for METIS tokens managed by LockingPool. - Roles: - **admin**: ProxyAdmin; ultimately Metis Security Council Can be upgraded by: Metis Security Council with no delay #### ChainStorageContainer-SCC-batches Addresses: [0x10739F09f6e62689c0aA8A1878816de9e166d6f9](https://etherscan.io/address/0x10739F09f6e62689c0aA8A1878816de9e166d6f9#code) Storage container for SCC batches. #### DisputeGameFactory Addresses: [0x1C2f0A08762f0aD4598fB5de8f9D6626a4e4aeE3](https://etherscan.io/address/0x1C2f0A08762f0aD4598fB5de8f9D6626a4e4aeE3#code), [0x61B220bbfeF9A94163764928B039d85e94A509d9](https://etherscan.io/address/0x61B220bbfeF9A94163764928B039d85e94A509d9#code) (Implementation (Upgradable)), [0x8FbB8D00f7621B68F219B0B18738F07aF513D5C8](https://etherscan.io/address/0x8FbB8D00f7621B68F219B0B18738F07aF513D5C8#code) (Admin) **Past upgrades** (Count of upgrades: 2, Last upgrade: 1y 3mo ago, Avg upgrade interval: 6mo) - 2025-07-23 04:50 UTC, upgrade of [DisputeGameFactory](https://etherscan.io/address/0x1C2f0A08762f0aD4598fB5de8f9D6626a4e4aeE3#code): transaction [0xcbea695d784f8a5c4a51baebf910f7c3f449b48d690b52c937ec1dc1d5458e2b](https://etherscan.io/tx/0xcbea695d784f8a5c4a51baebf910f7c3f449b48d690b52c937ec1dc1d5458e2b), implementations: [0x61B220bbfeF9A94163764928B039d85e94A509d9](https://etherscan.io/address/0x61B220bbfeF9A94163764928B039d85e94A509d9#code) ([diff](https://disco.ethbeat.org/diff/eth:0xEc2EB7E045EB9D835a93113DABaa6Ae7a6776E45/eth:0x61B220bbfeF9A94163764928B039d85e94A509d9)) - 2025-06-19 02:52 UTC, upgrade of [DisputeGameFactory](https://etherscan.io/address/0x1C2f0A08762f0aD4598fB5de8f9D6626a4e4aeE3#code): transaction [0xfca0728fa948cf329424111232b2c80521c66bf13f49e9fff118a8de282f1cd5](https://etherscan.io/tx/0xfca0728fa948cf329424111232b2c80521c66bf13f49e9fff118a8de282f1cd5), implementations: [0xEc2EB7E045EB9D835a93113DABaa6Ae7a6776E45](https://etherscan.io/address/0xEc2EB7E045EB9D835a93113DABaa6Ae7a6776E45#code) ([diff](https://disco.ethbeat.org/diff/eth:0xb864eEca2a047058Eb1e28e43FEAEBE8F38843B3/eth:0xEc2EB7E045EB9D835a93113DABaa6Ae7a6776E45)) - 2025-05-13 09:02 UTC, deployment of [DisputeGameFactory](https://etherscan.io/address/0x1C2f0A08762f0aD4598fB5de8f9D6626a4e4aeE3#code): transaction [0xbf5ee49e50e078552444649c10f208c22d68ec3854b6922449f8115d9c934733](https://etherscan.io/tx/0xbf5ee49e50e078552444649c10f208c22d68ec3854b6922449f8115d9c934733), implementations: [0xb864eEca2a047058Eb1e28e43FEAEBE8F38843B3](https://etherscan.io/address/0xb864eEca2a047058Eb1e28e43FEAEBE8F38843B3#code) Factory contract for creating dispute games. Unlike in standard OP Stack chains, games are not created to propose state roots. Instead, games are created on demand by the permissioned `GameCreator` only should a dispute arise. - Roles: - **admin**: ProxyAdmin; ultimately Metis Security Council - **gameCreator**: EOA 1, Metis Multisig Can be upgraded by: Metis Security Council with no delay #### MetisConfig Addresses: [0x2aA4E192994757c5fAB87Ba13812B89564EA57Ff](https://etherscan.io/address/0x2aA4E192994757c5fAB87Ba13812B89564EA57Ff#code) Contract used to manage configuration of global Metis values. #### FaultProofLockingPool Addresses: [0x2CA48fF3bBC59Bff859543E63233116ecdA3DCBb](https://etherscan.io/address/0x2CA48fF3bBC59Bff859543E63233116ecdA3DCBb#code), [0x1061528C33b8034952fb7355cC481e193b29FCa6](https://etherscan.io/address/0x1061528C33b8034952fb7355cC481e193b29FCa6#code) (Implementation (Upgradable)), [0x8FbB8D00f7621B68F219B0B18738F07aF513D5C8](https://etherscan.io/address/0x8FbB8D00f7621B68F219B0B18738F07aF513D5C8#code) (Admin) **Past upgrades** (Count of upgrades: 2, Last upgrade: 1y 3mo ago, Avg upgrade interval: 6mo) - 2025-07-23 04:50 UTC, upgrade of [FaultProofLockingPool](https://etherscan.io/address/0x2CA48fF3bBC59Bff859543E63233116ecdA3DCBb#code): transaction [0xcbea695d784f8a5c4a51baebf910f7c3f449b48d690b52c937ec1dc1d5458e2b](https://etherscan.io/tx/0xcbea695d784f8a5c4a51baebf910f7c3f449b48d690b52c937ec1dc1d5458e2b), implementations: [0x1061528C33b8034952fb7355cC481e193b29FCa6](https://etherscan.io/address/0x1061528C33b8034952fb7355cC481e193b29FCa6#code) ([diff](https://disco.ethbeat.org/diff/eth:0xE141db3Ed25A58BB8BBd331AE373605108aaAAe4/eth:0x1061528C33b8034952fb7355cC481e193b29FCa6)) - 2025-06-19 02:52 UTC, upgrade of [FaultProofLockingPool](https://etherscan.io/address/0x2CA48fF3bBC59Bff859543E63233116ecdA3DCBb#code): transaction [0x6e859980e53cbf8c232b3c491787274de2ec78c2af68069d0d910cd452fd99a5](https://etherscan.io/tx/0x6e859980e53cbf8c232b3c491787274de2ec78c2af68069d0d910cd452fd99a5), implementations: [0xE141db3Ed25A58BB8BBd331AE373605108aaAAe4](https://etherscan.io/address/0xE141db3Ed25A58BB8BBd331AE373605108aaAAe4#code) ([diff](https://disco.ethbeat.org/diff/eth:0x6d554097D5784a7184650B95ba7EA359d162Dbb7/eth:0xE141db3Ed25A58BB8BBd331AE373605108aaAAe4)) - 2025-05-13 09:04 UTC, deployment of [FaultProofLockingPool](https://etherscan.io/address/0x2CA48fF3bBC59Bff859543E63233116ecdA3DCBb#code): transaction [0x5955dbbc10911769fdc4826d6eac373f3a88f9ea22fa07fc91dedbddd50df93c](https://etherscan.io/tx/0x5955dbbc10911769fdc4826d6eac373f3a88f9ea22fa07fc91dedbddd50df93c), implementations: [0x6d554097D5784a7184650B95ba7EA359d162Dbb7](https://etherscan.io/address/0x6d554097D5784a7184650B95ba7EA359d162Dbb7#code) The FaultProofLockingPool is a contract that allows sequencers to lock their funds for a certain period of time. The contract is used in the Metis protocol to ensure that sequencers have enough funds to cover the potential losses from disputes. It currently has a balance of 0 METIS. - Roles: - **admin**: ProxyAdmin; ultimately Metis Security Council Can be upgraded by: Metis Security Council with no delay #### ChainStorageContainer-CTC-batches Addresses: [0x38473Feb3A6366757A249dB2cA4fBB2C663416B7](https://etherscan.io/address/0x38473Feb3A6366757A249dB2cA4fBB2C663416B7#code) Storage container for CTC batches. #### FaultDisputeGame Addresses: [0x388DEfE576077257074F77c727aA5F2e3B815E21](https://etherscan.io/address/0x388DEfE576077257074F77c727aA5F2e3B815E21#code) Contract for handling fault disputes (should games be created). Successfully disputed batches are marked as disputed to the StateCommitmentChain. #### L1StandardBridge Addresses: [0x3980c9ed79d2c191A89E02Fa3529C60eD6e9c04b](https://etherscan.io/address/0x3980c9ed79d2c191A89E02Fa3529C60eD6e9c04b#code), [0xa0cfE8Af2AB5C9232714647702DbACf862EA4798](https://etherscan.io/address/0xa0cfE8Af2AB5C9232714647702DbACf862EA4798#code) (Implementation (Upgradable)), [0xbf1752DE62d825aF0634F514226F881a449874b6](https://etherscan.io/address/0xbf1752DE62d825aF0634F514226F881a449874b6#code) (Admin) Main entry point for users depositing ERC20 tokens and ETH that do not require custom gateway. - Roles: - **admin**: Metis Security Council Can be upgraded by: Metis Security Council with no delay #### MVM_ProposerRegistry Addresses: [0x5669d0C8C28B7E2c3d10eD246bEb042bDdd12E18](https://etherscan.io/address/0x5669d0C8C28B7E2c3d10eD246bEb042bDdd12E18#code) The Proposer Registry contains the addresses of the current active proposers for the chain. - Roles: - **proposer**: EOA 3 #### BondManager Addresses: [0x595801b85628ec6979C420988b8843A40F850528](https://etherscan.io/address/0x595801b85628ec6979C420988b8843A40F850528#code) The Bond Manager contract will handle deposits in the form of an ERC20 token from bonded Proposers. It will also handle the accounting of gas costs spent by a Verifier during the course of a challenge. In the event of a successful challenge, the faulty Proposer's bond will be slashed, and the Verifier's gas costs will be refunded. Current mock implementation allows only OVM_Proposer to propose new state roots. No slashing is implemented. #### PreimageOracle Addresses: [0x789a64284e29d2225430606D3D89a9336870BBbC](https://etherscan.io/address/0x789a64284e29d2225430606D3D89a9336870BBbC#code) Oracle for providing preimages. #### MVM_DiscountOracle Addresses: [0x7f6B0b7589febc40419a8646EFf9801b87397063](https://etherscan.io/address/0x7f6B0b7589febc40419a8646EFf9801b87397063#code) Oracle specifying user fees for sending L1 -> Metis messages and other parameters for cross-chain communication. #### MVM_InboxSenderManager Addresses: [0x8b0d1D3557aF524351FCd09eE8E7a48adcB712e0](https://etherscan.io/address/0x8b0d1D3557aF524351FCd09eE8E7a48adcB712e0#code), [0x10ACFD506472F6Cb0602dF880172935cEE9AC7B0](https://etherscan.io/address/0x10ACFD506472F6Cb0602dF880172935cEE9AC7B0#code) (Implementation (Upgradable)), [0xbf1752DE62d825aF0634F514226F881a449874b6](https://etherscan.io/address/0xbf1752DE62d825aF0634F514226F881a449874b6#code) (Admin) Container contract for designated sequencer addresses. - Roles: - **admin**: Metis Security Council - **blobBatcher**: EOA 2 Can be upgraded by: Metis Security Council with no delay #### ProxyAdmin Addresses: [0x8FbB8D00f7621B68F219B0B18738F07aF513D5C8](https://etherscan.io/address/0x8FbB8D00f7621B68F219B0B18738F07aF513D5C8#code) - Roles: - **owner**: Metis Security Council #### Lib_AddressManager Addresses: [0x918778e825747a892b17C66fe7D24C618262867d](https://etherscan.io/address/0x918778e825747a892b17C66fe7D24C618262867d#code) Contract used to manage a mapping of string names to addresses. Modern OP stack uses a different standard proxy system instead, but this contract is still necessary for backwards compatibility with several older contracts. - Roles: - **1088_MVM_FraudVerifier**: Metis Security Council Minority - **_1088_MVM_Proposer**: EOA 3 #### Metis Token Addresses: [0x9E32b13ce7f2E80A01932B42553652E053D6ed8e](https://etherscan.io/address/0x9E32b13ce7f2E80A01932B42553652E053D6ed8e#code) Metis token contract. #### ChainStorageContainer-CTC-queue Addresses: [0xA91Ea6F5d1EDA8e6686639d6C88b309cF35D2E57](https://etherscan.io/address/0xA91Ea6F5d1EDA8e6686639d6C88b309cF35D2E57#code) Storage container for CTC queue. #### MIPS Addresses: [0xAFD640204D73B02C3521eA8ea3771182527Ff057](https://etherscan.io/address/0xAFD640204D73B02C3521eA8ea3771182527Ff057#code) #### LockingPool Addresses: [0xD54c868362C2098E0E46F12E7D924C6A332952Dd](https://etherscan.io/address/0xD54c868362C2098E0E46F12E7D924C6A332952Dd#code), [0xD8f38c831E5032d23065Eaaee8c0620e17c04D60](https://etherscan.io/address/0xD8f38c831E5032d23065Eaaee8c0620e17c04D60#code) (Implementation (Upgradable)), [0x8FbB8D00f7621B68F219B0B18738F07aF513D5C8](https://etherscan.io/address/0x8FbB8D00f7621B68F219B0B18738F07aF513D5C8#code) (Admin) **Past upgrades** (Count of upgrades: 1, Last upgrade: 2y 4mo ago, Avg upgrade interval: 1y 3mo) - 2024-06-29 01:46 UTC, upgrade of [LockingPool](https://etherscan.io/address/0xD54c868362C2098E0E46F12E7D924C6A332952Dd#code): transaction [0x356768c4abdb1df76773881dc3c4d8ad7af36ac2154baaec83c3f878aedb6b57](https://etherscan.io/tx/0x356768c4abdb1df76773881dc3c4d8ad7af36ac2154baaec83c3f878aedb6b57), implementations: [0xD8f38c831E5032d23065Eaaee8c0620e17c04D60](https://etherscan.io/address/0xD8f38c831E5032d23065Eaaee8c0620e17c04D60#code) ([diff](https://disco.ethbeat.org/diff/eth:0xd87Da73F82abe83915d61342199A4690cfdf4718/eth:0xD8f38c831E5032d23065Eaaee8c0620e17c04D60)) - 2024-03-13 07:28 UTC, deployment of [LockingPool](https://etherscan.io/address/0xD54c868362C2098E0E46F12E7D924C6A332952Dd#code): transaction [0x5a9766b27606f1c41f132a4a900131f39ab49a27607d27db667ecc1de2f9f0d1](https://etherscan.io/tx/0x5a9766b27606f1c41f132a4a900131f39ab49a27607d27db667ecc1de2f9f0d1), implementations: [0xd87Da73F82abe83915d61342199A4690cfdf4718](https://etherscan.io/address/0xd87Da73F82abe83915d61342199A4690cfdf4718#code) Contract allowing users to lock tokens to apply to become a sequencer, receive rewards, unlock tokens to exit the sequencer, reward distribution. - Roles: - **admin**: ProxyAdmin; ultimately Metis Security Council Can be upgraded by: Metis Security Council with no delay #### DelayedWMetis Addresses: [0xfA947f70c3509d5b70A606e871aE0C85397D0738](https://etherscan.io/address/0xfA947f70c3509d5b70A606e871aE0C85397D0738#code), [0xa2033fbb6213B2233a6998391ccc8E070BcC1B51](https://etherscan.io/address/0xa2033fbb6213B2233a6998391ccc8E070BcC1B51#code) (Implementation (Upgradable)), [0x8FbB8D00f7621B68F219B0B18738F07aF513D5C8](https://etherscan.io/address/0x8FbB8D00f7621B68F219B0B18738F07aF513D5C8#code) (Admin) **Past upgrades** (Count of upgrades: No upgrades, Last upgrade: N/A, Avg upgrade interval: N/A) - 2025-05-13 09:04 UTC, deployment of [DelayedWMetis](https://etherscan.io/address/0xfA947f70c3509d5b70A606e871aE0C85397D0738#code): transaction [0x01245dfca81d0eee17a1ed68eebcf822d05a17ad298e3879cd40002932079a12](https://etherscan.io/tx/0x01245dfca81d0eee17a1ed68eebcf822d05a17ad298e3879cd40002932079a12), implementations: [0xa2033fbb6213B2233a6998391ccc8E070BcC1B51](https://etherscan.io/address/0xa2033fbb6213B2233a6998391ccc8E070BcC1B51#code) Delayed wrapped Metis token contract. - Roles: - **admin**: ProxyAdmin; ultimately Metis Security Council Can be upgraded by: Metis Security Council with no delay ### Metis Andromeda #### OVM_L2ToL1MessagePasser Addresses: [0x4200000000000000000000000000000000000000](https://explorer.metis.io/address/0x4200000000000000000000000000000000000000#code) #### OVM_DeployerWhitelist Addresses: [0x4200000000000000000000000000000000000002](https://explorer.metis.io/address/0x4200000000000000000000000000000000000002#code) #### MVM_ChainConfig Addresses: [0x4200000000000000000000000000000000000005](https://explorer.metis.io/address/0x4200000000000000000000000000000000000005#code) #### L2CrossDomainMessenger Addresses: [0x4200000000000000000000000000000000000007](https://explorer.metis.io/address/0x4200000000000000000000000000000000000007#code) The L2CrossDomainMessenger (L2xDM) contract sends messages from L2 to L1, and relays messages from L1 onto L2 with a system tx. In the event that a message sent from L2 to L1 is rejected for exceeding the L1 gas limit, it can be resubmitted via this contract’s replay function. #### Ether Token Addresses: [0x420000000000000000000000000000000000000A](https://explorer.metis.io/address/0x420000000000000000000000000000000000000A#code) #### OVM_GasPriceOracle Addresses: [0x420000000000000000000000000000000000000F](https://explorer.metis.io/address/0x420000000000000000000000000000000000000F#code) #### L2StandardBridge Addresses: [0x4200000000000000000000000000000000000010](https://explorer.metis.io/address/0x4200000000000000000000000000000000000010#code) The L2StandardBridge contract is the main entry point to deposit or withdraw ERC20 tokens from L2 to L1. This contract can store any token. #### OVM_SequencerFeeVault Addresses: [0x4200000000000000000000000000000000000011](https://explorer.metis.io/address/0x4200000000000000000000000000000000000011#code) #### L2StandardTokenFactory Addresses: [0x4200000000000000000000000000000000000012](https://explorer.metis.io/address/0x4200000000000000000000000000000000000012#code) #### MVM_Coinbase Addresses: [0xDeadDeAddeAddEAddeadDEaDDEAdDeaDDeAD0000](https://explorer.metis.io/address/0xDeadDeAddeAddEAddeadDEaDDEAdDeaDDeAD0000#code) The current deployment carries some associated risks: - Funds can be stolen if a contract receives a malicious code upgrade. There is no delay on code upgrades (CRITICAL).