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

Decouple sov-ibc from any IBC apps with an intermediary module and provide clear port-to-app mapping #13

Open
Farhad-Shabani opened this issue Oct 9, 2023 · 0 comments
Labels
blocked Blocked by another (internal/external) issue or PR modules Related to ibc modules

Comments

@Farhad-Shabani
Copy link
Member

Problem Statement

Ideally, the sov-ibc module should be divided into two distinct modules, e.g., sov-ibc-core and sov-ibc-router.
This separation ensures that sov-ibc-core remains integrated with any IBC application without being coupled to any of them. (which is already the case and it depends on sov-ibc-transfer). Instead, when necessary, a router module should be invoked to determine which application is operated.

For instance, looking at other existing IBC applications like ICS-27 (Interchain Accounts), each interchain account operates on a separate channel and port ids. Consequently, a complete IBC module may comprise multiple ports. This necessitates a clear mapping of ports to applications which implies the need for specific states to be defined within the store and managed within a module. This module fundamentally is responsible for managing incoming packets into various applications and facilitating interaction between sov-ibc-core and different sov-ibc-app.

However, the implementation of such a router module is currently blocked by ibc-rs due to design limitations.

@Farhad-Shabani Farhad-Shabani added modules Related to ibc modules blocked Blocked by another (internal/external) issue or PR labels Oct 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked Blocked by another (internal/external) issue or PR modules Related to ibc modules
Projects
Status: 📥 To Do
Development

No branches or pull requests

1 participant