mirror of
https://github.com/openai/codex.git
synced 2026-11-12 21:20:34 +00:00
Fall back to HTTP immediately for oversized WebSocket requests (#60840)
## Why A WebSocket close with code `1009` before any text arrives indicates that the request exceeds the peer's message size limit. Retrying the request over another WebSocket does not address that limit. ## What changed - Classify these early size rejections as requiring HTTP fallback and switch transports without exhausting WebSocket retries, including during prewarming. - Preserve ordinary stream retry behavior for size closes after any text frame and for other close codes. ## Testing Add integration coverage for early size rejections during generation and prewarming, size closes after metadata, rate limits, or response creation, and ordinary closes. GitOrigin-RevId: 4550d289bb414fec1faae2a195bcc635d394117b
This commit is contained in:
@@ -15,6 +15,8 @@ pub enum ApiError {
|
||||
Api { status: StatusCode, message: String },
|
||||
#[error("stream error: {0}")]
|
||||
Stream(String),
|
||||
#[error("websocket request exceeds the peer's message size limit (close code 1009)")]
|
||||
WebsocketMessageTooLarge,
|
||||
#[error("stream error: Incomplete response returned, reason: content_filter")]
|
||||
ContentFilter,
|
||||
#[error(transparent)]
|
||||
|
||||
Reference in New Issue
Block a user