I can't see where this is actually referenced in any of the code. I also wonder why we should panic and then recover, instead of just checking for this boolean and never panicking if it is set?

I think it might be clearer to avoid the words "cancel" and "panic" and just use the single term "kill" so this variable would be called `DoNotKill`. The words stop, cancel, and panic all sound like the same thing in English, so `StopCancelPanic` is kind of hard to understand.