@vscode/chat-lib 0.41.2026032403 → 0.42.0

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 (148) hide show
  1. package/dist/src/_internal/extension/inlineEdits/common/editRebase.d.ts +4 -5
  2. package/dist/src/_internal/extension/inlineEdits/common/editRebase.d.ts.map +1 -1
  3. package/dist/src/_internal/extension/inlineEdits/common/editRebase.js +8 -3
  4. package/dist/src/_internal/extension/inlineEdits/common/editRebase.js.map +1 -1
  5. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.js +1 -1
  6. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.js.map +1 -1
  7. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.d.ts +2 -0
  8. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.d.ts.map +1 -1
  9. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.js +153 -11
  10. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.js.map +1 -1
  11. package/dist/src/_internal/extension/xtab/common/lintErrors.d.ts +13 -1
  12. package/dist/src/_internal/extension/xtab/common/lintErrors.d.ts.map +1 -1
  13. package/dist/src/_internal/extension/xtab/common/lintErrors.js +67 -4
  14. package/dist/src/_internal/extension/xtab/common/lintErrors.js.map +1 -1
  15. package/dist/src/_internal/extension/xtab/common/promptCrafting.d.ts +3 -4
  16. package/dist/src/_internal/extension/xtab/common/promptCrafting.d.ts.map +1 -1
  17. package/dist/src/_internal/extension/xtab/common/promptCrafting.js +3 -2
  18. package/dist/src/_internal/extension/xtab/common/promptCrafting.js.map +1 -1
  19. package/dist/src/_internal/extension/xtab/node/xtabCustomDiffPatchResponseHandler.d.ts.map +1 -1
  20. package/dist/src/_internal/extension/xtab/node/xtabCustomDiffPatchResponseHandler.js +2 -3
  21. package/dist/src/_internal/extension/xtab/node/xtabCustomDiffPatchResponseHandler.js.map +1 -1
  22. package/dist/src/_internal/extension/xtab/node/xtabNextCursorPredictor.js +3 -3
  23. package/dist/src/_internal/extension/xtab/node/xtabNextCursorPredictor.js.map +1 -1
  24. package/dist/src/_internal/extension/xtab/node/xtabProvider.d.ts +2 -0
  25. package/dist/src/_internal/extension/xtab/node/xtabProvider.d.ts.map +1 -1
  26. package/dist/src/_internal/extension/xtab/node/xtabProvider.js +36 -8
  27. package/dist/src/_internal/extension/xtab/node/xtabProvider.js.map +1 -1
  28. package/dist/src/_internal/platform/authentication/common/authentication.d.ts +14 -6
  29. package/dist/src/_internal/platform/authentication/common/authentication.d.ts.map +1 -1
  30. package/dist/src/_internal/platform/authentication/common/authentication.js.map +1 -1
  31. package/dist/src/_internal/platform/authentication/common/copilotToken.d.ts +6 -0
  32. package/dist/src/_internal/platform/authentication/common/copilotToken.d.ts.map +1 -1
  33. package/dist/src/_internal/platform/authentication/common/copilotToken.js +1 -0
  34. package/dist/src/_internal/platform/authentication/common/copilotToken.js.map +1 -1
  35. package/dist/src/_internal/platform/authentication/common/staticGitHubAuthenticationService.d.ts +4 -4
  36. package/dist/src/_internal/platform/authentication/common/staticGitHubAuthenticationService.d.ts.map +1 -1
  37. package/dist/src/_internal/platform/authentication/common/staticGitHubAuthenticationService.js.map +1 -1
  38. package/dist/src/_internal/platform/authentication/node/copilotTokenManager.d.ts.map +1 -1
  39. package/dist/src/_internal/platform/authentication/node/copilotTokenManager.js +1 -7
  40. package/dist/src/_internal/platform/authentication/node/copilotTokenManager.js.map +1 -1
  41. package/dist/src/_internal/platform/chat/common/chatQuotaService.d.ts +14 -0
  42. package/dist/src/_internal/platform/chat/common/chatQuotaService.d.ts.map +1 -1
  43. package/dist/src/_internal/platform/chat/common/chatQuotaService.js.map +1 -1
  44. package/dist/src/_internal/platform/chat/common/chatQuotaServiceImpl.d.ts +2 -1
  45. package/dist/src/_internal/platform/chat/common/chatQuotaServiceImpl.d.ts.map +1 -1
  46. package/dist/src/_internal/platform/chat/common/chatQuotaServiceImpl.js +24 -0
  47. package/dist/src/_internal/platform/chat/common/chatQuotaServiceImpl.js.map +1 -1
  48. package/dist/src/_internal/platform/chat/common/commonTypes.d.ts +2 -2
  49. package/dist/src/_internal/platform/chat/common/commonTypes.d.ts.map +1 -1
  50. package/dist/src/_internal/platform/chat/common/commonTypes.js +29 -17
  51. package/dist/src/_internal/platform/chat/common/commonTypes.js.map +1 -1
  52. package/dist/src/_internal/platform/configuration/common/configurationService.d.ts +14 -8
  53. package/dist/src/_internal/platform/configuration/common/configurationService.d.ts.map +1 -1
  54. package/dist/src/_internal/platform/configuration/common/configurationService.js +13 -7
  55. package/dist/src/_internal/platform/configuration/common/configurationService.js.map +1 -1
  56. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.d.ts +4 -0
  57. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.d.ts.map +1 -1
  58. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.js +25 -3
  59. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.js.map +1 -1
  60. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.d.ts.map +1 -1
  61. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.js +0 -13
  62. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.js.map +1 -1
  63. package/dist/src/_internal/platform/endpoint/node/messagesApi.d.ts +11 -2
  64. package/dist/src/_internal/platform/endpoint/node/messagesApi.d.ts.map +1 -1
  65. package/dist/src/_internal/platform/endpoint/node/messagesApi.js +35 -26
  66. package/dist/src/_internal/platform/endpoint/node/messagesApi.js.map +1 -1
  67. package/dist/src/_internal/platform/endpoint/node/responsesApi.d.ts.map +1 -1
  68. package/dist/src/_internal/platform/endpoint/node/responsesApi.js +5 -1
  69. package/dist/src/_internal/platform/endpoint/node/responsesApi.js.map +1 -1
  70. package/dist/src/_internal/platform/git/common/gitService.d.ts +5 -0
  71. package/dist/src/_internal/platform/git/common/gitService.d.ts.map +1 -1
  72. package/dist/src/_internal/platform/git/common/gitService.js.map +1 -1
  73. package/dist/src/_internal/platform/github/common/githubAPI.d.ts +8 -0
  74. package/dist/src/_internal/platform/github/common/githubAPI.d.ts.map +1 -1
  75. package/dist/src/_internal/platform/github/common/githubAPI.js +21 -0
  76. package/dist/src/_internal/platform/github/common/githubAPI.js.map +1 -1
  77. package/dist/src/_internal/platform/github/common/githubService.d.ts +6 -5
  78. package/dist/src/_internal/platform/github/common/githubService.d.ts.map +1 -1
  79. package/dist/src/_internal/platform/github/common/githubService.js +0 -3
  80. package/dist/src/_internal/platform/github/common/githubService.js.map +1 -1
  81. package/dist/src/_internal/platform/github/common/nullOctokitServiceImpl.d.ts +0 -1
  82. package/dist/src/_internal/platform/github/common/nullOctokitServiceImpl.d.ts.map +1 -1
  83. package/dist/src/_internal/platform/github/common/nullOctokitServiceImpl.js +0 -3
  84. package/dist/src/_internal/platform/github/common/nullOctokitServiceImpl.js.map +1 -1
  85. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/nextCursorLinePrediction.d.ts +7 -0
  86. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/nextCursorLinePrediction.d.ts.map +1 -1
  87. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/nextCursorLinePrediction.js +10 -1
  88. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/nextCursorLinePrediction.js.map +1 -1
  89. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.d.ts +5 -3
  90. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.d.ts.map +1 -1
  91. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.js +10 -8
  92. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.js.map +1 -1
  93. package/dist/src/_internal/platform/inlineEdits/common/inlineEditLogContext.d.ts +8 -0
  94. package/dist/src/_internal/platform/inlineEdits/common/inlineEditLogContext.d.ts.map +1 -1
  95. package/dist/src/_internal/platform/inlineEdits/common/inlineEditLogContext.js +35 -0
  96. package/dist/src/_internal/platform/inlineEdits/common/inlineEditLogContext.js.map +1 -1
  97. package/dist/src/_internal/platform/networking/common/anthropic.d.ts +0 -7
  98. package/dist/src/_internal/platform/networking/common/anthropic.d.ts.map +1 -1
  99. package/dist/src/_internal/platform/networking/common/anthropic.js +1 -49
  100. package/dist/src/_internal/platform/networking/common/anthropic.js.map +1 -1
  101. package/dist/src/_internal/platform/networking/common/networking.d.ts +1 -0
  102. package/dist/src/_internal/platform/networking/common/networking.d.ts.map +1 -1
  103. package/dist/src/_internal/platform/networking/common/networking.js.map +1 -1
  104. package/dist/src/_internal/platform/networking/common/toolDeferralService.d.ts +11 -0
  105. package/dist/src/_internal/platform/networking/common/toolDeferralService.d.ts.map +1 -0
  106. package/dist/src/_internal/platform/networking/common/toolDeferralService.js +10 -0
  107. package/dist/src/_internal/platform/networking/common/toolDeferralService.js.map +1 -0
  108. package/dist/src/_internal/platform/networking/node/chatWebSocketManager.d.ts +43 -8
  109. package/dist/src/_internal/platform/networking/node/chatWebSocketManager.d.ts.map +1 -1
  110. package/dist/src/_internal/platform/networking/node/chatWebSocketManager.js +101 -51
  111. package/dist/src/_internal/platform/networking/node/chatWebSocketManager.js.map +1 -1
  112. package/dist/src/_internal/platform/networking/node/chatWebSocketTelemetry.d.ts +1 -1
  113. package/dist/src/_internal/platform/networking/node/chatWebSocketTelemetry.d.ts.map +1 -1
  114. package/dist/src/_internal/platform/networking/node/chatWebSocketTelemetry.js +2 -2
  115. package/dist/src/_internal/platform/otel/common/genAiAttributes.d.ts +12 -0
  116. package/dist/src/_internal/platform/otel/common/genAiAttributes.d.ts.map +1 -1
  117. package/dist/src/_internal/platform/otel/common/genAiAttributes.js +10 -0
  118. package/dist/src/_internal/platform/otel/common/genAiAttributes.js.map +1 -1
  119. package/dist/src/_internal/platform/otel/common/genAiEvents.d.ts +6 -0
  120. package/dist/src/_internal/platform/otel/common/genAiEvents.d.ts.map +1 -1
  121. package/dist/src/_internal/platform/otel/common/genAiEvents.js +69 -0
  122. package/dist/src/_internal/platform/otel/common/genAiEvents.js.map +1 -1
  123. package/dist/src/_internal/platform/otel/common/genAiMetrics.d.ts +18 -0
  124. package/dist/src/_internal/platform/otel/common/genAiMetrics.d.ts.map +1 -1
  125. package/dist/src/_internal/platform/otel/common/genAiMetrics.js +73 -0
  126. package/dist/src/_internal/platform/otel/common/genAiMetrics.js.map +1 -1
  127. package/dist/src/_internal/platform/otel/common/otelConfig.d.ts +4 -0
  128. package/dist/src/_internal/platform/otel/common/otelConfig.d.ts.map +1 -1
  129. package/dist/src/_internal/platform/otel/common/otelConfig.js +15 -3
  130. package/dist/src/_internal/platform/otel/common/otelConfig.js.map +1 -1
  131. package/dist/src/_internal/platform/requestLogger/common/capturingToken.d.ts +0 -20
  132. package/dist/src/_internal/platform/requestLogger/common/capturingToken.d.ts.map +1 -1
  133. package/dist/src/_internal/platform/requestLogger/common/capturingToken.js +0 -12
  134. package/dist/src/_internal/platform/requestLogger/common/capturingToken.js.map +1 -1
  135. package/dist/src/_internal/platform/requestLogger/node/requestLogger.d.ts +15 -3
  136. package/dist/src/_internal/platform/requestLogger/node/requestLogger.d.ts.map +1 -1
  137. package/dist/src/_internal/platform/requestLogger/node/requestLogger.js +8 -0
  138. package/dist/src/_internal/platform/requestLogger/node/requestLogger.js.map +1 -1
  139. package/dist/src/_internal/util/common/test/shims/chatTypes.d.ts +2 -1
  140. package/dist/src/_internal/util/common/test/shims/chatTypes.d.ts.map +1 -1
  141. package/dist/src/_internal/util/common/test/shims/chatTypes.js +2 -1
  142. package/dist/src/_internal/util/common/test/shims/chatTypes.js.map +1 -1
  143. package/dist/src/main.d.ts +3 -1
  144. package/dist/src/main.d.ts.map +1 -1
  145. package/dist/src/main.js +60 -3
  146. package/dist/src/main.js.map +1 -1
  147. package/dist/src/package.json +142 -92
  148. package/package.json +1 -1
@@ -3,11 +3,10 @@ import { AnnotatedStringReplacement, IEditData, StringEdit, StringReplacement }
3
3
  import { OffsetRange } from '../../../util/vs/editor/common/core/ranges/offsetRange';
4
4
  export interface NesRebaseConfigs {
5
5
  /**
6
- * When enabled, if the user's typed text can be aligned as a subsequence of the
7
- * suggestion's insert text, the rebase absorbs it instead of failing.
8
- * For example, "()" aligns with "(n: number): number" because "(" and ")"
9
- * appear in that order; "(n: )" aligns similarly. Text like "abc" that cannot
10
- * be matched as a subsequence is not absorbed.
6
+ * When enabled, if the user's typed text is an editor auto-close pair
7
+ * (e.g. `()`, `[]`, `{}`, `<>`, `""`, `''`, ` `` `) and both characters
8
+ * appear in order in the suggestion's insert text, the rebase absorbs
9
+ * the typed pair instead of failing.
11
10
  */
12
11
  readonly absorbSubsequenceTyping?: boolean;
13
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"editRebase.d.ts","sourceRoot":"","sources":["../../../../../../src/_internal/extension/inlineEdits/common/editRebase.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,yCAAyC,CAAC;AAElE,OAAO,EAAuB,0BAA0B,EAAE,SAAS,EAAE,UAAU,EAAE,iBAAiB,EAAgB,MAAM,sDAAsD,CAAC;AAC/K,OAAO,EAAE,WAAW,EAAE,MAAM,wDAAwD,CAAC;AAOrF,MAAM,WAAW,gBAAgB;IAChC;;;;;;OAMG;IACH,QAAQ,CAAC,uBAAuB,CAAC,EAAE,OAAO,CAAC;CAC3C;AAED,qBAAa,iBAAkB,YAAW,SAAS,CAAC,iBAAiB,CAAC;aAEpD,KAAK,EAAE,MAAM;gBAAb,KAAK,EAAE,MAAM;IAG9B,IAAI,CAAC,IAAI,EAAE,iBAAiB,GAAG,iBAAiB,GAAG,SAAS;CAM5D;AAED,wBAAgB,SAAS,CAAC,gBAAgB,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,GAAG,SAAS,EAAE,aAAa,EAAE,SAAS,iBAAiB,EAAE,EAAE,aAAa,EAAE,0BAA0B,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,EAAE,gBAAgB,EAAE,SAAS,WAAW,EAAE,EAAE,UAAU,EAAE,QAAQ,GAAG,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAE,gBAAqB,GAAG;IAAE,WAAW,EAAE,iBAAiB,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,mBAAmB,GAAG,cAAc,GAAG,OAAO,GAAG,mBAAmB,CAUxgB;AAmED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,UAAgC,WASjJ;AAED,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,GAAG,SAAS,EAAE,UAAU,GAAE,gBAAqB,GAAG,UAAU,GAAG,SAAS,CAE7M;AA4GD,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,2BAA2B,IAAI,CAAC"}
1
+ {"version":3,"file":"editRebase.d.ts","sourceRoot":"","sources":["../../../../../../src/_internal/extension/inlineEdits/common/editRebase.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,yCAAyC,CAAC;AAElE,OAAO,EAAuB,0BAA0B,EAAE,SAAS,EAAE,UAAU,EAAE,iBAAiB,EAAgB,MAAM,sDAAsD,CAAC;AAC/K,OAAO,EAAE,WAAW,EAAE,MAAM,wDAAwD,CAAC;AAOrF,MAAM,WAAW,gBAAgB;IAChC;;;;;OAKG;IACH,QAAQ,CAAC,uBAAuB,CAAC,EAAE,OAAO,CAAC;CAC3C;AAED,qBAAa,iBAAkB,YAAW,SAAS,CAAC,iBAAiB,CAAC;aAEpD,KAAK,EAAE,MAAM;gBAAb,KAAK,EAAE,MAAM;IAG9B,IAAI,CAAC,IAAI,EAAE,iBAAiB,GAAG,iBAAiB,GAAG,SAAS;CAM5D;AAED,wBAAgB,SAAS,CAAC,gBAAgB,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,GAAG,SAAS,EAAE,aAAa,EAAE,SAAS,iBAAiB,EAAE,EAAE,aAAa,EAAE,0BAA0B,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,EAAE,gBAAgB,EAAE,SAAS,WAAW,EAAE,EAAE,UAAU,EAAE,QAAQ,GAAG,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAE,gBAAqB,GAAG;IAAE,WAAW,EAAE,iBAAiB,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,mBAAmB,GAAG,cAAc,GAAG,OAAO,GAAG,mBAAmB,CAUxgB;AAmED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,UAAgC,WASjJ;AAED,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,GAAG,SAAS,EAAE,UAAU,GAAE,gBAAqB,GAAG,UAAU,GAAG,SAAS,CAE7M;AA4GD,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,2BAA2B,IAAI,CAAC"}
@@ -221,6 +221,11 @@ function isSubsequenceOf(typed, suggestion) {
221
221
  }
222
222
  return true;
223
223
  }
224
+ const autoClosePairs = new Set(['()', '[]', '{}', '<>', '""', `''`, '``']);
225
+ /** Returns true if `text` is an editor auto-close pair such as `()`, `[]`, `{}`, etc. */
226
+ function isAutoClosePair(text) {
227
+ return autoClosePairs.has(text);
228
+ }
224
229
  function agreementIndexOf(content, ourE, baseE, previousBaseE, ourNewTextOffset, resolution, nesConfigs) {
225
230
  const originalBaseNewText = baseE.newText;
226
231
  const minStart = previousBaseE ? previousBaseE.replaceRange.endExclusive : ourE.replaceRange.start;
@@ -234,9 +239,9 @@ function agreementIndexOf(content, ourE, baseE, previousBaseE, ourNewTextOffset,
234
239
  return j + baseE.newText.length;
235
240
  }
236
241
  // User typed text not found in suggestion (or rejected by strict limits) — absorb if it aligns as a subsequence.
237
- // Guard: only attempt for short typed text to avoid expensive matching on long pastes
238
- // and to stay consistent with the existing strict safeguards.
239
- if (nesConfigs.absorbSubsequenceTyping && originalBaseNewText.length <= exports.maxImperfectAgreementLength && isSubsequenceOf(originalBaseNewText, ourE.newText.substring(ourNewTextOffset))) {
242
+ // Guard: restrict to known editor auto-close pairs via isAutoClosePair(...) (effectively 2-character pairs)
243
+ // to avoid expensive matching on long pastes and to stay consistent with the existing strict safeguards.
244
+ if (nesConfigs.absorbSubsequenceTyping && isAutoClosePair(originalBaseNewText) && isSubsequenceOf(originalBaseNewText, ourE.newText.substring(ourNewTextOffset))) {
240
245
  return ourNewTextOffset;
241
246
  }
242
247
  return -1;
@@ -1 +1 @@
1
- {"version":3,"file":"editRebase.js","sourceRoot":"","sources":["../../../../../../src/_internal/extension/inlineEdits/common/editRebase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editRebase.js","sourceRoot":"","sources":["../../../../../../src/_internal/extension/inlineEdits/common/editRebase.ts"],"names":[],"mappings":"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"}
@@ -956,7 +956,7 @@ let NextEditProvider = NextEditProvider_1 = class NextEditProvider extends lifec
956
956
  logger.trace('starting speculative provider call');
957
957
  // Start the provider call - this runs in the background and populates the cache
958
958
  const label = `NES | spec | ${(0, path_1.basename)(doc.id.toUri().fsPath)} (v${doc.version.get()})`;
959
- const capturingToken = new capturingToken_1.CapturingToken(label, undefined, false, true);
959
+ const capturingToken = new capturingToken_1.CapturingToken(label, undefined);
960
960
  void this._requestLogger.captureInvocation(capturingToken, async () => {
961
961
  try {
962
962
  await this._runSpeculativeProviderCall(nextEditRequest, projectedDocuments, curDocId, req, logger);
@@ -1 +1 @@
1
- {"version":3,"file":"nextEditProvider.js","sourceRoot":"","sources":["../../../../../../src/_internal/extension/inlineEdits/node/nextEditProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nextEditProvider.js","sourceRoot":"","sources":["../../../../../../src/_internal/extension/inlineEdits/node/nextEditProvider.ts"],"names":[],"mappings":"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"}
@@ -107,6 +107,8 @@ export declare class ChatMLFetcherImpl extends AbstractChatMLFetcher {
107
107
  private processCanceledResponse;
108
108
  private processFailedResponse;
109
109
  private processError;
110
+ private _handleWebSocketCAPIError;
111
+ private _handleWebSocketError;
110
112
  private scrubErrorDetail;
111
113
  }
112
114
  export declare function createTelemetryData(chatEndpointInfo: IChatEndpoint, location: ChatLocation, headerRequestId: string): TelemetryData;
@@ -1 +1 @@
1
- {"version":3,"file":"chatMLFetcher.d.ts","sourceRoot":"","sources":["../../../../../../src/_internal/extension/prompt/node/chatMLFetcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatMLFetcher.d.ts","sourceRoot":"","sources":["../../../../../../src/_internal/extension/prompt/node/chatMLFetcher.ts"],"names":[],"mappings":"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"}
@@ -401,7 +401,7 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
401
401
  .split(',')
402
402
  .map(s => parseInt(s.trim(), 10));
403
403
  const retryAfterServerError = enableRetryOnError && actualStatusCode !== undefined && statusCodesToRetry.includes(actualStatusCode);
404
- const retryWithoutWebSocket = enableRetryOnError && useWebSocket;
404
+ const retryWithoutWebSocket = enableRetryOnError && useWebSocket && (response.failKind === fetch_2.ChatFailKind.ServerError || response.failKind === fetch_2.ChatFailKind.Unknown);
405
405
  if (retryAfterServerError || retryWithoutWebSocket) {
406
406
  const { retryResult } = await this._retryAfterError({
407
407
  opts,
@@ -469,7 +469,7 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
469
469
  if (err.resumeEventSeen) {
470
470
  resumeEventSeen = true;
471
471
  }
472
- const processed = this.processError(err, ourRequestId, err.gitHubRequestId, usernameToScrub);
472
+ const processed = this.processError(err, ourRequestId, err.gitHubRequestId, usernameToScrub, (0, autoChatEndpoint_1.isAutoModel)(chatEndpoint) === 1);
473
473
  const retryNetworkError = enableRetryOnError && processed.type === commonTypes_1.ChatFetchResponseType.NetworkError && this._configurationService.getExperimentBasedConfig(configurationService_1.ConfigKey.TeamInternal.RetryNetworkErrors, this._experimentationService);
474
474
  const retryWithoutWebSocket = enableRetryOnError && useWebSocket && (processed.type === commonTypes_1.ChatFetchResponseType.NetworkError || processed.type === commonTypes_1.ChatFetchResponseType.Failed);
475
475
  if (retryNetworkError || retryWithoutWebSocket) {
@@ -806,7 +806,14 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
806
806
  if (request.messages?.some((m) => Array.isArray(m.content) ? m.content.some(c => 'image_url' in c) : false) && chatEndpointInfo.supportsVision) {
807
807
  additionalHeaders['Copilot-Vision-Request'] = 'true';
808
808
  }
809
- const connection = await this._webSocketManager.getOrCreateConnection(conversationId, turnId, additionalHeaders);
809
+ const connection = this._webSocketManager.getOrCreateConnection(conversationId, turnId, additionalHeaders);
810
+ try {
811
+ await connection.connect();
812
+ }
813
+ catch (err) {
814
+ err.gitHubRequestId = connection.gitHubRequestId;
815
+ throw err;
816
+ }
810
817
  // Generate unique ID to link input and output messages
811
818
  const modelCallId = (0, uuid_1.generateUuid)();
812
819
  const telemetryData = telemetryData_1.TelemetryData.createAndMarkAsIssued({
@@ -832,6 +839,8 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
832
839
  const handle = connection.sendRequest(request, { userInitiated: !!userInitiatedRequest }, cancellationToken);
833
840
  const extendedBaseTelemetryData = baseTelemetryData.extendedBy({ modelCallId });
834
841
  const processor = this._instantiationService.createInstance(responsesApi_1.OpenAIResponsesProcessor, extendedBaseTelemetryData, modelRequestId.headerRequestId, modelRequestId.gitHubRequestId);
842
+ // Set up streaming first so event listeners are registered before we
843
+ // await the first event — AsyncIterableObject runs its executor eagerly.
835
844
  const chatCompletions = new async_1.AsyncIterableObject(async (emitter) => {
836
845
  try {
837
846
  await new Promise((resolve, reject) => {
@@ -841,6 +850,19 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
841
850
  (0, responsesApi_1.sendCompletionOutputTelemetry)(this._telemetryService, this._logService, completion, extendedBaseTelemetryData);
842
851
  emitter.emitOne(completion);
843
852
  }
853
+ if (event.type === 'response.completed') {
854
+ const snapshots = event.copilot_quota_snapshots;
855
+ if (snapshots && typeof snapshots === 'object') {
856
+ this._chatQuotaService.processQuotaSnapshots(snapshots);
857
+ }
858
+ }
859
+ });
860
+ handle.onCAPIError(event => {
861
+ // Mid-stream CAPI error — throw so the caller can handle it
862
+ const error = new Error(`${event.error.message} (${event.error.code})`);
863
+ error.gitHubRequestId = modelRequestId.gitHubRequestId;
864
+ error.capiWebSocketError = event;
865
+ reject(error);
844
866
  });
845
867
  handle.onError(error => {
846
868
  error.gitHubRequestId = modelRequestId.gitHubRequestId;
@@ -857,14 +879,12 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
857
879
  this._telemetryService.sendGHTelemetryEvent('request.error', telemetryData.properties, telemetryData.measurements);
858
880
  reject(error);
859
881
  });
860
- handle.onComplete(() => {
861
- const totalTimeMs = Date.now() - requestStart;
862
- telemetryData.measurements.totalTimeMs = totalTimeMs;
863
- this._logService.debug(`request.response: [websocket], took ${totalTimeMs} ms`);
864
- this._telemetryService.sendGHTelemetryEvent('request.response', telemetryData.properties, telemetryData.measurements);
865
- resolve();
866
- });
882
+ handle.done.then(resolve, reject);
867
883
  });
884
+ const totalTimeMs = Date.now() - requestStart;
885
+ telemetryData.measurements.totalTimeMs = totalTimeMs;
886
+ this._logService.debug(`request.response: [websocket], took ${totalTimeMs} ms`);
887
+ this._telemetryService.sendGHTelemetryEvent('request.response', telemetryData.properties, telemetryData.measurements);
868
888
  }
869
889
  finally {
870
890
  let messagesToLog = request.messages;
@@ -881,6 +901,25 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
881
901
  (0, chatStream_1.sendEngineMessagesTelemetry)(this._telemetryService, messagesToLog ?? [], telemetryData, false, this._logService);
882
902
  }
883
903
  });
904
+ // Wait for the first event to determine the response type,
905
+ // analogous to checking HTTP status code before streaming the body.
906
+ const firstEvent = await handle.firstEvent;
907
+ if (cancellationToken.isCancellationRequested) {
908
+ return { result: { type: fetch_2.FetchResponseKind.Canceled, reason: 'after first WebSocket event' } };
909
+ }
910
+ // CAPI error before any stream events — return Failed like HTTP non-200
911
+ if ((0, chatWebSocketManager_1.isCAPIWebSocketError)(firstEvent)) {
912
+ const totalTimeMs = Date.now() - requestStart;
913
+ telemetryData.measurements.totalTimeMs = totalTimeMs;
914
+ telemetryData.properties.error = `${firstEvent.error.message} (${firstEvent.error.code})`;
915
+ this._logService.debug(`request.error: [websocket capi error], took ${totalTimeMs} ms`);
916
+ this._telemetryService.sendGHTelemetryEvent('request.error', telemetryData.properties, telemetryData.measurements);
917
+ return { result: await this._handleWebSocketCAPIError(firstEvent, modelRequestId) };
918
+ }
919
+ // Clear stale quota-exceeded state if the server accepted the request.
920
+ if (this._authenticationService.copilotToken?.isFreeUser && this._authenticationService.copilotToken?.isChatQuotaExceeded) {
921
+ this._authenticationService.resetCopilotToken();
922
+ }
884
923
  return {
885
924
  result: {
886
925
  type: fetch_2.FetchResponseKind.Success,
@@ -1470,7 +1509,11 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
1470
1509
  }
1471
1510
  return { type: commonTypes_1.ChatFetchResponseType.Failed, reason, requestId, serverRequestId };
1472
1511
  }
1473
- processError(err, requestId, gitHubRequestId, usernameToScrub) {
1512
+ processError(err, requestId, gitHubRequestId, usernameToScrub, isAuto) {
1513
+ const capiWebSocketError = err?.capiWebSocketError;
1514
+ if (capiWebSocketError) {
1515
+ return this._handleWebSocketError(capiWebSocketError, requestId, gitHubRequestId, isAuto);
1516
+ }
1474
1517
  const fetcher = this._fetcherService;
1475
1518
  // If we cancelled a network request, we don't want to log an error
1476
1519
  if (fetcher.isAbortError(err)) {
@@ -1533,6 +1576,105 @@ let ChatMLFetcherImpl = class ChatMLFetcherImpl extends AbstractChatMLFetcher {
1533
1576
  };
1534
1577
  }
1535
1578
  }
1579
+ async _handleWebSocketCAPIError(event, modelRequestId) {
1580
+ const { code, message } = event.error;
1581
+ const capiError = { code, message };
1582
+ const codePrefix = code.split(':')[0];
1583
+ this._logService.error(`WebSocket CAPI error: ${message} (${code})`);
1584
+ if (codePrefix === 'rate_limited' || codePrefix === 'user_model_rate_limited' || codePrefix === 'user_global_rate_limited' || codePrefix === 'integration_rate_limited' || codePrefix === 'model_overloaded' || codePrefix === 'agent_mode_limit_exceeded') {
1585
+ return {
1586
+ type: fetch_2.FetchResponseKind.Failed,
1587
+ modelRequestId,
1588
+ failKind: fetch_2.ChatFailKind.RateLimited,
1589
+ reason: message,
1590
+ data: { capiError },
1591
+ };
1592
+ }
1593
+ if (codePrefix === 'quota_exceeded' || codePrefix === 'free_quota_exceeded' || codePrefix === 'overage_limit_reached' || codePrefix === 'billing_not_configured') {
1594
+ // Refresh the copilot token so isChatQuotaExceeded reflects the new state,
1595
+ // matching the HTTP 402 handler behavior.
1596
+ if (!this._authenticationService.copilotToken?.isChatQuotaExceeded) {
1597
+ this._authenticationService.resetCopilotToken(402);
1598
+ await this._authenticationService.getCopilotToken();
1599
+ }
1600
+ return {
1601
+ type: fetch_2.FetchResponseKind.Failed,
1602
+ modelRequestId,
1603
+ failKind: fetch_2.ChatFailKind.QuotaExceeded,
1604
+ reason: message,
1605
+ data: { capiError },
1606
+ };
1607
+ }
1608
+ if (code === 'content_filter') {
1609
+ return {
1610
+ type: fetch_2.FetchResponseKind.Failed,
1611
+ modelRequestId,
1612
+ failKind: fetch_2.ChatFailKind.ContentFilter,
1613
+ reason: message,
1614
+ };
1615
+ }
1616
+ if (code === 'not_found') {
1617
+ return {
1618
+ type: fetch_2.FetchResponseKind.Failed,
1619
+ modelRequestId,
1620
+ failKind: fetch_2.ChatFailKind.NotFound,
1621
+ reason: message,
1622
+ };
1623
+ }
1624
+ if (code === 'request_too_large') {
1625
+ return {
1626
+ type: fetch_2.FetchResponseKind.Failed,
1627
+ modelRequestId,
1628
+ failKind: fetch_2.ChatFailKind.Unknown,
1629
+ reason: `Request Failed: ${code} ${message}`,
1630
+ };
1631
+ }
1632
+ if (code === 'service_unavailable') {
1633
+ return {
1634
+ type: fetch_2.FetchResponseKind.Failed,
1635
+ modelRequestId,
1636
+ failKind: fetch_2.ChatFailKind.ServerError,
1637
+ reason: `Request Failed: ${code} ${message}`,
1638
+ };
1639
+ }
1640
+ if (code === 'bad_request') {
1641
+ return {
1642
+ type: fetch_2.FetchResponseKind.Failed,
1643
+ modelRequestId,
1644
+ failKind: fetch_2.ChatFailKind.Unknown,
1645
+ reason: `Request Failed: ${code} ${message}`,
1646
+ };
1647
+ }
1648
+ // internal_error, session_expired, or any unknown code
1649
+ return {
1650
+ type: fetch_2.FetchResponseKind.Failed,
1651
+ modelRequestId,
1652
+ failKind: fetch_2.ChatFailKind.ServerError,
1653
+ reason: `Request Failed: ${code} ${message || 'WebSocket server error'}`,
1654
+ };
1655
+ }
1656
+ _handleWebSocketError(event, requestId, serverRequestId, isAuto) {
1657
+ const { code, message } = event.error;
1658
+ const capiError = { code, message };
1659
+ const codePrefix = code.split(':')[0];
1660
+ if (codePrefix === 'rate_limited' || codePrefix === 'user_model_rate_limited' || codePrefix === 'user_global_rate_limited' || codePrefix === 'integration_rate_limited' || codePrefix === 'model_overloaded' || codePrefix === 'agent_mode_limit_exceeded') {
1661
+ return { type: commonTypes_1.ChatFetchResponseType.RateLimited, reason: message, requestId, serverRequestId, retryAfter: undefined, rateLimitKey: '', isAuto, capiError };
1662
+ }
1663
+ if (codePrefix === 'quota_exceeded' || codePrefix === 'free_quota_exceeded' || codePrefix === 'overage_limit_reached' || codePrefix === 'billing_not_configured') {
1664
+ return { type: commonTypes_1.ChatFetchResponseType.QuotaExceeded, reason: message, requestId, serverRequestId, capiError, retryAfter: undefined };
1665
+ }
1666
+ if (code === 'content_filter') {
1667
+ return { type: commonTypes_1.ChatFetchResponseType.PromptFiltered, reason: message, category: openai_1.FilterReason.Prompt, requestId, serverRequestId };
1668
+ }
1669
+ if (code === 'not_found') {
1670
+ return { type: commonTypes_1.ChatFetchResponseType.NotFound, reason: message, requestId, serverRequestId };
1671
+ }
1672
+ if (code === 'bad_request') {
1673
+ return { type: commonTypes_1.ChatFetchResponseType.BadRequest, reason: message, requestId, serverRequestId };
1674
+ }
1675
+ // internal_error, session_expired, service_unavailable, request_too_large, or any unknown code
1676
+ return { type: commonTypes_1.ChatFetchResponseType.Failed, reason: `Request Failed: ${code} ${message || 'WebSocket server error'}`, requestId, serverRequestId };
1677
+ }
1536
1678
  scrubErrorDetail(errorDetail, usernameToScrub) {
1537
1679
  if (usernameToScrub) {
1538
1680
  const regex = new RegExp((0, strings_1.escapeRegExpCharacters)(usernameToScrub), 'ig');