Skip to content

Return IBC err ack when val not found for slash packet #546

Closed
@shaspitz

Description

@shaspitz

Problem

#542 will close #414 by adding more clarity around validation vs handling. Where recv packet validation will return an ibc err ack upon failure, while recv packet handling would panic upon any system critical failure.

#542 is intended be refactoring (no functionality changes), whereas this issue is concerned with changing provider functionality to return an IBC err ack on recv slash packet validation when the validator from the packet is not found or unbonded.

Closing criteria

Change functionality of provider as described below, test new functionality properly.

Problem details

Currently, when the validator from a recv slash packet is not found or unbonded, we simply log an error and drop the packet. There is no err ack that is returned to the consumer. We should return an err ack in this case, by adding a check to validateSlashPacket()

Note that changing this functionality seems trivial, but there are a good amount of tests that non-trivially rely on current provider functionality, TestConsumerPacketSendExpiredClient as example.

Metadata

Metadata

Assignees

No one assigned

    Labels

    S: ImprovingThingsImproving things: Customer requests, performance improvements, reliability and usabilitygood first issueGood for newcomers

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions