From 814d0395835f3490eeb5856540f36a3c0f7c1942 Mon Sep 17 00:00:00 2001 From: cty-ut Date: Fri, 15 May 2026 01:19:40 +0900 Subject: [PATCH 1/2] fix: log exception when output guardrail raises instead of silently ignoring --- src/agents/realtime/session.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/agents/realtime/session.py b/src/agents/realtime/session.py index f424b5b9d5..ed9d8c968c 100644 --- a/src/agents/realtime/session.py +++ b/src/agents/realtime/session.py @@ -988,7 +988,7 @@ async def _run_output_guardrails(self, text: str, response_id: str) -> bool: if result.output.tripwire_triggered: triggered_results.append(result) except Exception: - # Continue with other guardrails if one fails + logger.exception("Output guardrail %r raised an exception", guardrail.get_name()) continue if triggered_results: From be13ebd98f3afcce4f45deb4e7988adfd0533f7f Mon Sep 17 00:00:00 2001 From: cty-ut Date: Fri, 15 May 2026 18:47:24 +0900 Subject: [PATCH 2/2] address review: use logger.warning + debug instead of logger.exception --- src/agents/realtime/session.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/agents/realtime/session.py b/src/agents/realtime/session.py index ed9d8c968c..2b45ccaed6 100644 --- a/src/agents/realtime/session.py +++ b/src/agents/realtime/session.py @@ -987,8 +987,14 @@ async def _run_output_guardrails(self, text: str, response_id: str) -> bool: ) if result.output.tripwire_triggered: triggered_results.append(result) - except Exception: - logger.exception("Output guardrail %r raised an exception", guardrail.get_name()) + except Exception as exc: + logger.warning( + "Output guardrail %r raised %s: %s; skipping it.", + guardrail.get_name(), + type(exc).__name__, + exc, + ) + logger.debug("Output guardrail failure details.", exc_info=True) continue if triggered_results: