Skip to content

fix: retry pre-response WebSocket server errors - #3991

Merged
seratch merged 1 commit into
openai:mainfrom
dk3yyyy:fix/3990-websocket-server-error-retry
Jul 27, 2026
Merged

seratch merged 1 commit into
openai:mainfrom
dk3yyyy:fix/3990-websocket-server-error-retry

Conversation

@dk3yyyy

@dk3yyyy dk3yyyy commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

Summary

This pull request fixes Responses WebSocket server_error frames bypassing provider-suggested model retry policies when they arrive before response processing begins.

It classifies the reported error_type="server_error" and code=None frame as retryable while preserving the existing overload behavior and replay-safety boundaries. Coded non-transient errors remain unaffected, and stateful continuations remain subject to the existing replay-safety gate.

Test plan

  • uv run pytest tests/models/test_openai_responses.py -k 'websocket_get_retry_advice' -q (19 passed)
  • uv run pytest tests/models/test_openai_responses.py -q (126 passed)
  • .agents/skills/code-change-verification/scripts/run.sh (format, lint, full tests, mypy, and pyright passed)
  • Independent specification and code-quality reviews passed on the final diff

Issue number

Closes #3990

Checks

  • I've added new tests, if relevant
  • I've run .agents/skills/code-change-verification/scripts/run.sh
  • I've confirmed all verification steps pass
  • If using Codex, I've run /review before submitting this PR (not applicable; Codex was not used)
@seratch seratch added this to the 0.19.x milestone Jul 27, 2026
@seratch
seratch merged commit 73a2cd5 into openai:main Jul 27, 2026
9 checks passed
@dk3yyyy
dk3yyyy deleted the fix/3990-websocket-server-error-retry branch July 30, 2026 10:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

2 participants