@vscode/chat-lib 0.3.1-10 → 0.3.1-12

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 (91) hide show
  1. package/dist/src/_internal/extension/inlineEdits/common/userInteractionMonitor.d.ts +52 -8
  2. package/dist/src/_internal/extension/inlineEdits/common/userInteractionMonitor.d.ts.map +1 -1
  3. package/dist/src/_internal/extension/inlineEdits/common/userInteractionMonitor.js +208 -41
  4. package/dist/src/_internal/extension/inlineEdits/common/userInteractionMonitor.js.map +1 -1
  5. package/dist/src/_internal/extension/inlineEdits/node/nextEditCache.d.ts +3 -4
  6. package/dist/src/_internal/extension/inlineEdits/node/nextEditCache.d.ts.map +1 -1
  7. package/dist/src/_internal/extension/inlineEdits/node/nextEditCache.js +13 -13
  8. package/dist/src/_internal/extension/inlineEdits/node/nextEditCache.js.map +1 -1
  9. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.d.ts +23 -2
  10. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.d.ts.map +1 -1
  11. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.js +384 -106
  12. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.js.map +1 -1
  13. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.d.ts.map +1 -1
  14. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.js +2 -1
  15. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.js.map +1 -1
  16. package/dist/src/_internal/extension/xtab/common/promptCrafting.d.ts.map +1 -1
  17. package/dist/src/_internal/extension/xtab/common/promptCrafting.js +2 -0
  18. package/dist/src/_internal/extension/xtab/common/promptCrafting.js.map +1 -1
  19. package/dist/src/_internal/extension/xtab/node/xtabProvider.d.ts +33 -2
  20. package/dist/src/_internal/extension/xtab/node/xtabProvider.d.ts.map +1 -1
  21. package/dist/src/_internal/extension/xtab/node/xtabProvider.js +209 -31
  22. package/dist/src/_internal/extension/xtab/node/xtabProvider.js.map +1 -1
  23. package/dist/src/_internal/extension/xtab/node/xtabUtils.d.ts +5 -2
  24. package/dist/src/_internal/extension/xtab/node/xtabUtils.d.ts.map +1 -1
  25. package/dist/src/_internal/extension/xtab/node/xtabUtils.js +3 -2
  26. package/dist/src/_internal/extension/xtab/node/xtabUtils.js.map +1 -1
  27. package/dist/src/_internal/platform/chat/common/commonTypes.d.ts +1 -2
  28. package/dist/src/_internal/platform/chat/common/commonTypes.d.ts.map +1 -1
  29. package/dist/src/_internal/platform/chat/common/commonTypes.js +8 -8
  30. package/dist/src/_internal/platform/chat/common/commonTypes.js.map +1 -1
  31. package/dist/src/_internal/platform/configuration/common/configurationService.d.ts +4 -0
  32. package/dist/src/_internal/platform/configuration/common/configurationService.d.ts.map +1 -1
  33. package/dist/src/_internal/platform/configuration/common/configurationService.js +4 -0
  34. package/dist/src/_internal/platform/configuration/common/configurationService.js.map +1 -1
  35. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.js +1 -1
  36. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.d.ts.map +1 -1
  37. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.js +4 -1
  38. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.js.map +1 -1
  39. package/dist/src/_internal/platform/endpoint/node/messagesApi.d.ts.map +1 -1
  40. package/dist/src/_internal/platform/endpoint/node/messagesApi.js +10 -5
  41. package/dist/src/_internal/platform/endpoint/node/messagesApi.js.map +1 -1
  42. package/dist/src/_internal/platform/env/common/envService.d.ts +6 -0
  43. package/dist/src/_internal/platform/env/common/envService.d.ts.map +1 -1
  44. package/dist/src/_internal/platform/env/common/envService.js.map +1 -1
  45. package/dist/src/_internal/platform/env/common/nullEnvService.d.ts +3 -0
  46. package/dist/src/_internal/platform/env/common/nullEnvService.d.ts.map +1 -1
  47. package/dist/src/_internal/platform/env/common/nullEnvService.js +4 -0
  48. package/dist/src/_internal/platform/env/common/nullEnvService.js.map +1 -1
  49. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.d.ts +83 -2
  50. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.d.ts.map +1 -1
  51. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.js +203 -1
  52. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.js.map +1 -1
  53. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.d.ts +15 -1
  54. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.d.ts.map +1 -1
  55. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.js +18 -1
  56. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.js.map +1 -1
  57. package/dist/src/_internal/platform/networking/common/anthropic.d.ts +10 -0
  58. package/dist/src/_internal/platform/networking/common/anthropic.d.ts.map +1 -1
  59. package/dist/src/_internal/platform/networking/common/anthropic.js +18 -0
  60. package/dist/src/_internal/platform/networking/common/anthropic.js.map +1 -1
  61. package/dist/src/_internal/platform/networking/common/networking.d.ts +4 -0
  62. package/dist/src/_internal/platform/networking/common/networking.d.ts.map +1 -1
  63. package/dist/src/_internal/platform/networking/common/networking.js.map +1 -1
  64. package/dist/src/_internal/platform/requestLogger/node/requestLogger.d.ts +4 -0
  65. package/dist/src/_internal/platform/requestLogger/node/requestLogger.d.ts.map +1 -1
  66. package/dist/src/_internal/platform/requestLogger/node/requestLogger.js +4 -1
  67. package/dist/src/_internal/platform/requestLogger/node/requestLogger.js.map +1 -1
  68. package/dist/src/_internal/platform/telemetry/common/telemetry.d.ts +2 -0
  69. package/dist/src/_internal/platform/telemetry/common/telemetry.d.ts.map +1 -1
  70. package/dist/src/_internal/platform/telemetry/common/telemetry.js +1 -0
  71. package/dist/src/_internal/platform/telemetry/common/telemetry.js.map +1 -1
  72. package/dist/src/_internal/platform/telemetry/common/telemetryData.d.ts.map +1 -1
  73. package/dist/src/_internal/platform/telemetry/common/telemetryData.js +3 -0
  74. package/dist/src/_internal/platform/telemetry/common/telemetryData.js.map +1 -1
  75. package/dist/src/_internal/util/common/test/shims/themes.d.ts +13 -0
  76. package/dist/src/_internal/util/common/test/shims/themes.d.ts.map +1 -0
  77. package/dist/src/_internal/util/common/test/shims/themes.js +27 -0
  78. package/dist/src/_internal/util/common/test/shims/themes.js.map +1 -0
  79. package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.d.ts.map +1 -1
  80. package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.js +3 -1
  81. package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.js.map +1 -1
  82. package/dist/src/_internal/vscodeTypes.d.ts +1 -0
  83. package/dist/src/_internal/vscodeTypes.d.ts.map +1 -1
  84. package/dist/src/_internal/vscodeTypes.js +3 -1
  85. package/dist/src/_internal/vscodeTypes.js.map +1 -1
  86. package/dist/src/main.d.ts +2 -1
  87. package/dist/src/main.d.ts.map +1 -1
  88. package/dist/src/main.js +1 -0
  89. package/dist/src/main.js.map +1 -1
  90. package/dist/src/package.json +14 -4
  91. package/package.json +2 -2
@@ -1,15 +1,62 @@
1
1
  import { IConfigurationService } from '../../../platform/configuration/common/configurationService';
2
- import { AggressivenessLevel } from '../../../platform/inlineEdits/common/dataTypes/xtabPromptOptions';
2
+ import { AggressivenessLevel, UserHappinessScoreConfiguration } from '../../../platform/inlineEdits/common/dataTypes/xtabPromptOptions';
3
+ import { ILogService } from '../../../platform/log/common/logService';
3
4
  import { IExperimentationService } from '../../../platform/telemetry/common/nullExperimentationService';
5
+ import { ITelemetryService } from '../../../platform/telemetry/common/telemetry';
4
6
  import { DelaySession } from './delay';
7
+ export declare enum ActionKind {
8
+ Accepted = "accepted",
9
+ Rejected = "rejected",
10
+ Ignored = "ignored"
11
+ }
12
+ /**
13
+ * Represents a user interaction wrt an inline edit suggestion.
14
+ */
15
+ export interface NESUserAction {
16
+ time: number;
17
+ kind: ActionKind;
18
+ }
19
+ export declare const MAX_INTERACTIONS_CONSIDERED = 10;
20
+ export declare const MAX_INTERACTIONS_STORED = 30;
21
+ /**
22
+ * Get window of actions with ignored action limiting via window expansion.
23
+ *
24
+ * When ignored limit is reached, skip excess ignored actions but expand window
25
+ * further back to still get MAX_INTERACTIONS_CONSIDERED items.
26
+ */
27
+ export declare function getWindowWithIgnoredLimit(actions: NESUserAction[], config: UserHappinessScoreConfiguration): NESUserAction[];
28
+ /**
29
+ * Calculate user happiness score from actions.
30
+ * Value between 0 and 1 indicating user happiness.
31
+ * 1 means very happy, 0 means very unhappy.
32
+ *
33
+ * Uses position-weighted scoring with ignored action limiting:
34
+ * - More recent actions have higher weight
35
+ * - Ignored actions can be limited (consecutive or total) to prevent score dilution
36
+ * - Score is adjusted towards neutral (0.5) based on data confidence
37
+ */
38
+ export declare function getUserHappinessScore(actions: NESUserAction[], config: UserHappinessScoreConfiguration): number;
5
39
  export declare class UserInteractionMonitor {
6
40
  private readonly _configurationService;
7
41
  private readonly _experimentationService;
8
- private static readonly MAX_INTERACTIONS_CONSIDERED;
9
- private _recentUserActions;
10
- constructor(_configurationService: IConfigurationService, _experimentationService: IExperimentationService);
42
+ private readonly _logService;
43
+ private readonly _telemetryService;
44
+ /**
45
+ * Used for aggressiveness level calculation.
46
+ * Includes all action types (accepted, rejected, ignored).
47
+ */
48
+ protected _recentUserActionsForAggressiveness: NESUserAction[];
49
+ /**
50
+ * Used for timing/debounce calculation.
51
+ * Only includes accepted and rejected actions (ignored actions don't affect timing).
52
+ */
53
+ protected _recentUserActionsForTiming: (NESUserAction & {
54
+ kind: ActionKind.Accepted | ActionKind.Rejected;
55
+ })[];
56
+ constructor(_configurationService: IConfigurationService, _experimentationService: IExperimentationService, _logService: ILogService, _telemetryService: ITelemetryService);
11
57
  handleAcceptance(): void;
12
58
  handleRejection(): void;
59
+ handleIgnored(): void;
13
60
  private _recordUserAction;
14
61
  createDelaySession(requestTime: number | undefined): DelaySession;
15
62
  private _getExpectedTotalTime;
@@ -21,10 +68,7 @@ export declare class UserInteractionMonitor {
21
68
  aggressivenessLevel: AggressivenessLevel;
22
69
  userHappinessScore: number | undefined;
23
70
  };
24
- /**
25
- * Value between 0 and 1 indicating user happiness.
26
- * 1 means very happy, 0 means very unhappy.
27
- */
71
+ protected _getUserHappinessScoreConfiguration(): UserHappinessScoreConfiguration;
28
72
  private _getUserHappinessScore;
29
73
  }
30
74
  //# sourceMappingURL=userInteractionMonitor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"userInteractionMonitor.d.ts","sourceRoot":"","sources":["../../../../../../src/_internal/extension/inlineEdits/common/userInteractionMonitor.ts"],"names":[],"mappings":"AAKA,OAAO,EAAa,qBAAqB,EAAE,MAAM,6DAA6D,CAAC;AAC/G,OAAO,EAAE,mBAAmB,EAAE,MAAM,kEAAkE,CAAC;AACvG,OAAO,EAAE,uBAAuB,EAAE,MAAM,+DAA+D,CAAC;AACxG,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,qBAAa,sBAAsB;IAOV,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACpC,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IANlE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,2BAA2B,CAAM;IAEzD,OAAO,CAAC,kBAAkB,CAAyD;gBAG1C,qBAAqB,EAAE,qBAAqB,EAC1C,uBAAuB,EAAE,uBAAuB;IAKpF,gBAAgB,IAAI,IAAI;IAIxB,eAAe,IAAI,IAAI;IAI9B,OAAO,CAAC,iBAAiB;IAQlB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY;IASxE,OAAO,CAAC,qBAAqB;IAgC7B;;;OAGG;IACI,sBAAsB,IAAI;QAAE,mBAAmB,EAAE,mBAAmB,CAAC;QAAC,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE;IAmBrH;;;OAGG;IACH,OAAO,CAAC,sBAAsB;CA4B9B"}
1
+ {"version":3,"file":"userInteractionMonitor.d.ts","sourceRoot":"","sources":["../../../../../../src/_internal/extension/inlineEdits/common/userInteractionMonitor.ts"],"names":[],"mappings":"AAKA,OAAO,EAAa,qBAAqB,EAAE,MAAM,6DAA6D,CAAC;AAC/G,OAAO,EAAE,mBAAmB,EAA0F,+BAA+B,EAAE,MAAM,kEAAkE,CAAC;AAChO,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,+DAA+D,CAAC;AACxG,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AAEjF,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,oBAAY,UAAU;IACrB,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,OAAO,YAAY;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,CAAC;CACjB;AAED,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAC9C,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACxC,OAAO,EAAE,aAAa,EAAE,EACxB,MAAM,EAAE,+BAA+B,GACrC,aAAa,EAAE,CAyCjB;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACpC,OAAO,EAAE,aAAa,EAAE,EACxB,MAAM,EAAE,+BAA+B,GACrC,MAAM,CA0DR;AAED,qBAAa,sBAAsB;IAeV,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACpC,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IACpD,OAAO,CAAC,QAAQ,CAAC,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAhBtD;;;OAGG;IACH,SAAS,CAAC,mCAAmC,EAAE,aAAa,EAAE,CAAM;IAEpE;;;OAGG;IACH,SAAS,CAAC,2BAA2B,EAAE,CAAC,aAAa,GAAG;QAAE,IAAI,EAAE,UAAU,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAA;KAAE,CAAC,EAAE,CAAM;gBAG3E,qBAAqB,EAAE,qBAAqB,EAC1C,uBAAuB,EAAE,uBAAuB,EAC5D,WAAW,EAAE,WAAW,EAClB,iBAAiB,EAAE,iBAAiB;IAKlE,gBAAgB,IAAI,IAAI;IAIxB,eAAe,IAAI,IAAI;IAIvB,aAAa,IAAI,IAAI;IAI5B,OAAO,CAAC,iBAAiB;IAgBlB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY;IASxE,OAAO,CAAC,qBAAqB;IAiC7B;;;OAGG;IACI,sBAAsB,IAAI;QAAE,mBAAmB,EAAE,mBAAmB,CAAC;QAAC,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE;IAoBrH,SAAS,CAAC,mCAAmC,IAAI,+BAA+B;IA2BhF,OAAO,CAAC,sBAAsB;CAG9B"}
@@ -3,41 +3,202 @@
3
3
  * Copyright (c) Microsoft Corporation. All rights reserved.
4
4
  * Licensed under the MIT License. See License.txt in the project root for license information.
5
5
  *--------------------------------------------------------------------------------------------*/
6
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
18
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
19
+ }) : function(o, v) {
20
+ o["default"] = v;
21
+ });
6
22
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
7
23
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
8
24
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
9
25
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
10
26
  return c > 3 && r && Object.defineProperty(target, key, r), r;
11
27
  };
28
+ var __importStar = (this && this.__importStar) || (function () {
29
+ var ownKeys = function(o) {
30
+ ownKeys = Object.getOwnPropertyNames || function (o) {
31
+ var ar = [];
32
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
33
+ return ar;
34
+ };
35
+ return ownKeys(o);
36
+ };
37
+ return function (mod) {
38
+ if (mod && mod.__esModule) return mod;
39
+ var result = {};
40
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
41
+ __setModuleDefault(result, mod);
42
+ return result;
43
+ };
44
+ })();
12
45
  var __param = (this && this.__param) || function (paramIndex, decorator) {
13
46
  return function (target, key) { decorator(target, key, paramIndex); }
14
47
  };
15
- var UserInteractionMonitor_1;
16
48
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.UserInteractionMonitor = void 0;
49
+ exports.UserInteractionMonitor = exports.MAX_INTERACTIONS_STORED = exports.MAX_INTERACTIONS_CONSIDERED = exports.ActionKind = void 0;
50
+ exports.getWindowWithIgnoredLimit = getWindowWithIgnoredLimit;
51
+ exports.getUserHappinessScore = getUserHappinessScore;
18
52
  const configurationService_1 = require("../../../platform/configuration/common/configurationService");
19
53
  const xtabPromptOptions_1 = require("../../../platform/inlineEdits/common/dataTypes/xtabPromptOptions");
54
+ const logService_1 = require("../../../platform/log/common/logService");
20
55
  const nullExperimentationService_1 = require("../../../platform/telemetry/common/nullExperimentationService");
56
+ const telemetry_1 = require("../../../platform/telemetry/common/telemetry");
57
+ const errors = __importStar(require("../../../util/common/errors"));
21
58
  const delay_1 = require("./delay");
59
+ var ActionKind;
60
+ (function (ActionKind) {
61
+ ActionKind["Accepted"] = "accepted";
62
+ ActionKind["Rejected"] = "rejected";
63
+ ActionKind["Ignored"] = "ignored";
64
+ })(ActionKind || (exports.ActionKind = ActionKind = {}));
65
+ exports.MAX_INTERACTIONS_CONSIDERED = 10;
66
+ exports.MAX_INTERACTIONS_STORED = 30;
67
+ /**
68
+ * Get window of actions with ignored action limiting via window expansion.
69
+ *
70
+ * When ignored limit is reached, skip excess ignored actions but expand window
71
+ * further back to still get MAX_INTERACTIONS_CONSIDERED items.
72
+ */
73
+ function getWindowWithIgnoredLimit(actions, config) {
74
+ const { limitConsecutiveIgnored, limitTotalIgnored, ignoredLimit } = config;
75
+ if (!limitConsecutiveIgnored && !limitTotalIgnored) {
76
+ // No limiting - just take last MAX_INTERACTIONS_CONSIDERED
77
+ return actions.slice(-exports.MAX_INTERACTIONS_CONSIDERED);
78
+ }
79
+ const result = [];
80
+ let consecutiveIgnored = 0;
81
+ let totalIgnored = 0;
82
+ // Walk backwards through history
83
+ for (let i = actions.length - 1; i >= 0 && result.length < exports.MAX_INTERACTIONS_CONSIDERED; i--) {
84
+ const action = actions[i];
85
+ if (action.kind === ActionKind.Ignored) {
86
+ let skip = false;
87
+ if (limitConsecutiveIgnored && consecutiveIgnored >= ignoredLimit) {
88
+ skip = true;
89
+ }
90
+ if (limitTotalIgnored && totalIgnored >= ignoredLimit) {
91
+ skip = true;
92
+ }
93
+ if (skip) {
94
+ continue;
95
+ }
96
+ consecutiveIgnored++;
97
+ totalIgnored++;
98
+ }
99
+ else {
100
+ consecutiveIgnored = 0; // Reset consecutive count on accept/reject
101
+ }
102
+ result.push(action);
103
+ }
104
+ // Reverse to get chronological order
105
+ result.reverse();
106
+ return result;
107
+ }
108
+ /**
109
+ * Calculate user happiness score from actions.
110
+ * Value between 0 and 1 indicating user happiness.
111
+ * 1 means very happy, 0 means very unhappy.
112
+ *
113
+ * Uses position-weighted scoring with ignored action limiting:
114
+ * - More recent actions have higher weight
115
+ * - Ignored actions can be limited (consecutive or total) to prevent score dilution
116
+ * - Score is adjusted towards neutral (0.5) based on data confidence
117
+ */
118
+ function getUserHappinessScore(actions, config) {
119
+ if (actions.length === 0) {
120
+ return 0.5; // neutral score when no data
121
+ }
122
+ // Get window of actions with ignored limiting
123
+ const window = getWindowWithIgnoredLimit(actions, config);
124
+ if (window.length === 0) {
125
+ return 0.5; // neutral score when no data after filtering
126
+ }
127
+ // Calculate weighted score
128
+ let weightedScore = 0; // Sum of weighted normalized scores
129
+ let totalWeight = 0; // Sum of weights applied
130
+ let scoredActionCount = 0; // Count of actions that contributed to score
131
+ for (let i = 0; i < window.length; i++) {
132
+ const action = window[i];
133
+ // Skip ignored actions if not included in score calculation
134
+ if (action.kind === ActionKind.Ignored && !config.includeIgnored) {
135
+ continue;
136
+ }
137
+ scoredActionCount++;
138
+ // Calculate weight based on position (more recent = higher weight)
139
+ // Position 0 (oldest) has lowest weight, last position has highest weight
140
+ const weight = i + 1;
141
+ // Get score based on action kind from configuration
142
+ let score;
143
+ switch (action.kind) {
144
+ case ActionKind.Accepted:
145
+ score = config.acceptedScore;
146
+ break;
147
+ case ActionKind.Rejected:
148
+ score = config.rejectedScore;
149
+ break;
150
+ case ActionKind.Ignored:
151
+ score = config.ignoredScore;
152
+ break;
153
+ }
154
+ // Normalize score to 0-1 range based on accept/reject weights
155
+ const normalized = (score - config.rejectedScore) / (config.acceptedScore - config.rejectedScore);
156
+ weightedScore += normalized * weight;
157
+ totalWeight += weight;
158
+ }
159
+ const rawScore = totalWeight > 0 ? weightedScore / totalWeight : 0.5;
160
+ // Adjust score towards neutral (0.5) when we have fewer data points
161
+ // This prevents extreme scores with limited data
162
+ const dataConfidence = scoredActionCount / exports.MAX_INTERACTIONS_CONSIDERED;
163
+ return 0.5 + (rawScore - 0.5) * dataConfidence;
164
+ }
22
165
  let UserInteractionMonitor = class UserInteractionMonitor {
23
- static { UserInteractionMonitor_1 = this; }
24
- static { this.MAX_INTERACTIONS_CONSIDERED = 10; }
25
- constructor(_configurationService, _experimentationService) {
166
+ constructor(_configurationService, _experimentationService, _logService, _telemetryService) {
26
167
  this._configurationService = _configurationService;
27
168
  this._experimentationService = _experimentationService;
28
- this._recentUserActions = [];
169
+ this._logService = _logService;
170
+ this._telemetryService = _telemetryService;
171
+ /**
172
+ * Used for aggressiveness level calculation.
173
+ * Includes all action types (accepted, rejected, ignored).
174
+ */
175
+ this._recentUserActionsForAggressiveness = [];
176
+ /**
177
+ * Used for timing/debounce calculation.
178
+ * Only includes accepted and rejected actions (ignored actions don't affect timing).
179
+ */
180
+ this._recentUserActionsForTiming = [];
29
181
  }
30
182
  // Capture user interactions
31
183
  handleAcceptance() {
32
- this._recordUserAction('accepted');
184
+ this._recordUserAction(ActionKind.Accepted);
33
185
  }
34
186
  handleRejection() {
35
- this._recordUserAction('rejected');
187
+ this._recordUserAction(ActionKind.Rejected);
188
+ }
189
+ handleIgnored() {
190
+ this._recordUserAction(ActionKind.Ignored);
36
191
  }
37
192
  _recordUserAction(kind) {
38
- this._recentUserActions.push({ time: Date.now(), kind });
39
- // keep at most 10 user actions
40
- this._recentUserActions = this._recentUserActions.slice(-UserInteractionMonitor_1.MAX_INTERACTIONS_CONSIDERED);
193
+ const now = Date.now();
194
+ // Always record for aggressiveness calculation
195
+ this._recentUserActionsForAggressiveness.push({ time: now, kind });
196
+ this._recentUserActionsForAggressiveness = this._recentUserActionsForAggressiveness.slice(-exports.MAX_INTERACTIONS_STORED);
197
+ // Only record accepts/rejects for timing calculation
198
+ if (kind !== ActionKind.Ignored) {
199
+ this._recentUserActionsForTiming.push({ time: now, kind });
200
+ this._recentUserActionsForTiming = this._recentUserActionsForTiming.slice(-exports.MAX_INTERACTIONS_CONSIDERED);
201
+ }
41
202
  }
42
203
  // Creates a DelaySession based on recent user interactions
43
204
  createDelaySession(requestTime) {
@@ -55,14 +216,15 @@ let UserInteractionMonitor = class UserInteractionMonitor {
55
216
  const now = Date.now();
56
217
  let multiplier = 1;
57
218
  // Calculate impact of each action with time decay
58
- for (const action of this._recentUserActions) {
219
+ // Uses timing-specific array which only contains accepts/rejects
220
+ for (const action of this._recentUserActionsForTiming) {
59
221
  const timeSinceAction = now - action.time;
60
222
  if (timeSinceAction > DEBOUNCE_DECAY_TIME_MS) {
61
223
  continue;
62
224
  }
63
225
  // Exponential decay: impact decreases as time passes
64
226
  const decayFactor = Math.exp(-timeSinceAction / DEBOUNCE_DECAY_TIME_MS);
65
- const actionWeight = action.kind === 'rejected' ? REJECTION_WEIGHT : ACCEPTANCE_WEIGHT;
227
+ const actionWeight = action.kind === ActionKind.Rejected ? REJECTION_WEIGHT : ACCEPTANCE_WEIGHT;
66
228
  multiplier *= 1 + ((actionWeight - 1) * decayFactor);
67
229
  }
68
230
  let debounceTime = baseDebounceTime * multiplier;
@@ -81,11 +243,12 @@ let UserInteractionMonitor = class UserInteractionMonitor {
81
243
  return { aggressivenessLevel: configuredAggressivenessLevel, userHappinessScore: undefined };
82
244
  }
83
245
  let level;
84
- const userHappinessScore = this._getUserHappinessScore();
85
- if (userHappinessScore >= 0.7) {
246
+ const config = this._getUserHappinessScoreConfiguration();
247
+ const userHappinessScore = this._getUserHappinessScore(config);
248
+ if (userHappinessScore >= config.highThreshold) {
86
249
  level = xtabPromptOptions_1.AggressivenessLevel.High;
87
250
  }
88
- else if (userHappinessScore >= 0.4) {
251
+ else if (userHappinessScore >= config.mediumThreshold) {
89
252
  level = xtabPromptOptions_1.AggressivenessLevel.Medium;
90
253
  }
91
254
  else {
@@ -93,36 +256,40 @@ let UserInteractionMonitor = class UserInteractionMonitor {
93
256
  }
94
257
  return { aggressivenessLevel: level, userHappinessScore };
95
258
  }
96
- /**
97
- * Value between 0 and 1 indicating user happiness.
98
- * 1 means very happy, 0 means very unhappy.
99
- */
100
- _getUserHappinessScore() {
101
- if (this._recentUserActions.length === 0) {
102
- return 0.5; // neutral score when no data
259
+ _getUserHappinessScoreConfiguration() {
260
+ const configKey = configurationService_1.ConfigKey.TeamInternal.InlineEditsUserHappinessScoreConfigurationString;
261
+ const configString = this._configurationService.getExperimentBasedConfig(configKey, this._experimentationService);
262
+ if (configString === undefined) {
263
+ return xtabPromptOptions_1.DEFAULT_USER_HAPPINESS_SCORE_CONFIGURATION;
103
264
  }
104
- let weightedScore = 0;
105
- let totalWeight = 0;
106
- for (let i = 0; i < this._recentUserActions.length; i++) {
107
- const action = this._recentUserActions[i];
108
- // Calculate weight based on position (more recent = higher weight)
109
- // Position 0 (oldest) has lowest weight, last position has highest weight
110
- const weight = i + 1;
111
- // Accepted = 1, Rejected = 0
112
- const score = action.kind === 'accepted' ? 1 : 0;
113
- weightedScore += score * weight;
114
- totalWeight += weight;
265
+ try {
266
+ return (0, xtabPromptOptions_1.parseUserHappinessScoreConfigurationString)(configString);
115
267
  }
116
- const rawScore = totalWeight > 0 ? weightedScore / totalWeight : 0.5;
117
- // Adjust score towards neutral (0.5) when we have fewer data points
118
- // This prevents extreme scores with limited data
119
- const dataConfidence = this._recentUserActions.length / UserInteractionMonitor_1.MAX_INTERACTIONS_CONSIDERED;
120
- return 0.5 + (rawScore - 0.5) * dataConfidence;
268
+ catch (e) {
269
+ this._logService.error(e, 'Failed to parse user happiness score configuration, using default config');
270
+ // Log to telemetry when we fail to parse an experimental config, but still offer the default config to avoid disruption.
271
+ /* __GDPR__
272
+ "incorrectNesAdaptiveAggressivenessConfig" : {
273
+ "owner": "bstee615",
274
+ "comment": "Capture if model configuration string is invalid JSON.",
275
+ "configName": { "classification": "SystemMetaData", "purpose": "FeatureInsight", "comment": "Name of the configuration that failed to parse." },
276
+ "errorMessage": { "classification": "SystemMetaData", "purpose": "FeatureInsight", "comment": "Error message from JSON.parse." },
277
+ "configValue": { "classification": "SystemMetaData", "purpose": "FeatureInsight", "comment": "The invalid JSON string." }
278
+ }
279
+ */
280
+ this._telemetryService.sendMSFTTelemetryEvent('incorrectNesAdaptiveAggressivenessConfig', { configName: configKey.id, errorMessage: errors.toString(errors.fromUnknown(e)), configValue: configString });
281
+ return xtabPromptOptions_1.DEFAULT_USER_HAPPINESS_SCORE_CONFIGURATION;
282
+ }
283
+ }
284
+ _getUserHappinessScore(config) {
285
+ return getUserHappinessScore(this._recentUserActionsForAggressiveness, config);
121
286
  }
122
287
  };
123
288
  exports.UserInteractionMonitor = UserInteractionMonitor;
124
- exports.UserInteractionMonitor = UserInteractionMonitor = UserInteractionMonitor_1 = __decorate([
289
+ exports.UserInteractionMonitor = UserInteractionMonitor = __decorate([
125
290
  __param(0, configurationService_1.IConfigurationService),
126
- __param(1, nullExperimentationService_1.IExperimentationService)
291
+ __param(1, nullExperimentationService_1.IExperimentationService),
292
+ __param(2, logService_1.ILogService),
293
+ __param(3, telemetry_1.ITelemetryService)
127
294
  ], UserInteractionMonitor);
128
295
  //# sourceMappingURL=userInteractionMonitor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"userInteractionMonitor.js","sourceRoot":"","sources":["../../../../../../src/_internal/extension/inlineEdits/common/userInteractionMonitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"userInteractionMonitor.js","sourceRoot":"","sources":["../../../../../../src/_internal/extension/inlineEdits/common/userInteractionMonitor.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,6 @@ import { AnnotatedStringReplacement, StringEdit, StringReplacement } from '../..
8
8
  import { OffsetRange } from '../../../util/vs/editor/common/core/ranges/offsetRange';
9
9
  import { StringText } from '../../../util/vs/editor/common/core/text/abstractText';
10
10
  import { EditDataWithIndex } from '../common/editRebase';
11
- import { INesConfigs } from './nesConfigs';
12
11
  import { NextEditFetchRequest } from './nextEditProvider';
13
12
  export interface CachedEditOpts {
14
13
  isFromCursorJump: boolean;
@@ -43,10 +42,10 @@ export declare class NextEditCache extends Disposable {
43
42
  constructor(workspace: ObservableWorkspace, _logService: ILogService, configService: IConfigurationService, expService: IExperimentationService);
44
43
  setKthNextEdit(docId: DocumentId, documentContents: StringText, editWindow: OffsetRange | undefined, nextEdit: StringReplacement, subsequentN: number, nextEdits: StringReplacement[] | undefined, userEditSince: StringEdit | undefined, source: NextEditFetchRequest, opts: CachedEditOpts): CachedEdit | undefined;
45
44
  setNoNextEdit(docId: DocumentId, documentContents: StringText, editWindow: OffsetRange | undefined, source: NextEditFetchRequest): void;
46
- lookupNextEdit(docId: DocumentId, currentDocumentContents: StringText, currentSelection: readonly OffsetRange[], nesConfigs: INesConfigs): CachedOrRebasedEdit | undefined;
47
- tryRebaseCacheEntry(cachedEdit: CachedEdit, currentDocumentContents: StringText, currentSelection: readonly OffsetRange[], nesConfigs: INesConfigs): CachedOrRebasedEdit | undefined;
45
+ lookupNextEdit(docId: DocumentId, currentDocumentContents: StringText, currentSelection: readonly OffsetRange[]): CachedOrRebasedEdit | undefined;
46
+ tryRebaseCacheEntry(cachedEdit: CachedEdit, currentDocumentContents: StringText, currentSelection: readonly OffsetRange[]): CachedOrRebasedEdit | undefined;
48
47
  rejectedNextEdit(requestId: string): void;
49
- isRejectedNextEdit(docId: DocumentId, currentDocumentContents: StringText, edit: StringReplacement, nesConfigs: INesConfigs): boolean;
48
+ isRejectedNextEdit(docId: DocumentId, currentDocumentContents: StringText, edit: StringReplacement): boolean;
50
49
  evictedCachedEdit(cachedEdit: CachedEdit): void;
51
50
  clear(): void;
52
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"nextEditCache.d.ts","sourceRoot":"","sources":["../../../../../../src/_internal/extension/inlineEdits/node/nextEditCache.ts"],"names":[],"mappings":"AAKA,OAAO,EAAa,qBAAqB,EAAE,MAAM,6DAA6D,CAAC;AAC/G,OAAO,EAAE,UAAU,EAAE,MAAM,2DAA2D,CAAC;AACvF,OAAO,EAAuB,mBAAmB,EAAE,MAAM,0DAA0D,CAAC;AAEpH,OAAO,EAAW,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,+DAA+D,CAAC;AAExG,OAAO,EAAE,UAAU,EAAgB,MAAM,wCAAwC,CAAC;AAElF,OAAO,EAAE,0BAA0B,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,sDAAsD,CAAC;AACjI,OAAO,EAAE,WAAW,EAAE,MAAM,wDAAwD,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,uDAAuD,CAAC;AACnF,OAAO,EAAwB,iBAAiB,EAAa,MAAM,sBAAsB,CAAC;AAC1F,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,MAAM,WAAW,cAAc;IAC9B,gBAAgB,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,UAAU;IAC1B,KAAK,EAAE,UAAU,CAAC;IAClB,kBAAkB,EAAE,UAAU,CAAC;IAC/B,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,IAAI,EAAE,iBAAiB,GAAG,SAAS,CAAC;IACpC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,KAAK,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC5B,aAAa,EAAE,0BAA0B,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;IACjE,aAAa,CAAC,EAAE,UAAU,CAAC;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,mBAAmB,GAAG,UAAU,GAAG;IAAE,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9G,qBAAa,aAAc,SAAQ,UAAU;aAK3B,SAAS,EAAE,mBAAmB;IAC9C,OAAO,CAAC,QAAQ,CAAC,WAAW;IAL7B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA4C;IAC5E,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgC;gBAG5C,SAAS,EAAE,mBAAmB,EAC7B,WAAW,EAAE,WAAW,EACzC,aAAa,EAAE,qBAAqB,EACpC,UAAU,EAAE,uBAAuB;IAiC7B,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,GAAG,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,GAAG,SAAS,EAAE,aAAa,EAAE,UAAU,GAAG,SAAS,EAAE,MAAM,EAAE,oBAAoB,EAAE,IAAI,EAAE,cAAc,GAAG,UAAU,GAAG,SAAS;IAQrT,aAAa,CAAC,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,GAAG,SAAS,EAAE,MAAM,EAAE,oBAAoB;IAQhI,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,uBAAuB,EAAE,UAAU,EAAE,gBAAgB,EAAE,SAAS,WAAW,EAAE,EAAE,UAAU,EAAE,WAAW,GAAG,mBAAmB,GAAG,SAAS;IAQ1K,mBAAmB,CAAC,UAAU,EAAE,UAAU,EAAE,uBAAuB,EAAE,UAAU,EAAE,gBAAgB,EAAE,SAAS,WAAW,EAAE,EAAE,UAAU,EAAE,WAAW,GAAG,mBAAmB,GAAG,SAAS;IAQpL,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAMzC,kBAAkB,CAAC,KAAK,EAAE,UAAU,EAAE,uBAAuB,EAAE,UAAU,EAAE,IAAI,EAAE,iBAAiB,EAAE,UAAU,EAAE,WAAW;IAQ3H,iBAAiB,CAAC,UAAU,EAAE,UAAU;IAOxC,KAAK;CAIZ"}
1
+ {"version":3,"file":"nextEditCache.d.ts","sourceRoot":"","sources":["../../../../../../src/_internal/extension/inlineEdits/node/nextEditCache.ts"],"names":[],"mappings":"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"}
@@ -58,31 +58,31 @@ class NextEditCache extends lifecycle_1.Disposable {
58
58
  }
59
59
  docCache.setNoNextEdit(documentContents, editWindow, source);
60
60
  }
61
- lookupNextEdit(docId, currentDocumentContents, currentSelection, nesConfigs) {
61
+ lookupNextEdit(docId, currentDocumentContents, currentSelection) {
62
62
  const docCache = this._documentCaches.get(docId);
63
63
  if (!docCache) {
64
64
  return undefined;
65
65
  }
66
- return docCache.lookupNextEdit(currentDocumentContents, currentSelection, nesConfigs);
66
+ return docCache.lookupNextEdit(currentDocumentContents, currentSelection);
67
67
  }
68
- tryRebaseCacheEntry(cachedEdit, currentDocumentContents, currentSelection, nesConfigs) {
68
+ tryRebaseCacheEntry(cachedEdit, currentDocumentContents, currentSelection) {
69
69
  const docCache = this._documentCaches.get(cachedEdit.docId);
70
70
  if (!docCache) {
71
71
  return undefined;
72
72
  }
73
- return docCache.tryRebaseCacheEntry(cachedEdit, currentDocumentContents, currentSelection, nesConfigs);
73
+ return docCache.tryRebaseCacheEntry(cachedEdit, currentDocumentContents, currentSelection);
74
74
  }
75
75
  rejectedNextEdit(requestId) {
76
76
  this._sharedCache.getValues()
77
77
  .filter(v => v.source.headerRequestId === requestId)
78
78
  .forEach(v => v.rejected = true);
79
79
  }
80
- isRejectedNextEdit(docId, currentDocumentContents, edit, nesConfigs) {
80
+ isRejectedNextEdit(docId, currentDocumentContents, edit) {
81
81
  const docCache = this._documentCaches.get(docId);
82
82
  if (!docCache) {
83
83
  return false;
84
84
  }
85
- return docCache.isRejectedNextEdit(currentDocumentContents, edit, nesConfigs);
85
+ return docCache.isRejectedNextEdit(currentDocumentContents, edit);
86
86
  }
87
87
  evictedCachedEdit(cachedEdit) {
88
88
  const docCache = this._documentCaches.get(cachedEdit.docId);
@@ -159,7 +159,7 @@ class DocumentEditCache {
159
159
  this._nextEditCache.evictedCachedEdit(evicted[1]);
160
160
  }
161
161
  }
162
- lookupNextEdit(currentDocumentContents, currentSelection, nesConfigs) {
162
+ lookupNextEdit(currentDocumentContents, currentSelection) {
163
163
  // TODO@chrmarti: Update entries i > 1 with user edits and edit window and start tracking.
164
164
  const key = this._getKey(currentDocumentContents.value);
165
165
  const cachedEdit = this._sharedCache.get(key);
@@ -172,18 +172,18 @@ class DocumentEditCache {
172
172
  return cachedEdit;
173
173
  }
174
174
  for (const cachedEdit of this._trackedCachedEdits) {
175
- const rebased = this.tryRebaseCacheEntry(cachedEdit, currentDocumentContents, currentSelection, nesConfigs);
175
+ const rebased = this.tryRebaseCacheEntry(cachedEdit, currentDocumentContents, currentSelection);
176
176
  if (rebased) {
177
177
  return rebased;
178
178
  }
179
179
  }
180
180
  return undefined;
181
181
  }
182
- tryRebaseCacheEntry(cachedEdit, currentDocumentContents, currentSelection, nesConfigs) {
182
+ tryRebaseCacheEntry(cachedEdit, currentDocumentContents, currentSelection) {
183
183
  const logger = this._logger.createSubLogger('tryRebaseCacheEntry');
184
184
  if (cachedEdit.userEditSince && !cachedEdit.rebaseFailed) {
185
185
  const originalEdits = cachedEdit.edits || (cachedEdit.edit ? [cachedEdit.edit] : []);
186
- const res = (0, editRebase_1.tryRebase)(cachedEdit.documentBeforeEdit.value, cachedEdit.editWindow, originalEdits, cachedEdit.detailedEdits, cachedEdit.userEditSince, currentDocumentContents.value, currentSelection, 'strict', logger, nesConfigs);
186
+ const res = (0, editRebase_1.tryRebase)(cachedEdit.documentBeforeEdit.value, cachedEdit.editWindow, originalEdits, cachedEdit.detailedEdits, cachedEdit.userEditSince, currentDocumentContents.value, currentSelection, 'strict', logger);
187
187
  if (res === 'rebaseFailed') {
188
188
  cachedEdit.rebaseFailed = true;
189
189
  }
@@ -194,7 +194,7 @@ class DocumentEditCache {
194
194
  // miss
195
195
  }
196
196
  else if (res.length) {
197
- if (!cachedEdit.rejected && this.isRejectedNextEdit(currentDocumentContents, res[0].rebasedEdit, nesConfigs)) {
197
+ if (!cachedEdit.rejected && this.isRejectedNextEdit(currentDocumentContents, res[0].rebasedEdit)) {
198
198
  cachedEdit.rejected = true;
199
199
  }
200
200
  return { ...cachedEdit, ...res[0] };
@@ -205,7 +205,7 @@ class DocumentEditCache {
205
205
  }
206
206
  return undefined;
207
207
  }
208
- isRejectedNextEdit(currentDocumentContents, edit, nesConfigs) {
208
+ isRejectedNextEdit(currentDocumentContents, edit) {
209
209
  const logger = this._logger.createSubLogger('isRejectedNextEdit');
210
210
  const resultEdit = edit.removeCommonSuffixAndPrefix(currentDocumentContents.value);
211
211
  for (const rejectedEdit of this._trackedCachedEdits.filter(edit => edit.rejected)) {
@@ -216,7 +216,7 @@ class DocumentEditCache {
216
216
  if (!edits.length) {
217
217
  continue; // cached 'no edits'
218
218
  }
219
- const rejectedEdits = (0, editRebase_1.tryRebase)(rejectedEdit.documentBeforeEdit.value, undefined, edits, rejectedEdit.detailedEdits, rejectedEdit.userEditSince, currentDocumentContents.value, [], 'lenient', logger, nesConfigs);
219
+ const rejectedEdits = (0, editRebase_1.tryRebase)(rejectedEdit.documentBeforeEdit.value, undefined, edits, rejectedEdit.detailedEdits, rejectedEdit.userEditSince, currentDocumentContents.value, [], 'lenient', logger);
220
220
  if (typeof rejectedEdits === 'string') {
221
221
  continue;
222
222
  }
@@ -1 +1 @@
1
- {"version":3,"file":"nextEditCache.js","sourceRoot":"","sources":["../../../../../../src/_internal/extension/inlineEdits/node/nextEditCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nextEditCache.js","sourceRoot":"","sources":["../../../../../../src/_internal/extension/inlineEdits/node/nextEditCache.ts"],"names":[],"mappings":"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"}