Skip to content

add ability to update chain info (chainHub) #80

@0xpatrickdev

Description

@0xpatrickdev

Context

ChainHub provides information about IBC Connection IDs, Channel IDs, and Denoms. Each orchestration contract has its own ChainHub for faster lookups and fine-grained control.

At the time of writing, ChainHub will fall back to a remote lookup to agoricNames for chain and connection info if none is present in the local state. Denom/asset info must be provided to ChainHub directly but can be fetched from agoricNames for convenience.

Also at the time writing, Agoric/agoric-sdk#10230 is still open so certain environments, like Emerynet, will have no information in agoricNames. This means contracts must provide the information themselves.

Problem

The deployers of dapp-orchestration-basics should have the ability to update information in the local ChainHub. They shouldn't need to restart the contract to do this.

Suggested Fix

@agoric/orchestration exports prepareChainHubAdmin which can be used as a CreatorFacet. In a simple implementation, the creatorFacet can be referenced in a future CoreEval that's sole purpose is to update chain info (using registerChain and registerAsset). A different approach might use a governedFacet to expose this functionality to contract admins.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions