Skip to content

[ens] toban.eth の resolver を Namespace Hybrid Resolver へ差し替え #558

Description

@yu23ki14

親イシュー: #555

Namestone → Namespace 移行のうち、**ENS のオンチェーン操作(toban.eth の resolver 差し替え)**を担当する。

やること

toban.eth の resolver を Namespace の Hybrid Resolver に差し替える。これにより *.toban.eth のオフチェーンサブネームが、ENS 解決に対応した外部のウォレット・アプリから解決可能になる。

公式ドキュメント より:

To make all newly created Offchain Subnames resolvable in all Web3 projects and apps that support ENS resolution, you need to update your parent's name resolver to use Namespace's Hybrid resolver.

手順自体は https://app.namespace.ninja/offchainResolver Set タブで「Update」を押すだけ。

なお activate-ens-name に記載のある Deploy Registry / 価格設定 / NameWrapper ラップといった重い手順はオンチェーンサブネーム専用。オフチェーンなら resolver 更新と API キー発行の2ステップで済む。

Hybrid Resolver アドレス

network hybridResolver
mainnet 0xe5A0277018879679d18cCDb66B52BD06f7fE95FD
sepolia 0xd5568c739f3a615c27e8926f1067b9a791893c3e

⚠️ これらのアドレスは公式ドキュメントに記載がなく、SDK のソース (addresses.ts) からのみ確認したもの。実行前に必ずオンチェーンで実物を検証すること。

🔴 実行順序の制約(絶対)

ENS Registry の resolver は名前ごとに単一toban.eth の resolver を Namestone のものから差し替えた瞬間、Namespace 側にまだ投入されていないサブネームは外部から解決不能になる

Namespace のドキュメント全文(174KB)に "Namestone" の言及は 0 件、"existing/previous/current resolver" も 0 件で、他プロバイダからの移行時に何が起きるかの記載は一切ない。

データマイグレーション(#556)の全件投入とベリファイが完了してから実行する。

影響範囲は限定的

Toban のフロントは ENS プロトコルで解決しておらず、Namestone の REST API を直接叩いている(useENS.tsapi.namestone.$action.tsx)。したがって resolver 差し替えが影響するのは外部ウォレット等での alice.toban.eth 表示のみで、Toban アプリ自体の動作とは無関係。

チェックリスト

事前準備

  • toban.eth の現在の resolver アドレスを記録(ロールバック用
  • toban.eth の所有者ウォレットへのアクセスを確認
  • Hybrid Resolver アドレスをオンチェーンで検証(コントラクトの存在・実装を確認)
  • Sepolia の親名で先に同じ手順を通し、解決を確認

前提条件の確認

実行

  • app.namespace.ninja/offchain の Resolver Set タブから「Update」を実行
  • トランザクションハッシュを記録
  • ENS Registry 上で toban.eth の resolver が新アドレスになっていることを確認

事後検証

ロールバック

resolver アドレスを記録済みの旧アドレスに戻すトランザクションを実行する。ENS Registry の setResolver は所有者がいつでも呼べるので、切替自体は可逆

ただし Namestone が既にサービス終了していた場合、旧 resolver に戻しても解決は復旧しない点に注意。

参考

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions