Fixed in: not specified
The cause is in @google/genai, which @tanstack/ai-gemini streams through: processStreamResponse checks for an error object with JSON.parse on the raw network read, before the SSE data: prefix is removed, so an error event never matches; generateContentResponseFromMldev then drops the error field. chat() yields the partial text and ends with no RUN_ERROR or RUN_FINISHED. A bare JSON error body does throw ApiError. Google reproduced it on 2026-10-22 and opened #2094. The Gemini error-event fixture is derived (an error object injected into a recorded stream); no live mid-stream Gemini error has been observed.