ibc-go
ibc-go copied to clipboard
On async acks, store the full packet in core IBC
Summary
Currently relayers rely on the full packet being emitted in core IBC which results in all async acks storing the full packet to give back to core IBC. In the meantime, core IBC should be the one storing the packet for async acks so it occurs in one place and applications can rely solely on their packet data (and not the full packet)
For Admin Use
- [ ] Not duplicate issue
- [ ] Appropriate labels applied
- [ ] Appropriate contributors tagged/assigned
Doing a migration for v1 IBCModule's might be difficult. It might be better to simply implement this functionality for packet v2/eureka. Thus the WriteAcknowledgementAsync function should take in a destination_id, destination_port sequence and ack
In the short term, transfer v2 should probably always default to sending v1 packets. It's probably a bit disruptive to have it use v2 packets for middlehops. The initial send could still be a v2 packet
Completed in https://github.com/cosmos/ibc-go/pull/7869