-
Notifications
You must be signed in to change notification settings - Fork 33
Open
Description
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:
- 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
- Connection Identifiers should be prefixed with
connection
- they should have a unique 8 character suffix matching
[0-9a-zA-Z] - example
connection-8bvC6762
- Channel Identifiers should be prefixed with
channel
- they should have a unique 8 character suffix matching
[0-9a-zA-Z] - example
channel-972309bR
- 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
LocalNetis still functioning correctly by following the instructions at docs/development/README.md - k8s LocalNet: verify a
k8s LocalNetis still functioning correctly by following the instructions here
Metadata
Metadata
Assignees
Labels
ibcIBC specific changesIBC specific changes
Type
Projects
Status
No status