Skip to content

Update Copilot CLI to 1.0.48#316566

Merged
DonJayamanne merged 24 commits into
mainfrom
anthonykim1/CopilotCli1048
May 18, 2026
Merged

Update Copilot CLI to 1.0.48#316566
DonJayamanne merged 24 commits into
mainfrom
anthonykim1/CopilotCli1048

Conversation

@anthonykim1
Copy link
Copy Markdown
Contributor

@anthonykim1 anthonykim1 commented May 15, 2026

Should supersede: #316294

@anthonykim1 anthonykim1 self-assigned this May 15, 2026
Copilot AI review requested due to automatic review settings May 15, 2026 05:33
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Bumps the @github/copilot CLI SDK to ^1.0.48 and updates VS Code's packaging/postinstall plumbing to handle the new set of native binaries (sdk-side runtime.node / icu-native.node / win32-native.node, plus newly vendored foundry-local-sdk, pvrecorder, and mxc-bin payloads). The SDK-upgrade test is extended to enumerate the new binaries so unexpected additions are still caught.

Changes:

  • Loosen @github/copilot dependency from a pinned 1.0.48 to a caret range ^1.0.48 (in both package.json and package-lock.json).
  • Update postinstall filter, .vscodeignore, .moduleignore, and the build-time prune helper so the new SDK prebuilds are copied/included or stripped per platform.
  • Extend the SDK-upgrade native-binary inventory test with the new expected files.
Show a summary per file
File Description
extensions/copilot/package.json Switches @github/copilot to a caret range.
extensions/copilot/package-lock.json Lockfile mirror of the same range change.
extensions/copilot/script/postinstall.ts Broadens the file filter to also copy *native.node and runtime.node from the SDK prebuilds.
extensions/copilot/.vscodeignore Whitelists runtime.node, icu-native.node, and win32-native.node under sdk/prebuilds/* for the published extension.
build/.moduleignore Strips newly vendored foundry-local-sdk, pvrecorder, and mxc-bin payloads from the built product.
build/lib/copilot.ts Adds pruneNonTargetCopilotSdkPrebuilds to remove non-target platform prebuilds before shipping.
extensions/copilot/src/extension/chatSessions/copilotcli/vscode-node/test/copilotCLISDKUpgrade.spec.ts Extends the known-binaries inventory; entries for the new vendored bindings are duplicated in two blocks.

Copilot's findings

Files not reviewed (1)
  • extensions/copilot/package-lock.json: Language not supported
Comments suppressed due to low confidence (1)

extensions/copilot/src/extension/chatSessions/copilotcli/vscode-node/test/copilotCLISDKUpgrade.spec.ts:132

  • These foundry-local-sdk (lines 102–105), pvrecorder (lines 107–111), and mxc-bin (lines 113–132) entries are duplicated later in the same set at lines 153–184 of this file. Because knownBinaries is a Set, the duplicates are silently de-duplicated and the test still passes, but the duplication is confusing and easy to fall out of sync (e.g. updating one block but not the other when the SDK adds/removes a file). One of the two blocks should be removed.
			// foundry-local-sdk vendored native bindings.
			path.join('foundry-local-sdk', 'node_modules', 'foundry-local-sdk', 'prebuilds', 'darwin-arm64', 'foundry_local_napi.node'),
			path.join('foundry-local-sdk', 'node_modules', 'foundry-local-sdk', 'prebuilds', 'linux-x64', 'foundry_local_napi.node'),
			path.join('foundry-local-sdk', 'node_modules', 'foundry-local-sdk', 'prebuilds', 'win32-arm64', 'foundry_local_napi.node'),
			path.join('foundry-local-sdk', 'node_modules', 'foundry-local-sdk', 'prebuilds', 'win32-x64', 'foundry_local_napi.node'),
			// pvrecorder vendored native bindings.
			path.join('pvrecorder', 'node_modules', '@picovoice', 'pvrecorder-node', 'lib', 'linux', 'x86_64', 'pv_recorder.node'),
			path.join('pvrecorder', 'node_modules', '@picovoice', 'pvrecorder-node', 'lib', 'mac', 'arm64', 'pv_recorder.node'),
			path.join('pvrecorder', 'node_modules', '@picovoice', 'pvrecorder-node', 'lib', 'mac', 'x86_64', 'pv_recorder.node'),
			path.join('pvrecorder', 'node_modules', '@picovoice', 'pvrecorder-node', 'lib', 'windows', 'amd64', 'pv_recorder.node'),
			path.join('pvrecorder', 'node_modules', '@picovoice', 'pvrecorder-node', 'lib', 'windows', 'arm64', 'pv_recorder.node'),
			// mxc-bin (Windows sandbox + WSL helpers used by the SDK's command execution).
			path.join('mxc-bin', 'arm64', 'lxc-exec'),
			path.join('mxc-bin', 'arm64', 'winhttp-proxy-shim.exe'),
			path.join('mxc-bin', 'arm64', 'wslcsdk.dll'),
			path.join('mxc-bin', 'arm64', 'wxc-exec.exe'),
			path.join('mxc-bin', 'arm64', 'wxc-test-proxy.exe'),
			path.join('mxc-bin', 'arm64', 'wxc-windows-sandbox-daemon.exe'),
			path.join('mxc-bin', 'arm64', 'wxc-windows-sandbox-guest.exe'),
			path.join('mxc-bin', 'arm64', '_manifest', 'spdx_2.2', 'bsi.cose'),
			path.join('mxc-bin', 'arm64', '_manifest', 'spdx_2.2', 'manifest.cat'),
			path.join('mxc-bin', 'arm64', '_manifest', 'spdx_2.2', 'manifest.spdx.cose'),
			path.join('mxc-bin', 'x64', 'lxc-exec'),
			path.join('mxc-bin', 'x64', 'winhttp-proxy-shim.exe'),
			path.join('mxc-bin', 'x64', 'wslcsdk.dll'),
			path.join('mxc-bin', 'x64', 'wxc-exec.exe'),
			path.join('mxc-bin', 'x64', 'wxc-test-proxy.exe'),
			path.join('mxc-bin', 'x64', 'wxc-windows-sandbox-daemon.exe'),
			path.join('mxc-bin', 'x64', 'wxc-windows-sandbox-guest.exe'),
			path.join('mxc-bin', 'x64', '_manifest', 'spdx_2.2', 'bsi.cose'),
			path.join('mxc-bin', 'x64', '_manifest', 'spdx_2.2', 'manifest.cat'),
			path.join('mxc-bin', 'x64', '_manifest', 'spdx_2.2', 'manifest.spdx.cose'),
  • Files reviewed: 6/7 changed files
  • Comments generated: 3

Comment thread extensions/copilot/package.json
Comment thread extensions/copilot/script/postinstall.ts
@deepak1556
Copy link
Copy Markdown
Collaborator

Instead of hand rolling signature removal for PE files, please consider using signtool and also make it central as part of

function patchWin32DependenciesTask(destinationFolderName: string) {

@deepak1556
Copy link
Copy Markdown
Collaborator

started #316948

* build: remove PE signature before patching via rcedit

* build: also apply to reh
@anthonykim1 anthonykim1 requested a review from DonJayamanne May 18, 2026 16:38
@anthonykim1 anthonykim1 changed the title Try to get cli to 1.0.48 Update Copilot CLI to 1.0.48 May 18, 2026
@anthonykim1
Copy link
Copy Markdown
Contributor Author

Manual Sanity testing on Windows:
image

@anthonykim1
Copy link
Copy Markdown
Contributor Author

MacOS: Screenshot 2026-05-18 at 4 33 03 PM

@anthonykim1 anthonykim1 marked this pull request as ready for review May 18, 2026 23:33
@vs-code-engineering
Copy link
Copy Markdown
Contributor

📬 CODENOTIFY

The following users are being notified based on files changed in this PR:

@lszomoru

Matched files:

  • build/azure-pipelines/win32/steps/product-build-win32-compile.yml

@DonJayamanne DonJayamanne enabled auto-merge (squash) May 18, 2026 23:50
@DonJayamanne DonJayamanne merged commit 901c4fd into main May 18, 2026
50 of 52 checks passed
@DonJayamanne DonJayamanne deleted the anthonykim1/CopilotCli1048 branch May 18, 2026 23:50
@vs-code-engineering vs-code-engineering Bot added this to the 1.122.0 milestone May 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants