| Status | Draft |
|---|
Previous Context
- [Temp Check] Registration of on.eth to support interoperable addressing standards
- [Temp Check] l2.eth to Enable Chain-Specific Addresses
- Allowing the DAO to manually issue .eth 2LDs, including 1- and 2- character ones
Description
This proposal registers the on.eth ENS name to the ENS DAO wallet (0xfe89cc7abb2c4183683ab71653c4cdc9b02d44b7) and sets the resolver to an on-chain registry-resolver contract (0x2a9B5787207863cf2d63d20172ed1F7bB2c9487A).
Motivation
The Chain Registry-Resolver is a smart contract that acts as a canonical, on-chain registry for blockchain metadata. It serves as the resolver for the on.eth namespace and enables applications and users to retrieve metadata for any blockchain using a single human-readable identifier, such as base or solana.
Historically, blockchain metadata has been stored in centralized, fragmented repositories maintained by third parties. The Chain Registry-Resolver brings this metadata on-chain into a single, extensible registry, where control and update authority are delegated to the relevant chain operators.
Specification
Relevant Contracts
wallet.ensdao.eth•0xfe89cc7abb2c4183683ab71653c4cdc9b02d44b7• Etherscanregistry.ens.eth•0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e• Etherscanregistrar.ens.eth•0x57f1887a8BF19b14fC0dF6Fd9B2acc9Af147eA85• EtherscanChainResolver (Proxy)•0x2a9B5787207863cf2d63d20172ed1F7bB2c9487A• EtherescanChainResolver (Implementation)•0x97df70ef350a5d2f606e0baf6d38de2ec26f7290• Etherscan
ChainResolver
The ChainResolver GitHub repo can be found here: unruggable-labs/chain-resolver.
In depth documentation outlining the functionality, interfaces, and implementation approach for the smart contract is available here: Chain Registry-Resolver documentation.
Proposal
This proposal includes four components.
1. Adding the DAO wallet as a controller on the BaseRegistrarImplementation smart contract.
To: 0x57f1887a8BF19b14fC0dF6Fd9B2acc9Af147eA85
Value: 0
Calldata: 0xa7fc7a07000000000000000000000000fe89cc7abb2c4183683ab71653c4cdc9b02d44b7
Simulation: https://www.tdly.co/shared/simulation/709dde20-78e2-47e0-a952-d80d9772e5eb
2. Registering the name on.eth to the DAO wallet.
To: 0x57f1887a8BF19b14fC0dF6Fd9B2acc9Af147eA85
Value: 0
Calldata: 0xfca247ac6460d40e0362f6a2c743f205df8181010b7f26e76d5606847fb7be7fb6d135f9000000000000000000000000fe89cc7abb2c4183683ab71653c4cdc9b02d44b70000000000000000000000000000000000000000000000000000000012cc0300
Simulation: Simulated Transaction | Tenderly
3. Setting the deployed ChainResolver as the resolver for
on.eth
The Resolver proxy is deployed at 0x2a9B5787207863cf2d63d20172ed1F7bB2c9487A.
To: 0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e
Value: 0
Calldata: 0x1896f70acabf8262fe531c2a7e8cd86e06342bc27fc0591ecd562fbac88280abc18ef8990000000000000000000000002a9b5787207863cf2d63d20172ed1f7bb2c9487a
Simulation: https://www.tdly.co/shared/simulation/291142ff-d41a-45ab-8263-34fad6b781b5
4. Removing the DAO wallet as a controller on the BaseRegistrarImplementation smart contract.
To: 0x57f1887a8BF19b14fC0dF6Fd9B2acc9Af147eA85
Value: 0
Calldata: 0xf6a74ed7000000000000000000000000fe89cc7abb2c4183683ab71653c4cdc9b02d44b7
Simulation: https://www.tdly.co/shared/simulation/e2430d87-5475-4cea-a320-0e44640b1d3d
Notes
The Registry-Resolver contract is currently owned by an Unruggable controlled deployment wallet (0x81c11034fe2b2f0561e9975df9a45d99172183af). This temporary ownership is limited to initial bootstrapping of chain identifiers and will be transferred to a neutral multisig once the initial registry state is established.