fix: move unreachable error event check before thread event guard in streaming#2906
Closed
giulio-leone wants to merge 1 commit intoopenai:mainfrom
Closed
fix: move unreachable error event check before thread event guard in streaming#2906giulio-leone wants to merge 1 commit intoopenai:mainfrom
giulio-leone wants to merge 1 commit intoopenai:mainfrom
Conversation
…streaming
The `sse.event == "error"` check inside both `Stream.__stream__()` and
`AsyncStream.__stream__()` was nested inside the
`if sse.event.startswith("thread.")` block. Since "error" never starts
with "thread.", the error-event check was unreachable dead code.
Move the error-event check to execute *before* the thread-event guard so
that SSE error events are properly detected regardless of event name
prefix. The data-level error check in the else branch is preserved as a
second line of defence for non-thread events.
Fixes openai#2796
d91d286 to
ca89da6
Compare
Author
|
Closing — this unreachable code check is too marginal to warrant a PR. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #2796
The
sse.event == "error"check inside bothStream.__stream__()andAsyncStream.__stream__()was nested inside theif sse.event.startswith("thread.")block. Since"error"never starts with"thread.", the error-event check was unreachable dead code.Changes
Move the error-event check to execute before the thread-event guard so that SSE error events are properly detected regardless of event name prefix. The data-level error check in the
elsebranch is preserved as a second line of defence for non-thread events.Before
After
Applied to both
Stream.__stream__()(sync) andAsyncStream.__stream__()(async).Testing
All 20 streaming tests pass (2 consecutive clean runs).