You'll notice
Killing a task that shows as ended but whose loop is still live now aborts it for real instead of doing nothing.
Stopping a task whose record already shows it ended, but whose execution loop hasn't actually exited, now re-signals the loop: it aborts the loop's abort controllers and kills its process groups, and returns a note explaining that the record stayed listed because the loop was still live. Previously this case was a silent no-op.