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

ICS003 Connection Upgrades: In-flight packets #729

Open
AdityaSripal opened this issue May 2, 2022 · 0 comments
Open

ICS003 Connection Upgrades: In-flight packets #729

AdityaSripal opened this issue May 2, 2022 · 0 comments
Assignees
Labels
improvement Improvement or enhancement to make specs more comprehensible tao Transport, authentication, & ordering layer.

Comments

@AdityaSripal
Copy link
Member

Ref: #725

In-flight packet handling for connection upgrades is more tricky than channel upgrades. Just as before assuming packet verification does not break, then once the connection upgrade completes; all packet verification resumes (either timeouts or receives).

However, if the connection upgrade happens to break packet verification (e.g. the proof paths in ICS24 get changed), then in-flight packets will fail verification but it will not be recoverable in-protocol. It will require manual migration or recovery to deal with this issue.

Luckily, connection upgrades are intended for core developers to be able to change the core IBC stack. So it is incumbent on future core teams to upgrade the stack in ways that are either backwards compatible or provide the requisite migration code to end chains that may want to perform the upgrade.

This must be clearly documented in the spec, especially since the potential downside of a poorly planned connection upgrade is worse than channel upgrade.

@AdityaSripal AdityaSripal self-assigned this May 2, 2022
@crodriguezvega crodriguezvega added the tao Transport, authentication, & ordering layer. label May 3, 2022
@crodriguezvega crodriguezvega added the improvement Improvement or enhancement to make specs more comprehensible label Apr 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
improvement Improvement or enhancement to make specs more comprehensible tao Transport, authentication, & ordering layer.
Projects
None yet
Development

No branches or pull requests

2 participants