@aws/lsp-codewhisperer 0.0.71 → 0.0.72

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/out/language-server/agenticChat/agenticChatController.js +5 -5
  3. package/out/language-server/agenticChat/agenticChatController.js.map +1 -1
  4. package/out/language-server/agenticChat/constants/modelSelection.js +1 -1
  5. package/out/language-server/agenticChat/constants/modelSelection.js.map +1 -1
  6. package/out/language-server/agenticChat/tools/chatDb/chatDb.d.ts +7 -1
  7. package/out/language-server/agenticChat/tools/chatDb/chatDb.js +64 -17
  8. package/out/language-server/agenticChat/tools/chatDb/chatDb.js.map +1 -1
  9. package/out/language-server/agenticChat/tools/chatDb/util.d.ts +3 -2
  10. package/out/language-server/agenticChat/tools/chatDb/util.js.map +1 -1
  11. package/out/language-server/agenticChat/tools/executeBash.d.ts +1 -0
  12. package/out/language-server/agenticChat/tools/executeBash.js +33 -0
  13. package/out/language-server/agenticChat/tools/executeBash.js.map +1 -1
  14. package/out/language-server/agenticChat/tools/mcp/mcpEventHandler.js +22 -18
  15. package/out/language-server/agenticChat/tools/mcp/mcpEventHandler.js.map +1 -1
  16. package/out/language-server/agenticChat/tools/mcp/mcpManager.d.ts +1 -0
  17. package/out/language-server/agenticChat/tools/mcp/mcpManager.js +68 -32
  18. package/out/language-server/agenticChat/tools/mcp/mcpManager.js.map +1 -1
  19. package/out/language-server/agenticChat/tools/mcp/mcpTypes.d.ts +1 -0
  20. package/out/language-server/agenticChat/tools/mcp/mcpTypes.js.map +1 -1
  21. package/out/language-server/agenticChat/tools/mcp/mcpUtils.d.ts +1 -1
  22. package/out/language-server/agenticChat/tools/mcp/mcpUtils.js +70 -7
  23. package/out/language-server/agenticChat/tools/mcp/mcpUtils.js.map +1 -1
  24. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindingsConstants.js +1 -0
  25. package/out/language-server/agenticChat/tools/qCodeAnalysis/displayFindingsConstants.js.map +1 -1
  26. package/out/language-server/agenticChat/utils/agenticChatControllerHelper.js +1 -1
  27. package/out/language-server/agenticChat/utils/agenticChatControllerHelper.js.map +1 -1
  28. package/out/language-server/chat/chatSessionService.js +1 -1
  29. package/out/language-server/chat/chatSessionService.js.map +1 -1
  30. package/out/language-server/chat/telemetry/chatTelemetryController.d.ts +1 -0
  31. package/out/language-server/chat/telemetry/chatTelemetryController.js +11 -0
  32. package/out/language-server/chat/telemetry/chatTelemetryController.js.map +1 -1
  33. package/out/language-server/inline-completion/codeDiffTracker.d.ts +9 -0
  34. package/out/language-server/inline-completion/codeDiffTracker.js.map +1 -1
  35. package/out/language-server/inline-completion/codeWhispererServer.d.ts +0 -3
  36. package/out/language-server/inline-completion/codeWhispererServer.js +48 -172
  37. package/out/language-server/inline-completion/codeWhispererServer.js.map +1 -1
  38. package/out/language-server/inline-completion/constants.d.ts +9 -0
  39. package/out/language-server/inline-completion/constants.js +10 -0
  40. package/out/language-server/inline-completion/constants.js.map +1 -0
  41. package/out/language-server/inline-completion/documentChangedListener.d.ts +8 -0
  42. package/out/language-server/inline-completion/documentChangedListener.js +20 -0
  43. package/out/language-server/inline-completion/documentChangedListener.js.map +1 -0
  44. package/out/language-server/inline-completion/editCompletionHandler.d.ts +49 -0
  45. package/out/language-server/inline-completion/editCompletionHandler.js +320 -0
  46. package/out/language-server/inline-completion/editCompletionHandler.js.map +1 -0
  47. package/out/language-server/inline-completion/session/sessionManager.d.ts +10 -2
  48. package/out/language-server/inline-completion/session/sessionManager.js +34 -7
  49. package/out/language-server/inline-completion/session/sessionManager.js.map +1 -1
  50. package/out/language-server/inline-completion/telemetry.js +12 -2
  51. package/out/language-server/inline-completion/telemetry.js.map +1 -1
  52. package/out/language-server/inline-completion/trigger.d.ts +17 -0
  53. package/out/language-server/inline-completion/trigger.js +42 -0
  54. package/out/language-server/inline-completion/trigger.js.map +1 -0
  55. package/out/shared/codeWhispererService.d.ts +36 -1
  56. package/out/shared/codeWhispererService.js +77 -0
  57. package/out/shared/codeWhispererService.js.map +1 -1
  58. package/out/shared/constants.d.ts +1 -0
  59. package/out/shared/constants.js +2 -1
  60. package/out/shared/constants.js.map +1 -1
  61. package/out/shared/supplementalContextUtil/crossFileContextUtil.d.ts +3 -4
  62. package/out/shared/supplementalContextUtil/crossFileContextUtil.js +5 -5
  63. package/out/shared/supplementalContextUtil/crossFileContextUtil.js.map +1 -1
  64. package/out/shared/supplementalContextUtil/supplementalContextUtil.d.ts +1 -2
  65. package/out/shared/supplementalContextUtil/supplementalContextUtil.js +2 -2
  66. package/out/shared/supplementalContextUtil/supplementalContextUtil.js.map +1 -1
  67. package/out/shared/telemetry/telemetryService.js +6 -1
  68. package/out/shared/telemetry/telemetryService.js.map +1 -1
  69. package/out/shared/telemetry/types.d.ts +8 -0
  70. package/out/shared/telemetry/types.js +1 -0
  71. package/out/shared/telemetry/types.js.map +1 -1
  72. package/out/shared/utils.d.ts +1 -0
  73. package/out/shared/utils.js +7 -1
  74. package/out/shared/utils.js.map +1 -1
  75. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"chatTelemetryController.js","sourceRoot":"","sources":["../../../../src/language-server/chat/telemetry/chatTelemetryController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatTelemetryController.js","sourceRoot":"","sources":["../../../../src/language-server/chat/telemetry/chatTelemetryController.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { Position } from '@aws/language-server-runtimes/server-interface';
2
2
  import { Features } from '../types';
3
+ import { CodewhispererLanguage } from '../../shared/languageDetection';
3
4
  export interface AcceptedSuggestionEntry {
4
5
  fileUrl: string;
5
6
  time: number;
@@ -8,6 +9,14 @@ export interface AcceptedSuggestionEntry {
8
9
  endPosition: Position;
9
10
  customizationArn?: string;
10
11
  }
12
+ export interface AcceptedInlineSuggestionEntry extends AcceptedSuggestionEntry {
13
+ sessionId: string;
14
+ requestId: string;
15
+ languageId: CodewhispererLanguage;
16
+ completionType: string;
17
+ triggerType: string;
18
+ credentialStartUrl?: string | undefined;
19
+ }
11
20
  export interface CodeDiffTrackerOptions {
12
21
  flushInterval?: number;
13
22
  timeElapsedThreshold?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"codeDiffTracker.js","sourceRoot":"","sources":["../../../src/language-server/inline-completion/codeDiffTracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codeDiffTracker.js","sourceRoot":"","sources":["../../../src/language-server/inline-completion/codeDiffTracker.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,5 @@
1
1
  import { Server } from '@aws/language-server-runtimes/server-interface';
2
2
  import { AmazonQBaseServiceManager } from '../../shared/amazonQServiceManager/BaseAmazonQServiceManager';
3
- export declare const FILE_URI_CHARS_LIMIT = 1024;
4
- export declare const FILENAME_CHARS_LIMIT = 1024;
5
- export declare const CONTEXT_CHARACTERS_LIMIT = 10240;
6
3
  export declare const CodewhispererServerFactory: (serviceManager: () => AmazonQBaseServiceManager) => Server;
7
4
  export declare const CodeWhispererServerIAM: Server;
8
5
  export declare const CodeWhispererServerToken: Server;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CodeWhispererServerToken = exports.CodeWhispererServerIAM = exports.CodewhispererServerFactory = exports.CONTEXT_CHARACTERS_LIMIT = exports.FILENAME_CHARS_LIMIT = exports.FILE_URI_CHARS_LIMIT = void 0;
3
+ exports.CodeWhispererServerToken = exports.CodeWhispererServerIAM = exports.CodewhispererServerFactory = void 0;
4
4
  const server_interface_1 = require("@aws/language-server-runtimes/server-interface");
5
5
  const autoTrigger_1 = require("./auto-trigger/autoTrigger");
6
6
  const codeWhispererService_1 = require("../../shared/codeWhispererService");
@@ -10,7 +10,6 @@ const sessionManager_1 = require("./session/sessionManager");
10
10
  const codePercentage_1 = require("./codePercentage");
11
11
  const utils_1 = require("../../shared/utils");
12
12
  const telemetryUtils_1 = require("../../shared/telemetryUtils");
13
- const supplementalContextUtil_1 = require("../../shared/supplementalContextUtil/supplementalContextUtil");
14
13
  const lsp_core_1 = require("@aws/lsp-core");
15
14
  const telemetryService_1 = require("../../shared/telemetry/telemetryService");
16
15
  const codeDiffTracker_1 = require("./codeDiffTracker");
@@ -19,42 +18,15 @@ const AmazonQTokenServiceManager_1 = require("../../shared/amazonQServiceManager
19
18
  const utils_2 = require("../../shared/utils");
20
19
  const AmazonQIAMServiceManager_1 = require("../../shared/amazonQServiceManager/AmazonQIAMServiceManager");
21
20
  const workspaceFolderManager_1 = require("../workspaceContext/workspaceFolderManager");
22
- const path = require("path");
23
- const util_1 = require("../workspaceContext/util");
24
21
  const userWrittenCodeTracker_1 = require("../../shared/userWrittenCodeTracker");
25
22
  const codeEditTracker_1 = require("./tracker/codeEditTracker");
26
23
  const cursorTracker_1 = require("./tracker/cursorTracker");
27
24
  const rejectedEditTracker_1 = require("./tracker/rejectedEditTracker");
28
25
  const diffUtils_1 = require("./diffUtils");
29
26
  const telemetry_1 = require("./telemetry");
30
- const { editPredictionAutoTrigger } = require('./auto-trigger/editPredictionAutoTrigger');
31
- const EMPTY_RESULT = { sessionId: '', items: [] };
32
- exports.FILE_URI_CHARS_LIMIT = 1024;
33
- exports.FILENAME_CHARS_LIMIT = 1024;
34
- exports.CONTEXT_CHARACTERS_LIMIT = 10240;
35
- // Both clients (token, sigv4) define their own types, this return value needs to match both of them.
36
- const getFileContext = (params) => {
37
- const left = params.textDocument.getText({
38
- start: { line: 0, character: 0 },
39
- end: params.position,
40
- });
41
- const right = params.textDocument.getText({
42
- start: params.position,
43
- end: params.textDocument.positionAt(params.textDocument.getText().length),
44
- });
45
- const relativeFilePath = params.workspaceFolder
46
- ? (0, util_1.getRelativePath)(params.workspaceFolder, params.textDocument.uri)
47
- : path.basename(params.textDocument.uri);
48
- return {
49
- fileUri: params.textDocument.uri.substring(0, exports.FILE_URI_CHARS_LIMIT),
50
- filename: relativeFilePath.substring(0, exports.FILENAME_CHARS_LIMIT),
51
- programmingLanguage: {
52
- languageName: (0, languageDetection_1.getRuntimeLanguage)(params.inferredLanguageId),
53
- },
54
- leftFileContent: left,
55
- rightFileContent: right,
56
- };
57
- };
27
+ const documentChangedListener_1 = require("./documentChangedListener");
28
+ const editCompletionHandler_1 = require("./editCompletionHandler");
29
+ const constants_1 = require("./constants");
58
30
  const mergeSuggestionsWithRightContext = (rightFileContext, suggestions, includeImportsWithSuggestions, range) => {
59
31
  return suggestions.map(suggestion => {
60
32
  const insertText = (0, mergeRightUtils_1.truncateOverlapWithRightContext)(rightFileContext, suggestion.content);
@@ -87,7 +59,8 @@ const mergeSuggestionsWithRightContext = (rightFileContext, suggestions, include
87
59
  const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, lsp, workspace, telemetry, logging, runtime, sdkInitializator }) => {
88
60
  let lastUserModificationTime;
89
61
  let timeSinceLastUserModification = 0;
90
- const sessionManager = sessionManager_1.SessionManager.getInstance();
62
+ const completionSessionManager = sessionManager_1.SessionManager.getInstance('COMPLETIONS');
63
+ const editSessionManager = sessionManager_1.SessionManager.getInstance('EDITS');
91
64
  // AmazonQTokenServiceManager and TelemetryService are initialized in `onInitialized` handler to make sure Language Server connection is started
92
65
  let amazonQServiceManager;
93
66
  let telemetryService;
@@ -100,12 +73,14 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
100
73
  let codePercentageTracker;
101
74
  let userWrittenCodeTracker;
102
75
  let codeDiffTracker;
76
+ let editCompletionHandler;
103
77
  // Trackers for monitoring edits and cursor position.
104
78
  const recentEditTracker = codeEditTracker_1.RecentEditTracker.getInstance(logging, codeEditTracker_1.RecentEditTrackerDefaultConfig);
105
79
  const cursorTracker = cursorTracker_1.CursorTracker.getInstance();
106
80
  const rejectedEditTracker = rejectedEditTracker_1.RejectedEditTracker.getInstance(logging, rejectedEditTracker_1.DEFAULT_REJECTED_EDIT_TRACKER_CONFIG);
107
81
  let editsEnabled = false;
108
82
  let isOnInlineCompletionHandlerInProgress = false;
83
+ const documentChangedListener = new documentChangedListener_1.DocumentChangedListener();
109
84
  const onInlineCompletionHandler = async (params, token) => {
110
85
  // this handle should not run concurrently because
111
86
  // 1. it would create a high volume of traffic, causing throttling
@@ -114,12 +89,12 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
114
89
  // but another request can start, causing the state to be incorrect.
115
90
  if (isOnInlineCompletionHandlerInProgress) {
116
91
  logging.log(`Skip concurrent inline completion`);
117
- return EMPTY_RESULT;
92
+ return constants_1.EMPTY_RESULT;
118
93
  }
119
94
  isOnInlineCompletionHandlerInProgress = true;
120
95
  try {
121
96
  // On every new completion request close current inflight session.
122
- const currentSession = sessionManager.getCurrentSession();
97
+ const currentSession = completionSessionManager.getCurrentSession();
123
98
  if (currentSession && currentSession.state == 'REQUESTING' && !params.partialResultToken) {
124
99
  // this REQUESTING state only happens when the session is initialized, which is rare
125
100
  currentSession.discardInflightSessionOnNewInvocation = true;
@@ -136,12 +111,6 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
136
111
  ...currentSession.requestContext,
137
112
  fileContext: {
138
113
  ...currentSession.requestContext.fileContext,
139
- leftFileContent: currentSession.requestContext.fileContext.leftFileContent
140
- .slice(-exports.CONTEXT_CHARACTERS_LIMIT)
141
- .replaceAll('\r\n', '\n'),
142
- rightFileContent: currentSession.requestContext.fileContext.rightFileContent
143
- .slice(0, exports.CONTEXT_CHARACTERS_LIMIT)
144
- .replaceAll('\r\n', '\n'),
145
114
  },
146
115
  nextToken: `${params.partialResultToken}`,
147
116
  });
@@ -155,18 +124,18 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
155
124
  // request for new session
156
125
  if (!textDocument) {
157
126
  logging.log(`textDocument [${params.textDocument.uri}] not found`);
158
- return EMPTY_RESULT;
127
+ return constants_1.EMPTY_RESULT;
159
128
  }
160
129
  const inferredLanguageId = (0, languageDetection_1.getSupportedLanguageId)(textDocument);
161
130
  if (!inferredLanguageId) {
162
131
  logging.log(`textDocument [${params.textDocument.uri}] with languageId [${textDocument.languageId}] not supported`);
163
- return EMPTY_RESULT;
132
+ return constants_1.EMPTY_RESULT;
164
133
  }
165
134
  // Build request context
166
135
  const isAutomaticLspTriggerKind = params.context.triggerKind == server_interface_1.InlineCompletionTriggerKind.Automatic;
167
136
  const maxResults = isAutomaticLspTriggerKind ? 1 : 5;
168
137
  const selectionRange = params.context.selectedCompletionInfo?.range;
169
- const fileContext = getFileContext({
138
+ const fileContext = (0, codeWhispererService_1.getFileContext)({
170
139
  textDocument,
171
140
  inferredLanguageId,
172
141
  position: params.position,
@@ -176,7 +145,7 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
176
145
  const workspaceId = workspaceState?.webSocketClient?.isConnected()
177
146
  ? workspaceState.workspaceId
178
147
  : undefined;
179
- const previousSession = sessionManager.getPreviousSession();
148
+ const previousSession = completionSessionManager.getPreviousSession();
180
149
  const previousDecision = previousSession?.getAggregatedUserTriggerDecision() ?? '';
181
150
  let ideCategory = '';
182
151
  const initializeParams = lsp.getClientInitializeParams();
@@ -203,7 +172,7 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
203
172
  // See: https://github.com/aws/aws-toolkit-vscode/blob/amazonq/v1.74.0/packages/core/src/codewhisperer/service/keyStrokeHandler.ts#L132
204
173
  // In such cases, do not auto trigger.
205
174
  if (codewhispererAutoTriggerType === undefined) {
206
- return EMPTY_RESULT;
175
+ return constants_1.EMPTY_RESULT;
207
176
  }
208
177
  autoTriggerResult = (0, autoTrigger_1.autoTrigger)({
209
178
  fileContext, // The left/right file context and programming language
@@ -214,98 +183,17 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
214
183
  previousDecision, // The last decision by the user on the previous invocation
215
184
  triggerType: codewhispererAutoTriggerType, // The 2 trigger types currently influencing the Auto-Trigger are SpecialCharacter and Enter
216
185
  }, logging);
217
- if (codewhispererAutoTriggerType === 'Classifier' &&
218
- !autoTriggerResult.shouldTrigger &&
219
- !(editsEnabled && codeWhispererService instanceof codeWhispererService_1.CodeWhispererServiceToken) // There is still potentially a Edit trigger without Completion if NEP is enabled (current only BearerTokenClient)
220
- ) {
221
- return EMPTY_RESULT;
186
+ if (codewhispererAutoTriggerType === 'Classifier' && !autoTriggerResult.shouldTrigger) {
187
+ return constants_1.EMPTY_RESULT;
222
188
  }
223
189
  }
224
- // Get supplemental context from recent edits if available.
225
- let supplementalContextFromEdits = undefined;
226
- // supplementalContext available only via token authentication
227
- const supplementalContextPromise = codeWhispererService instanceof codeWhispererService_1.CodeWhispererServiceToken
228
- ? (0, supplementalContextUtil_1.fetchSupplementalContext)(textDocument, params.position, workspace, logging, token, amazonQServiceManager, params.openTabFilepaths)
229
- : Promise.resolve(undefined);
230
190
  let requestContext = {
231
191
  fileContext,
232
192
  maxResults,
233
193
  };
234
- const supplementalContext = await supplementalContextPromise;
235
- // TODO: logging
236
- if (codeWhispererService instanceof codeWhispererService_1.CodeWhispererServiceToken) {
237
- const supplementalContextItems = supplementalContext?.supplementalContextItems || [];
238
- requestContext.supplementalContexts = [
239
- ...supplementalContextItems.map(v => ({
240
- content: v.content,
241
- filePath: v.filePath,
242
- })),
243
- ];
244
- if (editsEnabled) {
245
- const predictionTypes = [];
246
- /**
247
- * Manual trigger - should always have 'Completions'
248
- * Auto trigger
249
- * - Classifier - should have 'Completions' when classifier evalualte to true given the editor's states
250
- * - Others - should always have 'Completions'
251
- */
252
- if (!isAutomaticLspTriggerKind ||
253
- (isAutomaticLspTriggerKind && codewhispererAutoTriggerType !== 'Classifier') ||
254
- (isAutomaticLspTriggerKind &&
255
- codewhispererAutoTriggerType === 'Classifier' &&
256
- autoTriggerResult?.shouldTrigger)) {
257
- predictionTypes.push(['COMPLETIONS']);
258
- }
259
- const editPredictionAutoTriggerResult = editPredictionAutoTrigger({
260
- fileContext: fileContext,
261
- lineNum: params.position.line,
262
- char: triggerCharacters,
263
- previousDecision: previousDecision,
264
- cursorHistory: cursorTracker,
265
- recentEdits: recentEditTracker,
266
- });
267
- if (editPredictionAutoTriggerResult.shouldTrigger) {
268
- predictionTypes.push(['EDITS']);
269
- }
270
- if (predictionTypes.length === 0) {
271
- return EMPTY_RESULT;
272
- }
273
- // Step 0: Determine if we have "Recent Edit context"
274
- if (recentEditTracker) {
275
- supplementalContextFromEdits =
276
- await recentEditTracker.generateEditBasedContext(textDocument);
277
- }
278
- // Step 1: Recent Edits context
279
- const supplementalContextItemsForEdits = supplementalContextFromEdits?.supplementalContextItems || [];
280
- requestContext.supplementalContexts.push(...supplementalContextItemsForEdits.map(v => ({
281
- content: v.content,
282
- filePath: v.filePath,
283
- type: 'PreviousEditorState',
284
- metadata: {
285
- previousEditorStateMetadata: {
286
- timeOffset: 1000,
287
- },
288
- },
289
- })));
290
- // Step 2: Prediction type COMPLETION, Edits or both
291
- requestContext.predictionTypes = predictionTypes.flat();
292
- // Step 3: Current Editor/Cursor state
293
- requestContext.editorState = {
294
- document: {
295
- relativeFilePath: textDocument.uri,
296
- programmingLanguage: {
297
- languageName: requestContext.fileContext.programmingLanguage.languageName,
298
- },
299
- text: textDocument.getText(),
300
- },
301
- cursorState: {
302
- position: {
303
- line: params.position.line,
304
- character: params.position.character,
305
- },
306
- },
307
- };
308
- }
194
+ const supplementalContext = await codeWhispererService.constructSupplementalContext(textDocument, params.position, workspace, recentEditTracker, logging, token, params.openTabFilepaths, { includeRecentEdits: false });
195
+ if (supplementalContext?.items) {
196
+ requestContext.supplementalContexts = supplementalContext.items;
309
197
  }
310
198
  // Close ACTIVE session and record Discard trigger decision immediately
311
199
  if (currentSession && currentSession.state === 'ACTIVE') {
@@ -319,28 +207,12 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
319
207
  }
320
208
  }
321
209
  // Emit user trigger decision at session close time for active session
322
- sessionManager.discardSession(currentSession);
323
- const streakLength = editsEnabled ? sessionManager.getAndUpdateStreakLength(false) : 0;
210
+ completionSessionManager.discardSession(currentSession);
211
+ const streakLength = editsEnabled ? completionSessionManager.getAndUpdateStreakLength(false) : 0;
324
212
  await (0, telemetry_1.emitUserTriggerDecisionTelemetry)(telemetry, telemetryService, currentSession, timeSinceLastUserModification, 0, 0, [], [], streakLength);
325
213
  }
326
- const supplementalMetadata = editsEnabled
327
- ? {
328
- // Merge metadata from edit-based context if available.
329
- contentsLength: (supplementalContext?.contentsLength || 0) +
330
- (supplementalContextFromEdits?.contentsLength || 0),
331
- latency: Math.max(supplementalContext?.latency || 0, supplementalContextFromEdits?.latency || 0),
332
- isUtg: supplementalContext?.isUtg || false,
333
- isProcessTimeout: supplementalContext?.isProcessTimeout || false,
334
- strategy: supplementalContextFromEdits
335
- ? 'recentEdits'
336
- : supplementalContext?.strategy || 'Empty',
337
- supplementalContextItems: [
338
- ...(supplementalContext?.supplementalContextItems || []),
339
- ...(supplementalContextFromEdits?.supplementalContextItems || []),
340
- ],
341
- }
342
- : supplementalContext;
343
- const newSession = sessionManager.createSession({
214
+ const supplementalMetadata = supplementalContext?.supContextData;
215
+ const newSession = completionSessionManager.createSession({
344
216
  document: textDocument,
345
217
  startPosition: params.position,
346
218
  triggerType: isAutomaticLspTriggerKind ? 'AutoTrigger' : 'OnDemand',
@@ -362,15 +234,6 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
362
234
  }
363
235
  const generateCompletionReq = {
364
236
  ...requestContext,
365
- fileContext: {
366
- ...requestContext.fileContext,
367
- leftFileContent: requestContext.fileContext.leftFileContent
368
- .slice(-exports.CONTEXT_CHARACTERS_LIMIT)
369
- .replaceAll('\r\n', '\n'),
370
- rightFileContent: requestContext.fileContext.rightFileContent
371
- .slice(0, exports.CONTEXT_CHARACTERS_LIMIT)
372
- .replaceAll('\r\n', '\n'),
373
- },
374
237
  ...(workspaceId ? { workspaceId: workspaceId } : {}),
375
238
  };
376
239
  try {
@@ -407,17 +270,17 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
407
270
  // Discard previous inflight API response due to new trigger
408
271
  if (session.discardInflightSessionOnNewInvocation) {
409
272
  session.discardInflightSessionOnNewInvocation = false;
410
- sessionManager.discardSession(session);
411
- const streakLength = editsEnabled ? sessionManager.getAndUpdateStreakLength(false) : 0;
273
+ completionSessionManager.discardSession(session);
274
+ const streakLength = editsEnabled ? completionSessionManager.getAndUpdateStreakLength(false) : 0;
412
275
  await (0, telemetry_1.emitUserTriggerDecisionTelemetry)(telemetry, telemetryService, session, timeSinceLastUserModification, 0, 0, [], [], streakLength);
413
276
  }
414
277
  // session was closed by user already made decisions consequent completion request before new paginated API response was received
415
278
  if (session.suggestionType !== codeWhispererService_1.SuggestionType.EDIT && // TODO: this is a shorterm fix to allow Edits tabtabtab experience, however the real solution is to manage such sessions correctly
416
279
  (session.state === 'CLOSED' || session.state === 'DISCARD')) {
417
- return EMPTY_RESULT;
280
+ return constants_1.EMPTY_RESULT;
418
281
  }
419
282
  // API response was recieved, we can activate session now
420
- sessionManager.activateSession(session);
283
+ completionSessionManager.activateSession(session);
421
284
  // Process suggestions to apply Empty or Filter filters
422
285
  const filteredSuggestions = suggestionResponse.suggestions
423
286
  // Empty suggestion filter
@@ -471,9 +334,9 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
471
334
  // close session and return empty results
472
335
  if (session.suggestionsAfterRightContextMerge.length === 0 &&
473
336
  !suggestionResponse.responseContext.nextToken) {
474
- sessionManager.closeSession(session);
337
+ completionSessionManager.closeSession(session);
475
338
  await (0, telemetry_1.emitUserTriggerDecisionTelemetry)(telemetry, telemetryService, session, timeSinceLastUserModification);
476
- return EMPTY_RESULT;
339
+ return constants_1.EMPTY_RESULT;
477
340
  }
478
341
  return {
479
342
  items: suggestionsWithRightContext,
@@ -482,6 +345,7 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
482
345
  };
483
346
  }
484
347
  else {
348
+ session.hasEditsPending = suggestionResponse.responseContext.nextToken ? true : false;
485
349
  return {
486
350
  items: suggestionResponse.suggestions
487
351
  .map(suggestion => {
@@ -513,7 +377,7 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
513
377
  const handleSuggestionsErrors = (error, session) => {
514
378
  logging.log('Recommendation failure: ' + error);
515
379
  (0, telemetry_1.emitServiceInvocationFailure)(telemetry, session, error);
516
- sessionManager.closeSession(session);
380
+ completionSessionManager.closeSession(session);
517
381
  let translatedError = error;
518
382
  if ((0, utils_2.hasConnectionExpired)(error)) {
519
383
  translatedError = new errors_1.AmazonQServiceConnectionExpiredError((0, utils_1.getErrorMessage)(error));
@@ -523,7 +387,7 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
523
387
  awsErrorCode: translatedError.code,
524
388
  });
525
389
  }
526
- return EMPTY_RESULT;
390
+ return constants_1.EMPTY_RESULT;
527
391
  };
528
392
  // Schedule tracker for UserModification Telemetry event
529
393
  const enqueueCodeDiffEntry = (session, acceptedSuggestion, addedCharactersForEdit) => {
@@ -547,6 +411,7 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
547
411
  };
548
412
  const onLogInlineCompletionSessionResultsHandler = async (params) => {
549
413
  const { sessionId, completionSessionResult, firstCompletionDisplayLatency, totalSessionDisplayTime, typeaheadLength, isInlineEdit, addedDiagnostics, removedDiagnostics, } = params;
414
+ const sessionManager = params.isInlineEdit ? editSessionManager : completionSessionManager;
550
415
  const session = sessionManager.getSessionById(sessionId);
551
416
  if (!session) {
552
417
  logging.log(`ERROR: Session ID ${sessionId} was not found`);
@@ -607,8 +472,12 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
607
472
  if (firstCompletionDisplayLatency)
608
473
  (0, telemetry_1.emitPerceivedLatencyTelemetry)(telemetry, session);
609
474
  // Always emit user trigger decision at session close
610
- sessionManager.closeSession(session);
611
- const streakLength = editsEnabled ? sessionManager.getAndUpdateStreakLength(isAccepted) : 0;
475
+ // Close session unless Edit suggestion was accepted with more pending
476
+ const shouldKeepSessionOpen = session.suggestionType === codeWhispererService_1.SuggestionType.EDIT && isAccepted && session.hasEditsPending;
477
+ if (!shouldKeepSessionOpen) {
478
+ completionSessionManager.closeSession(session);
479
+ }
480
+ const streakLength = editsEnabled ? completionSessionManager.getAndUpdateStreakLength(isAccepted) : 0;
612
481
  await (0, telemetry_1.emitUserTriggerDecisionTelemetry)(telemetry, telemetryService, session, timeSinceLastUserModification, addedCharactersForEditSuggestion.length, deletedCharactersForEditSuggestion.length, addedDiagnostics, removedDiagnostics, streakLength);
613
482
  };
614
483
  const updateConfiguration = (updatedConfig) => {
@@ -660,8 +529,13 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
660
529
  const periodicLoggingEnabled = process.env.LOG_EDIT_TRACKING === 'true';
661
530
  logging.log(`[SERVER] Initialized telemetry-dependent components: CodePercentageTracker, CodeDiffTracker, periodicLogging=${periodicLoggingEnabled}`);
662
531
  await amazonQServiceManager.addDidChangeConfigurationListener(updateConfiguration);
532
+ editCompletionHandler = new editCompletionHandler_1.EditCompletionHandler(logging, clientParams, workspace, amazonQServiceManager, editSessionManager, cursorTracker, recentEditTracker, rejectedEditTracker, documentChangedListener, telemetry, telemetryService, credentialsProvider);
533
+ };
534
+ const onEditCompletion = async (param, token) => {
535
+ return await editCompletionHandler.onEditCompletion(param, token);
663
536
  };
664
537
  lsp.extensions.onInlineCompletionWithReferences(onInlineCompletionHandler);
538
+ lsp.extensions.onEditCompletion(onEditCompletion);
665
539
  lsp.extensions.onLogInlineCompletionSessionResults(onLogInlineCompletionSessionResultsHandler);
666
540
  lsp.onInitialized(onInitializedHandler);
667
541
  lsp.onDidChangeTextDocument(async (p) => {
@@ -677,7 +551,7 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
677
551
  return;
678
552
  }
679
553
  // exclude cases that the document change is from Q suggestions
680
- const currentSession = sessionManager.getCurrentSession();
554
+ const currentSession = completionSessionManager.getCurrentSession();
681
555
  if (!currentSession?.suggestions.some(suggestion => suggestion?.insertText && suggestion.insertText === change.text)) {
682
556
  userWrittenCodeTracker?.countUserWrittenTokens(languageId, change.text);
683
557
  }
@@ -687,6 +561,8 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
687
561
  timeSinceLastUserModification = new Date().getTime() - lastUserModificationTime;
688
562
  }
689
563
  lastUserModificationTime = new Date().getTime();
564
+ documentChangedListener.onDocumentChanged(p);
565
+ editCompletionHandler.documentChanged();
690
566
  // Process document changes with RecentEditTracker.
691
567
  if (editsEnabled && recentEditTracker) {
692
568
  logging.log(`[SERVER] Processing document change with RecentEditTracker: ${p.textDocument.uri}, version: ${textDocument.version}`);