v1.13
Fixed
-
OpenAI provider crashed with
'list' object has no attribute 'strip'(#75)The OpenAI Responses API (
/v1/responses, the default for the OpenAI provider) returns the assistant text nested inoutput[].content[].text, and the raw HTTP body has no top-leveloutput_text(that's an SDK-only convenience property). The parser returned thecontentlist instead of a string, so the agent called.strip()on a list and failed on every retry — the sidebar showed "AI client error on attempt 1" repeated 10× for any prompt.- The parser now descends into
output[].content[]and concatenates everyoutput_textblock into a string, and skips non-text items such as the leadingreasoningitem o-series models emit. - Added a defensive guard so any client returning a non-string degrades gracefully instead of exhausting all retries with an opaque
AttributeError. - Added regression tests; verified live against the real OpenAI
/v1/responsesAPI.
- The parser now descends into
Full changelog: https://github.com/sbenodiz/ai_agent_ha/blob/main/CHANGELOG.md
PR: #76