fix(esg): cancellation-aware ErrorClassifier.IsTransient overload — caller-cancelled work can never classify transient

Claude-Session: https://claude.ai/code/session_01MtdgwpEeCUn6cUA5f1LMPj
This commit is contained in:
Joseph Doherty
2026-07-10 04:32:51 -04:00
parent 0ee9975111
commit 37cf7c1a44
3 changed files with 26 additions and 1 deletions
@@ -340,7 +340,7 @@ public class ExternalSystemClient : IExternalSystemClient
throw ErrorClassifier.AsTransient(
$"Timeout calling {system.Name} after {effectiveTimeout.TotalSeconds:0.##}s", ex);
}
catch (Exception ex) when (ErrorClassifier.IsTransient(ex))
catch (Exception ex) when (ErrorClassifier.IsTransient(ex, cancellationToken))
{
throw ErrorClassifier.AsTransient($"Connection error to {system.Name}: {ex.Message}", ex);
}