Reconstructing a packet from a relayer's perspective is unnecessarily complex due to the need to process multiple events, which complicates event handling and increases the likelihood of errors.
Since event support has not yet fully arrived (#7386), the same problem would also occur for write acknowledgement events once they are implemented.
Use cases
Improved Developer Experience
Relayer developers can work with a more intuitive event model, reducing development and debugging time.
Cleaner Codebase in IBC-Go
Consolidating packet data into a single event simplifies code logic, reducing maintenance overhead and potential for bugs.
Enhanced Ecosystem Interoperability
A more streamlined event structure aligns with modern approaches, like Solidity-IBC-Eureka, fostering consistency across implementations.
Proposal
We can simply include the all payload information in the same event or do what solidity-ibc-eureka is doing and encode the entire packet as a single key-value pair.
We may also want to modify the spec so that all packet info is contained in a single event.
Summary
Reconstructing a packet from a relayer's perspective is unnecessarily complex due to the need to process multiple events, which complicates event handling and increases the likelihood of errors.
Problem Definition
https://github.com/cosmos/ibc-go/blob/8bae734a8e699632f27fab103c25dd892ca66068/modules/core/04-channel/v2/keeper/events.go#L14-L53
Since event support has not yet fully arrived (#7386), the same problem would also occur for write acknowledgement events once they are implemented.
Use cases
Improved Developer Experience
Cleaner Codebase in IBC-Go
Enhanced Ecosystem Interoperability
Proposal
We can simply include the all payload information in the same event or do what solidity-ibc-eureka is doing and encode the entire packet as a single key-value pair.
We may also want to modify the spec so that all packet info is contained in a single event.
For Admin Use