@vscode/chat-lib 0.3.1-11 → 0.3.1-13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/_internal/extension/common/constants.d.ts +0 -1
- package/dist/src/_internal/extension/common/constants.d.ts.map +1 -1
- package/dist/src/_internal/extension/common/constants.js +1 -1
- package/dist/src/_internal/extension/common/constants.js.map +1 -1
- package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/openai/fetch.d.ts +1 -1
- package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/openai/fetch.d.ts.map +1 -1
- package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/openai/fetch.js +120 -53
- package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/openai/fetch.js.map +1 -1
- package/dist/src/_internal/extension/inlineEdits/common/userInteractionMonitor.d.ts +52 -8
- package/dist/src/_internal/extension/inlineEdits/common/userInteractionMonitor.d.ts.map +1 -1
- package/dist/src/_internal/extension/inlineEdits/common/userInteractionMonitor.js +208 -41
- package/dist/src/_internal/extension/inlineEdits/common/userInteractionMonitor.js.map +1 -1
- package/dist/src/_internal/extension/inlineEdits/node/nextEditCache.d.ts +11 -0
- package/dist/src/_internal/extension/inlineEdits/node/nextEditCache.d.ts.map +1 -1
- package/dist/src/_internal/extension/inlineEdits/node/nextEditCache.js +35 -19
- package/dist/src/_internal/extension/inlineEdits/node/nextEditCache.js.map +1 -1
- package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.d.ts +4 -2
- package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.d.ts.map +1 -1
- package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.js +39 -12
- package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.js.map +1 -1
- package/dist/src/_internal/extension/power/common/powerService.d.ts +22 -0
- package/dist/src/_internal/extension/power/common/powerService.d.ts.map +1 -0
- package/dist/src/_internal/extension/power/common/powerService.js +20 -0
- package/dist/src/_internal/extension/power/common/powerService.js.map +1 -0
- package/dist/src/_internal/extension/prompt/node/chatMLFetcher.d.ts +4 -1
- package/dist/src/_internal/extension/prompt/node/chatMLFetcher.d.ts.map +1 -1
- package/dist/src/_internal/extension/prompt/node/chatMLFetcher.js +17 -3
- package/dist/src/_internal/extension/prompt/node/chatMLFetcher.js.map +1 -1
- package/dist/src/_internal/extension/xtab/common/promptCrafting.d.ts.map +1 -1
- package/dist/src/_internal/extension/xtab/common/promptCrafting.js +2 -0
- package/dist/src/_internal/extension/xtab/common/promptCrafting.js.map +1 -1
- package/dist/src/_internal/extension/xtab/node/xtabCustomDiffPatchResponseHandler.d.ts +2 -3
- package/dist/src/_internal/extension/xtab/node/xtabCustomDiffPatchResponseHandler.d.ts.map +1 -1
- package/dist/src/_internal/extension/xtab/node/xtabCustomDiffPatchResponseHandler.js +2 -1
- package/dist/src/_internal/extension/xtab/node/xtabCustomDiffPatchResponseHandler.js.map +1 -1
- package/dist/src/_internal/extension/xtab/node/xtabProvider.d.ts +30 -0
- package/dist/src/_internal/extension/xtab/node/xtabProvider.d.ts.map +1 -1
- package/dist/src/_internal/extension/xtab/node/xtabProvider.js +221 -21
- package/dist/src/_internal/extension/xtab/node/xtabProvider.js.map +1 -1
- package/dist/src/_internal/extension/xtab/node/xtabUtils.d.ts +3 -4
- package/dist/src/_internal/extension/xtab/node/xtabUtils.d.ts.map +1 -1
- package/dist/src/_internal/extension/xtab/node/xtabUtils.js +33 -38
- package/dist/src/_internal/extension/xtab/node/xtabUtils.js.map +1 -1
- package/dist/src/_internal/platform/chat/common/commonTypes.d.ts +1 -2
- package/dist/src/_internal/platform/chat/common/commonTypes.d.ts.map +1 -1
- package/dist/src/_internal/platform/chat/common/commonTypes.js +8 -8
- package/dist/src/_internal/platform/chat/common/commonTypes.js.map +1 -1
- package/dist/src/_internal/platform/configuration/common/configurationService.d.ts +4 -0
- package/dist/src/_internal/platform/configuration/common/configurationService.d.ts.map +1 -1
- package/dist/src/_internal/platform/configuration/common/configurationService.js +5 -1
- package/dist/src/_internal/platform/configuration/common/configurationService.js.map +1 -1
- package/dist/src/_internal/platform/endpoint/node/messagesApi.d.ts.map +1 -1
- package/dist/src/_internal/platform/endpoint/node/messagesApi.js +8 -4
- package/dist/src/_internal/platform/endpoint/node/messagesApi.js.map +1 -1
- package/dist/src/_internal/platform/env/common/envService.d.ts +6 -0
- package/dist/src/_internal/platform/env/common/envService.d.ts.map +1 -1
- package/dist/src/_internal/platform/env/common/envService.js.map +1 -1
- package/dist/src/_internal/platform/env/common/nullEnvService.d.ts +3 -0
- package/dist/src/_internal/platform/env/common/nullEnvService.d.ts.map +1 -1
- package/dist/src/_internal/platform/env/common/nullEnvService.js +4 -0
- package/dist/src/_internal/platform/env/common/nullEnvService.js.map +1 -1
- package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.d.ts +82 -2
- package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.d.ts.map +1 -1
- package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.js +201 -1
- package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.js.map +1 -1
- package/dist/src/_internal/platform/inlineEdits/common/responseProcessor.d.ts +1 -2
- package/dist/src/_internal/platform/inlineEdits/common/responseProcessor.d.ts.map +1 -1
- package/dist/src/_internal/platform/inlineEdits/common/responseProcessor.js +4 -0
- package/dist/src/_internal/platform/inlineEdits/common/responseProcessor.js.map +1 -1
- package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.d.ts +13 -0
- package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.d.ts.map +1 -1
- package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.js +10 -0
- package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.js.map +1 -1
- package/dist/src/_internal/platform/nesFetch/node/streamTransformer.d.ts +3 -0
- package/dist/src/_internal/platform/nesFetch/node/streamTransformer.d.ts.map +1 -1
- package/dist/src/_internal/platform/nesFetch/node/streamTransformer.js +12 -11
- package/dist/src/_internal/platform/nesFetch/node/streamTransformer.js.map +1 -1
- package/dist/src/_internal/platform/networking/common/networking.d.ts +2 -0
- package/dist/src/_internal/platform/networking/common/networking.d.ts.map +1 -1
- package/dist/src/_internal/platform/networking/common/networking.js.map +1 -1
- package/dist/src/_internal/platform/requestLogger/node/requestLogger.d.ts +24 -0
- package/dist/src/_internal/platform/requestLogger/node/requestLogger.d.ts.map +1 -1
- package/dist/src/_internal/platform/requestLogger/node/requestLogger.js +51 -1
- package/dist/src/_internal/platform/requestLogger/node/requestLogger.js.map +1 -1
- package/dist/src/_internal/platform/telemetry/common/telemetry.d.ts +2 -0
- package/dist/src/_internal/platform/telemetry/common/telemetry.d.ts.map +1 -1
- package/dist/src/_internal/platform/telemetry/common/telemetry.js +1 -0
- package/dist/src/_internal/platform/telemetry/common/telemetry.js.map +1 -1
- package/dist/src/_internal/platform/telemetry/common/telemetryData.d.ts.map +1 -1
- package/dist/src/_internal/platform/telemetry/common/telemetryData.js +3 -0
- package/dist/src/_internal/platform/telemetry/common/telemetryData.js.map +1 -1
- package/dist/src/_internal/util/common/test/shims/themes.d.ts +13 -0
- package/dist/src/_internal/util/common/test/shims/themes.d.ts.map +1 -0
- package/dist/src/_internal/util/common/test/shims/themes.js +27 -0
- package/dist/src/_internal/util/common/test/shims/themes.js.map +1 -0
- package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.d.ts.map +1 -1
- package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.js +3 -1
- package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.js.map +1 -1
- package/dist/src/_internal/vscodeTypes.d.ts +1 -0
- package/dist/src/_internal/vscodeTypes.d.ts.map +1 -1
- package/dist/src/_internal/vscodeTypes.js +3 -1
- package/dist/src/_internal/vscodeTypes.js.map +1 -1
- package/dist/src/main.d.ts +2 -1
- package/dist/src/main.d.ts.map +1 -1
- package/dist/src/main.js +3 -0
- package/dist/src/main.js.map +1 -1
- package/dist/src/package.json +149 -85
- package/package.json +2 -2
|
@@ -47,7 +47,8 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
47
47
|
};
|
|
48
48
|
var XtabProvider_1;
|
|
49
49
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
|
-
exports.XtabProvider = void 0;
|
|
50
|
+
exports.EditIntentParseMode = exports.XtabProvider = void 0;
|
|
51
|
+
exports.parseEditIntentFromStream = parseEditIntentFromStream;
|
|
51
52
|
exports.findMergeConflictMarkersRange = findMergeConflictMarkersRange;
|
|
52
53
|
const chatMLFetcher_1 = require("../../../platform/chat/common/chatMLFetcher");
|
|
53
54
|
const commonTypes_1 = require("../../../platform/chat/common/commonTypes");
|
|
@@ -125,7 +126,7 @@ let XtabProvider = class XtabProvider {
|
|
|
125
126
|
this.ID = XtabProvider_1.ID;
|
|
126
127
|
this.showNextEditPreference = "always" /* ShowNextEditPreference.Always */;
|
|
127
128
|
this.forceUseDefaultModel = false;
|
|
128
|
-
this.userInteractionMonitor =
|
|
129
|
+
this.userInteractionMonitor = this.instaService.createInstance(userInteractionMonitor_1.UserInteractionMonitor);
|
|
129
130
|
this.nextCursorPredictor = this.instaService.createInstance(xtabNextCursorPredictor_1.XtabNextCursorPredictor, XtabProvider_1.computeTokens);
|
|
130
131
|
}
|
|
131
132
|
handleAcceptance() {
|
|
@@ -134,6 +135,9 @@ let XtabProvider = class XtabProvider {
|
|
|
134
135
|
handleRejection() {
|
|
135
136
|
this.userInteractionMonitor.handleRejection();
|
|
136
137
|
}
|
|
138
|
+
handleIgnored() {
|
|
139
|
+
this.userInteractionMonitor.handleIgnored();
|
|
140
|
+
}
|
|
137
141
|
async *provideNextEdit(request, logger, logContext, cancellationToken) {
|
|
138
142
|
const telemetry = new statelessNextEditProvider_1.StatelessNextEditTelemetryBuilder(request);
|
|
139
143
|
logContext.setProviderStartTime();
|
|
@@ -167,7 +171,13 @@ let XtabProvider = class XtabProvider {
|
|
|
167
171
|
doGetNextEdit(request, delaySession, logger, logContext, cancellationToken, telemetryBuilder, retryState) {
|
|
168
172
|
return this.doGetNextEditWithSelection(request, (0, nearbyCursorInlineEditProvider_1.getOrDeduceSelectionFromLastEdit)(request.getActiveDocument()), delaySession, logger, logContext, cancellationToken, telemetryBuilder, retryState);
|
|
169
173
|
}
|
|
170
|
-
async *doGetNextEditWithSelection(request, selection, delaySession, parentTracer, logContext, cancellationToken, telemetryBuilder, retryState
|
|
174
|
+
async *doGetNextEditWithSelection(request, selection, delaySession, parentTracer, logContext, cancellationToken, telemetryBuilder, retryState,
|
|
175
|
+
/**
|
|
176
|
+
* For cursor jump scenarios, this is the edit window around the original cursor position
|
|
177
|
+
* (before the jump). When provided, yielded edits will include this as `originalWindow`
|
|
178
|
+
* so the cache can serve the edit when the cursor is in either location.
|
|
179
|
+
*/
|
|
180
|
+
originalEditWindow) {
|
|
171
181
|
const tracer = parentTracer.createSubLogger(['XtabProvider', 'doGetNextEditWithSelection']);
|
|
172
182
|
const activeDocument = request.getActiveDocument();
|
|
173
183
|
if (selection === null) {
|
|
@@ -223,8 +233,10 @@ let XtabProvider = class XtabProvider {
|
|
|
223
233
|
const { clippedTaggedCurrentDoc, areaAroundCodeToEdit } = taggedCurrentFileContentResult.val;
|
|
224
234
|
telemetryBuilder.setNLinesOfCurrentFileInPrompt(clippedTaggedCurrentDoc.lines.length);
|
|
225
235
|
const { aggressivenessLevel, userHappinessScore } = this.userInteractionMonitor.getAggressivenessLevel();
|
|
226
|
-
// Log aggressiveness level and user happiness score when using XtabAggressiveness prompting strategy
|
|
227
|
-
if (promptOptions.promptingStrategy === xtabPromptOptions_1.PromptingStrategy.XtabAggressiveness
|
|
236
|
+
// Log aggressiveness level and user happiness score when using XtabAggressiveness, Xtab275EditIntent, or Xtab275EditIntentShort prompting strategy
|
|
237
|
+
if (promptOptions.promptingStrategy === xtabPromptOptions_1.PromptingStrategy.XtabAggressiveness ||
|
|
238
|
+
promptOptions.promptingStrategy === xtabPromptOptions_1.PromptingStrategy.Xtab275EditIntent ||
|
|
239
|
+
promptOptions.promptingStrategy === xtabPromptOptions_1.PromptingStrategy.Xtab275EditIntentShort) {
|
|
228
240
|
telemetryBuilder.setXtabAggressivenessLevel(aggressivenessLevel);
|
|
229
241
|
if (userHappinessScore !== undefined) {
|
|
230
242
|
telemetryBuilder.setXtabUserHappinessScore(userHappinessScore);
|
|
@@ -260,7 +272,9 @@ let XtabProvider = class XtabProvider {
|
|
|
260
272
|
shouldRemoveCursorTagFromResponse,
|
|
261
273
|
responseFormat,
|
|
262
274
|
retryState,
|
|
263
|
-
|
|
275
|
+
aggressivenessLevel,
|
|
276
|
+
userHappinessScore,
|
|
277
|
+
}, delaySession, tracer, telemetryBuilder, logContext, cancellationToken, originalEditWindow);
|
|
264
278
|
}
|
|
265
279
|
getAndProcessLanguageContext(request, delaySession, activeDocument, cursorPosition, promptOptions, tracer, logContext, cancellationToken) {
|
|
266
280
|
const recordingEnabled = this.configService.getConfig(configurationService_1.ConfigKey.TeamInternal.InlineEditsLogContextRecorderEnabled);
|
|
@@ -344,9 +358,9 @@ let XtabProvider = class XtabProvider {
|
|
|
344
358
|
}
|
|
345
359
|
}
|
|
346
360
|
async *streamEditsWithFiltering(request, endpoint, messages, editWindow, editWindowLines, cursorOriginalLinesOffset, cursorLineOffset, // cursor offset within the line it's in; 1-based
|
|
347
|
-
editWindowLineRange, promptPieces, prediction, opts, delaySession, parentTracer, telemetryBuilder, logContext, cancellationToken) {
|
|
361
|
+
editWindowLineRange, promptPieces, prediction, opts, delaySession, parentTracer, telemetryBuilder, logContext, cancellationToken, originalEditWindow) {
|
|
348
362
|
const tracer = parentTracer.createSubLogger('streamEditsWithFiltering');
|
|
349
|
-
const iterator = this.streamEdits(request, endpoint, messages, editWindow, editWindowLines, cursorOriginalLinesOffset, cursorLineOffset, editWindowLineRange, promptPieces, prediction, opts, delaySession, tracer, telemetryBuilder, logContext, cancellationToken);
|
|
363
|
+
const iterator = this.streamEdits(request, endpoint, messages, editWindow, editWindowLines, cursorOriginalLinesOffset, cursorLineOffset, editWindowLineRange, promptPieces, prediction, opts, delaySession, tracer, telemetryBuilder, logContext, cancellationToken, originalEditWindow);
|
|
350
364
|
let nEdits = 0;
|
|
351
365
|
let r = await iterator.next();
|
|
352
366
|
while (!r.done) {
|
|
@@ -371,7 +385,7 @@ let XtabProvider = class XtabProvider {
|
|
|
371
385
|
return r.value;
|
|
372
386
|
}
|
|
373
387
|
async *streamEdits(request, endpoint, messages, editWindow, editWindowLines, cursorOriginalLinesOffset, cursorLineOffset, // cursor offset within the line it's in; 1-based
|
|
374
|
-
editWindowLineRange, promptPieces, prediction, opts, delaySession, parentTracer, telemetryBuilder, logContext, cancellationToken) {
|
|
388
|
+
editWindowLineRange, promptPieces, prediction, opts, delaySession, parentTracer, telemetryBuilder, logContext, cancellationToken, originalEditWindow) {
|
|
375
389
|
const tracer = parentTracer.createSubLogger('streamEdits');
|
|
376
390
|
const useFetcher = this.configService.getExperimentBasedConfig(configurationService_1.ConfigKey.NextEditSuggestionsFetcher, this.expService) || undefined;
|
|
377
391
|
const fetchStreamSource = new chatMLFetcher_1.FetchStreamSource();
|
|
@@ -411,6 +425,10 @@ let XtabProvider = class XtabProvider {
|
|
|
411
425
|
requestId: request.id,
|
|
412
426
|
},
|
|
413
427
|
useFetcher,
|
|
428
|
+
customMetadata: {
|
|
429
|
+
aggressivenessLevel: opts.aggressivenessLevel,
|
|
430
|
+
userHappinessScore: opts.userHappinessScore,
|
|
431
|
+
},
|
|
414
432
|
}, cancellationToken);
|
|
415
433
|
telemetryBuilder.setResponse(fetchResultPromise.then((response) => ({ response, ttft })));
|
|
416
434
|
logContext.setFullResponse(fetchResultPromise.then((response) => response.type === commonTypes_1.ChatFetchResponseType.Success ? response.value : undefined));
|
|
@@ -445,23 +463,44 @@ let XtabProvider = class XtabProvider {
|
|
|
445
463
|
const llmLinesStream = (0, xtabUtils_1.toLines)(fetchStreamSource.stream);
|
|
446
464
|
// logging of times
|
|
447
465
|
// removal of cursor tag if option is set
|
|
448
|
-
const linesStream = (()
|
|
466
|
+
const linesStream = (async function* () {
|
|
449
467
|
let i = 0;
|
|
450
|
-
|
|
468
|
+
for await (const v of llmLinesStream) {
|
|
451
469
|
const trace = `Line ${i++} emitted with latency ${fetchRequestStopWatch.elapsed()} ms`;
|
|
452
470
|
tracer.trace(trace);
|
|
453
|
-
|
|
471
|
+
yield opts.shouldRemoveCursorTagFromResponse
|
|
454
472
|
? v.replaceAll(tags_1.PromptTags.CURSOR, '')
|
|
455
473
|
: v;
|
|
456
|
-
}
|
|
474
|
+
}
|
|
457
475
|
})();
|
|
458
476
|
const isFromCursorJump = opts.retryState instanceof RetryState.Retrying && opts.retryState.reason === 'cursorJump';
|
|
459
477
|
let cleanedLinesStream;
|
|
460
478
|
if (opts.responseFormat === xtabPromptOptions.ResponseFormat.EditWindowOnly) {
|
|
461
479
|
cleanedLinesStream = linesStream;
|
|
462
480
|
}
|
|
481
|
+
else if (opts.responseFormat === xtabPromptOptions.ResponseFormat.EditWindowWithEditIntent ||
|
|
482
|
+
opts.responseFormat === xtabPromptOptions.ResponseFormat.EditWindowWithEditIntentShort) {
|
|
483
|
+
// Determine parse mode based on response format
|
|
484
|
+
const parseMode = opts.responseFormat === xtabPromptOptions.ResponseFormat.EditWindowWithEditIntentShort
|
|
485
|
+
? EditIntentParseMode.ShortName
|
|
486
|
+
: EditIntentParseMode.Tags;
|
|
487
|
+
// Parse the edit_intent from the response
|
|
488
|
+
const { editIntent, remainingLinesStream, parseError } = await parseEditIntentFromStream(linesStream, tracer, parseMode);
|
|
489
|
+
// Log the edit intent for telemetry
|
|
490
|
+
telemetryBuilder.setEditIntent(editIntent);
|
|
491
|
+
// Log parse errors for telemetry - this helps detect malformed model output during flights
|
|
492
|
+
if (parseError) {
|
|
493
|
+
telemetryBuilder.setEditIntentParseError(parseError);
|
|
494
|
+
}
|
|
495
|
+
// Check if we should show this edit based on intent and aggressiveness
|
|
496
|
+
if (!xtabPromptOptions.EditIntent.shouldShowEdit(editIntent, promptPieces.aggressivenessLevel)) {
|
|
497
|
+
tracer.trace(`Filtered out edit due to edit intent "${editIntent}" with aggressiveness "${promptPieces.aggressivenessLevel}"`);
|
|
498
|
+
return new statelessNextEditProvider_1.NoNextEditReason.FilteredOut(`editIntent:${editIntent} aggressivenessLevel:${promptPieces.aggressivenessLevel}`);
|
|
499
|
+
}
|
|
500
|
+
cleanedLinesStream = remainingLinesStream;
|
|
501
|
+
}
|
|
463
502
|
else if (opts.responseFormat === xtabPromptOptions.ResponseFormat.CustomDiffPatch) {
|
|
464
|
-
return yield* xtabCustomDiffPatchResponseHandler_1.XtabCustomDiffPatchResponseHandler.handleResponse(linesStream, request.documentBeforeEdits, editWindow);
|
|
503
|
+
return yield* xtabCustomDiffPatchResponseHandler_1.XtabCustomDiffPatchResponseHandler.handleResponse(linesStream, request.documentBeforeEdits, editWindow, originalEditWindow);
|
|
465
504
|
}
|
|
466
505
|
else if (opts.responseFormat === xtabPromptOptions.ResponseFormat.UnifiedWithXml) {
|
|
467
506
|
const linesIter = linesStream[Symbol.asyncIterator]();
|
|
@@ -482,7 +521,7 @@ let XtabProvider = class XtabProvider {
|
|
|
482
521
|
return new statelessNextEditProvider_1.NoNextEditReason.NoSuggestions(request.documentBeforeEdits, editWindow);
|
|
483
522
|
}
|
|
484
523
|
const edit = new lineEdit_1.LineReplacement(new lineRange_1.LineRange(editWindowLineRange.start + cursorOriginalLinesOffset + 1 /* 0-based to 1-based */, editWindowLineRange.start + cursorOriginalLinesOffset + 2), [editWindowLines[cursorOriginalLinesOffset].slice(0, cursorLineOffset - 1) + lineWithCursorContinued.value + editWindowLines[cursorOriginalLinesOffset].slice(cursorLineOffset - 1)]);
|
|
485
|
-
yield { edit, isFromCursorJump, window: editWindow };
|
|
524
|
+
yield { edit, isFromCursorJump, window: editWindow, originalWindow: originalEditWindow };
|
|
486
525
|
const lines = [];
|
|
487
526
|
let v = await linesIter.next();
|
|
488
527
|
while (!v.done) {
|
|
@@ -498,21 +537,22 @@ let XtabProvider = class XtabProvider {
|
|
|
498
537
|
yield {
|
|
499
538
|
edit: new lineEdit_1.LineReplacement(new lineRange_1.LineRange(line, line), lines),
|
|
500
539
|
isFromCursorJump,
|
|
501
|
-
window: editWindow
|
|
540
|
+
window: editWindow,
|
|
541
|
+
originalWindow: originalEditWindow
|
|
502
542
|
};
|
|
503
543
|
return new statelessNextEditProvider_1.NoNextEditReason.NoSuggestions(request.documentBeforeEdits, editWindow);
|
|
504
544
|
}
|
|
505
545
|
if (trimmedLines === tags_1.ResponseTags.EDIT.start) {
|
|
506
|
-
cleanedLinesStream =
|
|
546
|
+
cleanedLinesStream = (async function* () {
|
|
507
547
|
let v = await linesIter.next();
|
|
508
548
|
while (!v.done) {
|
|
509
549
|
if (v.value.includes(tags_1.ResponseTags.EDIT.end)) {
|
|
510
550
|
return;
|
|
511
551
|
}
|
|
512
|
-
|
|
552
|
+
yield v.value;
|
|
513
553
|
v = await linesIter.next();
|
|
514
554
|
}
|
|
515
|
-
});
|
|
555
|
+
})();
|
|
516
556
|
}
|
|
517
557
|
else {
|
|
518
558
|
return new statelessNextEditProvider_1.NoNextEditReason.Unexpected(new Error(`unexpected tag ${trimmedLines}`));
|
|
@@ -574,7 +614,7 @@ let XtabProvider = class XtabProvider {
|
|
|
574
614
|
}
|
|
575
615
|
}
|
|
576
616
|
}
|
|
577
|
-
yield { edit: singleLineEdit, isFromCursorJump, window: editWindow };
|
|
617
|
+
yield { edit: singleLineEdit, isFromCursorJump, window: editWindow, originalWindow: originalEditWindow };
|
|
578
618
|
i++;
|
|
579
619
|
}
|
|
580
620
|
}
|
|
@@ -627,7 +667,7 @@ let XtabProvider = class XtabProvider {
|
|
|
627
667
|
return new statelessNextEditProvider_1.NoNextEditReason.NoSuggestions(request.documentBeforeEdits, editWindow, nextCursorPosition);
|
|
628
668
|
}
|
|
629
669
|
case nextCursorLinePrediction_1.NextCursorLinePrediction.OnlyWithEdit: {
|
|
630
|
-
const v = this.doGetNextEditWithSelection(request, new range_1.Range(nextCursorLineOneBased, nextCursorColumn, nextCursorLineOneBased, nextCursorColumn), delaySession, tracer, logContext, cancellationToken, telemetryBuilder, new RetryState.Retrying('cursorJump'));
|
|
670
|
+
const v = this.doGetNextEditWithSelection(request, new range_1.Range(nextCursorLineOneBased, nextCursorColumn, nextCursorLineOneBased, nextCursorColumn), delaySession, tracer, logContext, cancellationToken, telemetryBuilder, new RetryState.Retrying('cursorJump'), editWindow);
|
|
631
671
|
return yield* v;
|
|
632
672
|
}
|
|
633
673
|
default: {
|
|
@@ -801,6 +841,8 @@ let XtabProvider = class XtabProvider {
|
|
|
801
841
|
case xtabPromptOptions.PromptingStrategy.PatchBased01:
|
|
802
842
|
case xtabPromptOptions.PromptingStrategy.Xtab275:
|
|
803
843
|
case xtabPromptOptions.PromptingStrategy.XtabAggressiveness:
|
|
844
|
+
case xtabPromptOptions.PromptingStrategy.Xtab275EditIntent:
|
|
845
|
+
case xtabPromptOptions.PromptingStrategy.Xtab275EditIntentShort:
|
|
804
846
|
return systemMessages_1.xtab275SystemPrompt;
|
|
805
847
|
case xtabPromptOptions.PromptingStrategy.Nes41Miniv3:
|
|
806
848
|
return systemMessages_1.nes41Miniv3SystemPrompt;
|
|
@@ -844,6 +886,14 @@ let XtabProvider = class XtabProvider {
|
|
|
844
886
|
else if (responseFormat === xtabPromptOptions.ResponseFormat.EditWindowOnly) {
|
|
845
887
|
return editWindowLines.join('\n');
|
|
846
888
|
}
|
|
889
|
+
else if (responseFormat === xtabPromptOptions.ResponseFormat.EditWindowWithEditIntent) {
|
|
890
|
+
// For EditWindowWithIntent, we predict the edit intent as high (most likely case) followed by the code
|
|
891
|
+
return ['<|edit_intent|>high<|/edit_intent|>', ...editWindowLines].join('\n');
|
|
892
|
+
}
|
|
893
|
+
else if (responseFormat === xtabPromptOptions.ResponseFormat.EditWindowWithEditIntentShort) {
|
|
894
|
+
// For EditWindowWithIntentShort, we predict 'H' (high) followed by the code
|
|
895
|
+
return ['H', ...editWindowLines].join('\n');
|
|
896
|
+
}
|
|
847
897
|
else if (responseFormat === xtabPromptOptions.ResponseFormat.CodeBlock) {
|
|
848
898
|
return ['```', ...editWindowLines, '```'].join('\n');
|
|
849
899
|
}
|
|
@@ -920,6 +970,156 @@ exports.XtabProvider = XtabProvider = XtabProvider_1 = __decorate([
|
|
|
920
970
|
__param(8, languageDiagnosticsService_1.ILanguageDiagnosticsService),
|
|
921
971
|
__param(9, ignoreService_1.IIgnoreService)
|
|
922
972
|
], XtabProvider);
|
|
973
|
+
/**
|
|
974
|
+
* Mode for parsing edit intent from the model response.
|
|
975
|
+
*/
|
|
976
|
+
var EditIntentParseMode;
|
|
977
|
+
(function (EditIntentParseMode) {
|
|
978
|
+
/** Parse using XML-style tags: <|edit_intent|>value<|/edit_intent|> */
|
|
979
|
+
EditIntentParseMode["Tags"] = "tags";
|
|
980
|
+
/** Parse using short names on the first line: N|L|M|H */
|
|
981
|
+
EditIntentParseMode["ShortName"] = "shortName";
|
|
982
|
+
})(EditIntentParseMode || (exports.EditIntentParseMode = EditIntentParseMode = {}));
|
|
983
|
+
/**
|
|
984
|
+
* Parses the edit_intent from the first line of the response stream.
|
|
985
|
+
* The edit_intent MUST be on the first line, otherwise it's treated as not provided.
|
|
986
|
+
* Returns the parsed EditIntent and a new stream with the remaining content.
|
|
987
|
+
*
|
|
988
|
+
* Supports two modes:
|
|
989
|
+
* - Tags (default): <|edit_intent|>low|medium|high|no_edit<|/edit_intent|>
|
|
990
|
+
* - ShortName: N|L|M|H on the first line
|
|
991
|
+
*
|
|
992
|
+
* @param linesStream The stream of lines from the model response
|
|
993
|
+
* @param tracer Logger for tracing
|
|
994
|
+
* @param mode The parse mode (Tags or ShortName), defaults to Tags
|
|
995
|
+
*/
|
|
996
|
+
async function parseEditIntentFromStream(linesStream, tracer, mode = EditIntentParseMode.Tags) {
|
|
997
|
+
if (mode === EditIntentParseMode.ShortName) {
|
|
998
|
+
return parseEditIntentFromStreamShortName(linesStream, tracer);
|
|
999
|
+
}
|
|
1000
|
+
return parseEditIntentFromStreamTags(linesStream, tracer);
|
|
1001
|
+
}
|
|
1002
|
+
/**
|
|
1003
|
+
* Parses the edit_intent using short name format (N|L|M|H on first line).
|
|
1004
|
+
*/
|
|
1005
|
+
async function parseEditIntentFromStreamShortName(linesStream, tracer) {
|
|
1006
|
+
let editIntent = xtabPromptOptions.EditIntent.High; // Default to high (always show) if no short name found
|
|
1007
|
+
let parseError;
|
|
1008
|
+
const linesIter = linesStream[Symbol.asyncIterator]();
|
|
1009
|
+
const firstLineResult = await linesIter.next();
|
|
1010
|
+
if (firstLineResult.done) {
|
|
1011
|
+
// Empty stream
|
|
1012
|
+
parseError = 'emptyResponse';
|
|
1013
|
+
tracer.warn(`Empty response stream, no edit_intent short name found`);
|
|
1014
|
+
const remainingLinesStream = (async function* () { })();
|
|
1015
|
+
return { editIntent, remainingLinesStream, parseError };
|
|
1016
|
+
}
|
|
1017
|
+
const firstLine = firstLineResult.value.trim();
|
|
1018
|
+
// Check if the first line is a single character short name
|
|
1019
|
+
const parsedIntent = xtabPromptOptions.EditIntent.fromShortName(firstLine);
|
|
1020
|
+
if (parsedIntent !== undefined) {
|
|
1021
|
+
editIntent = parsedIntent;
|
|
1022
|
+
tracer.trace(`Parsed edit_intent short name from first line: "${firstLine}" -> ${editIntent}`);
|
|
1023
|
+
// Create a new stream with the remaining lines (excluding the short name line)
|
|
1024
|
+
const remainingLinesStream = (async function* () {
|
|
1025
|
+
let next = await linesIter.next();
|
|
1026
|
+
while (!next.done) {
|
|
1027
|
+
yield next.value;
|
|
1028
|
+
next = await linesIter.next();
|
|
1029
|
+
}
|
|
1030
|
+
})();
|
|
1031
|
+
return { editIntent, remainingLinesStream, parseError };
|
|
1032
|
+
}
|
|
1033
|
+
// Short name not found or invalid
|
|
1034
|
+
parseError = `unknownIntentValue:${firstLine}`;
|
|
1035
|
+
tracer.warn(`Edit intent parse error: ${parseError} (using Xtab275EditIntentShort prompting strategy). ` +
|
|
1036
|
+
`Defaulting to High (always show). First line was: "${firstLine.substring(0, 100)}..."`);
|
|
1037
|
+
// Return the first line plus the rest of the stream
|
|
1038
|
+
const remainingLinesStream = (async function* () {
|
|
1039
|
+
yield firstLineResult.value; // Use original value, not trimmed
|
|
1040
|
+
let next = await linesIter.next();
|
|
1041
|
+
while (!next.done) {
|
|
1042
|
+
yield next.value;
|
|
1043
|
+
next = await linesIter.next();
|
|
1044
|
+
}
|
|
1045
|
+
})();
|
|
1046
|
+
return { editIntent, remainingLinesStream, parseError };
|
|
1047
|
+
}
|
|
1048
|
+
/**
|
|
1049
|
+
* Parses the edit_intent tag from the first line of the response stream (original tag-based format).
|
|
1050
|
+
*/
|
|
1051
|
+
async function parseEditIntentFromStreamTags(linesStream, tracer) {
|
|
1052
|
+
const EDIT_INTENT_START_TAG = '<|edit_intent|>';
|
|
1053
|
+
const EDIT_INTENT_END_TAG = '<|/edit_intent|>';
|
|
1054
|
+
let editIntent = xtabPromptOptions.EditIntent.High; // Default to high (always show) if no tag found
|
|
1055
|
+
let parseError;
|
|
1056
|
+
const linesIter = linesStream[Symbol.asyncIterator]();
|
|
1057
|
+
const firstLineResult = await linesIter.next();
|
|
1058
|
+
if (firstLineResult.done) {
|
|
1059
|
+
// Empty stream
|
|
1060
|
+
parseError = 'emptyResponse';
|
|
1061
|
+
tracer.warn(`Empty response stream, no edit_intent tag found`);
|
|
1062
|
+
const remainingLinesStream = (async function* () { })();
|
|
1063
|
+
return { editIntent, remainingLinesStream, parseError };
|
|
1064
|
+
}
|
|
1065
|
+
const firstLine = firstLineResult.value;
|
|
1066
|
+
// Check if the first line contains the complete edit_intent tag
|
|
1067
|
+
const startIdx = firstLine.indexOf(EDIT_INTENT_START_TAG);
|
|
1068
|
+
const endIdx = firstLine.indexOf(EDIT_INTENT_END_TAG);
|
|
1069
|
+
if (startIdx !== -1 && endIdx !== -1 && endIdx > startIdx) {
|
|
1070
|
+
// Found complete tag on first line
|
|
1071
|
+
const intentValue = firstLine.substring(startIdx + EDIT_INTENT_START_TAG.length, endIdx).trim().toLowerCase();
|
|
1072
|
+
// Check if it's a known intent value
|
|
1073
|
+
const knownIntentValues = ['no_edit', 'low', 'medium', 'high'];
|
|
1074
|
+
if (!knownIntentValues.includes(intentValue)) {
|
|
1075
|
+
parseError = `unknownIntentValue:${intentValue}`;
|
|
1076
|
+
tracer.warn(`Unknown edit_intent value: "${intentValue}", defaulting to High`);
|
|
1077
|
+
}
|
|
1078
|
+
editIntent = xtabPromptOptions.EditIntent.fromString(intentValue);
|
|
1079
|
+
tracer.trace(`Parsed edit_intent from first line: "${intentValue}" -> ${editIntent}`);
|
|
1080
|
+
// Calculate remaining content after the end tag on the first line
|
|
1081
|
+
const afterEndTag = firstLine.substring(endIdx + EDIT_INTENT_END_TAG.length);
|
|
1082
|
+
// Create a new stream that first yields remaining content from first line, then continues
|
|
1083
|
+
const remainingLinesStream = (async function* () {
|
|
1084
|
+
// Only yield remaining content from first line if non-empty
|
|
1085
|
+
if (afterEndTag.trim() !== '') {
|
|
1086
|
+
yield afterEndTag;
|
|
1087
|
+
}
|
|
1088
|
+
// Continue with rest of the stream
|
|
1089
|
+
let next = await linesIter.next();
|
|
1090
|
+
while (!next.done) {
|
|
1091
|
+
yield next.value;
|
|
1092
|
+
next = await linesIter.next();
|
|
1093
|
+
}
|
|
1094
|
+
})();
|
|
1095
|
+
return { editIntent, remainingLinesStream, parseError };
|
|
1096
|
+
}
|
|
1097
|
+
// Determine the parse error type
|
|
1098
|
+
if (startIdx !== -1 && endIdx === -1) {
|
|
1099
|
+
// Start tag found but no end tag - malformed (possibly split across lines)
|
|
1100
|
+
parseError = 'malformedTag:startWithoutEnd';
|
|
1101
|
+
}
|
|
1102
|
+
else if (startIdx === -1 && endIdx !== -1) {
|
|
1103
|
+
// End tag found but no start tag - malformed
|
|
1104
|
+
parseError = 'malformedTag:endWithoutStart';
|
|
1105
|
+
}
|
|
1106
|
+
else {
|
|
1107
|
+
// No tag found at all
|
|
1108
|
+
parseError = 'noTagFound';
|
|
1109
|
+
}
|
|
1110
|
+
tracer.warn(`Edit intent parse error: ${parseError} (using Xtab275EditIntent prompting strategy). ` +
|
|
1111
|
+
`Defaulting to High (always show). First line was: "${firstLine.substring(0, 100)}..."`);
|
|
1112
|
+
// Return the first line plus the rest of the stream
|
|
1113
|
+
const remainingLinesStream = (async function* () {
|
|
1114
|
+
yield firstLine;
|
|
1115
|
+
let next = await linesIter.next();
|
|
1116
|
+
while (!next.done) {
|
|
1117
|
+
yield next.value;
|
|
1118
|
+
next = await linesIter.next();
|
|
1119
|
+
}
|
|
1120
|
+
})();
|
|
1121
|
+
return { editIntent, remainingLinesStream, parseError };
|
|
1122
|
+
}
|
|
923
1123
|
/**
|
|
924
1124
|
* Finds the range of lines containing merge conflict markers within a specified edit window.
|
|
925
1125
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xtabProvider.js","sourceRoot":"","sources":["../../../../../../src/_internal/extension/xtab/node/xtabProvider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"xtabProvider.js","sourceRoot":"","sources":["../../../../../../src/_internal/extension/xtab/node/xtabProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import { Raw } from '@vscode/prompt-tsx';
|
|
2
|
-
|
|
3
|
-
export declare function toLines(stream: AsyncIterableObject<{
|
|
2
|
+
export declare function toLines(stream: AsyncIterable<{
|
|
4
3
|
delta: {
|
|
5
4
|
text: string;
|
|
6
5
|
};
|
|
7
|
-
}>):
|
|
6
|
+
}>): AsyncIterable<string>;
|
|
8
7
|
/**
|
|
9
8
|
* Remove backticks on the first and last lines.
|
|
10
9
|
*/
|
|
11
|
-
export declare function linesWithBackticksRemoved(linesStream:
|
|
10
|
+
export declare function linesWithBackticksRemoved(linesStream: AsyncIterable<string>): AsyncIterable<string>;
|
|
12
11
|
export declare function constructMessages({ systemMsg, userMsg }: {
|
|
13
12
|
systemMsg: string;
|
|
14
13
|
userMsg: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xtabUtils.d.ts","sourceRoot":"","sources":["../../../../../../src/_internal/extension/xtab/node/xtabUtils.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"xtabUtils.d.ts","sourceRoot":"","sources":["../../../../../../src/_internal/extension/xtab/node/xtabUtils.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAIzC,wBAAuB,OAAO,CAAC,MAAM,EAAE,aAAa,CAAC;IAAE,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,CAgBxG;AAED;;GAEG;AACH,wBAAuB,yBAAyB,CAAC,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,CA4B1G;AAED,wBAAgB,iBAAiB,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,GAAG,CAAC,WAAW,EAAE,CAWnH;AAED,wBAAgB,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,WAAW,EAAE,GAAG,MAAM,CAG7D"}
|