Skip to content

Commit 210358b

Browse files
authored
Update Copilot dependencies to version 1.0.28 (#310361)
* Update Copilot dependencies to version 1.0.28 and adjust related code for permission handling * Fix tests
1 parent 560a9db commit 210358b

File tree

7 files changed

+45
-45
lines changed

7 files changed

+45
-45
lines changed

extensions/copilot/package-lock.json

Lines changed: 28 additions & 28 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

extensions/copilot/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6352,7 +6352,7 @@
63526352
"@anthropic-ai/claude-agent-sdk": "0.2.98",
63536353
"@anthropic-ai/sdk": "^0.82.0",
63546354
"@github/blackbird-external-ingest-utils": "^0.3.0",
6355-
"@github/copilot": "^1.0.24",
6355+
"@github/copilot": "^1.0.28",
63566356
"@google/genai": "^1.22.0",
63576357
"@humanwhocodes/gitignore-to-minimatch": "1.0.2",
63586358
"@microsoft/tiktokenizer": "^1.0.10",

extensions/copilot/script/postinstall.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,9 +109,9 @@ async function copyCopilotCliPrebuildFiles() {
109109
await fs.promises.cp(sourceDir, targetDir, {
110110
recursive: true, force: true, filter: (src) => {
111111
try {
112-
// Only copy computer.node and win_error_mode.node files
112+
// Only copy computer.node and win32.node files
113113
if (fs.statSync(src).isFile()) {
114-
return src.endsWith('computer.node') || src.endsWith('win_error_mode.node');
114+
return src.endsWith('computer.node') || src.endsWith('win32.node');
115115
}
116116
return true;
117117
} catch {

extensions/copilot/src/extension/chatSessions/copilotcli/node/copilotcliSessionService.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ export class CopilotCLISessionService extends Disposable implements ICopilotCLIS
173173
this.monitorSessionFiles();
174174
this._sessionManager = new Lazy<Promise<internal.LocalSessionManager>>(async () => {
175175
try {
176-
const { internal, createLocalFeatureFlagService, noopTelemetryBinder } = await this.getSDKPackage();
176+
const { internal, createLocalFeatureFlagService } = await this.getSDKPackage();
177177
// Always enable SDK OTel so the debug panel receives native spans via the bridge.
178178
// When user OTel is disabled, we force file exporter to /dev/null so the SDK
179179
// creates OtelSessionTracker (for debug panel) but doesn't export to any collector.
@@ -205,7 +205,6 @@ export class CopilotCLISessionService extends Disposable implements ICopilotCLIS
205205
return new internal.LocalSessionManager({
206206
featureFlagService: createLocalFeatureFlagService(),
207207
telemetryService: new internal.NoopTelemetryService(),
208-
telemetryBinder: noopTelemetryBinder
209208
}, { flushDebounceMs: undefined, settings: undefined, version: undefined });
210209
}
211210
catch (error) {
@@ -217,8 +216,8 @@ export class CopilotCLISessionService extends Disposable implements ICopilotCLIS
217216
}
218217

219218
private async getSDKPackage() {
220-
const { internal, LocalSession, createLocalFeatureFlagService, noopTelemetryBinder } = await this.copilotCLISDK.getPackage();
221-
return { internal, LocalSession, createLocalFeatureFlagService, noopTelemetryBinder };
219+
const { internal, LocalSession, createLocalFeatureFlagService } = await this.copilotCLISDK.getPackage();
220+
return { internal, LocalSession, createLocalFeatureFlagService };
222221
}
223222

224223
getSessionWorkingDirectory(sessionId: string): Uri | undefined {

extensions/copilot/src/extension/chatSessions/copilotcli/node/test/copilotcliSession.spec.ts

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ import type { ChatParticipantToolToken } from 'vscode';
99
import { ConfigKey, IConfigurationService } from '../../../../../platform/configuration/common/configurationService';
1010
import { ILogService } from '../../../../../platform/log/common/logService';
1111
import { NoopOTelService, resolveOTelConfig } from '../../../../../platform/otel/common/index';
12-
import { NullRequestLogger } from '../../../../../platform/requestLogger/node/nullRequestLogger';
1312
import { IRequestLogger } from '../../../../../platform/requestLogger/common/requestLogger';
13+
import { NullRequestLogger } from '../../../../../platform/requestLogger/node/nullRequestLogger';
1414
import { TestWorkspaceService } from '../../../../../platform/test/node/testWorkspaceService';
1515
import { IWorkspaceService } from '../../../../../platform/workspace/common/workspaceService';
1616
import { CancellationToken } from '../../../../../util/vs/base/common/cancellation';
@@ -326,7 +326,7 @@ describe('CopilotCLISession', () => {
326326
sdkSession.send = async ({ prompt }: any) => {
327327
sdkSession.emit('assistant.turn_start', {});
328328
sdkSession.emit('assistant.message', { content: `Echo: ${prompt}` });
329-
result = await sdkSession.emitPermissionRequest({ kind: 'write', fileName: sessionFilePath, intention: 'Write plan', diff: '' });
329+
result = await sdkSession.emitPermissionRequest({ kind: 'write', fileName: sessionFilePath, intention: 'Write plan', diff: '', canOfferSessionApproval: false });
330330
sdkSession.emit('assistant.turn_end', {});
331331
};
332332
const session = await createSession();
@@ -477,7 +477,7 @@ describe('CopilotCLISession', () => {
477477
sdkSession.emit('assistant.turn_start', {});
478478
sdkSession.emit('assistant.message', { content: `Echo: ${prompt}` });
479479
// Mid way through, make it look like the sdk requested permission while emitting other messages.
480-
result = await sdkSession.emitPermissionRequest({ kind: 'write', fileName: 'a.ts', intention: 'Update file', diff: '' });
480+
result = await sdkSession.emitPermissionRequest({ kind: 'write', fileName: 'a.ts', intention: 'Update file', diff: '', canOfferSessionApproval: false });
481481
sdkSession.emit('assistant.turn_end', {});
482482
};
483483
const stream = new MockChatResponseStream();
@@ -496,7 +496,7 @@ describe('CopilotCLISession', () => {
496496
sdkSession.emit('assistant.turn_start', {});
497497
sdkSession.emit('assistant.message', { content: `Echo: ${prompt}` });
498498
// Mid way through, make it look like the sdk requested permission while emitting other messages.
499-
result = await sdkSession.emitPermissionRequest({ kind: 'write', fileName: 'b.ts', intention: 'Update file', diff: '' });
499+
result = await sdkSession.emitPermissionRequest({ kind: 'write', fileName: 'b.ts', intention: 'Update file', diff: '', canOfferSessionApproval: false });
500500
sdkSession.emit('assistant.turn_end', {});
501501
};
502502
const stream = new MockChatResponseStream();
@@ -516,7 +516,7 @@ describe('CopilotCLISession', () => {
516516
sdkSession.emit('assistant.turn_start', {});
517517
sdkSession.emit('assistant.message', { content: `Echo: ${prompt}` });
518518
// Mid way through, make it look like the sdk requested permission while emitting other messages.
519-
result = await sdkSession.emitPermissionRequest({ kind: 'write', fileName: 'err.ts', intention: 'Update file', diff: '' });
519+
result = await sdkSession.emitPermissionRequest({ kind: 'write', fileName: 'err.ts', intention: 'Update file', diff: '', canOfferSessionApproval: false });
520520
sdkSession.emit('assistant.turn_end', {});
521521
};
522522
const stream = new MockChatResponseStream();
@@ -568,7 +568,8 @@ describe('CopilotCLISession', () => {
568568
fileName: filePath,
569569
intention: 'Apply edit',
570570
diff: '',
571-
toolCallId: String(i)
571+
toolCallId: String(i),
572+
canOfferSessionApproval: false
572573
});
573574
permissionResults.push(result);
574575
// Complete the edit so the tracker (if it were real) would finish; emit completion event

extensions/copilot/src/extension/chatSessions/copilotcli/node/test/permissionHelpers.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -313,7 +313,7 @@ describe('CopilotCLI permissionHelpers', () => {
313313
});
314314

315315
it('maps write requests with filename', async () => {
316-
const result = await getConfirmationToolParams(instaService, { kind: 'write', fileName: 'foo.ts', diff: '', intention: '' });
316+
const result = await getConfirmationToolParams(instaService, { kind: 'write', fileName: 'foo.ts', diff: '', intention: '', canOfferSessionApproval: false });
317317
assert(!!result);
318318
expect(result.tool).toBe(ToolName.CoreConfirmationTool);
319319
const input = result.input as any;

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

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,9 @@ describe('CopilotCLI SDK Upgrade', function () {
5656
path.join('prebuilds', 'linux-x64', 'computer.node'),
5757
path.join('prebuilds', 'win32-arm64', 'computer.node'),
5858
path.join('prebuilds', 'win32-x64', 'computer.node'),
59-
// win_error_mode
60-
path.join('prebuilds', 'win32-arm64', 'win_error_mode.node'),
61-
path.join('prebuilds', 'win32-x64', 'win_error_mode.node'),
59+
// win32
60+
path.join('prebuilds', 'win32-arm64', 'win32.node'),
61+
path.join('prebuilds', 'win32-x64', 'win32.node'),
6262
path.join('ripgrep', 'bin', 'darwin-arm64', 'rg'),
6363
path.join('ripgrep', 'bin', 'darwin-x64', 'rg'),
6464
path.join('ripgrep', 'bin', 'linux-x64', 'rg'),

0 commit comments

Comments
 (0)