@vscode/chat-lib 0.0.2 → 0.0.4

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 (169) hide show
  1. package/dist/src/_internal/extension/byok/node/openAIEndpoint.d.ts +1 -2
  2. package/dist/src/_internal/extension/byok/node/openAIEndpoint.d.ts.map +1 -1
  3. package/dist/src/_internal/extension/byok/node/openAIEndpoint.js +15 -12
  4. package/dist/src/_internal/extension/byok/node/openAIEndpoint.js.map +1 -1
  5. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.d.ts +3 -1
  6. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.d.ts.map +1 -1
  7. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.js +107 -48
  8. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.js.map +1 -1
  9. package/dist/src/_internal/extension/inlineEdits/node/nextEditProviderTelemetry.d.ts +5 -4
  10. package/dist/src/_internal/extension/inlineEdits/node/nextEditProviderTelemetry.d.ts.map +1 -1
  11. package/dist/src/_internal/extension/inlineEdits/node/nextEditProviderTelemetry.js +85 -109
  12. package/dist/src/_internal/extension/inlineEdits/node/nextEditProviderTelemetry.js.map +1 -1
  13. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.d.ts +3 -13
  14. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.d.ts.map +1 -1
  15. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.js +32 -31
  16. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.js.map +1 -1
  17. package/dist/src/_internal/extension/xtab/common/promptCrafting.d.ts +34 -18
  18. package/dist/src/_internal/extension/xtab/common/promptCrafting.d.ts.map +1 -1
  19. package/dist/src/_internal/extension/xtab/common/promptCrafting.js +60 -42
  20. package/dist/src/_internal/extension/xtab/common/promptCrafting.js.map +1 -1
  21. package/dist/src/_internal/extension/xtab/node/xtabEndpoint.d.ts +1 -2
  22. package/dist/src/_internal/extension/xtab/node/xtabEndpoint.d.ts.map +1 -1
  23. package/dist/src/_internal/extension/xtab/node/xtabEndpoint.js +9 -11
  24. package/dist/src/_internal/extension/xtab/node/xtabEndpoint.js.map +1 -1
  25. package/dist/src/_internal/extension/xtab/node/xtabProvider.d.ts +2 -2
  26. package/dist/src/_internal/extension/xtab/node/xtabProvider.d.ts.map +1 -1
  27. package/dist/src/_internal/extension/xtab/node/xtabProvider.js +98 -87
  28. package/dist/src/_internal/extension/xtab/node/xtabProvider.js.map +1 -1
  29. package/dist/src/_internal/platform/authentication/common/authentication.d.ts.map +1 -1
  30. package/dist/src/_internal/platform/authentication/common/authentication.js +0 -2
  31. package/dist/src/_internal/platform/authentication/common/authentication.js.map +1 -1
  32. package/dist/src/_internal/platform/authentication/common/copilotToken.d.ts +1 -0
  33. package/dist/src/_internal/platform/authentication/common/copilotToken.d.ts.map +1 -1
  34. package/dist/src/_internal/platform/authentication/common/copilotToken.js +3 -0
  35. package/dist/src/_internal/platform/authentication/common/copilotToken.js.map +1 -1
  36. package/dist/src/_internal/platform/authentication/node/copilotTokenManager.d.ts +10 -1
  37. package/dist/src/_internal/platform/authentication/node/copilotTokenManager.d.ts.map +1 -1
  38. package/dist/src/_internal/platform/authentication/node/copilotTokenManager.js +48 -14
  39. package/dist/src/_internal/platform/authentication/node/copilotTokenManager.js.map +1 -1
  40. package/dist/src/_internal/platform/chat/common/chatMLFetcher.d.ts +2 -0
  41. package/dist/src/_internal/platform/chat/common/chatMLFetcher.d.ts.map +1 -1
  42. package/dist/src/_internal/platform/chat/common/chatMLFetcher.js +6 -0
  43. package/dist/src/_internal/platform/chat/common/chatMLFetcher.js.map +1 -1
  44. package/dist/src/_internal/platform/chat/common/commonTypes.d.ts.map +1 -1
  45. package/dist/src/_internal/platform/chat/common/commonTypes.js +2 -1
  46. package/dist/src/_internal/platform/chat/common/commonTypes.js.map +1 -1
  47. package/dist/src/_internal/platform/configuration/common/configurationService.d.ts +22 -10
  48. package/dist/src/_internal/platform/configuration/common/configurationService.d.ts.map +1 -1
  49. package/dist/src/_internal/platform/configuration/common/configurationService.js +42 -24
  50. package/dist/src/_internal/platform/configuration/common/configurationService.js.map +1 -1
  51. package/dist/src/_internal/platform/endpoint/common/capiClient.d.ts +1 -1
  52. package/dist/src/_internal/platform/endpoint/common/capiClient.d.ts.map +1 -1
  53. package/dist/src/_internal/platform/endpoint/common/capiClient.js +2 -2
  54. package/dist/src/_internal/platform/endpoint/common/capiClient.js.map +1 -1
  55. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.d.ts +8 -4
  56. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.d.ts.map +1 -1
  57. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.js +16 -9
  58. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.js.map +1 -1
  59. package/dist/src/_internal/platform/endpoint/common/endpointProvider.d.ts +29 -2
  60. package/dist/src/_internal/platform/endpoint/common/endpointProvider.d.ts.map +1 -1
  61. package/dist/src/_internal/platform/endpoint/common/endpointProvider.js +14 -0
  62. package/dist/src/_internal/platform/endpoint/common/endpointProvider.js.map +1 -1
  63. package/dist/src/_internal/platform/endpoint/node/capiClientImpl.d.ts.map +1 -1
  64. package/dist/src/_internal/platform/endpoint/node/capiClientImpl.js +1 -1
  65. package/dist/src/_internal/platform/endpoint/node/capiClientImpl.js.map +1 -1
  66. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.d.ts +7 -7
  67. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.d.ts.map +1 -1
  68. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.js +37 -27
  69. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.js.map +1 -1
  70. package/dist/src/_internal/platform/endpoint/node/domainServiceImpl.d.ts.map +1 -1
  71. package/dist/src/_internal/platform/endpoint/node/domainServiceImpl.js +2 -1
  72. package/dist/src/_internal/platform/endpoint/node/domainServiceImpl.js.map +1 -1
  73. package/dist/src/_internal/platform/endpoint/node/responsesApi.d.ts.map +1 -1
  74. package/dist/src/_internal/platform/endpoint/node/responsesApi.js +32 -26
  75. package/dist/src/_internal/platform/endpoint/node/responsesApi.js.map +1 -1
  76. package/dist/src/_internal/platform/github/common/githubService.d.ts +3 -3
  77. package/dist/src/_internal/platform/github/common/githubService.d.ts.map +1 -1
  78. package/dist/src/_internal/platform/github/common/githubService.js.map +1 -1
  79. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.d.ts +8 -6
  80. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.d.ts.map +1 -1
  81. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.js +8 -6
  82. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.js.map +1 -1
  83. package/dist/src/_internal/platform/networking/common/fetcherService.d.ts +2 -1
  84. package/dist/src/_internal/platform/networking/common/fetcherService.d.ts.map +1 -1
  85. package/dist/src/_internal/platform/networking/common/fetcherService.js.map +1 -1
  86. package/dist/src/_internal/platform/networking/common/networking.d.ts +13 -6
  87. package/dist/src/_internal/platform/networking/common/networking.d.ts.map +1 -1
  88. package/dist/src/_internal/platform/networking/common/networking.js +5 -5
  89. package/dist/src/_internal/platform/networking/common/networking.js.map +1 -1
  90. package/dist/src/_internal/platform/networking/node/chatStream.d.ts.map +1 -1
  91. package/dist/src/_internal/platform/networking/node/chatStream.js +333 -3
  92. package/dist/src/_internal/platform/networking/node/chatStream.js.map +1 -1
  93. package/dist/src/_internal/platform/networking/node/stream.d.ts.map +1 -1
  94. package/dist/src/_internal/platform/networking/node/stream.js +1 -2
  95. package/dist/src/_internal/platform/networking/node/stream.js.map +1 -1
  96. package/dist/src/_internal/platform/openai/node/fetch.d.ts +3 -10
  97. package/dist/src/_internal/platform/openai/node/fetch.d.ts.map +1 -1
  98. package/dist/src/_internal/platform/openai/node/fetch.js +27 -4
  99. package/dist/src/_internal/platform/openai/node/fetch.js.map +1 -1
  100. package/dist/src/_internal/platform/requestLogger/node/requestLogger.d.ts +2 -2
  101. package/dist/src/_internal/platform/requestLogger/node/requestLogger.d.ts.map +1 -1
  102. package/dist/src/_internal/platform/requestLogger/node/requestLogger.js +20 -2
  103. package/dist/src/_internal/platform/requestLogger/node/requestLogger.js.map +1 -1
  104. package/dist/src/_internal/platform/telemetry/common/telemetry.d.ts +1 -0
  105. package/dist/src/_internal/platform/telemetry/common/telemetry.d.ts.map +1 -1
  106. package/dist/src/_internal/platform/telemetry/common/telemetry.js.map +1 -1
  107. package/dist/src/_internal/platform/telemetry/common/telemetryData.d.ts.map +1 -1
  108. package/dist/src/_internal/platform/telemetry/common/telemetryData.js +4 -2
  109. package/dist/src/_internal/platform/telemetry/common/telemetryData.js.map +1 -1
  110. package/dist/src/_internal/platform/tokenizer/node/tokenizer.d.ts.map +1 -1
  111. package/dist/src/_internal/platform/tokenizer/node/tokenizer.js +7 -6
  112. package/dist/src/_internal/platform/tokenizer/node/tokenizer.js.map +1 -1
  113. package/dist/src/_internal/util/common/notebooks.d.ts +1 -0
  114. package/dist/src/_internal/util/common/notebooks.d.ts.map +1 -1
  115. package/dist/src/_internal/util/common/notebooks.js +4 -0
  116. package/dist/src/_internal/util/common/notebooks.js.map +1 -1
  117. package/dist/src/_internal/util/common/test/shims/enums.d.ts +6 -0
  118. package/dist/src/_internal/util/common/test/shims/enums.d.ts.map +1 -1
  119. package/dist/src/_internal/util/common/test/shims/enums.js +8 -1
  120. package/dist/src/_internal/util/common/test/shims/enums.js.map +1 -1
  121. package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.d.ts.map +1 -1
  122. package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.js +2 -1
  123. package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.js.map +1 -1
  124. package/dist/src/_internal/util/common/tracing.d.ts +11 -0
  125. package/dist/src/_internal/util/common/tracing.d.ts.map +1 -1
  126. package/dist/src/_internal/util/common/tracing.js +5 -0
  127. package/dist/src/_internal/util/common/tracing.js.map +1 -1
  128. package/dist/src/_internal/vscodeTypes.d.ts +1 -0
  129. package/dist/src/_internal/vscodeTypes.d.ts.map +1 -1
  130. package/dist/src/_internal/vscodeTypes.js +2 -1
  131. package/dist/src/_internal/vscodeTypes.js.map +1 -1
  132. package/dist/src/main.d.ts +59 -9
  133. package/dist/src/main.d.ts.map +1 -1
  134. package/dist/src/main.js +147 -31
  135. package/dist/src/main.js.map +1 -1
  136. package/dist/src/package.json +268 -96
  137. package/package.json +6 -5
  138. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/fragments.d.ts +0 -42
  139. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/fragments.d.ts.map +0 -1
  140. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/fragments.js +0 -125
  141. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/fragments.js.map +0 -1
  142. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/implementation.d.ts +0 -60
  143. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/implementation.d.ts.map +0 -1
  144. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/implementation.js +0 -416
  145. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/implementation.js.map +0 -1
  146. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/projectedText.d.ts +0 -30
  147. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/projectedText.d.ts.map +0 -1
  148. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/projectedText.js +0 -64
  149. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/projectedText.js.map +0 -1
  150. package/dist/src/_internal/extension/prompts/node/inline/visualization.d.ts +0 -26
  151. package/dist/src/_internal/extension/prompts/node/inline/visualization.d.ts.map +0 -1
  152. package/dist/src/_internal/extension/prompts/node/inline/visualization.js +0 -41
  153. package/dist/src/_internal/extension/prompts/node/inline/visualization.js.map +0 -1
  154. package/dist/src/_internal/platform/editing/common/abstractText.d.ts +0 -58
  155. package/dist/src/_internal/platform/editing/common/abstractText.d.ts.map +0 -1
  156. package/dist/src/_internal/platform/editing/common/abstractText.js +0 -129
  157. package/dist/src/_internal/platform/editing/common/abstractText.js.map +0 -1
  158. package/dist/src/_internal/platform/parser/node/nodes.d.ts +0 -93
  159. package/dist/src/_internal/platform/parser/node/nodes.d.ts.map +0 -1
  160. package/dist/src/_internal/platform/parser/node/nodes.js +0 -133
  161. package/dist/src/_internal/platform/parser/node/nodes.js.map +0 -1
  162. package/dist/src/_internal/platform/telemetry/common/nullTelemetryService.d.ts +0 -18
  163. package/dist/src/_internal/platform/telemetry/common/nullTelemetryService.d.ts.map +0 -1
  164. package/dist/src/_internal/platform/telemetry/common/nullTelemetryService.js +0 -50
  165. package/dist/src/_internal/platform/telemetry/common/nullTelemetryService.js.map +0 -1
  166. package/dist/src/_internal/util/common/arrays.d.ts +0 -18
  167. package/dist/src/_internal/util/common/arrays.d.ts.map +0 -1
  168. package/dist/src/_internal/util/common/arrays.js +0 -80
  169. package/dist/src/_internal/util/common/arrays.js.map +0 -1
@@ -48,17 +48,11 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
48
48
  Object.defineProperty(exports, "__esModule", { value: true });
49
49
  exports.ChatMLFetcherImpl = exports.AbstractChatMLFetcher = void 0;
50
50
  const prompt_tsx_1 = require("@vscode/prompt-tsx");
51
- const authentication_1 = require("../../../platform/authentication/common/authentication");
52
51
  const chatMLFetcher_1 = require("../../../platform/chat/common/chatMLFetcher");
53
- const chatQuotaService_1 = require("../../../platform/chat/common/chatQuotaService");
54
52
  const commonTypes_1 = require("../../../platform/chat/common/commonTypes");
55
53
  const conversationOptions_1 = require("../../../platform/chat/common/conversationOptions");
56
54
  const globalStringUtils_1 = require("../../../platform/chat/common/globalStringUtils");
57
- const interactionService_1 = require("../../../platform/chat/common/interactionService");
58
55
  const configurationService_1 = require("../../../platform/configuration/common/configurationService");
59
- const capiClient_1 = require("../../../platform/endpoint/common/capiClient");
60
- const domainService_1 = require("../../../platform/endpoint/common/domainService");
61
- const envService_1 = require("../../../platform/env/common/envService");
62
56
  const logService_1 = require("../../../platform/log/common/logService");
63
57
  const fetcherService_1 = require("../../../platform/networking/common/fetcherService");
64
58
  const openai_1 = require("../../../platform/networking/common/openai");
@@ -71,6 +65,7 @@ const errorsUtil = __importStar(require("../../../util/common/errors"));
71
65
  const errors_1 = require("../../../util/vs/base/common/errors");
72
66
  const event_1 = require("../../../util/vs/base/common/event");
73
67
  const uuid_1 = require("../../../util/vs/base/common/uuid");
68
+ const instantiation_1 = require("../../../util/vs/platform/instantiation/common/instantiation");
74
69
  const openAIEndpoint_1 = require("../../byok/node/openAIEndpoint");
75
70
  const constants_1 = require("../../common/constants");
76
71
  class AbstractChatMLFetcher {
@@ -101,18 +96,13 @@ class AbstractChatMLFetcher {
101
96
  }
102
97
  exports.AbstractChatMLFetcher = AbstractChatMLFetcher;
103
98
  let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
104
- constructor(_fetcherService, _telemetryService, _requestLogger, _logService, _envService, _domainService, _capiClientService, _authenticationService, _interactionService, _chatQuotaService, options) {
99
+ constructor(_fetcherService, _telemetryService, _requestLogger, _logService, _instantiationService, options) {
105
100
  super(options);
106
101
  this._fetcherService = _fetcherService;
107
102
  this._telemetryService = _telemetryService;
108
103
  this._requestLogger = _requestLogger;
109
104
  this._logService = _logService;
110
- this._envService = _envService;
111
- this._domainService = _domainService;
112
- this._capiClientService = _capiClientService;
113
- this._authenticationService = _authenticationService;
114
- this._interactionService = _interactionService;
115
- this._chatQuotaService = _chatQuotaService;
105
+ this._instantiationService = _instantiationService;
116
106
  }
117
107
  /**
118
108
  * Note: the returned array of strings may be less than `n` (e.g., in case there were errors during streaming)
@@ -170,7 +160,7 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
170
160
  };
171
161
  }
172
162
  else {
173
- response = await (0, fetch_1.fetchAndStreamChat)(this._logService, this._telemetryService, this._fetcherService, this._envService, this._chatQuotaService, this._domainService, this._capiClientService, this._authenticationService, this._interactionService, chatEndpoint, requestBody, baseTelemetry, streamRecorder.callback, requestOptions.secretKey, opts.location, ourRequestId, postOptions.n, userInitiatedRequest, token, telemetryProperties);
163
+ response = await this._instantiationService.invokeFunction(accessor => (0, fetch_1.fetchAndStreamChat)(accessor, chatEndpoint, requestBody, baseTelemetry, streamRecorder.callback, requestOptions.secretKey, opts.location, ourRequestId, postOptions.n, userInitiatedRequest, token, telemetryProperties));
174
164
  tokenCount = await chatEndpoint.acquireTokenizer().countMessagesTokens(messages);
175
165
  const extensionId = source?.extensionId ?? constants_1.EXTENSION_ID;
176
166
  this._onDidMakeChatMLRequest.fire({
@@ -184,11 +174,11 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
184
174
  pendingLoggedChatRequest?.markTimeToFirstToken(timeToFirstToken);
185
175
  switch (response.type) {
186
176
  case fetch_1.FetchResponseKind.Success: {
187
- const result = await this.processSuccessfulResponse(response, messages, ourRequestId, maxResponseTokens, tokenCount, timeToFirstToken, baseTelemetry, chatEndpoint, userInitiatedRequest);
177
+ const result = await this.processSuccessfulResponse(response, messages, requestBody, ourRequestId, maxResponseTokens, tokenCount, timeToFirstToken, streamRecorder, baseTelemetry, chatEndpoint, userInitiatedRequest);
188
178
  // Handle FilteredRetry case with augmented messages
189
179
  if (result.type === commonTypes_1.ChatFetchResponseType.FilteredRetry) {
190
- if (opts.isFilterRetry !== true) {
191
- streamRecorder.callback("", 0, { text: "", retryReason: result.category });
180
+ if (opts.enableRetryOnFilter) {
181
+ streamRecorder.callback('', 0, { text: '', retryReason: result.category });
192
182
  const filteredContent = result.value[0];
193
183
  if (filteredContent) {
194
184
  const retryMessage = (result.category === openai_1.FilterReason.Copyright) ?
@@ -212,7 +202,7 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
212
202
  requestOptions,
213
203
  userInitiatedRequest: false, // do not mark the retry as user initiated
214
204
  telemetryProperties: { ...telemetryProperties, retryAfterFilterCategory: result.category ?? 'uncategorized' },
215
- isFilterRetry: true,
205
+ enableRetryOnFilter: false,
216
206
  }, token);
217
207
  pendingLoggedChatRequest?.resolve(retryResult, streamRecorder.deltas);
218
208
  if (retryResult.type === commonTypes_1.ChatFetchResponseType.Success) {
@@ -243,6 +233,7 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
243
233
  promptTokenCount: tokenCount,
244
234
  tokenCountMax: maxResponseTokens,
245
235
  timeToFirstToken,
236
+ timeToFirstTokenEmitted: (baseTelemetry && streamRecorder.firstTokenEmittedTime) ? streamRecorder.firstTokenEmittedTime - baseTelemetry.issuedTime : -1,
246
237
  timeToCancelled: baseTelemetry ? Date.now() - baseTelemetry.issuedTime : -1,
247
238
  isVisionRequest: this.filterImageMessages(messages) ? 1 : -1,
248
239
  isBYOK: chatEndpoint instanceof openAIEndpoint_1.OpenAIEndpoint ? 1 : -1
@@ -251,7 +242,7 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
251
242
  return this.processCanceledResponse(response, ourRequestId);
252
243
  case fetch_1.FetchResponseKind.Failed: {
253
244
  const processed = this.processFailedResponse(response, ourRequestId);
254
- this._sendResponseErrorTelemetry(processed, telemetryProperties, ourRequestId, chatEndpoint, tokenCount, maxResponseTokens, timeToFirstToken, this.filterImageMessages(messages));
245
+ this._sendResponseErrorTelemetry(processed, telemetryProperties, ourRequestId, chatEndpoint, requestBody, tokenCount, maxResponseTokens, timeToFirstToken, this.filterImageMessages(messages));
255
246
  pendingLoggedChatRequest?.resolve(processed);
256
247
  return processed;
257
248
  }
@@ -277,13 +268,13 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
277
268
  });
278
269
  }
279
270
  else {
280
- this._sendResponseErrorTelemetry(processed, telemetryProperties, ourRequestId, chatEndpoint, tokenCount, maxResponseTokens, timeToError, this.filterImageMessages(messages));
271
+ this._sendResponseErrorTelemetry(processed, telemetryProperties, ourRequestId, chatEndpoint, requestBody, tokenCount, maxResponseTokens, timeToError, this.filterImageMessages(messages));
281
272
  }
282
273
  pendingLoggedChatRequest?.resolve(processed);
283
274
  return processed;
284
275
  }
285
276
  }
286
- _sendCancellationTelemetry({ source, requestId, model, apiType }, { totalTokenMax, promptTokenCount, tokenCountMax, timeToFirstToken, timeToCancelled, isVisionRequest, isBYOK }) {
277
+ _sendCancellationTelemetry({ source, requestId, model, apiType }, { totalTokenMax, promptTokenCount, tokenCountMax, timeToFirstToken, timeToFirstTokenEmitted, timeToCancelled, isVisionRequest, isBYOK }) {
287
278
  /* __GDPR__
288
279
  "response.cancelled" : {
289
280
  "owner": "digitarald",
@@ -296,6 +287,7 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
296
287
  "promptTokenCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of prompt tokens", "isMeasurement": true },
297
288
  "tokenCountMax": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Maximum generated tokens", "isMeasurement": true },
298
289
  "timeToFirstToken": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Time to first token", "isMeasurement": true },
290
+ "timeToFirstTokenEmitted": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Time to first token emitted (visible text)", "isMeasurement": true },
299
291
  "timeToCancelled": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Time to first token", "isMeasurement": true },
300
292
  "isVisionRequest": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Whether the request was for a vision model", "isMeasurement": true },
301
293
  "isBYOK": { "classification": "SystemMetaData", "purpose": "FeatureInsight", "comment": "Whether the request was for a BYOK model", "isMeasurement": true },
@@ -312,12 +304,13 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
312
304
  promptTokenCount,
313
305
  tokenCountMax,
314
306
  timeToFirstToken,
307
+ timeToFirstTokenEmitted,
315
308
  timeToCancelled,
316
309
  isVisionRequest,
317
310
  isBYOK
318
311
  });
319
312
  }
320
- _sendResponseErrorTelemetry(processed, telemetryProperties, ourRequestId, chatEndpointInfo, tokenCount, maxResponseTokens, timeToFirstToken, isVisionRequest) {
313
+ _sendResponseErrorTelemetry(processed, telemetryProperties, ourRequestId, chatEndpointInfo, requestBody, tokenCount, maxResponseTokens, timeToFirstToken, isVisionRequest) {
321
314
  /* __GDPR__
322
315
  "response.error" : {
323
316
  "owner": "digitarald",
@@ -328,10 +321,13 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
328
321
  "apiType": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "API type for the response- chat completions or responses" },
329
322
  "source": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Source for why the request was made" },
330
323
  "requestId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the request" },
324
+ "reasoningEffort": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Reasoning effort level" },
325
+ "reasoningSummary": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Reasoning summary level" },
331
326
  "totalTokenMax": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Maximum total token window", "isMeasurement": true },
332
327
  "promptTokenCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of prompt tokens", "isMeasurement": true },
333
328
  "tokenCountMax": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Maximum generated tokens", "isMeasurement": true },
334
329
  "timeToFirstToken": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Time to first token", "isMeasurement": true },
330
+ "timeToFirstTokenEmitted": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Time to first token emitted (visible text)", "isMeasurement": true },
335
331
  "isVisionRequest": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Whether the request was for a vision model", "isMeasurement": true },
336
332
  "isBYOK": { "classification": "SystemMetaData", "purpose": "FeatureInsight", "comment": "Whether the request was for a BYOK model", "isMeasurement": true },
337
333
  "retryAfterFilterCategory": { "classification": "SystemMetaData", "purpose": "FeatureInsight", "comment": "If the response was filtered and this is a retry attempt, this contains the original filtered content category." }
@@ -344,6 +340,8 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
344
340
  requestId: ourRequestId,
345
341
  model: chatEndpointInfo.model,
346
342
  apiType: chatEndpointInfo.apiType,
343
+ reasoningEffort: requestBody.reasoning?.effort,
344
+ reasoningSummary: requestBody.reasoning?.summary,
347
345
  ...(telemetryProperties?.retryAfterFilterCategory ? { retryAfterFilterCategory: telemetryProperties.retryAfterFilterCategory } : {})
348
346
  }, {
349
347
  totalTokenMax: chatEndpointInfo.modelMaxPromptTokens ?? -1,
@@ -354,7 +352,7 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
354
352
  isBYOK: chatEndpointInfo instanceof openAIEndpoint_1.OpenAIEndpoint ? 1 : -1
355
353
  });
356
354
  }
357
- async processSuccessfulResponse(response, messages, requestId, maxResponseTokens, promptTokenCount, timeToFirstToken, baseTelemetry, chatEndpointInfo, userInitiatedRequest) {
355
+ async processSuccessfulResponse(response, messages, requestBody, requestId, maxResponseTokens, promptTokenCount, timeToFirstToken, streamRecorder, baseTelemetry, chatEndpointInfo, userInitiatedRequest) {
358
356
  const completions = [];
359
357
  for await (const chatCompletion of response.chatCompletions) {
360
358
  /* __GDPR__
@@ -368,16 +366,20 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
368
366
  "model": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Model selection for the response" },
369
367
  "apiType": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "API type for the response- chat completions or responses" },
370
368
  "requestId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the current turn request" },
369
+ "reasoningEffort": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Reasoning effort level" },
370
+ "reasoningSummary": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Reasoning summary level" },
371
371
  "totalTokenMax": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Maximum total token window", "isMeasurement": true },
372
372
  "clientPromptTokenCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of prompt tokens, locally counted", "isMeasurement": true },
373
373
  "promptTokenCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of prompt tokens, server side counted", "isMeasurement": true },
374
374
  "promptCacheTokenCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of prompt tokens hitting cache as reported by server", "isMeasurement": true },
375
375
  "tokenCountMax": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Maximum generated tokens", "isMeasurement": true },
376
376
  "tokenCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of generated tokens", "isMeasurement": true },
377
- "reasoning_tokens": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of reasoning tokens", "isMeasurement": true },
377
+ "reasoningTokens": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of reasoning tokens", "isMeasurement": true },
378
378
  "acceptedPredictionTokens": { "classification": "SystemMetaData", "purpose": "FeatureInsight", "comment": "Number of tokens in the prediction that appeared in the completion", "isMeasurement": true },
379
379
  "rejectedPredictionTokens": { "classification": "SystemMetaData", "purpose": "FeatureInsight", "comment": "Number of tokens in the prediction that appeared in the completion", "isMeasurement": true },
380
+ "completionTokens": { "classification": "SystemMetaData", "purpose": "FeatureInsight", "comment": "Number of tokens in the output", "isMeasurement": true },
380
381
  "timeToFirstToken": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Time to first token", "isMeasurement": true },
382
+ "timeToFirstTokenEmitted": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Time to first token emitted (visible text)", "isMeasurement": true },
381
383
  "timeToComplete": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Time to complete the request", "isMeasurement": true },
382
384
  "isVisionRequest": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Whether the request was for a vision model", "isMeasurement": true },
383
385
  "isBYOK": { "classification": "SystemMetaData", "purpose": "FeatureInsight", "comment": "Whether the request was for a BYOK model", "isMeasurement": true },
@@ -392,6 +394,8 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
392
394
  model: chatEndpointInfo?.model,
393
395
  apiType: chatEndpointInfo?.apiType,
394
396
  requestId,
397
+ reasoningEffort: requestBody.reasoning?.effort,
398
+ reasoningSummary: requestBody.reasoning?.summary,
395
399
  ...(baseTelemetry?.properties.retryAfterFilterCategory ? { retryAfterFilterCategory: baseTelemetry.properties.retryAfterFilterCategory } : {}),
396
400
  }, {
397
401
  totalTokenMax: chatEndpointInfo?.modelMaxPromptTokens ?? -1,
@@ -403,7 +407,9 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
403
407
  reasoningTokens: chatCompletion.usage?.completion_tokens_details?.reasoning_tokens,
404
408
  acceptedPredictionTokens: chatCompletion.usage?.completion_tokens_details?.accepted_prediction_tokens,
405
409
  rejectedPredictionTokens: chatCompletion.usage?.completion_tokens_details?.rejected_prediction_tokens,
410
+ completionTokens: chatCompletion.usage?.completion_tokens,
406
411
  timeToFirstToken,
412
+ timeToFirstTokenEmitted: (baseTelemetry && streamRecorder.firstTokenEmittedTime) ? streamRecorder.firstTokenEmittedTime - baseTelemetry.issuedTime : -1,
407
413
  timeToComplete: baseTelemetry ? Date.now() - baseTelemetry.issuedTime : -1,
408
414
  isVisionRequest: this.filterImageMessages(messages) ? 1 : -1,
409
415
  isBYOK: chatEndpointInfo instanceof openAIEndpoint_1.OpenAIEndpoint ? 1 : -1
@@ -603,13 +609,8 @@ exports.ChatMLFetcherImpl = ChatMLFetcherImpl = __decorate([
603
609
  __param(1, telemetry_1.ITelemetryService),
604
610
  __param(2, requestLogger_1.IRequestLogger),
605
611
  __param(3, logService_1.ILogService),
606
- __param(4, envService_1.IEnvService),
607
- __param(5, domainService_1.IDomainService),
608
- __param(6, capiClient_1.ICAPIClientService),
609
- __param(7, authentication_1.IAuthenticationService),
610
- __param(8, interactionService_1.IInteractionService),
611
- __param(9, chatQuotaService_1.IChatQuotaService),
612
- __param(10, conversationOptions_1.IConversationOptions)
612
+ __param(4, instantiation_1.IInstantiationService),
613
+ __param(5, conversationOptions_1.IConversationOptions)
613
614
  ], ChatMLFetcherImpl);
614
615
  /**
615
616
  * Validates a chat request payload to ensure it is valid
@@ -1 +1 @@
1
- {"version":3,"file":"chatMLFetcher.js","sourceRoot":"","sources":["../../../../../../src/_internal/extension/prompt/node/chatMLFetcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatMLFetcher.js","sourceRoot":"","sources":["../../../../../../src/_internal/extension/prompt/node/chatMLFetcher.ts"],"names":[],"mappings":"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"}
@@ -1,28 +1,44 @@
1
1
  import { DocumentId } from '../../../platform/inlineEdits/common/dataTypes/documentId';
2
2
  import { LanguageContextResponse } from '../../../platform/inlineEdits/common/dataTypes/languageContext';
3
3
  import { CurrentFileOptions, PromptOptions } from '../../../platform/inlineEdits/common/dataTypes/xtabPromptOptions';
4
- import { StatelessNextEditRequest } from '../../../platform/inlineEdits/common/statelessNextEditProvider';
4
+ import { StatelessNextEditDocument } from '../../../platform/inlineEdits/common/statelessNextEditProvider';
5
+ import { IXtabHistoryEntry } from '../../../platform/inlineEdits/common/workspaceEditTracker/nesXtabHistoryTracker';
6
+ import { Result } from '../../../util/common/result';
5
7
  import { OffsetRange } from '../../../util/vs/editor/common/core/ranges/offsetRange';
6
8
  import { StringText } from '../../../util/vs/editor/common/core/text/abstractText';
7
- export declare const CURSOR_TAG = "<|cursor|>";
8
- export declare const CODE_TO_EDIT_START_TAG = "<|code_to_edit|>";
9
- export declare const CODE_TO_EDIT_END_TAG = "<|/code_to_edit|>";
10
- export declare const AREA_AROUND_START_TAG = "<|area_around_code_to_edit|>";
11
- export declare const AREA_AROUND_END_TAG = "<|/area_around_code_to_edit|>";
12
- export declare const CURRENT_FILE_CONTENT_START_TAG = "<|current_file_content|>";
13
- export declare const CURRENT_FILE_CONTENT_END_TAG = "<|/current_file_content|>";
14
- export declare const EDIT_DIFF_HISTORY_START_TAG = "<|edit_diff_history|>";
15
- export declare const EDIT_DIFF_HISTORY_END_TAG = "<|/edit_diff_history|>";
16
- export declare const RECENTLY_VIEWED_CODE_SNIPPETS_START = "<|recently_viewed_code_snippets|>";
17
- export declare const RECENTLY_VIEWED_CODE_SNIPPETS_END = "<|/recently_viewed_code_snippets|>";
18
- export declare const CODE_SNIPPET_START = "<|recently_viewed_code_snippet|>";
19
- export declare const CODE_SNIPPET_END = "<|/recently_viewed_code_snippet|>";
20
- export declare const systemPromptTemplate = "Your role as an AI assistant is to help developers complete their code tasks by assisting in editing specific sections of code marked by the <|code_to_edit|> and <|/code_to_edit|> tags, while adhering to Microsoft's content policies and avoiding the creation of content that violates copyrights.\n\nYou have access to the following information to help you make informed suggestions:\n\n- recently_viewed_code_snippets: These are code snippets that the developer has recently looked at, which might provide context or examples relevant to the current task. They are listed from oldest to newest, with line numbers in the form #| to help you understand the edit diff history. It's possible these are entirely irrelevant to the developer's change.\n- current_file_content: The content of the file the developer is currently working on, providing the broader context of the code. Line numbers in the form #| are included to help you understand the edit diff history.\n- edit_diff_history: A record of changes made to the code, helping you understand the evolution of the code and the developer's intentions. These changes are listed from oldest to latest. It's possible a lot of old edit diff history is entirely irrelevant to the developer's change.\n- area_around_code_to_edit: The context showing the code surrounding the section to be edited.\n- cursor position marked as <|cursor|>: Indicates where the developer's cursor is currently located, which can be crucial for understanding what part of the code they are focusing on.\n\nYour task is to predict and complete the changes the developer would have made next in the <|code_to_edit|> section. The developer may have stopped in the middle of typing. Your goal is to keep the developer on the path that you think they're following. Some examples include further implementing a class, method, or variable, or improving the quality of the code. Make sure the developer doesn't get distracted and ensure your suggestion is relevant. Consider what changes need to be made next, if any. If you think changes should be made, ask yourself if this is truly what needs to happen. If you are confident about it, then proceed with the changes.\n\n# Steps\n\n1. **Review Context**: Analyze the context from the resources provided, such as recently viewed snippets, edit history, surrounding code, and cursor location.\n2. **Evaluate Current Code**: Determine if the current code within the tags requires any corrections or enhancements.\n3. **Suggest Edits**: If changes are required, ensure they align with the developer's patterns and improve code quality.\n4. **Maintain Consistency**: Ensure indentation and formatting follow the existing code style.\n\n# Output Format\n\n- Provide only the revised code within the tags. If no changes are necessary, simply return the original code from within the <|code_to_edit|> and <|/code_to_edit|> tags.\n- There are line numbers in the form #| in the code displayed to you above, but these are just for your reference. Please do not include the numbers of the form #| in your response.\n- Ensure that you do not output duplicate code that exists outside of these tags. The output should be the revised code that was between these tags and should not include the <|code_to_edit|> or <|/code_to_edit|> tags.\n\n```\n// Your revised code goes here\n```\n\n# Notes\n\n- Apologize with \"Sorry, I can't assist with that.\" for requests that may breach Microsoft content guidelines.\n- Avoid undoing or reverting the developer's last change unless there are obvious typos or errors.\n- Don't include the line numbers of the form #| in your response.";
9
+ export declare namespace PromptTags {
10
+ const CURSOR = "<|cursor|>";
11
+ const EDIT_WINDOW: {
12
+ start: string;
13
+ end: string;
14
+ };
15
+ const AREA_AROUND: {
16
+ start: string;
17
+ end: string;
18
+ };
19
+ const CURRENT_FILE: {
20
+ start: string;
21
+ end: string;
22
+ };
23
+ const EDIT_HISTORY: {
24
+ start: string;
25
+ end: string;
26
+ };
27
+ const RECENT_FILES: {
28
+ start: string;
29
+ end: string;
30
+ };
31
+ const RECENT_FILE: {
32
+ start: string;
33
+ end: string;
34
+ };
35
+ }
36
+ export declare const systemPromptTemplate: string;
21
37
  export declare const unifiedModelSystemPrompt = "Your role as an AI assistant is to help developers complete their code tasks by assisting in editing specific sections of code marked by the <|code_to_edit|> and <|/code_to_edit|> tags, while adhering to Microsoft's content policies and avoiding the creation of content that violates copyrights.\n\nYou have access to the following information to help you make informed suggestions:\n\n- recently_viewed_code_snippets: These are code snippets that the developer has recently looked at, which might provide context or examples relevant to the current task. They are listed from oldest to newest. It's possible these are entirely irrelevant to the developer's change.\n- current_file_content: The content of the file the developer is currently working on, providing the broader context of the code.\n- edit_diff_history: A record of changes made to the code, helping you understand the evolution of the code and the developer's intentions. These changes are listed from oldest to latest. It's possible a lot of old edit diff history is entirely irrelevant to the developer's change.\n- area_around_code_to_edit: The context showing the code surrounding the section to be edited.\n- cursor position marked as <|cursor|>: Indicates where the developer's cursor is currently located, which can be crucial for understanding what part of the code they are focusing on.\n\nYour task is to predict and complete the changes the developer would have made next in the <|code_to_edit|> section. The developer may have stopped in the middle of typing. Your goal is to keep the developer on the path that you think they're following. Some examples include further implementing a class, method, or variable, or improving the quality of the code. Make sure the developer doesn't get distracted and ensure your suggestion is relevant. Consider what changes need to be made next, if any. If you think changes should be made, ask yourself if this is truly what needs to happen. If you are confident about it, then proceed with the changes.\n\n# Steps\n\n1. **Review Context**: Analyze the context from the resources provided, such as recently viewed snippets, edit history, surrounding code, and cursor location.\n2. **Evaluate Current Code**: Determine if the current code within the tags requires any corrections or enhancements.\n3. **Suggest Edits**: If changes are required, ensure they align with the developer's patterns and improve code quality.\n4. **Maintain Consistency**: Ensure indentation and formatting follow the existing code style.\n\n# Output Format\n- Your response should start with the word <EDIT>, <INSERT>, or <NO_CHANGE>.\n- If your are making an edit, start with <EDIT>, then provide the rewritten code window, then </EDIT>.\n- If you are inserting new code, start with <INSERT> and then provide only the new code that will be inserted at the cursor position, then </INSERT>.\n- If no changes are necessary, reply only with <NO_CHANGE>.\n- Ensure that you do not output duplicate code that exists outside of these tags. The output should be the revised code that was between these tags and should not include the <|code_to_edit|> or <|/code_to_edit|> tags.\n\n# Notes\n\n- Apologize with \"Sorry, I can't assist with that.\" for requests that may breach Microsoft content guidelines.\n- Avoid undoing or reverting the developer's last change unless there are obvious typos or errors.";
22
38
  export declare const nes41Miniv3SystemPrompt = "Your role as an AI assistant is to help developers complete their code tasks by assisting in editing specific sections of code marked by the <|code_to_edit|> and <|/code_to_edit|> tags, while adhering to Microsoft's content policies and avoiding the creation of content that violates copyrights.\n\nYou have access to the following information to help you make informed suggestions:\n\n- recently_viewed_code_snippets: These are code snippets that the developer has recently looked at, which might provide context or examples relevant to the current task. They are listed from oldest to newest. It's possible these are entirely irrelevant to the developer's change.\n- current_file_content: The content of the file the developer is currently working on, providing the broader context of the code.\n- edit_diff_history: A record of changes made to the code, helping you understand the evolution of the code and the developer's intentions. These changes are listed from oldest to latest. It's possible a lot of old edit diff history is entirely irrelevant to the developer's change.\n- area_around_code_to_edit: The context showing the code surrounding the section to be edited.\n- cursor position marked as <|cursor|>: Indicates where the developer's cursor is currently located, which can be crucial for understanding what part of the code they are focusing on.\n\nYour task is to predict and complete the changes the developer would have made next in the <|code_to_edit|> section. The developer may have stopped in the middle of typing. Your goal is to keep the developer on the path that you think they're following. Some examples include further implementing a class, method, or variable, or improving the quality of the code. Make sure the developer doesn't get distracted and ensure your suggestion is relevant. Consider what changes need to be made next, if any. If you think changes should be made, ask yourself if this is truly what needs to happen. If you are confident about it, then proceed with the changes.\n\n# Steps\n\n1. **Review Context**: Analyze the context from the resources provided, such as recently viewed snippets, edit history, surrounding code, and cursor location.\n2. **Evaluate Current Code**: Determine if the current code within the tags requires any corrections or enhancements.\n3. **Suggest Edits**: If changes are required, ensure they align with the developer's patterns and improve code quality.\n4. **Maintain Consistency**: Ensure indentation and formatting follow the existing code style.\n\n# Output Format\n- Your response should start with the word <EDIT> or <NO_CHANGE>.\n- If your are making an edit, start with <EDIT>, then provide the rewritten code window, then </EDIT>.\n- If no changes are necessary, reply only with <NO_CHANGE>.\n- Ensure that you do not output duplicate code that exists outside of these tags. The output should be the revised code that was between these tags and should not include the <|code_to_edit|> or <|/code_to_edit|> tags.\n\n# Notes\n\n- Apologize with \"Sorry, I can't assist with that.\" for requests that may breach Microsoft content guidelines.\n- Avoid undoing or reverting the developer's last change unless there are obvious typos or errors.";
23
39
  export declare const simplifiedPrompt = "Predict next code edit based on the context given by the user.";
24
40
  export declare const xtab275SystemPrompt = "Predict the next code edit based on user context, following Microsoft content policies and avoiding copyright violations. If a request may breach guidelines, reply: \"Sorry, I can't assist with that.\"";
25
- export declare function getUserPrompt(request: StatelessNextEditRequest, currentFileContent: string, areaAroundCodeToEdit: string, langCtx: LanguageContextResponse | undefined, computeTokens: (s: string) => number, opts: PromptOptions): string;
41
+ export declare function getUserPrompt(activeDoc: StatelessNextEditDocument, xtabHistory: readonly IXtabHistoryEntry[], currentFileContent: string, areaAroundCodeToEdit: string, langCtx: LanguageContextResponse | undefined, computeTokens: (s: string) => number, opts: PromptOptions): string;
26
42
  export declare function toUniquePath(documentId: DocumentId, workspaceRootPath: string | undefined): string;
27
43
  /**
28
44
  * Build code snippets using paged clipping.
@@ -44,8 +60,8 @@ export declare const N_LINES_AS_CONTEXT = 15;
44
60
  /**
45
61
  * @remark exported for testing
46
62
  */
47
- export declare function createTaggedCurrentFileContentUsingPagedClipping(currentDocLines: string[], areaAroundCodeToEdit: string, areaAroundEditWindowLinesRange: OffsetRange, computeTokens: (s: string) => number, pageSize: number, opts: CurrentFileOptions): {
63
+ export declare function createTaggedCurrentFileContentUsingPagedClipping(currentDocLines: string[], areaAroundCodeToEdit: string, areaAroundEditWindowLinesRange: OffsetRange, computeTokens: (s: string) => number, pageSize: number, opts: CurrentFileOptions): Result<{
48
64
  taggedCurrentFileContent: string;
49
65
  nLines: number;
50
- };
66
+ }, 'outOfBudget'>;
51
67
  //# sourceMappingURL=promptCrafting.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"promptCrafting.d.ts","sourceRoot":"","sources":["../../../../../../src/_internal/extension/xtab/common/promptCrafting.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,2DAA2D,CAAC;AAEvF,OAAO,EAAE,uBAAuB,EAAE,MAAM,gEAAgE,CAAC;AACzG,OAAO,EAAE,kBAAkB,EAAyC,aAAa,EAAE,MAAM,kEAAkE,CAAC;AAC5J,OAAO,EAAE,wBAAwB,EAAE,MAAM,gEAAgE,CAAC;AAM1G,OAAO,EAAE,WAAW,EAAE,MAAM,wDAAwD,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,uDAAuD,CAAC;AAEnF,eAAO,MAAM,UAAU,eAAe,CAAC;AACvC,eAAO,MAAM,sBAAsB,qBAAqB,CAAC;AACzD,eAAO,MAAM,oBAAoB,sBAAsB,CAAC;AAExD,eAAO,MAAM,qBAAqB,iCAAiC,CAAC;AACpE,eAAO,MAAM,mBAAmB,kCAAkC,CAAC;AACnE,eAAO,MAAM,8BAA8B,6BAA6B,CAAC;AACzE,eAAO,MAAM,4BAA4B,8BAA8B,CAAC;AACxE,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AACnE,eAAO,MAAM,yBAAyB,2BAA2B,CAAC;AAClE,eAAO,MAAM,mCAAmC,sCAAsC,CAAC;AACvF,eAAO,MAAM,iCAAiC,uCAAuC,CAAC;AACtF,eAAO,MAAM,kBAAkB,qCAAqC,CAAC;AACrE,eAAO,MAAM,gBAAgB,sCAAsC,CAAC;AAEpE,eAAO,MAAM,oBAAoB,kjHAiCiC,CAAC;AAEnE,eAAO,MAAM,wBAAwB,k0GA6B8D,CAAC;AAEpG,eAAO,MAAM,uBAAuB,gqGA4B+D,CAAC;AAEpG,eAAO,MAAM,gBAAgB,mEAAmE,CAAC;AAEjG,eAAO,MAAM,mBAAmB,8MAA4M,CAAC;AAE7O,wBAAgB,aAAa,CAAC,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,OAAO,EAAE,uBAAuB,GAAG,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,MAAM,CAsC1O;AAuJD,wBAAgB,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAYlG;AA4FD;;;;GAIG;AACH,wBAAgB,mCAAmC,CAClD,0BAA0B,EAAE;IAAE,EAAE,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,UAAU,CAAC;IAAC,aAAa,CAAC,EAAE,SAAS,WAAW,EAAE,CAAA;CAAE,EAAE,EAC7G,aAAa,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EACpC,IAAI,EAAE,aAAa,GACjB;IAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,EAAE,GAAG,CAAC,UAAU,CAAC,CAAA;CAAE,CAmEvD;AAeD,wBAAgB,YAAY,CAC3B,KAAK,EAAE,MAAM,EAAE,EACf,aAAa,EAAE,OAAO,EACtB,SAAS,EAAE,MAAM,GACf,CAAC,MAAM,EAAE,MAAM,CAAC,CA6BlB;AAED,eAAO,MAAM,aAAa,IAAI,CAAC;AAC/B,eAAO,MAAM,aAAa,IAAI,CAAC;AAE/B,eAAO,MAAM,kBAAkB,KAAK,CAAC;AAmFrC;;GAEG;AACH,wBAAgB,gDAAgD,CAC/D,eAAe,EAAE,MAAM,EAAE,EACzB,oBAAoB,EAAE,MAAM,EAC5B,8BAA8B,EAAE,WAAW,EAC3C,aAAa,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EACpC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,kBAAkB,GACtB;IAAE,wBAAwB,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAwBtD"}
1
+ {"version":3,"file":"promptCrafting.d.ts","sourceRoot":"","sources":["../../../../../../src/_internal/extension/xtab/common/promptCrafting.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,2DAA2D,CAAC;AAEvF,OAAO,EAAE,uBAAuB,EAAE,MAAM,gEAAgE,CAAC;AACzG,OAAO,EAAE,kBAAkB,EAAyC,aAAa,EAAE,MAAM,kEAAkE,CAAC;AAC5J,OAAO,EAAE,yBAAyB,EAAE,MAAM,gEAAgE,CAAC;AAC3G,OAAO,EAAyB,iBAAiB,EAAE,MAAM,iFAAiF,CAAC;AAE3I,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAIrD,OAAO,EAAE,WAAW,EAAE,MAAM,wDAAwD,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,uDAAuD,CAAC;AAEnF,yBAAiB,UAAU,CAAC;IACpB,MAAM,MAAM,eAAe,CAAC;IAE5B,MAAM,WAAW;;;KAGvB,CAAC;IAEK,MAAM,WAAW;;;KAGvB,CAAC;IAEK,MAAM,YAAY;;;KAGxB,CAAC;IAEK,MAAM,YAAY;;;KAGxB,CAAC;IAEK,MAAM,YAAY;;;KAGxB,CAAC;IAEK,MAAM,WAAW;;;KAGvB,CAAC;CACF;AAED,eAAO,MAAM,oBAAoB,QAiCiC,CAAC;AAEnE,eAAO,MAAM,wBAAwB,k0GA6B8D,CAAC;AAEpG,eAAO,MAAM,uBAAuB,gqGA4B+D,CAAC;AAEpG,eAAO,MAAM,gBAAgB,mEAAmE,CAAC;AAEjG,eAAO,MAAM,mBAAmB,8MAA4M,CAAC;AAE7O,wBAAgB,aAAa,CAAC,SAAS,EAAE,yBAAyB,EAAE,WAAW,EAAE,SAAS,iBAAiB,EAAE,EAAE,kBAAkB,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,OAAO,EAAE,uBAAuB,GAAG,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,MAAM,CAoCxR;AA0JD,wBAAgB,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAYlG;AA2FD;;;;GAIG;AACH,wBAAgB,mCAAmC,CAClD,0BAA0B,EAAE;IAAE,EAAE,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,UAAU,CAAC;IAAC,aAAa,CAAC,EAAE,SAAS,WAAW,EAAE,CAAA;CAAE,EAAE,EAC7G,aAAa,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EACpC,IAAI,EAAE,aAAa,GACjB;IAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,EAAE,GAAG,CAAC,UAAU,CAAC,CAAA;CAAE,CAmEvD;AAeD,wBAAgB,YAAY,CAC3B,KAAK,EAAE,MAAM,EAAE,EACf,aAAa,EAAE,OAAO,EACtB,SAAS,EAAE,MAAM,GACf,CAAC,MAAM,EAAE,MAAM,CAAC,CA6BlB;AAED,eAAO,MAAM,aAAa,IAAI,CAAC;AAC/B,eAAO,MAAM,aAAa,IAAI,CAAC;AAE/B,eAAO,MAAM,kBAAkB,KAAK,CAAC;AAmFrC;;GAEG;AACH,wBAAgB,gDAAgD,CAC/D,eAAe,EAAE,MAAM,EAAE,EACzB,oBAAoB,EAAE,MAAM,EAC5B,8BAA8B,EAAE,WAAW,EAC3C,aAAa,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EACpC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,kBAAkB,GACtB,MAAM,CAAC;IAAE,wBAAwB,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAAE,aAAa,CAAC,CA2B7E"}