Add Directory.Build.props, apply CPM, use NB.GitVersioning, update package publishing#2
Merged
eiriktsarpalis merged 1 commit intomainfrom Mar 19, 2025
Merged
Conversation
Copilot AI
added a commit
that referenced
this pull request
Feb 24, 2026
…rives via background channel The sse-retry conformance test hangs intermittently because of a race between the background GET SSE stream and the tools/call POST request at the conformance server. When the background GET arrives at the server AFTER the tools/call POST (due to CI scheduling delays), the server sends the tool response on the background GET stream instead of the foreground retry GET. The foreground retry GET then blocks forever waiting for data that never comes. This happens because the server's handleGetSSEStream checks pendingToolCallId and sends the tool response to whichever GET request is being handled at that moment. If background GET #1 is delayed and arrives after tools/call sets pendingToolCallId, it receives the response. The foreground retry GET #2 then arrives and finds pendingToolCallId=null, so it gets no response. Fix by creating a linked CancellationTokenSource in SendRequestAsync that cancels when the response TCS is completed (from any channel). This interrupts the blocked foreground transport send, allowing SendRequestAsync to proceed to the TCS await where the response is already available. The disposal timeout in transport DisposeAsync is kept as defense-in-depth for cases where the background GET stream doesn't respond promptly to cancellation during shutdown. Co-authored-by: stephentoub <[email protected]>
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.
No description provided.