zed/crates/open_ai
Conrad Irwin 83f3a8e3e9
open_ai: Classify Responses API send failures as transport errors (#62660)
OpenAI Responses API send failures were being converted into the
catch-all `Other` error before they reached the language model layer. A
DNS failure from the ChatGPT Subscription provider could therefore
appear as an unexpected model error instead of using the existing
transport-aware messaging and retry behavior.

The shared Chat Completions transport already preserves this
distinction. This change applies the same `RequestError::HttpSend`
classification to Responses API streaming and compaction requests,
allowing the existing conversion to produce
`LanguageModelCompletionError::HttpSend` with the provider and
underlying cause intact. Separate regression tests cover send failures
in both request paths.

Testing performed:

- `cargo test -p open_ai reports_http_send_errors -- --nocapture`
- `cargo test -p open_ai`
- `cargo check -p openai_subscribed`
- `cargo fmt --all --check`
- `git diff --check`
- `./script/clippy -p open_ai`

Release Notes:

- Fixed ChatGPT Subscription connection failures showing a generic error
instead of a network-specific message.
2026-08-18 03:20:44 +00:00
..
src open_ai: Classify Responses API send failures as transport errors (#62660) 2026-08-18 03:20:44 +00:00
Cargo.toml Add explicit OpenAI conversation compaction and fix Anthropic compaction (#61370) 2026-07-24 16:53:45 +00:00
LICENSE-GPL Fix licensing errors 2024-03-20 15:52:02 +01:00