Upstream sync: serialize event dispatch, skipPermission, TelemetryConfig, reasoningEffort (2026-03-17)#198
Draft
Upstream sync: serialize event dispatch, skipPermission, TelemetryConfig, reasoningEffort (2026-03-17)#198
Conversation
…emetryConfig, NO_RESULT, reasoningEffort overload Co-authored-by: brunoborges <129743+brunoborges@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] [upstream-sync] Sync with 19 new commits from upstream
Upstream sync: serialize event dispatch, skipPermission, TelemetryConfig, reasoningEffort (2026-03-17)
Mar 17, 2026
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.
Ports 19 upstream commits (
062b61c→485ea5e) fromgithub/copilot-sdk. Key behavioral changes and new APIs below.Serialized event dispatch (
b100339)Events are now queued and delivered serially on a dedicated background thread (
copilot-session-events) instead of inline on the JSON-RPC reader thread. This prevents deadlocks whenclose()is called from within a handler and ensures handlers are never invoked concurrently.skipPermissiononToolDefinition(10c4d02)Tools can now opt out of the permission prompt entirely:
The
skipPermissionfield is serialized to the CLI in the tool registration payload.no-resultpermission kind (df59a0e)PermissionRequestResultKind.NO_RESULTadded. Returning this from a v3 broadcast permission handler silently skips responding to the pending request (allows another client to handle it).setModelwithreasoningEffort(ea90f07)SessionModelChangeEventalso gainsreasoningEffortandpreviousReasoningEffortfields.TelemetryConfig+ OpenTelemetry CLI support (f2d21a0)Sets
COPILOT_OTEL_ENABLEDand related env vars on the CLI process.autoRestartdeprecated (5a41532)CopilotClientOptions.setAutoRestart(boolean)is now@Deprecated— the option has no effect.Other
ExternalToolRequestedEventgainstraceparent/tracestatefields for OTel context propagation from CLI spans..lastmergeupdated to485ea5e.Pull request checklist
mvn spotless:applyhas been run to format the codemvn clean verifypasses locallyDoes this introduce a breaking change?
💬 Send tasks to Copilot coding agent from Slack and Teams to turn conversations into code. Copilot posts an update in your thread when it's finished.