Skip to content

Omnigraph: Resolver.underlying (unwrap proxy / composite resolvers) #1964

@shrugs

Description

@shrugs

Problem

Portal's /$name/resolver view needs the "underlying" resolver address when the configured resolver is a proxy / composite resolver. Today this is done with two RPC hops: supportsInterface(CompositeExtendedResolver) to detect the case, then ensjs getUnderlyingAddress to unwrap. As portal migrates off RPC, Omnigraph should expose this directly.

Proposal

Expose on Resolver:

type Resolver {
  # existing fields...
  underlying: Resolver             # null when not a proxy / composite
  isComposite: Boolean!            # optional ERC165 boolean, joining other is* booleans
}
  • underlying points at the Resolver entity the proxy delegates to (same node type, so all existing resolver fields are available on it).
  • isComposite may not be necessary, ui can just check Resolver.underlying for full

Consumers

  • apps/portal/ /$name/resolver
  • apps/portal/ features/resolver/hooks/useUnderlyingResolver.ts (current RPC path)

Metadata

Metadata

Assignees

No one assigned

    Labels

    ensapiENSApi related

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions