Skip to content

Conversation

@shrugs
Copy link
Collaborator

@shrugs shrugs commented Jan 29, 2026

Summary

  • adds complete ENSRoot datasource config for sepolia-v2 (previously inherited from sepolia, which was incorrect)
  • adds ReverseResolverRoot datasource with all reverse resolver addresses
  • fixes ENSv2Root and ENSv2ETHRegistry contract addresses and start blocks to match the temp testing deployment

Why

  • sepolia-v2 was incorrectly inheriting ensv1 addresses from the standard sepolia deployment
  • the temp ensv2 testing deployment has its own dedicated ensv1 contracts that need to be indexed

Testing

  • config-only change; addresses verified against deployment records
  • will be validated during indexing of sepolia-v2 namespace

Notes for Reviewer (Optional)

  • UniversalRegistrarRenewalWithReferrer uses zeroAddress as a placeholder since this contract doesn't exist in the sepolia-v2 deployment but is required by the registrars plugin and refactoring that is out-of-scope

Checklist

  • This PR does not change runtime behavior or semantics
  • This PR is low-risk and safe to review quickly

Copilot AI review requested due to automatic review settings January 29, 2026 00:25
@shrugs shrugs requested a review from a team as a code owner January 29, 2026 00:25
@changeset-bot
Copy link

changeset-bot bot commented Jan 29, 2026

⚠️ No Changeset found

Latest commit: b582d6f

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@vercel
Copy link
Contributor

vercel bot commented Jan 29, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
admin.ensnode.io Ready Ready Preview, Comment Jan 29, 2026 1:03am
2 Skipped Deployments
Project Deployment Review Updated (UTC)
ensnode.io Skipped Skipped Jan 29, 2026 1:03am
ensrainbow.io Skipped Skipped Jan 29, 2026 1:03am

@coderabbitai
Copy link

coderabbitai bot commented Jan 29, 2026

📝 Walkthrough

Walkthrough

Refactored Sepolia v2 datasource to replace a namespace spread with explicit DatasourceNames entries: ENSRoot, ENSv2Root, ENSv2ETHRegistry, and ReverseResolverRoot. Added multiple root/shared ABIs and zeroAddress, updated contract addresses and unified startBlock 9374708 for ENSv2-related entries.

Changes

Cohort / File(s) Summary
Sepolia v2 Datasource Restructuring
packages/datasources/src/sepolia-v2.ts
Removed previous namespace spread and added explicit DatasourceNames mappings: ENSRoot, ENSv2Root, ENSv2ETHRegistry, ReverseResolverRoot. Imported new ABIs (BaseRegistrar, Registry variants, Resolver, NameWrapper, controllers, StandaloneReverseRegistrar, UniversalResolver, UniversalRegistrarRenewalWithReferrer) and zeroAddress. Added contract addresses and set startBlock 9374708 for new ENSv2 entries; included placeholder zeroAddress for UniversalRegistrarRenewalWithReferrer.

Sequence Diagram(s)

(omitted — changes are configuration/ABI mappings without new multi-component runtime control flow)

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Possibly related PRs

Poem

🐇 I nudged the exports, neat and spry,

ABIs stacked beneath the sky,
StartBlocks set and addresses true,
A zero to hold a placeholder view,
🥕 Hooray — the Sepolia map is new.

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately summarizes the main change—adding correct ENS v1 and v2 addresses to the sepolia-v2 namespace configuration.
Description check ✅ Passed The PR description includes all required template sections: Summary (3 bullets covering key changes), Why (explaining the rationale), Testing (how it was validated), and Notes for Reviewer (explaining the zeroAddress placeholder).
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch fix/sepolia-v2-addresses

Comment @coderabbitai help to get the list of available commands and usage tips.

@shrugs
Copy link
Collaborator Author

shrugs commented Jan 29, 2026

confirmed indexed to latest on sepolia with ensv2

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request fixes the sepolia-v2 namespace configuration to use correct ENS v1 and v2 contract addresses for the testing deployment. The configuration was previously inheriting addresses from the standard Sepolia deployment, which was incorrect for this separate testing namespace.

Changes:

  • Removed inheritance from Sepolia namespace and added complete ENSRoot datasource configuration with dedicated ENSv1 contract addresses for the sepolia-v2 testing deployment
  • Added ReverseResolverRoot datasource with all reverse resolver contract addresses
  • Updated ENSv2Root and ENSv2ETHRegistry contract addresses and start blocks to match the testing deployment

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Jan 29, 2026

Greptile Overview

Greptile Summary

This PR fixes a critical configuration bug where the sepolia-v2 namespace was incorrectly inheriting ENSv1 contract addresses from the standard sepolia deployment instead of using the dedicated temp testing deployment addresses.

Key Changes:

  • Removed inheritance from SepoliaNamespace (via spread operator) and defined complete standalone configuration
  • Added complete ENSRoot datasource with all ENSv1 contracts specific to sepolia-v2 deployment (Registry, BaseRegistrar, NameWrapper, Controllers, UniversalResolver)
  • Fixed ENSv2Root datasource: corrected RootRegistry startBlock from 9771022 to 9771261, and Resolver startBlock from 3702721 to 9770973
  • Fixed ENSv2ETHRegistry datasource: updated ETHRegistrar address from 0xe37a1366c827d18dc0ad57f3767de4b3025ceac2 to 0x3334f0ebcbc4b5b7067f3aff25c6da8973690d54 and startBlock from 9843689 to 9772505
  • Added new ReverseResolverRoot datasource with 7 reverse resolver contracts (DefaultReverseRegistrar, DefaultReverseResolver, and L2-specific resolvers for Base, Linea, Optimism, Arbitrum, and Scroll)

Impact:
This is a config-only change that ensures the indexer will track the correct smart contracts for the sepolia-v2 testing deployment. The previous configuration would have indexed the wrong contracts, leading to incorrect data.

Confidence Score: 4/5

  • This PR is safe to merge with minimal risk as it only updates configuration values
  • Configuration-only change with no runtime logic modifications. All contract addresses follow valid Ethereum address format (0x + 40 hex chars). The zeroAddress placeholder for UniversalRegistrarRenewalWithReferrer is properly documented and intentional. The changes align with the stated goal of fixing incorrect address inheritance.
  • No files require special attention - this is a straightforward configuration update

Important Files Changed

Filename Overview
packages/datasources/src/sepolia-v2.ts Removed incorrect inheritance from sepolia namespace and added complete ENSv1, ENSv2, and reverse resolver configurations with dedicated contract addresses

Sequence Diagram

sequenceDiagram
    participant Config as sepolia-v2.ts
    participant ENSRoot as ENSRoot Datasource
    participant ENSv2Root as ENSv2Root Datasource
    participant ENSv2ETH as ENSv2ETHRegistry
    participant ReverseResolver as ReverseResolverRoot

    Note over Config: Before: Inherited from sepolia namespace
    Note over Config: After: Complete standalone configuration

    Config->>ENSRoot: Define ENSv1 contracts
    Note over ENSRoot: Registry: 0x17795c119b8155ab9d3357c77747ba509695d7cb<br/>BaseRegistrar: 0xb16870800de7444f6b2ebd885465412a5e581614<br/>NameWrapper: 0xca7e6d0ddc5f373197bbe6fc2f09c2314399f028
    
    Config->>ENSv2Root: Define ENSv2 Root contracts
    Note over ENSv2Root: RootRegistry: 0x245de1984f9bb890c5db0b1fb839470c6a4c7e08<br/>ETHRegistry: 0x3f0920aa92c5f9bce54643c09955c5f241f1f763<br/>Updated startBlock: 9771261

    Config->>ENSv2ETH: Define ENSv2 ETH Registry
    Note over ENSv2ETH: ETHRegistry: 0xf332544e6234f1ca149907d0d4658afd5feb6831<br/>ETHRegistrar: 0x3334f0ebcbc4b5b7067f3aff25c6da8973690d54<br/>Updated addresses and blocks

    Config->>ReverseResolver: Add reverse resolver contracts
    Note over ReverseResolver: New datasource with 7 resolver contracts<br/>for different L2s and default resolution
Loading

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 file reviewed, no comments

Edit Code Review Agent Settings | Greptile

Copilot AI review requested due to automatic review settings January 29, 2026 00:45
@vercel vercel bot temporarily deployed to Preview – ensrainbow.io January 29, 2026 00:45 Inactive
@vercel vercel bot temporarily deployed to Preview – ensnode.io January 29, 2026 00:45 Inactive
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@packages/datasources/src/sepolia-v2.ts`:
- Around line 32-89: The comment above the ENSRoot datasource incorrectly says
the placeholder UniversalRegistrarRenewalWithReferrer uses a startBlock of 0;
update that comment to reflect the actual implementation (startBlock: 9374708)
or explicitly note why the placeholder uses the Sepolia startBlock 9374708, so
the comment aligns with the UniversalRegistrarRenewalWithReferrer entry and the
startBlock property.

@shrugs
Copy link
Collaborator Author

shrugs commented Jan 29, 2026

confirmed indexed to latest with subgraph as well

Copilot AI review requested due to automatic review settings January 29, 2026 01:02
@vercel vercel bot temporarily deployed to Preview – ensnode.io January 29, 2026 01:02 Inactive
@vercel vercel bot temporarily deployed to Preview – ensrainbow.io January 29, 2026 01:02 Inactive
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Member

@lightwalker-eth lightwalker-eth left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@shrugs Looks good, thanks 🫡

@lightwalker-eth lightwalker-eth merged commit b2ff8ae into main Jan 29, 2026
21 of 22 checks passed
@lightwalker-eth lightwalker-eth deleted the fix/sepolia-v2-addresses branch January 29, 2026 06:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants