From 2056bef1cfc07ff8fd9798b5fcf2d455e8a2bd27 Mon Sep 17 00:00:00 2001 From: Logan Ramos Date: Fri, 27 Mar 2026 15:34:01 -0400 Subject: [PATCH] Don't use trusted telemetry value on model ids (#305760) * Don't use trusted telemetry value on model ids * Update src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Regex * tests --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../aiEditTelemetry/aiEditTelemetryServiceImpl.ts | 9 ++++----- .../editTelemetry/test/browser/editTelemetry.test.ts | 4 ++-- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.ts b/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.ts index 9e753e0ed6f..2b620f1c4f2 100644 --- a/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.ts +++ b/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.ts @@ -6,7 +6,6 @@ import { EditSuggestionId } from '../../../../../../editor/common/textModelEditSource.js'; import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; import { ITelemetryService } from '../../../../../../platform/telemetry/common/telemetry.js'; -import { TelemetryTrustedValue } from '../../../../../../platform/telemetry/common/telemetryUtils.js'; import { DataChannelForwardingTelemetryService, forwardToChannelIf, isCopilotLikeExtension } from '../../../../../../platform/dataChannel/browser/forwardingTelemetryService.js'; import { IAiEditTelemetryService, IEditTelemetryCodeAcceptedData, IEditTelemetryCodeSuggestedData } from './aiEditTelemetryService.js'; import { IRandomService } from '../../randomService.js'; @@ -43,7 +42,7 @@ export class AiEditTelemetryServiceImpl implements IAiEditTelemetryService { editLinesDeleted: number | undefined; modeId: 'ask' | 'edit' | 'agent' | 'custom' | 'applyCodeBlock' | undefined; - modelId: TelemetryTrustedValue; + modelId: string | undefined; applyCodeBlockSuggestionId: string | undefined; }, { owner: 'hediet'; @@ -85,7 +84,7 @@ export class AiEditTelemetryServiceImpl implements IAiEditTelemetryService { editLinesDeleted: data.editDeltaInfo?.linesRemoved, modeId: data.modeId, - modelId: new TelemetryTrustedValue(data.modelId), + modelId: data.modelId?.replace(/[\/\\]/g, '_'), applyCodeBlockSuggestionId: data.applyCodeBlockSuggestionId as unknown as string, ...forwardToChannelIf(isCopilotLikeExtension(data.source?.extensionId)), @@ -114,7 +113,7 @@ export class AiEditTelemetryServiceImpl implements IAiEditTelemetryService { editLinesDeleted: number | undefined; modeId: 'ask' | 'edit' | 'agent' | 'custom' | 'applyCodeBlock' | undefined; - modelId: TelemetryTrustedValue; + modelId: string | undefined; applyCodeBlockSuggestionId: string | undefined; acceptanceMethod: @@ -166,7 +165,7 @@ export class AiEditTelemetryServiceImpl implements IAiEditTelemetryService { editLinesDeleted: data.editDeltaInfo?.linesRemoved, modeId: data.modeId, - modelId: new TelemetryTrustedValue(data.modelId), + modelId: data.modelId?.replace(/[\/\\]/g, '_'), applyCodeBlockSuggestionId: data.applyCodeBlockSuggestionId as unknown as string, acceptanceMethod: data.acceptanceMethod, diff --git a/src/vs/workbench/contrib/editTelemetry/test/browser/editTelemetry.test.ts b/src/vs/workbench/contrib/editTelemetry/test/browser/editTelemetry.test.ts index 5ac15f260de..ea95c818a8a 100644 --- a/src/vs/workbench/contrib/editTelemetry/test/browser/editTelemetry.test.ts +++ b/src/vs/workbench/contrib/editTelemetry/test/browser/editTelemetry.test.ts @@ -106,9 +106,9 @@ function fib(n) { assert.deepStrictEqual(sentTelemetry, ([ '00:01:010 editTelemetry.reportEditArc: {\"sourceKeyCleaned\":\"source:Chat.applyEdits\",\"languageId\":\"plaintext\",\"uniqueEditId\":\"8c97b7d8-9adb-4bd8-ac9f-a562704ce40e\",\"didBranchChange\":0,\"timeDelayMs\":0,\"originalCharCount\":37,\"originalLineCount\":1,\"originalDeletedLineCount\":0,\"arc\":37,\"currentLineCount\":1,\"currentDeletedLineCount\":0}', - '00:01:010 editTelemetry.codeSuggested: {\"eventId\":\"evt-055ed5f5-c723-4ede-ba79-cccd7685c7ad\",\"suggestionId\":\"sgt-f645627a-cacf-477a-9164-ecd6125616a5\",\"presentation\":\"highlightedEdit\",\"feature\":\"sideBarChat\",\"languageId\":\"plaintext\",\"editCharsInserted\":37,\"editCharsDeleted\":0,\"editLinesInserted\":1,\"editLinesDeleted\":0,\"modelId\":{\"isTrustedTelemetryValue\":true}}', + '00:01:010 editTelemetry.codeSuggested: {\"eventId\":\"evt-055ed5f5-c723-4ede-ba79-cccd7685c7ad\",\"suggestionId\":\"sgt-f645627a-cacf-477a-9164-ecd6125616a5\",\"presentation\":\"highlightedEdit\",\"feature\":\"sideBarChat\",\"languageId\":\"plaintext\",\"editCharsInserted\":37,\"editCharsDeleted\":0,\"editLinesInserted\":1,\"editLinesDeleted\":0}', '00:11:010 editTelemetry.reportEditArc: {\"sourceKeyCleaned\":\"source:Chat.applyEdits\",\"languageId\":\"plaintext\",\"uniqueEditId\":\"1eb8a394-2489-41c2-851b-6a79432fc6bc\",\"didBranchChange\":0,\"timeDelayMs\":0,\"originalCharCount\":19,\"originalLineCount\":1,\"originalDeletedLineCount\":1,\"arc\":19,\"currentLineCount\":1,\"currentDeletedLineCount\":1}', - '00:11:010 editTelemetry.codeSuggested: {\"eventId\":\"evt-5c9c6fe7-b219-4ff8-aaa7-ab2b355b21c0\",\"suggestionId\":\"sgt-74379122-0452-4e26-9c38-9d62f1e7ae73\",\"presentation\":\"highlightedEdit\",\"feature\":\"sideBarChat\",\"languageId\":\"plaintext\",\"editCharsInserted\":19,\"editCharsDeleted\":20,\"editLinesInserted\":1,\"editLinesDeleted\":1,\"modelId\":{\"isTrustedTelemetryValue\":true}}', + '00:11:010 editTelemetry.codeSuggested: {\"eventId\":\"evt-5c9c6fe7-b219-4ff8-aaa7-ab2b355b21c0\",\"suggestionId\":\"sgt-74379122-0452-4e26-9c38-9d62f1e7ae73\",\"presentation\":\"highlightedEdit\",\"feature\":\"sideBarChat\",\"languageId\":\"plaintext\",\"editCharsInserted\":19,\"editCharsDeleted\":20,\"editLinesInserted\":1,\"editLinesDeleted\":1}', '01:01:010 editTelemetry.reportEditArc: {\"sourceKeyCleaned\":\"source:Chat.applyEdits\",\"languageId\":\"plaintext\",\"uniqueEditId\":\"8c97b7d8-9adb-4bd8-ac9f-a562704ce40e\",\"didBranchChange\":0,\"timeDelayMs\":60000,\"originalCharCount\":37,\"originalLineCount\":1,\"originalDeletedLineCount\":0,\"arc\":16,\"currentLineCount\":1,\"currentDeletedLineCount\":0}', '01:11:010 editTelemetry.reportEditArc: {\"sourceKeyCleaned\":\"source:Chat.applyEdits\",\"languageId\":\"plaintext\",\"uniqueEditId\":\"1eb8a394-2489-41c2-851b-6a79432fc6bc\",\"didBranchChange\":0,\"timeDelayMs\":60000,\"originalCharCount\":19,\"originalLineCount\":1,\"originalDeletedLineCount\":1,\"arc\":19,\"currentLineCount\":1,\"currentDeletedLineCount\":1}', '05:01:010 editTelemetry.reportEditArc: {\"sourceKeyCleaned\":\"source:Chat.applyEdits\",\"languageId\":\"plaintext\",\"uniqueEditId\":\"8c97b7d8-9adb-4bd8-ac9f-a562704ce40e\",\"didBranchChange\":0,\"timeDelayMs\":300000,\"originalCharCount\":37,\"originalLineCount\":1,\"originalDeletedLineCount\":0,\"arc\":16,\"currentLineCount\":1,\"currentDeletedLineCount\":0}',