Agoric / agoric-sdk

monorepo for the Agoric Javascript smart contract platform
Apache License 2.0
326 stars 206 forks source link

Naming hub: interface to look up an Issuer object and get a (set of) name(s) #5107

Open rowgraus opened 2 years ago

rowgraus commented 2 years ago

Problem to be solved

Currently the only way a user can get an object is through their wallet ("pet names") and the wallet does support naming hubs ("edge names").

Given an object, we need to know the name for it in this user's wallet. E.g. "RUN issuer" and "BLD Issuer"

Design

The lookup strategy is going to be look at my local pet names and if it's not there look at the naming hub. There is a graph of naming hubs, where the root is your local pet names. The resolution of any name is a path through the graph so it's an array where the first element is your local pet namer.

Has to be more constrained than an arbitrary graph.

Open questions:

dckc commented 2 years ago

for motivation, see https://github.com/Agoric/agoric-sdk/issues/4819#issuecomment-1098418900

Tartuffo commented 2 years ago

The vBank has a list of pet names, and that is how they will get into the user's wallet for MN-1. (vBank should publish via subscription).