core/agent: surface openai responses stream error events

This commit is contained in:
2026-08-01 01:05:09 +08:00
parent 9aea91e77c
commit e29e66dbc7
3 changed files with 23 additions and 0 deletions
+6
View File
@@ -62,6 +62,12 @@ async def _stream_as_chat_chunks(
final: ResponseModel | None = None
async for event in stream:
etype = event.type
if etype == "error":
code = event.code if event.code is not UNSET else ""
message = event.message if event.message is not UNSET else ""
detail = message.strip() or code
label = detail.strip() or etype
raise RuntimeError(f"openai responses stream error: {label}") # noqa: TRY003 — transport failure
if etype == "response.output_text.delta" and isinstance(event.delta, str) and event.delta:
yield text_delta_chunk(model=model, content=event.delta)
continue
+3
View File
@@ -282,6 +282,9 @@ class ResponseStreamEvent(Struct, omit_defaults=True):
name: str | Unset = UNSET
arguments: str | Unset = UNSET
call_id: str | Unset = UNSET
# error events (type == "error")
code: str | Unset = UNSET
message: str | Unset = UNSET
# --- Helpers -----------------------------------------------------------------------