Raised when an evaluation halts because :max_errors was reached.
Mirrors DSPy's ParallelExecutor, which raises
Exception("Execution cancelled due to errors or interruption.") once
error_count >= max_errors (dspy/utils/parallelizer.py). A truncated
evaluation must never masquerade as a completed one, so the partial rows
and errors ride on the exception instead of a normal-looking result.