diff --git a/packages/core/src/codewhisperer/service/recommendationHandler.ts b/packages/core/src/codewhisperer/service/recommendationHandler.ts index 72e130a5bed..12d19d22571 100644 --- a/packages/core/src/codewhisperer/service/recommendationHandler.ts +++ b/packages/core/src/codewhisperer/service/recommendationHandler.ts @@ -204,7 +204,10 @@ export class RecommendationHandler { } } } else { - session.requestContext = await EditorContext.buildGenerateRecommendationRequest(editor as vscode.TextEditor) + session.requestContext = await EditorContext.buildGenerateRecommendationRequest( + editor as vscode.TextEditor, + config.isSuggestionsWithCodeReferencesEnabled + ) } const request = session.requestContext.request // record preprocessing end time diff --git a/packages/core/src/codewhisperer/util/editorContext.ts b/packages/core/src/codewhisperer/util/editorContext.ts index 99a15fd1f02..a1bf8096a30 100644 --- a/packages/core/src/codewhisperer/util/editorContext.ts +++ b/packages/core/src/codewhisperer/util/editorContext.ts @@ -123,7 +123,10 @@ export async function buildListRecommendationRequest( } } -export async function buildGenerateRecommendationRequest(editor: vscode.TextEditor): Promise<{ +export async function buildGenerateRecommendationRequest( + editor: vscode.TextEditor, + allowCodeWithReference: boolean +): Promise<{ request: codewhispererClient.GenerateRecommendationsRequest supplementalMetadata: CodeWhispererSupplementalContext | undefined }> { @@ -143,6 +146,9 @@ export async function buildGenerateRecommendationRequest(editor: vscode.TextEdit request: { fileContext: fileContext, maxResults: CodeWhispererConstants.maxRecommendations, + referenceTrackerConfiguration: { + recommendationsWithReferences: allowCodeWithReference ? 'ALLOW' : 'BLOCK', + }, supplementalContexts: supplementalContexts?.supplementalContextItems ?? [], }, supplementalMetadata: supplementalContexts,