Update @github/copilot to 1.0.55-6#1471
Conversation
- Updated nodejs and test harness dependencies - Re-ran code generators - Formatted generated code
There was a problem hiding this comment.
Pull request overview
Automated dependency bump of @github/copilot to 1.0.55-6, followed by regenerated RPC/API bindings across SDKs to reflect upstream schema changes (notably the new *.action.invoke canvas action namespace).
Changes:
- Updated
@github/copilotversion in Node/test harness manifests and lockfiles. - Regenerated multi-language RPC bindings introducing
session.canvas.action.invoke(andcanvas.action.invoke) APIs and updated request/response types. - Updated .NET/Go/Rust generated RPC surfaces to expose the new canvas action sub-namespace.
Show a summary per file
| File | Description |
|---|---|
| test/harness/package.json | Bumps @github/copilot devDependency version. |
| test/harness/package-lock.json | Updates lockfile entries for @github/copilot and platform packages. |
| nodejs/package.json | Bumps @github/copilot dependency version. |
| nodejs/package-lock.json | Updates lockfile entries for @github/copilot and platform packages. |
| nodejs/samples/package-lock.json | Updates sample lockfile to @github/copilot@^1.0.55-6. |
| nodejs/src/generated/rpc.ts | Regenerated TS RPC surface; introduces canvas.action.invoke / session.canvas.action.invoke namespaces and handler signature changes. |
| python/copilot/generated/rpc.py | Regenerated Python RPC surface; adds CanvasActionApi for session-side invocation. |
| go/rpc/zrpc.go | Regenerated Go RPC surface; adds CanvasActionApi and renames provider invoke handler/method names. |
| rust/src/generated/api_types.rs | Regenerated Rust API types and RPC method constants for *.action.invoke. |
| rust/src/generated/rpc.rs | Regenerated Rust RPC client; adds canvas().action().invoke(...). |
| dotnet/src/Generated/Rpc.cs | Regenerated .NET RPC client; adds CanvasActionApi and renames provider invoke handler/method names. |
Copilot's findings
Files not reviewed (4)
- go/rpc/zrpc.go: Language not supported
- nodejs/package-lock.json: Language not supported
- nodejs/samples/package-lock.json: Language not supported
- test/harness/package-lock.json: Language not supported
- Files reviewed: 2/11 changed files
- Comments generated: 4
| /// <param name="cancellationToken">The <see cref="CancellationToken"/> to monitor for cancellation requests. The default is <see cref="CancellationToken.None"/>.</param> | ||
| /// <returns>Provider-supplied action result.</returns> | ||
| Task<object> InvokeActionAsync(CanvasProviderInvokeActionRequest request, CancellationToken cancellationToken = default); | ||
| Task<object> InvokeAsync(CanvasProviderInvokeActionRequest request, CancellationToken cancellationToken = default); |
| // Canvas action invocation parameters. | ||
| // Experimental: CanvasActionInvokeRequest is part of an experimental API and may change or | ||
| // be removed. | ||
| type CanvasActionInvokeRequest struct { | ||
| // Action name to invoke |
| // Invokes an action on an open canvas instance via the provider. | ||
| // | ||
| // RPC method: canvas.invokeAction. | ||
| // RPC method: canvas.action.invoke. | ||
| // | ||
| // Parameters: Canvas action invocation parameters sent to the provider. |
| public async Task<CanvasActionInvokeResult> InvokeAsync(string instanceId, string actionName, object? input = null, CancellationToken cancellationToken = default) | ||
| { | ||
| ArgumentNullException.ThrowIfNull(instanceId); | ||
| ArgumentNullException.ThrowIfNull(actionName); | ||
| _session.ThrowIfDisposed(); |
|
From github-app validation against this PR, the generated SDK surfaces look aligned with the new canonical canvas action methods, but there is one Rust source gap blocking After syncing this PR into
Related app prep needed for this SDK shape:
|
The 1.0.55-6 schema renamed the Canvas action invocation API: - `CanvasInvokeActionRequest` -> `CanvasActionInvokeRequest` - `CanvasInvokeActionResult` -> `CanvasActionInvokeResult` - Host API `canvas.invokeAction(...)` -> `canvas.action.invoke(...)` - Provider handler `invokeAction`/`invoke_action`/`InvokeAction` -> `invoke`/`Invoke` - Wire methods `session.canvas.invokeAction` / `canvas.invokeAction` -> `session.canvas.action.invoke` / `canvas.action.invoke` - Rust constants `SESSION_CANVAS_INVOKEACTION` / `CANVAS_INVOKEACTION` -> `SESSION_CANVAS_ACTION_INVOKE` / `CANVAS_ACTION_INVOKE` The provider-side request type `CanvasProviderInvokeActionRequest` is unchanged. Update the host/provider adapters and tests in Node, Python, Go, .NET, and Rust to follow the new nested `action` group and renamed handler method. Also fix a Python codegen bug in `scripts/codegen/python.ts`: `emitClientSessionApiRegistration` was iterating only top-level methods of each handler group via `Object.entries(...).filter(isRpcMethod)`, so methods nested under sub-groups (like `canvas.action.*`) were silently dropped from the generated `CanvasHandler` Protocol and from `register_client_session_api_handlers`. Use the existing recursive `collectRpcMethods` helper and derive the handler method name from the last segment of the RPC method path, matching how TS/C#/Go/Rust codegens already flatten nested groups. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Cross-SDK Consistency Review ✅This automated code-gen update (
The type renames ( No cross-SDK inconsistencies found.
|
In CLI 1.0.55-6 the `session.start` event is dispatched via the asynchronous `session.event` notification channel, so it may not be delivered to the `onEvent`/`on_event` callback by the time `createSession` returns. Update the Node and Python `should receive session events` tests to wait for the event using `vi.waitFor`/`asyncio.Event`. The .NET and Go equivalents already use async wait primitives (`TaskCompletionSource`/channel + timeout). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Automated update of
@github/copilotto version1.0.55-6.Changes
@github/copilotinnodejs/package.jsonandtest/harness/package.jsonscripts/codegen)Next steps
When ready, click Ready for review to trigger CI checks.