Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[IBC] Update IBC identifier logic #974

Open
11 tasks
h5law opened this issue Aug 9, 2023 · 0 comments
Open
11 tasks

[IBC] Update IBC identifier logic #974

h5law opened this issue Aug 9, 2023 · 0 comments
Assignees
Labels
ibc IBC specific changes

Comments

@h5law
Copy link
Contributor

h5law commented Aug 9, 2023

Objective

Relayers need to use identifiers to specify clients, connections, channels and ports. Currently the identifiers are generated randomly. However, to aid the relayers they should be semi-structured.

The proposed changes are as follows:

  1. Client Identifiers should be prefixed with their client type for consistency with ibc-go
  • they should have a unique 8 character suffix matching [0-9a-zA-Z]
  • example: 08-wasm-Fj06bZ84
  1. Connection Identifiers should be prefixed with connection
  • they should have a unique 8 character suffix matching [0-9a-zA-Z]
  • example connection-8bvC6762
  1. Channel Identifiers should be prefixed with channel
  • they should have a unique 8 character suffix matching [0-9a-zA-Z]
  • example channel-972309bR
  1. Port Identifiers should be chosen depending on their purpose
  • example transfer

Origin Document

https://hermes.informal.systems/tutorials/local-chains/add-a-new-relay-path.html#identifiers

Goals

  • Update the identifier logic to follow the patterns above
  • Update the unit tests
  • Update any usages of the identifiers in the code to match the new pattern

Deliverable

  • Identifier logic is consistent with the patterns above
  • All unit tests pass

Non-goals / Non-deliverables

  • Change any logic where identifiers are being used outside of making them conform to the new standard

General issue deliverables

  • Update the appropriate CHANGELOG(s)
  • Update any relevant local/global README(s)
  • Update relevant source code tree explanations
  • Add or update any relevant or supporting mermaid diagrams

Testing Methodology

  • Task specific tests or benchmarks: make ...
  • New tests or benchmarks: make ...
  • All tests: make test_all
  • LocalNet: verify a LocalNet is still functioning correctly by following the instructions at docs/development/README.md
  • k8s LocalNet: verify a k8s LocalNet is still functioning correctly by following the instructions here

Creator: @h5law
Co-Owners: @h5law

@h5law h5law added the ibc IBC specific changes label Aug 9, 2023
@h5law h5law added this to the M7: Pocket NoS (North Star) milestone Aug 9, 2023
@h5law h5law self-assigned this Aug 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ibc IBC specific changes
Projects
Status: No status
Development

No branches or pull requests

1 participant