Skip to content

[BUG] Withdraw cause node account get slashed

Heimdall requested to merge 1099-issue into develop

Related to #1099 (closed)

This PR actually fix two different bugs.

  1. When an LP withdraw their liquidity, usually it will be one inbound transaction, which result two outbound transaction , one is for external chain to send asset back to LP, the other one is on THORChain , sending RUNE back to LP With delay outbound change , there is a new field outbound_height on ObservedTxVoter , which will be set to the block height which the external chain transaction will be sent out. However when the second outbound on THORChain get processed , the outbound_height get overwritten , thus when the outbound transaction get processed by bifrost , the network fail to find out the tx out item , as a result , node operator get slashed.

  2. When an LP trying to add liquidity , and for some reason add liquidity failed , which result in a refund , because add liquidity usually doesn't have any outbound , unless failure cause refund, in the failure case , outbound_height get overwritten later in the process

Edited by Heimdall

Merge request reports