[BUG] Affiliated Fee cause node bond to be slashed

There are two bond slash events happened this morning, the root cause is , someone trying to swap in a staging pool with affiliated fee. The inbound txs are

https://explorer.binance.org/tx/D48757753D9FDBA6C61547697645FF03B443A48676C387421E1CBDCF0B0495AB

https://explorer.binance.org/tx/054F228AE8C0A542741208F7456DFC1AA52A7620E8BBBDEC6B1D4BBAF2747B4A

These txs are swapping from BNB.ADA-9F4 → RUNE, however BNB.ADA-9F4 pool is staging , thus can't swap , as a result , the network refund it. But why it slash asgard's bond?

this is how affiliated fee works?

The inbound tx has been split into two swap txs , one swap to the destination , the other one swap to the affiliated fee address. Because the pool is staging , so both of these swaps will be refund

scheduled outbound:

Because the same inbound tx has been split into two , so there are two refund txs now. the swap for affiliated fee will be small , thus refund should happen immediately , the swap to the destination address will be relatively large , thus refund will be delayed a few blocks.

But this is caused the same inbound tx , with two outbound txs , and it happened at different blocks. ObserveTxInVoter can only save 1 outbound height

When outbound get signed by bifrost , and observe back , one of the outbound tx can't be matched against the tx out item , thus asgard get slashed.