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
We have implemented the relayer-next CLI to support relaying for one pair of chain and IBC client. As a follow up, we can extend the CLI such that it supports relaying for all chains and clients that are specified in the config.
Details
To have an efficient implementation of the CLI to relay multiple chains, we need to have a better API for constructing relay contexts. The current ad hoc way of constructing relay contexts do not scale well to support the construction of many relay contexts. This is because the constructor would need to be aware of what other chain and relay contexts have been created, and reuse them if possible.
As a result, this issue is blocked until informalsystems/hermes#3083 is completed. informalsystems/hermes#3083 provides a relayer builder API so that the logic for building a relayer from the CLI can be abstracted in the same way as the relayer itself using context-generic programming. This should reduce the burden of figuring out how to construct the relayer based on custom parameters such as the CLI parameters and config files.
Tasks
The support for multiple relay contexts in the CLI can be split into 2 smaller tasks:
Support multiple clients from the same chain pair
this can be done by creating two chain contexts, and multiple relay context pairs for each client ID pairs.
We may need ways to determine what client ID pairs are available for a given chain pair.
We could initially do this by reusing the ChainScan construct in relayer v1.
At a later time, we can implement similar logic in the chain context using context-generic programming.
Support multiple chains
This requires a builder API that can accept a list of chains IDs and client IDs, and automatically build all combination of relay contexts from it.
The text was updated successfully, but these errors were encountered:
Blocked by: informalsystems/hermes#3083
Summary
We have implemented the relayer-next CLI to support relaying for one pair of chain and IBC client. As a follow up, we can extend the CLI such that it supports relaying for all chains and clients that are specified in the config.
Details
To have an efficient implementation of the CLI to relay multiple chains, we need to have a better API for constructing relay contexts. The current ad hoc way of constructing relay contexts do not scale well to support the construction of many relay contexts. This is because the constructor would need to be aware of what other chain and relay contexts have been created, and reuse them if possible.
As a result, this issue is blocked until informalsystems/hermes#3083 is completed. informalsystems/hermes#3083 provides a relayer builder API so that the logic for building a relayer from the CLI can be abstracted in the same way as the relayer itself using context-generic programming. This should reduce the burden of figuring out how to construct the relayer based on custom parameters such as the CLI parameters and config files.
Tasks
The support for multiple relay contexts in the CLI can be split into 2 smaller tasks:
ChainScan
construct in relayer v1.The text was updated successfully, but these errors were encountered: