Update @github/copilot to 1.0.76-2 - #2118
Conversation
- Updated nodejs and test harness dependencies - Re-ran code generators - Formatted generated code
This comment has been minimized.
This comment has been minimized.
CLI 1.0.76-2 publishes several RPC methods with fully optional params,
encoded as `anyOf: [{ not: {} }, { object }]`, and adds an inline enum to
`session.history.compact`.
C#: the `...WithSession` wire wrapper emitted its own copy of inline
enums, producing a duplicate `SessionHistoryCompactRequestWithSessionTrigger`
struct and a type mismatch that broke the build. The wrapper now reuses the
public request class name when naming inline types.
Java: `wrapperParamsClassName` and `methodHasSessionId` read
`params.properties` directly, so the optional wrapper looked empty and six
session-scoped methods were generated with no arguments and an empty param
map - silently dropping `sessionId` at runtime. The optional wrapper is now
unwrapped, and methods with optional params also get a no-arg overload.
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 72193c60-62cd-459b-a6f3-4b2798a7eb4b
Ports the follow-up fixes from the 1.0.76-0 bump (session.fs SQLite transaction provider APIs, resetSessionApprovals params, Go/.NET shell test teardown, rustfmt import wrapping) and applies the additional adjustments 1.0.76-2 requires: - session.commands.list request renamed to SessionCommandsListRequest - model.switchTo gained deferIfModelChangeQueued - SessionModelSwitchToResult gained deferred - session.history.compact params gained customInstructions/trigger/tokenLimit Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 72193c60-62cd-459b-a6f3-4b2798a7eb4b
This comment has been minimized.
This comment has been minimized.
The Rust e2e suite only builds with `--features test-support`, so two more 1.0.76-2 field additions were missed: `include_ephemeral` on `EventLogReadRequest` and `defer_if_model_change_queued` on `ModelSwitchToRequest`. Also restores alphabetical import order in the Python commands e2e test after the `SessionCommandsListRequest` rename. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 72193c60-62cd-459b-a6f3-4b2798a7eb4b
Cross-SDK Consistency Review ✅This PR updates
No consistency issues found. All SDKs:
The naming differences (.NET uses
|
CI blocker:
|
| Version | Result |
|---|---|
| 1.0.73 | ✅ listening |
| 1.0.75 | ✅ listening |
| 1.0.76-0 | ✅ listening |
| 1.0.76-1 | ❌ silent exit |
| 1.0.76-2 | ❌ silent exit |
Introduced in 1.0.76-1. Reproduces on Linux, macOS and Windows.
Why only some SDKs fail. It tracks exactly with whether an SDK spawns a real CLI with --log-level:
| SDK | Passes --log-level? |
CI |
|---|---|---|
| Java | always — CopilotClientOptions.logLevel defaults to "info" |
❌ |
| Node.js | E2E harness defaults to "error" |
❌ |
| Python | E2E passes log_level="error" |
❌ |
| Rust | only when with_log_level(...) is called; E2E doesn't |
✅ (see below) |
| .NET | only against a fake CLI / ForUri |
✅ |
| Go | never | ✅ |
Note this means the Java SDK is unusable against 1.0.76-2 for every consumer, not just in tests — its default log level is one of the crashing values.
Verified locally: temporarily suppressing the --log-level argument in nodejs/src/client.ts (both the stdio and in-process/FFI spawn paths) turns the Node E2E suites green (44 passed / 2 skipped). That change was reverted and is not part of this branch — dropping a user-requested log level to paper over a dependency bug isn't an acceptable fix.
There is no fixed release to bump to. npm dist-tags for @github/copilot are currently latest: 1.0.75, prerelease: 1.0.76-2.
Separate, smaller issue. rust / Rust SDK Tests (windows-latest, default) fails one test — rpc_shell_edge_cases::shell_exec_with_timeout_kills_long_running_command (387 passed, 1 failed) — timing out waiting for the started marker file. The test execs a powershell command with timeout: Some(200) and expects the child to write a marker before the 200ms kill lands. It fails consistently on this branch and passes on main, which suggests a genuine shell-startup behavior change in 1.0.76-x (plausibly related to the new ShellInitProfile / ShellInitScript / ShellOptions types this PR generates). Leaving it alone rather than loosening the timeout, since that would mask a real behavior change.
Recommendation: hold this PR until a CLI release fixes the --log-level initialization order, then re-run the update workflow against it. I have not filed anything upstream.
Generated by Copilot
Automated update of
@github/copilotto version1.0.76-2.Changes
@github/copilotinnodejs/package.jsonandtest/harness/package.jsonscripts/codegen)Java Handwritten Code Adaptation Plan
If
java-sdk-testsCI fails on this PR, follow these steps:mvn clean,mvn verifyfromjava/locally or check thejava-sdk-testsworkflow run logs.java/src/main/java/com/github/copilot/sdk/):nullfor optional new fields).CopilotSession.javaif applicable.java/src/test/java/com/github/copilot/sdk/):cd java && mvn clean test-compile jar:jar && mvn verify -Dskip.test.harness=truecd java && mvn spotless:applyNext steps
When ready, click Ready for review to trigger CI checks.