Skip to content

Commit f0874b9

Browse files
Merge master into feature/q-dev-execution
2 parents 33eafdd + 980710d commit f0874b9

File tree

4 files changed

+16
-4
lines changed

4 files changed

+16
-4
lines changed

packages/core/src/codewhisperer/service/inlineCompletionItemProvider.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,7 @@ export class CWInlineCompletionItemProvider implements vscode.InlineCompletionIt
169169
ImportAdderProvider.instance.onShowRecommendation(document, this.startPos.line, r)
170170
this.nextMove = 0
171171
TelemetryHelper.instance.setFirstSuggestionShowTime()
172+
session.setPerceivedLatency()
172173
this._onDidShow.fire()
173174
if (matchedCount >= 2 || this.nextToken !== '') {
174175
const result = [item]

packages/core/src/codewhisperer/util/codeWhispererSession.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ class CodeWhispererSession {
4343
invokeSuggestionStartTime = 0
4444
timeToFirstRecommendation = 0
4545
firstSuggestionShowTime = 0
46+
perceivedLatency = 0
4647

4748
public static get instance() {
4849
return (this.#instance ??= new CodeWhispererSession())
@@ -91,6 +92,17 @@ class CodeWhispererSession {
9192
}
9293
}
9394

95+
setPerceivedLatency() {
96+
if (this.perceivedLatency !== 0) {
97+
return
98+
}
99+
if (this.triggerType === 'OnDemand') {
100+
this.perceivedLatency = this.timeToFirstRecommendation
101+
} else {
102+
this.perceivedLatency = this.firstSuggestionShowTime - vsCodeState.lastUserModificationTime
103+
}
104+
}
105+
94106
reset() {
95107
this.sessionId = ''
96108
this.requestContext = { request: {} as any, supplementalMetadata: {} as any }

packages/core/src/codewhisperer/util/supplementalContext/utgUtils.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ async function findSourceFileByContent(
129129

130130
throwIfCancelled(cancellationToken)
131131

132-
testElementList.push(...extractClasses(editor.document.fileName, languageConfig.classExtractionPattern))
132+
testElementList.push(...extractClasses(testFileContent, languageConfig.classExtractionPattern))
133133

134134
throwIfCancelled(cancellationToken)
135135

packages/core/src/codewhisperer/util/telemetryHelper.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -325,9 +325,7 @@ export class TelemetryHelper {
325325
suggestionState: this.getSendTelemetrySuggestionState(aggregatedSuggestionState),
326326
recommendationLatencyMilliseconds: e2eLatency,
327327
triggerToResponseLatencyMilliseconds: session.timeToFirstRecommendation,
328-
perceivedLatencyMilliseconds: session.getPerceivedLatency(
329-
this.sessionDecisions[0].codewhispererTriggerType
330-
),
328+
perceivedLatencyMilliseconds: session.perceivedLatency,
331329
timestamp: new Date(Date.now()),
332330
suggestionReferenceCount: referenceCount,
333331
generatedLine: generatedLines,
@@ -388,6 +386,7 @@ export class TelemetryHelper {
388386
this.typeAheadLength = 0
389387
this.timeSinceLastModification = 0
390388
session.timeToFirstRecommendation = 0
389+
session.perceivedLatency = 0
391390
this.classifierResult = undefined
392391
this.classifierThreshold = undefined
393392
}

0 commit comments

Comments
 (0)