@aws/lsp-codewhisperer 0.0.76 → 0.0.78
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.
- package/CHANGELOG.md +53 -0
- package/out/client/token/bearer-token-service.json +19 -0
- package/out/language-server/agenticChat/agenticChatController.js +15 -4
- package/out/language-server/agenticChat/agenticChatController.js.map +1 -1
- package/out/language-server/agenticChat/constants/constants.d.ts +0 -2
- package/out/language-server/agenticChat/constants/constants.js +1 -3
- package/out/language-server/agenticChat/constants/constants.js.map +1 -1
- package/out/language-server/agenticChat/tools/chatDb/chatDb.js +2 -0
- package/out/language-server/agenticChat/tools/chatDb/chatDb.js.map +1 -1
- package/out/language-server/agenticChat/tools/chatDb/util.js +2 -1
- package/out/language-server/agenticChat/tools/chatDb/util.js.map +1 -1
- package/out/language-server/agenticChat/tools/mcp/mcpManager.js +5 -2
- package/out/language-server/agenticChat/tools/mcp/mcpManager.js.map +1 -1
- package/out/language-server/agenticChat/tools/mcp/mcpTypes.d.ts +12 -2
- package/out/language-server/agenticChat/tools/mcp/mcpTypes.js +7 -3
- package/out/language-server/agenticChat/tools/mcp/mcpTypes.js.map +1 -1
- package/out/language-server/agenticChat/tools/mcp/mcpUtils.d.ts +4 -0
- package/out/language-server/agenticChat/tools/mcp/mcpUtils.js +98 -19
- package/out/language-server/agenticChat/tools/mcp/mcpUtils.js.map +1 -1
- package/out/language-server/agenticChat/tools/mcp/profileStatusMonitor.d.ts +2 -5
- package/out/language-server/agenticChat/tools/mcp/profileStatusMonitor.js +5 -16
- package/out/language-server/agenticChat/tools/mcp/profileStatusMonitor.js.map +1 -1
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReview.d.ts +1 -0
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReview.js +49 -11
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReview.js.map +1 -1
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewConstants.js +37 -25
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewConstants.js.map +1 -1
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewSchemas.d.ts +3 -0
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewSchemas.js +8 -7
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewSchemas.js.map +1 -1
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewTypes.d.ts +3 -0
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewUtils.d.ts +7 -0
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewUtils.js +23 -0
- package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReviewUtils.js.map +1 -1
- package/out/language-server/agenticChat/tools/toolServer.js +52 -46
- package/out/language-server/agenticChat/tools/toolServer.js.map +1 -1
- package/out/language-server/agenticChat/utils/fileModificationMetrics.d.ts +8 -0
- package/out/language-server/agenticChat/utils/fileModificationMetrics.js +54 -0
- package/out/language-server/agenticChat/utils/fileModificationMetrics.js.map +1 -0
- package/out/language-server/chat/chatSessionService.d.ts +1 -0
- package/out/language-server/chat/chatSessionService.js +5 -0
- package/out/language-server/chat/chatSessionService.js.map +1 -1
- package/out/language-server/chat/telemetry/chatTelemetryController.d.ts +2 -2
- package/out/language-server/chat/telemetry/chatTelemetryController.js +4 -2
- package/out/language-server/chat/telemetry/chatTelemetryController.js.map +1 -1
- package/out/language-server/inline-completion/auto-trigger/autoTrigger.d.ts +2 -2
- package/out/language-server/inline-completion/auto-trigger/autoTrigger.js +22 -10
- package/out/language-server/inline-completion/auto-trigger/autoTrigger.js.map +1 -1
- package/out/language-server/inline-completion/codeWhispererServer.js +5 -2
- package/out/language-server/inline-completion/codeWhispererServer.js.map +1 -1
- package/out/language-server/inline-completion/editCompletionHandler.d.ts +1 -0
- package/out/language-server/inline-completion/editCompletionHandler.js +12 -0
- package/out/language-server/inline-completion/editCompletionHandler.js.map +1 -1
- package/out/language-server/inline-completion/session/sessionManager.d.ts +3 -0
- package/out/language-server/inline-completion/session/sessionManager.js +7 -0
- package/out/language-server/inline-completion/session/sessionManager.js.map +1 -1
- package/out/language-server/localProjectContext/localProjectContextServer.js +13 -0
- package/out/language-server/localProjectContext/localProjectContextServer.js.map +1 -1
- package/out/language-server/netTransform/artifactManager.d.ts +2 -1
- package/out/language-server/netTransform/artifactManager.js +19 -1
- package/out/language-server/netTransform/artifactManager.js.map +1 -1
- package/out/language-server/netTransform/transformHandler.js +1 -1
- package/out/language-server/netTransform/transformHandler.js.map +1 -1
- package/out/shared/codeWhispererService.js +2 -0
- package/out/shared/codeWhispererService.js.map +1 -1
- package/out/shared/supplementalContextUtil/crossFileContextUtil.js +3 -13
- package/out/shared/supplementalContextUtil/crossFileContextUtil.js.map +1 -1
- package/out/shared/supplementalContextUtil/supplementalContextUtil.js +16 -1
- package/out/shared/supplementalContextUtil/supplementalContextUtil.js.map +1 -1
- package/out/shared/telemetry/telemetryService.d.ts +1 -0
- package/out/shared/telemetry/telemetryService.js +7 -1
- package/out/shared/telemetry/telemetryService.js.map +1 -1
- package/out/shared/telemetry/types.d.ts +2 -1
- package/out/shared/telemetry/types.js +1 -0
- package/out/shared/telemetry/types.js.map +1 -1
- package/out/shared/telemetryUtils.js +2 -0
- package/out/shared/telemetryUtils.js.map +1 -1
- package/package.json +6 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,58 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.0.78](https://github.com/aws/language-servers/compare/lsp-codewhisperer/v0.0.77...lsp-codewhisperer/v0.0.78) (2025-09-09)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* add custom_transformation folder support to artifact.zip ([#2201](https://github.com/aws/language-servers/issues/2201)) ([1222905](https://github.com/aws/language-servers/commit/12229059421b773d3e99d28809fdff4abf242b26))
|
|
9
|
+
* add support for getSupplementalContext LSP API ([#2212](https://github.com/aws/language-servers/issues/2212)) ([2ddcae7](https://github.com/aws/language-servers/commit/2ddcae7a4fac6b89cbc9784911959743ea0a6d11))
|
|
10
|
+
* **amazonq:** default to diff-based scans ([#2195](https://github.com/aws/language-servers/issues/2195)) ([da4c3db](https://github.com/aws/language-servers/commit/da4c3db5329bd50cfe249bf8c1d59afa9bcb0157))
|
|
11
|
+
* model selection for code review tool ([#2196](https://github.com/aws/language-servers/issues/2196)) ([34bc9bd](https://github.com/aws/language-servers/commit/34bc9bd1d3433bbb1d903eb0f212b10709ea8412))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
### Bug Fixes
|
|
15
|
+
|
|
16
|
+
* **amazonq:** add IntelliSense autotriggerType ([#2199](https://github.com/aws/language-servers/issues/2199)) ([013aa59](https://github.com/aws/language-servers/commit/013aa5913c242451a91ed36b0dcf961a3f8ec697))
|
|
17
|
+
* **amazonq:** fix to correct the client for getProfile request ([#2211](https://github.com/aws/language-servers/issues/2211)) ([8bde8c9](https://github.com/aws/language-servers/commit/8bde8c97e1e3bcd67d9816a3385c50c7765c3b2f))
|
|
18
|
+
* **amazonq:** fix to update MCP servers list when last server is removed from agent config ([#2206](https://github.com/aws/language-servers/issues/2206)) ([512502a](https://github.com/aws/language-servers/commit/512502af947dcfed9288be2f67fc58affd4445fe))
|
|
19
|
+
* **amazonq:** update to the agent config format to bring parity with Q CLI ([#2202](https://github.com/aws/language-servers/issues/2202)) ([698d06c](https://github.com/aws/language-servers/commit/698d06c643897da6ca37a49e6544b150b72678a3))
|
|
20
|
+
* potential xss issue reported in `mynah-ui` ([#2209](https://github.com/aws/language-servers/issues/2209)) ([cf585cd](https://github.com/aws/language-servers/commit/cf585cd400dab6274f8220139ae94287c0d96824))
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
### Dependencies
|
|
24
|
+
|
|
25
|
+
* The following workspace dependencies were updated
|
|
26
|
+
* dependencies
|
|
27
|
+
* @aws/lsp-core bumped from ^0.0.14 to ^0.0.15
|
|
28
|
+
|
|
29
|
+
## [0.0.77](https://github.com/aws/language-servers/compare/lsp-codewhisperer/v0.0.76...lsp-codewhisperer/v0.0.77) (2025-09-02)
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
### Features
|
|
33
|
+
|
|
34
|
+
* passing suggestionTypes and pluginVersion/lspVersion to STE ([#2180](https://github.com/aws/language-servers/issues/2180)) ([66742ad](https://github.com/aws/language-servers/commit/66742adfc44f33efbd8dd33b803000e08241e5ce))
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
### Bug Fixes
|
|
38
|
+
|
|
39
|
+
* auto trigger should only respect previous decisions in the past 2mins ([#2189](https://github.com/aws/language-servers/issues/2189)) ([852b21b](https://github.com/aws/language-servers/commit/852b21b66f793102c52e35c2baec07a772e5134a))
|
|
40
|
+
* compact UI is not updated correctly when multiple nudges are displayed ([#2192](https://github.com/aws/language-servers/issues/2192)) ([ef7d793](https://github.com/aws/language-servers/commit/ef7d7931954f5083e4a5c358e67c6dc652fa1a40))
|
|
41
|
+
* emit acceptedLineCount metric and AgenticCodeAccepted interaction type ([#2167](https://github.com/aws/language-servers/issues/2167)) ([c53f672](https://github.com/aws/language-servers/commit/c53f672b6173ebda530917ccb4e0c2f26f5c8f79))
|
|
42
|
+
* emit errorMessage in addMessage ([#2197](https://github.com/aws/language-servers/issues/2197)) ([58f2064](https://github.com/aws/language-servers/commit/58f20649d345f159080006120e23cde559826df1))
|
|
43
|
+
* fix calculation for num-lines contributed by the LLM ([#2191](https://github.com/aws/language-servers/issues/2191)) ([fd71e6c](https://github.com/aws/language-servers/commit/fd71e6cf3fc843242936564061061418edf83f56))
|
|
44
|
+
* should send classifier score after taking sigmoid ([#2188](https://github.com/aws/language-servers/issues/2188)) ([f4e2e6e](https://github.com/aws/language-servers/commit/f4e2e6e885e665834a5d7b7cbb5f4ba4ff9bbb65))
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
### Performance Improvements
|
|
48
|
+
|
|
49
|
+
* only process edit requests 1 at a time ([#2187](https://github.com/aws/language-servers/issues/2187)) ([b497540](https://github.com/aws/language-servers/commit/b4975409a3ed518550290b72ac310895a293be4b))
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
### Reverts
|
|
53
|
+
|
|
54
|
+
* PR 2172 dedupe openTabs supplemental contexts ([#2194](https://github.com/aws/language-servers/issues/2194)) ([94723d4](https://github.com/aws/language-servers/commit/94723d46073a1ea8211e7ae8f9dfce3fcb809604))
|
|
55
|
+
|
|
3
56
|
## [0.0.76](https://github.com/aws/language-servers/compare/lsp-codewhisperer/v0.0.75...lsp-codewhisperer/v0.0.76) (2025-08-27)
|
|
4
57
|
|
|
5
58
|
|
|
@@ -1890,6 +1890,10 @@
|
|
|
1890
1890
|
"type": "string",
|
|
1891
1891
|
"enum": ["BLOCK", "LINE"]
|
|
1892
1892
|
},
|
|
1893
|
+
"SuggestionType": {
|
|
1894
|
+
"type": "string",
|
|
1895
|
+
"enum": ["COMPLETIONS", "EDITS"]
|
|
1896
|
+
},
|
|
1893
1897
|
"Completions": {
|
|
1894
1898
|
"type": "list",
|
|
1895
1899
|
"member": {
|
|
@@ -4818,6 +4822,12 @@
|
|
|
4818
4822
|
},
|
|
4819
4823
|
"profileArn": {
|
|
4820
4824
|
"shape": "ProfileArn"
|
|
4825
|
+
},
|
|
4826
|
+
"languageModelId": {
|
|
4827
|
+
"shape": "ModelId"
|
|
4828
|
+
},
|
|
4829
|
+
"clientType": {
|
|
4830
|
+
"shape": "Origin"
|
|
4821
4831
|
}
|
|
4822
4832
|
}
|
|
4823
4833
|
},
|
|
@@ -6299,6 +6309,12 @@
|
|
|
6299
6309
|
},
|
|
6300
6310
|
"ideVersion": {
|
|
6301
6311
|
"shape": "String"
|
|
6312
|
+
},
|
|
6313
|
+
"pluginVersion": {
|
|
6314
|
+
"shape": "String"
|
|
6315
|
+
},
|
|
6316
|
+
"lspVersion": {
|
|
6317
|
+
"shape": "String"
|
|
6302
6318
|
}
|
|
6303
6319
|
}
|
|
6304
6320
|
},
|
|
@@ -6540,6 +6556,9 @@
|
|
|
6540
6556
|
},
|
|
6541
6557
|
"streakLength": {
|
|
6542
6558
|
"shape": "UserTriggerDecisionEventStreakLengthInteger"
|
|
6559
|
+
},
|
|
6560
|
+
"suggestionType": {
|
|
6561
|
+
"shape": "SuggestionType"
|
|
6543
6562
|
}
|
|
6544
6563
|
}
|
|
6545
6564
|
},
|
|
@@ -40,6 +40,7 @@ const fsWrite_1 = require("./tools/fsWrite");
|
|
|
40
40
|
const executeBash_1 = require("./tools/executeBash");
|
|
41
41
|
const toolShared_1 = require("./tools/toolShared");
|
|
42
42
|
const pathValidation_1 = require("./utils/pathValidation");
|
|
43
|
+
const fileModificationMetrics_1 = require("./utils/fileModificationMetrics");
|
|
43
44
|
const grepSearch_1 = require("./tools/grepSearch");
|
|
44
45
|
const fileSearch_1 = require("./tools/fileSearch");
|
|
45
46
|
const fsReplace_1 = require("./tools/fsReplace");
|
|
@@ -65,6 +66,7 @@ const activeUserTracker_1 = require("../../shared/activeUserTracker");
|
|
|
65
66
|
const displayFindings_1 = require("./tools/qCodeAnalysis/displayFindings");
|
|
66
67
|
const constants_3 = require("../../shared/constants");
|
|
67
68
|
const IdleWorkspaceManager_1 = require("../workspaceContext/IdleWorkspaceManager");
|
|
69
|
+
const escapeHTML = require("escape-html");
|
|
68
70
|
class AgenticChatController {
|
|
69
71
|
#features;
|
|
70
72
|
#chatSessionManagementService;
|
|
@@ -900,7 +902,7 @@ class AgenticChatController {
|
|
|
900
902
|
}
|
|
901
903
|
else {
|
|
902
904
|
this.#chatHistoryDb.addMessage(tabId, 'cwc', conversationIdentifier, {
|
|
903
|
-
body: currentMessage.userInputMessage?.content ?? '',
|
|
905
|
+
body: escapeHTML(currentMessage.userInputMessage?.content ?? ''),
|
|
904
906
|
type: 'prompt',
|
|
905
907
|
userIntent: currentMessage.userInputMessage?.userIntent,
|
|
906
908
|
origin: currentMessage.userInputMessage?.origin,
|
|
@@ -1331,6 +1333,7 @@ class AgenticChatController {
|
|
|
1331
1333
|
.filter(c => c.type === 'rule')
|
|
1332
1334
|
.map(c => ({ path: c.path }));
|
|
1333
1335
|
}
|
|
1336
|
+
initialInput['modelId'] = session.modelId;
|
|
1334
1337
|
toolUse.input = initialInput;
|
|
1335
1338
|
}
|
|
1336
1339
|
catch (e) {
|
|
@@ -1406,6 +1409,13 @@ class AgenticChatController {
|
|
|
1406
1409
|
});
|
|
1407
1410
|
}
|
|
1408
1411
|
this.#telemetryController.emitInteractWithAgenticChat('GeneratedDiff', tabId, session.pairProgrammingMode, session.getConversationType(), this.#abTestingAllocation?.experimentName, this.#abTestingAllocation?.userVariation);
|
|
1412
|
+
// Emit acceptedLineCount when write tool is used and code changes are accepted
|
|
1413
|
+
const acceptedLineCount = (0, fileModificationMetrics_1.calculateModifiedLines)(toolUse, doc?.getText());
|
|
1414
|
+
await this.#telemetryController.emitInteractWithMessageMetric(tabId, {
|
|
1415
|
+
cwsprChatMessageId: chatResult.messageId ?? toolUse.toolUseId,
|
|
1416
|
+
cwsprChatInteractionType: types_1.ChatInteractionType.AgenticCodeAccepted,
|
|
1417
|
+
codewhispererCustomizationArn: this.#customizationArn,
|
|
1418
|
+
}, acceptedLineCount);
|
|
1409
1419
|
await chatResultStream.writeResultBlock(chatResult);
|
|
1410
1420
|
break;
|
|
1411
1421
|
case codeReview_1.CodeReview.toolName:
|
|
@@ -1943,6 +1953,7 @@ class AgenticChatController {
|
|
|
1943
1953
|
session.setDeferredToolExecution(messageId, deferred.resolve, deferred.reject);
|
|
1944
1954
|
this.#log(`Prompting for compaction approval for messageId: ${messageId}`);
|
|
1945
1955
|
await deferred.promise;
|
|
1956
|
+
session.removeDeferredToolExecution(messageId);
|
|
1946
1957
|
// Note: we want to overwrite the button block because it already exists in the stream.
|
|
1947
1958
|
await resultStream.overwriteResultBlock(this.#getUpdateCompactConfirmResult(messageId), promptBlockId);
|
|
1948
1959
|
}
|
|
@@ -2480,7 +2491,7 @@ class AgenticChatController {
|
|
|
2480
2491
|
* Handles errors that occur during the request
|
|
2481
2492
|
*/
|
|
2482
2493
|
async #handleRequestError(conversationId, err, errorMessageId, tabId, metric, agenticCodingMode) {
|
|
2483
|
-
const errorMessage = (0, utils_2.getErrorMsg)(err);
|
|
2494
|
+
const errorMessage = (0, utils_2.getErrorMsg)(err) ?? constants_2.GENERIC_ERROR_MS;
|
|
2484
2495
|
const requestID = (0, utils_2.getRequestID)(err) ?? '';
|
|
2485
2496
|
metric.setDimension('cwsprChatResponseCode', (0, utils_2.getHttpStatusCode)(err) ?? 0);
|
|
2486
2497
|
metric.setDimension('languageServerVersion', this.#features.runtime.serverInfo.version);
|
|
@@ -2489,7 +2500,7 @@ class AgenticChatController {
|
|
|
2489
2500
|
metric.metric.requestIds = [requestID];
|
|
2490
2501
|
metric.metric.cwsprChatMessageId = errorMessageId;
|
|
2491
2502
|
metric.metric.cwsprChatConversationId = conversationId;
|
|
2492
|
-
await this.#telemetryController.emitAddMessageMetric(tabId, metric.metric, 'Failed');
|
|
2503
|
+
await this.#telemetryController.emitAddMessageMetric(tabId, metric.metric, 'Failed', errorMessage);
|
|
2493
2504
|
if ((0, utils_2.isUsageLimitError)(err)) {
|
|
2494
2505
|
if (this.#paidTierMode !== 'paidtier') {
|
|
2495
2506
|
this.setPaidTierMode(tabId, 'freetier-limit');
|
|
@@ -2516,7 +2527,7 @@ class AgenticChatController {
|
|
|
2516
2527
|
this.#telemetryController.emitMessageResponseError(tabId, metric.metric, requestID, customErrMessage, agenticCodingMode);
|
|
2517
2528
|
}
|
|
2518
2529
|
else {
|
|
2519
|
-
this.#telemetryController.emitMessageResponseError(tabId, metric.metric, requestID, errorMessage
|
|
2530
|
+
this.#telemetryController.emitMessageResponseError(tabId, metric.metric, requestID, errorMessage, agenticCodingMode);
|
|
2520
2531
|
}
|
|
2521
2532
|
let authFollowType = undefined;
|
|
2522
2533
|
// first check if there is an AmazonQ related auth follow up
|