Announcing the detailed migration plan for ENSv2

I’m pleased to be able to publish the migration plan for ENSv2. This document breaks down a taxonomy of ENS name types, and describes how we intend to migrate each type of name to ENSv2, and what limitations there will be on migrating each name type.

We’ve spent a lot of time trying to balance the need to migrate the largest number of names possible, with limiting system complexity for edge-cases that affect only a few names. The end result is a migration plan that will allow for 99.99% of existing ENS names to be migrated to ENSv2, and for 98.8% of those names to be moved to Namechain if the owner desires. The plan, linked above, goes into detail on each class of name, with numbers taken from a recent survey of registered names.

We’d value any input from ENS devleopers and users as to the path we’re planning to pursue with the migration, and also welcome any questions you have.

17 Likes

Just a couple of thoughts, maybe its just me, but

1 in the document linked it appears that it doesn’t specify who is paying the gas costs associated with migration? it appears that every user would have to pay additional gas cost for migration to L2? If that is the case, is it fair to ask all the user to pay additional fee for the upgrade?

2 since unwrapped .eth 2LDs (852,260) represent the biggest proportion of all registered names at the moment wouldn’t it be more fair to purse route where

that way users can decide for themselves if they want to migrate and take advantage of v2 features?

I can see the advantage of forcing everyone to migrate to L2 - that eventually would bring everything to the same standard across the ecosystem, but is it prudent to take away the right from user to decide whether he wants to migrate or no?

EDIT: I’m drawing from my own example here, whenever there are new mechanisms introduced in the world of blockchain I personally prefer to take a conservative stance, meaning to take my time and observe for a while trying to understand whether new mechanism is robust secure and can be trusted, once it proves to be reliable after some time which can be a while only then make a decision to migrate.

1 Like

Re: Renewing Unmigrated Names

The trade off is worth considering:

  1. If v1 renewals continue: the onus shifts from users to devs. the user base keep more flexibility—its their choice to migrate (or not), but devs take on tech debt.
  2. If v1 renewals stop: the onus shifts from devs to users, because all v1 names expire if they don’t migrate to v2.

Users should be the priority. Developers should be willing to take on tech debt in the short term, and the DAO should recognize that this will accrue expenses and complexity.

Long term, migration must be encouraged, but near term, preserving user sovereignty should come first—otherwise, it could hinder ENS’s credibility as credibly neutral.

—

I don’t believe it is.

—

Edit: I’ve put a little more thought into this, and my perspective has evolved. The naming protocol is still very young. There are billions of names yet to be registered. My earlier take didn’t fully account for that.

ENS should optimize for user-friendliness.

Option 1 feels more user-friendly in the short term, since it preserves flexibility for existing users.

But in the long haul, considering all the names yet to be registered, Option 2 is ultimately more user-friendly, because it reduces complexity and creates a consistent experience for future users.

There’s no need to make a mountain out of a molehill. Edge cases like wrapped names are a small inconvenience, but ensuring a consistent, simple experience for billions of future names matters more.

2 Likes

actually that makes sense as well, but with a couple of considerations

1 so we assume that end goal for ENS is to exist entirely on L2 Namechain, in which case make this experience for user as seamless as possible - just migrate everyone to Namechain ā€œunder the hoodā€ so to say, so that end users wouldn’t see the difference at all, they will know that there was an upgrade, and now that they have access to additional features, and that’s it. (EDIT: Actually I don’t know if it technically possible :sweat_smile:)

2 subsidize 100% of gas for migration of edge cases, so even if automatic migration is not possible, then still make this experience as seamless as possible. Lock renewals for all edge cases on L1 - eventually when they will face the decision to renew, they will have a single button to migrate, or just bake migration into renewals process for them.

3 ā€œadvertiseā€ very heavily around the media - twitter, blogs, mass media that upgrade did happen and edge case users should migrate manually free of charge. During 2021 TGE when I was acting as support on discord I saw a lot of people who registered their names pre 2019 upgrade, and missed it, they were very confused as to why they weren’t included in the airdrop, we must avoid this by any means necessary.

4

Following 1 and 2 then strongly consider dropping migration to L1 entirely. Since the future roadmap (from what I understand) is pretty much Namechain only anyway, then why create all this technical debt on L1? The problem here is not just the additional work for ENS devs, but additional pressure on the ecosystem as well support and maintain all those various approaches, surely it would be much easier to maintain Namechain only.