fix: guard against nil response in Generate to prevent panic (#228)
slzcdhd
and
liaoyijun
created
Some OpenAI-compatible API endpoints (e.g. DeepSeek) may return a nil
response with no error from the underlying SDK under edge conditions
(empty response body, connection issues during response parsing, etc.).
When this happens, accessing response.Choices (Chat Completions),
response.Error (Responses API), or response.Content (Anthropic)
causes a nil pointer dereference panic that crashes the process.
Add nil response checks in Generate methods for:
- providers/openai: languageModel.Generate (Chat Completions API)
- providers/openai: responsesLanguageModel.Generate (Responses API)
- providers/anthropic: languageModel.Generate
Each returns a descriptive fantasy.Error instead of panicking.
Co-authored-by: liaoyijun <βliaoyijun@wps.cnβ>