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

Hermes feature: Relay ics20/27 packets after successful governance proposal #1093

Closed
5 tasks
seantking opened this issue Jun 16, 2021 · 5 comments
Closed
5 tasks
Milestone

Comments

@seantking
Copy link

Crate

relayer

Summary

At present, the Hermes relayer seems to not pick up IBC packets that need to be relayed in the event of a successful governance proposal passing. For example, if a governance proposal handler triggers an ics20 transfer, the Hermes relayer should listen for this and relay the packet.

I am working on a client flow for interchain accounts that involves creating/passing governance proposals to control an account (so sending packets on an ics27 channel). Experimental example (ics20 transfer on successful governance proposal passing)here

I see that here the Hermes relayer seems to only be listening for specific module "actions". I don't fully understand this pattern, is this intentionally part of the Hermes design? In the case of interchain accounts, there will be many custom events that will need to be added here as each user of interchain accounts will need to define their own custom functionality. I think this is not sustainable as in this case each chain will need to fork their own version of Hermes.

Problem Definition

What problems may be addressed by introducing this feature?

Governance is a feature that should be supported I think.

Proposal

When a governance proposal passes, if the proposal handler creates an IBC packet to send to another chain, the relayer should listen for this and relay the packet successfully.

Acceptance Criteria

Same as above.


For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate milestone (priority) applied
  • Appropriate contributors tagged
  • Contributor assigned/self-assigned
@colin-axner
Copy link
Contributor

Sounds like event listening for begin blocker and end blocker aren't getting picked up by hermes? Would be great to support all IBC events emitted in begin blocker/end blocker (even those not caused by a governance proposal)

@ancazamfir
Copy link
Collaborator

ancazamfir commented Jun 17, 2021

Sounds like event listening for begin blocker and end blocker aren't getting picked up by hermes? Would be great to support all IBC events emitted in begin blocker/end blocker (even those not caused by a governance proposal)

Indeed hermes doesn't pick these up. Will look into it. Do you have a dump of a block that contains some events in begin/end block? Or a block height on cosmoshub-4 that I can take as example for testing?

@ancazamfir
Copy link
Collaborator

@seantking can you provide some steps to reproduce this issue? I can use some sdk branch and build gaia from there, etc. just need a bit more detail

@colin-axner
Copy link
Contributor

Indeed hermes doesn't pick these up. Will look into it. Do you have a dump of a block that contains some events in begin/end block? Or a block height on cosmoshub-4 that I can take as example for testing?

Unfortunately I don't. There should be some event every block for a begin or end blocker. Looks like minting will mint the inflation amount every block

@adizere
Copy link
Member

adizere commented Sep 6, 2021

Should be fixed by #1172.

@adizere adizere closed this as completed Sep 6, 2021
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

No branches or pull requests

4 participants