Deposit/Withdrawals/Stake/Unstake done via subcalls are not handled the same as direct Deposit/Withdraw/Stake/Unstake transactions, which are first marked as pending and only after the event is received are marked as either successful or failed.
Such inconsistencies are why I was a bit against implementing this in the first place (in #818). But since we have this, we should probably make it consistent for such transactions done via subcalls.