You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add support in Hermes for dynamic channel version negotiation for use in channel open handshakes, with application to ICS-027.
Problem Definition
Whenever Hermes is building one of the first three messages of a channel's handshake (init, try, ack), it must also relay a version parameter which is an application-defined string. The relevant part of the specification is here. The ICA protocol (ics-027) uses the channel version to pass the interchain account between the host chain and the controller chain. Issue cosmos/ibc-go#378 describes accurately what Hermes is supposed to do, in particular:
a relayer will need to query the host chain for an updated version string prior to calling the OnChanOpenAck endpoint
adizere
changed the title
Support for dynamic version strings in channel open handshake
Support dynamic version strings in ChanOpen handshake [ibc-go v2]
Nov 2, 2021
Crate
ibc-relayer
Summary
Add support in Hermes for dynamic channel version negotiation for use in channel open handshakes, with application to ICS-027.
Problem Definition
Whenever Hermes is building one of the first three messages of a channel's handshake (init, try, ack), it must also relay a version parameter which is an application-defined string. The relevant part of the specification is here. The ICA protocol (ics-027) uses the channel version to pass the interchain account between the host chain and the controller chain. Issue cosmos/ibc-go#378 describes accurately what Hermes is supposed to do, in particular:
Further details are provided in this comment: cosmos/ibc-go#136 (comment)
The actual implementation of the new query (which Hermes will need to rely on) is in this PR: cosmos/ibc-go#384
Proposal
The changes we need to do are localized here:
https://github.com/informalsystems/ibc-rs/blob/8d4d73bf6aa35a6f9111bf6cfbf08f23f2ffe7c6/relayer/src/chain.rs#L224-L233
There is also a note with respect to this problem at a call site in the relayer's channel object implementation.
https://github.com/informalsystems/ibc-rs/blob/8d4d73bf6aa35a6f9111bf6cfbf08f23f2ffe7c6/relayer/src/channel.rs#L655-L656
Acceptance Criteria
For Admin Use
The text was updated successfully, but these errors were encountered: