$ the-wire · showcase
Live and Realtime queues stop replaying uncertain sends
By RepoJournal · Filed · About OpenAI · Composed from the cited sources · methodology
Both SDKs moved the same way on the same day: a send that may already have reached the server is now reported as an error instead of being silently retried, and configured queues survive reconnects.
fix(live): prevent replay of delivery-uncertain queued writes openai/openai-node
A Live queued send that failed after the socket had already accepted bytes could be resent on reconnect, duplicating the command on the server. Live primary, fork, and sideband now retain only messages whose send was never attempted, and delivery-uncertain messages are reported as errors rather than replayed or surfaced as `unsent`; Responses and other endpoints keep the shared queue's existing...
fix(realtime): retain configured queues without replaying attempted sends openai/openai-python
In Realtime, an empty manager queue was replaced on connect, losing its configured byte limit and any later messages, and a typed send could be replayed after reaching the server. The queue is now preserved and only attempted writes are released on failure or cancellation, with never-attempted messages left in order; the same fix lands for Live in [ref omitted] the Python client's parallel change.
fix(live): preserve caller queues and prevent uncertain WebSocket replay openai/openai-python
Python's Live path had the same two defects: caller queues passed in empty were discarded during iterator recovery, and a typed command could be sent twice when its send raised after the socket received it. The passed queue is kept even when empty and only the attempted message is dropped on a failed send or flush, matching the merged Realtime handling.
fix(responses): preserve supported streamed logprobs and provisional metadata openai/openai-node
Optional WebSocket reconstruction was dropping initial response metadata, and both the WebSocket and SSE accumulators threw away streamed text logprobs even when the wire carried every field the final-output model requires. Initial responses are now preserved with unvalidated metadata typed as optional unknown fields, and compatible logprobs are appended on deltas with the completed set used on...
v3.20.0 openai/openai-python
by openai-sdks[bot]
openai-python shipped 3.20.0 with Agents credential and session options and Cyber access programs on Responses. The quiet tail is dominated by test-only work: 16 loopback WSS lifecycle checks across beta and GA in openai-node, real-socket recovery and credential-refresh coverage in openai-python, Live socket observer tests after grouper disposal, a Realtime Translation client secret endpoint, a...