Skip to content

fix: remove ibc specific logic#5

Merged
chatton merged 4 commits intomainfrom
cian/remove-ibc-specific-paths
Nov 28, 2025
Merged

fix: remove ibc specific logic#5
chatton merged 4 commits intomainfrom
cian/remove-ibc-specific-paths

Conversation

@chatton
Copy link
Collaborator

@chatton chatton commented Nov 28, 2025

Overview

I noticed some odd behaviour when attempting to manually test this with a local multi chain setup and hermes.

I saw the "ibc" specific path was not actually enabled (while IBC was enabled, the migration module was not being provided with the store key)

I dug in a little more, and realised the bare minimum requirement for ibc to continue to function, is to have a MsgUpdateClient submitted at H + 1 where H is the migration height.

This will be the transition from N -> 1 validator, and then all future ibc transactions are accompanied by a MsgUpdateClient.

I confirmed that the test fails with failed to verify header: cant trust new val set: invalid commit -- insufficient voting power: got 5, needed more than 8 if trying to only update H + 2 or anything afterwards. There is no need to spam MsgTransfers or to perform more than a single MsgUpdateClient

This means we can also completely remove the special handling for ibc and perform the migration the same way no matter what, the only important thing is MsgUpdateClient at height H+1

@chatton chatton marked this pull request as ready for review November 28, 2025 09:43
Copy link

@damiannolan damiannolan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aligns with the write up I had in https://hackmd.io/@damian666/HkCWLNNs1g and makes sense to me. Nice to finally see this put into action.

Key part being the lightclient update at H + 1 as this is where the header reflects trusted validators and they have signed NextValsHash = SequencerKey. Subsequently at H + 2 the sequencer key is the only active validator in the set.

@chatton chatton merged commit a0b78fd into main Nov 28, 2025
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants