このあたりたしか原語な英でみるとWheneverの有無があって
ついてるのが最初に処理されて打ち消しとかのチェック前に解決

んで打ち消しとか介入処理後にチェックされるのは消えた時点でそれがないから動かない

でよかったはず