-
Notifications
You must be signed in to change notification settings - Fork 128
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
feat!: ICS v5 (IBC v8) #1088
feat!: ICS v5 (IBC v8) #1088
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎ 1 Ignored Deployment
|
Pull request was converted to draft
This above has been tested in spawn with a v5 consumer & provider and works w/ ghcr.io/strangelove-ventures/heighliner/ics:v5.0.0-provider-rc1 & v5.0.0-rc0 consumer too. (uses custom app vs upstream since the upstream simapp was giving issues with rc0 wrt initial validator set being empty on start) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i had a handful of comments but nothing major. excited to finally land ICS support on main
, great work!
|
||
err = testutil.WaitForBlocks(ctx, 10, provider, consumer) | ||
require.NoError(t, err, "failed to wait for blocks") | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i recently noticed in older branches that just because both chains spin up doesn't necessarily mean that txs are working on the consumer chain. iirc when trying to do bank transfers we would see errors due to the consumer chain not receiving the first validator set update from the provider and i was struggling to figure out how to get this working.
do you think it's worthwhile to assert that some basic things work like a local bank transfer on the consumer and an ibc transfer from the provider -> consumer?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
really good call, the v7 branch fails on these too for a failed to get funds from faucet: transaction failed with code 1: tx contains unsupported message types at height
when trying to fund users accounts. Seems the provider channel is not instantiated properly in either versions. Will be diving into
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i started to go down this rabbit hole awhile ago and what i came up with is that certain txs will not work on the consumer chain until the first validator set update has been received from the provider.
i eventually ran out of bandwidth to keep digging but essentially my issue was i couldn't figure out how to trigger the validator set updates over IBC. it wasn't clear to me if these updates happen on some epoch or if they are event based, i tried performing a bunch of delegations on the provider chain thinking that if the stake for active validators changed perhaps the CCV module would then send the validator set updates to the consumer but at least in v3
(i think is what i was testing against) this didn't seem to do anything.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
im pretty sure a stake on the provider will trigger the event broadcast. Will mess around with it today
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🚢 🚢
closes #1041
also pulls in #1093 changes as it fixed some ICS v5 running <v4 stuff :D