From e95ad90055aaa2115b39c7d0d4061a928273f679 Mon Sep 17 00:00:00 2001 From: Bryan Van Deusen Date: Sun, 12 Apr 2026 12:28:57 -0400 Subject: [PATCH] fix(research): show exception type when error message is empty Some exceptions (e.g. connection errors) produce empty str(e), resulting in "Research failed: " with no explanation. Fall back to the exception class name when the message is blank. Co-Authored-By: Claude Opus 4.6 --- src/fabledassistant/services/generation_task.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/fabledassistant/services/generation_task.py b/src/fabledassistant/services/generation_task.py index 329628c..9555b97 100644 --- a/src/fabledassistant/services/generation_task.py +++ b/src/fabledassistant/services/generation_task.py @@ -376,8 +376,9 @@ async def run_generation( buf.content_so_far += done_text except Exception as e: logger.exception("Research pipeline failed for topic: %s", topic) - result = {"success": False, "error": str(e)} - err_text = f"\nResearch failed: {e}" + err_msg = str(e) or f"{type(e).__name__}: unexpected error" + result = {"success": False, "error": err_msg} + err_text = f"\nResearch failed: {err_msg}" buf.append_event("chunk", {"chunk": err_text}) buf.content_so_far += err_text research_completed = True