Skip to content

ICS4: recvPacket() should emit an event for already received packets on ordered channels #755

Closed
@plafer

Description

ICS4's recvPacket() currently aborts the transaction and emits no logs if the channel is ordered and the sequence number in the packet doesn't match the chain's nextSequenceRecv. However, ibc-go and ibc-rs emit an event and return a "no-op" error code, as introduced in this PR, when packet.sequence < nextSequenceRecv. This deviation from the standard was introduced to reduce fees to relayers.

I don't know if we want to consider the "no-op" error code an implementation detail; however, I believe we should at least have the standard emit an event when packet.sequence < nextSequenceRecv.

Metadata

Labels

taoTransport, authentication, & ordering layer.

Type

No type

Projects

  • Status

    Backlog

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions