InterruptHandle::kill() currently returns true only if it sends a signal to the vCPU. This is misleading because kill() effectively prevents execution even if no signal is sent (e.g., if called before the vCPU starts within MultiUseSandbox::call()).
The return value was originally intended to indicate whether the cancellation was effective (i.e., if it actually interrupted the guest). However, since the return value cannot accurately reflect whether execution was stopped or prevented in all cases, I think it should be removed.