Skip to content

Commit 6f89f3c

Browse files
committed
fix userTriggerDecision not being sent if service returns empty
1 parent 041e30d commit 6f89f3c

File tree

2 files changed

+36
-3
lines changed

2 files changed

+36
-3
lines changed

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

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -403,8 +403,7 @@ export class RecommendationHandler {
403403
).language,
404404
session.requestContext.supplementalMetadata
405405
)
406-
}
407-
if (!this.hasAtLeastOneValidSuggestion(typedPrefix)) {
406+
} else if (!this.hasAtLeastOneValidSuggestion(typedPrefix)) {
408407
this.reportUserDecisions(-1)
409408
}
410409
}

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

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,9 +99,11 @@ export class TelemetryHelper {
9999
language: CodewhispererLanguage,
100100
supplementalContextMetadata?: CodeWhispererSupplementalContext | undefined
101101
) {
102+
const selectedCustomization = getSelectedCustomization()
103+
102104
telemetry.codewhisperer_userDecision.emit({
103105
codewhispererRequestId: requestIdList[0],
104-
codewhispererSessionId: sessionId ? sessionId : undefined,
106+
codewhispererSessionId: sessionId,
105107
codewhispererPaginationProgress: paginationIndex,
106108
codewhispererTriggerType: session.triggerType,
107109
codewhispererSuggestionIndex: -1,
@@ -117,6 +119,38 @@ export class TelemetryHelper {
117119
codewhispererSupplementalContextLength: supplementalContextMetadata?.contentsLength,
118120
traceId: this.traceId,
119121
})
122+
123+
telemetry.codewhisperer_userTriggerDecision.emit({
124+
codewhispererSessionId: sessionId,
125+
codewhispererFirstRequestId: requestIdList[0],
126+
credentialStartUrl: AuthUtil.instance.startUrl,
127+
codewhispererTriggerType: session.triggerType,
128+
codewhispererCompletionType: 'Line',
129+
codewhispererGettingStartedTask: session.taskType,
130+
codewhispererLanguage: language,
131+
codewhispererSuggestionCount: 0,
132+
codewhispererCursorOffset: session.startCursorOffset,
133+
codewhispererLineNumber: session.startPos.line,
134+
codewhispererSuggestionImportCount: 0,
135+
codewhispererSuggestionState: 'Empty',
136+
codewhispererTypeaheadLength: this.typeAheadLength,
137+
codewhispererSupplementalContextTimeout: supplementalContextMetadata?.isProcessTimeout,
138+
codewhispererSupplementalContextIsUtg: supplementalContextMetadata?.isUtg,
139+
codewhispererSupplementalContextLength: supplementalContextMetadata?.contentsLength,
140+
codewhispererSupplementalContextStrategyId: supplementalContextMetadata?.strategy,
141+
traceId: this.traceId,
142+
codewhispererTimeSinceLastDocumentChange: this.timeSinceLastModification
143+
? this.timeSinceLastModification
144+
: undefined,
145+
codewhispererTimeSinceLastUserDecision: this.lastTriggerDecisionTime
146+
? performance.now() - this.lastTriggerDecisionTime
147+
: undefined,
148+
codewhispererTimeToFirstRecommendation: session.timeToFirstRecommendation,
149+
codewhispererPreviousSuggestionState: this.prevTriggerDecision,
150+
codewhispererClassifierResult: this.classifierResult,
151+
codewhispererCustomizationArn: selectedCustomization.arn === '' ? undefined : selectedCustomization.arn,
152+
codewhispererFeatureEvaluations: FeatureConfigProvider.instance.getFeatureConfigsTelemetry(),
153+
})
120154
}
121155

122156
/**

0 commit comments

Comments
 (0)