Why the signal fired — a wire-format reason (cancelled, step_timeout) so a checkpoint can report the CAUSE rather than a generic abort.
cancelled
step_timeout
@override String? get reason => _cancelled ? (_reason ?? 'cancelled') : null;