@@ -41,8 +41,6 @@ import { CachedOrRebasedEdit, NextEditCache } from './nextEditCache';
41
41
import { LlmNESTelemetryBuilder } from './nextEditProviderTelemetry' ;
42
42
import { INextEditResult , NextEditResult } from './nextEditResult' ;
43
43
44
- const ARTIFICIAL_CACHE_HIT_DELAY = 300 ; // delay cache hits by 300ms to make it more like a regular request and to reduce flicker ;)
45
-
46
44
export interface INextEditProvider < T extends INextEditResult , TTelemetry , TData = void > extends IDisposable {
47
45
readonly ID : string ;
48
46
getNextEdit ( docId : DocumentId , context : vscode . InlineCompletionContext , logContext : InlineEditRequestLogContext , cancellationToken : CancellationToken , telemetryBuilder : TTelemetry , data ?: TData ) : Promise < T > ;
@@ -160,6 +158,8 @@ export class NextEditProvider extends Disposable implements INextEditProvider<Ne
160
158
let req : NextEditFetchRequest ;
161
159
let targetDocumentId = docId ;
162
160
161
+ const cacheDelay = this . _configService . getExperimentBasedConfig ( ConfigKey . Internal . InlineEditsCacheDelay , this . _expService ) ;
162
+
163
163
if ( recentlyShownCachedEdit ) {
164
164
tracer . trace ( 'using recently shown cached edit' ) ;
165
165
edit = recentlyShownCachedEdit [ 0 ] ;
@@ -173,7 +173,7 @@ export class NextEditProvider extends Disposable implements INextEditProvider<Ne
173
173
// back-date the recording bookmark of the cached edit to the bookmark of the original request.
174
174
logContext . recordingBookmark = req . log . recordingBookmark ;
175
175
176
- await timeout ( ARTIFICIAL_CACHE_HIT_DELAY ) ;
176
+ await timeout ( cacheDelay ) ;
177
177
178
178
} else if ( cachedEdit ) {
179
179
tracer . trace ( 'using cached edit' ) ;
@@ -187,7 +187,7 @@ export class NextEditProvider extends Disposable implements INextEditProvider<Ne
187
187
// back-date the recording bookmark of the cached edit to the bookmark of the original request.
188
188
logContext . recordingBookmark = req . log . recordingBookmark ;
189
189
190
- await timeout ( ARTIFICIAL_CACHE_HIT_DELAY ) ;
190
+ await timeout ( cacheDelay ) ;
191
191
192
192
} else {
193
193
tracer . trace ( 'fetching next edit' ) ;
0 commit comments