diff --git a/src/mech_gov/llm/providers/bedrock.py b/src/mech_gov/llm/providers/bedrock.py index b336740..4855c93 100644 --- a/src/mech_gov/llm/providers/bedrock.py +++ b/src/mech_gov/llm/providers/bedrock.py @@ -162,7 +162,12 @@ def invoke( else: # All retries exhausted logger.error("Bedrock invoke FAILED: all %d retries exhausted", self._max_retries) - raise last_exc # type: ignore[misc] + if last_exc is None: + raise RuntimeError( + f"Bedrock invoke failed without a captured exception " + f"(max_retries={self._max_retries})" + ) + raise last_exc elapsed_ms = time.perf_counter() * 1000 - start_ms