fix(backend/chat): Handle non-serializable SDK objects in tool result output

This commit is contained in:
Zamil Majdy
2026-02-09 10:59:50 +04:00
parent 6e2a45b84e
commit 7d32c83f95

View File

@@ -192,11 +192,20 @@ class SDKResponseAdapter:
output_text += item.get("text", "")
elif hasattr(item, "text"):
output_text += getattr(item, "text", "")
output = output_text or json.dumps(result_content)
if output_text:
output = output_text
else:
try:
output = json.dumps(result_content)
except (TypeError, ValueError):
output = str(result_content)
elif isinstance(result_content, str):
output = result_content
else:
output = json.dumps(result_content)
try:
output = json.dumps(result_content)
except (TypeError, ValueError):
output = str(result_content)
responses.append(
StreamToolOutputAvailable(