ethereum / ethereum-org-website

Ethereum.org is a primary online resource for the Ethereum community.
https://ethereum.org/
MIT License
5.05k stars 4.79k forks source link

Remove Metis from the layer 2 products #6190

Closed corwintines closed 1 year ago

corwintines commented 2 years ago

Is your feature request related to a problem? Please describe.

Describe the solution you'd like

Describe alternatives you've considered

Additional context

Want to contribute?

We love contributions from the Ethereum community! Please comment on an issue if you're interested in helping out with a PR.

bossyuansu commented 2 years ago

Hi, our community made me aware of this issue. and I respectfully disagree with some parts of the proposal. Here is why:

On the ethereum.org website: a layer 2 blockchain regularly communicates with Ethereum (by submitting bundles of transactions) in order to ensure it has similar security and decentralization guarantees. All this requires no changes to the layer 1 protocol (Ethereum). This lets layer 1 handle security, data availability, and decentralization, while layer 2s handles scaling.

Metis still submit bundles of transactions (albiet not the original full form) and their state roots and it still relies on the security of L1 to ensure that the data availability is guaranteed through data availability requests. It also relies on L1 to ensure the cost of such requests is finite and controllable in order to avoid the fisherman's dilemma. So I humbly believe Metis is still a layer2 scaling solution.

One thing I do agree is that the original description of Layer2 on the website is too narrow and restrictive. Look forward to the v2 layer2 page.

taxmeifyoucan commented 2 years ago

I would consider Metis as an Optimistic Chain, not an Optimistic Rollup which discredits it from being listed as a rollup. Removing it or at least change of the description is needed.

bossyuansu commented 2 years ago

@taxmeifyoucan no issue with not having a pure rollup designation for Metis. Btw, when danksharding is available, Metis will revert back to become a pure rollup. The current mechanism is a stop gap until cheap data availability on chain is available.

kcharbo3 commented 2 years ago

IMO Metis shouldn't be considered an L2 so I agree with the PR. L2s should have 1. validity/fraud proofs and 2. full data availability, both on L1. Metis has a fraud proof mechanism but it relies on an honest validator set instead of automatic fraud proofs on L1. I believe relying on a truthful validator majority is much less secure than using an interactive fraud proof and relying only on L1 security. And with this new update, it no longer has full data availability on L1 and so it misses the mark there as well. Metis now draws its security from Memo Labs and a validator set, where both of these should be L1 itself. Since it misses on both requirements, I agree that it should be removed for now.

bossyuansu commented 2 years ago

IMO full data availability is not part of the definition of L2. Proofing on L1 is the key characteristic. Metis's interactive fraud proofing, like Optimism, is a work-in-progress. The current verifier challenge mechanism is again a stop-gap mechanism until the interactive fraud proofing is fully rolled out. Otherwise, there won't be a mechanism at all. And it is not a mechanism we intend to keep going forward. When Metis was listed, we have also established that Metis will have interactive proofing.

Right now, after the upgrade, anyone can pull the data from memolabs, verify the data against the merkletree root of the batch that the sequencer submitted to L1 and verify against the state roots that the sequencer submitted to keep the sequencer honesty in check. The overall security profile didn't change before or after the update. When the interactive fraud proofing is rolled out, the relevant data is required to be on L1 to complete the proofing process. So it does not change the data availability requirement for the proofing process either.

In short, I'm okay with temporarily delisting Metis because the fraud proofing is still in progress (but i thought it was okay as long as we have it on the roadmap). But it should not be because of the full data availability requirement, which is what I disagree with.

rycl1 commented 2 years ago

Metis is fundamentally an L2. If you wish, just have an explainer. Removing it from the website seems counterproductive.

corwintines commented 2 years ago

I appreciate all the input given to this issue.

I have made a PR to take down Metis (for now until the danksharding upgrade is in place, or Metis again uses L1 for data availability to fit our definition of layer 2, being data availability and security). This by no means is a permanent thing, and can/will be readdressed in the future when appropriate.

From what I have done for research and talking in the Metis discord, I understand that Metis now uses memolabs for data availability, and will post fraud-proof data to the L1 when necessary for fraud proofs. But, this data isn't on the L1 until this process has begun, which means data availability is not coming from Ethereum.

I do think there is some nuance in talking about data availability and am open to discussion on this. But, I have a hard time wrapping my head around how something is a layer 2 for a network when it isn't using that network's data availability.

bossyuansu commented 2 years ago

I again respectfully disagree. I think you are mixing up rollup and layer2 together. Those are two separate concepts. Rollup is one type of layer2 solution that submit all transaction data on l1. There are other l2 solutions such as Plasma that doesn't do it. Metis is somewhere that is between Plasma and Rollup, which interestingly was what Vitalik was wondering when he talked about L2 rollups. By all means, Metis still require L1 to function. Thus I believe the decision is wrong and Metis is 100% an L2 solution.

CryptoChicks-Official commented 2 years ago

@corwintines please look into updating the website with the proper L2 classification. It is getting quite outdated missing the latest community developments in decentralized tech. Please initiate such update proposal instead.

github-actions[bot] commented 2 years ago

This issue is stale because it has been open 45 days with no activity.

samajammin commented 1 year ago

@corwintines I believe this issue can be closed. Metis has been removed.

Thank you all for the discussion. Seems most of the contention here is on the definition of L2. Happy to have that debate if anyone would like to open an issue around that. Our listing policy is open source - anyone can suggest changes to it. It can be found here: https://ethereum.org/en/contributing/adding-layer-2s/