@@ -281,17 +281,24 @@ export class DirectoryScanner implements IDirectoryScanner {
281281 try {
282282 await this . qdrantClient . deletePointsByFilePath ( cachedFilePath )
283283 await this . cacheManager . deleteHash ( cachedFilePath )
284- } catch ( error ) {
284+ } catch ( error : any ) {
285+ const errorStatus = error ?. status || error ?. response ?. status || error ?. statusCode
286+ const errorMessage = error instanceof Error ? error . message : String ( error )
287+
285288 console . error (
286289 `[DirectoryScanner] Failed to delete points for ${ cachedFilePath } in workspace ${ scanWorkspace } :` ,
287290 error ,
288291 )
292+
289293 TelemetryService . instance . captureEvent ( TelemetryEventName . CODE_INDEX_ERROR , {
290- error : sanitizeErrorMessage ( error instanceof Error ? error . message : String ( error ) ) ,
294+ error : sanitizeErrorMessage ( errorMessage ) ,
291295 stack : error instanceof Error ? sanitizeErrorMessage ( error . stack || "" ) : undefined ,
292296 location : "scanDirectory:deleteRemovedFiles" ,
297+ errorStatus : errorStatus ,
293298 } )
299+
294300 if ( onError ) {
301+ // Report error to error handler
295302 onError (
296303 error instanceof Error
297304 ? new Error (
@@ -304,7 +311,8 @@ export class DirectoryScanner implements IDirectoryScanner {
304311 ) ,
305312 )
306313 }
307- // Decide if we should re-throw or just log
314+ // Log error and continue processing instead of re-throwing
315+ console . error ( `Failed to delete points for removed file: ${ cachedFilePath } ` , error )
308316 }
309317 }
310318 }
@@ -347,25 +355,30 @@ export class DirectoryScanner implements IDirectoryScanner {
347355 if ( uniqueFilePaths . length > 0 ) {
348356 try {
349357 await this . qdrantClient . deletePointsByMultipleFilePaths ( uniqueFilePaths )
350- } catch ( deleteError ) {
358+ } catch ( deleteError : any ) {
359+ const errorStatus =
360+ deleteError ?. status || deleteError ?. response ?. status || deleteError ?. statusCode
361+ const errorMessage = deleteError instanceof Error ? deleteError . message : String ( deleteError )
362+
351363 console . error (
352364 `[DirectoryScanner] Failed to delete points for ${ uniqueFilePaths . length } files before upsert in workspace ${ scanWorkspace } :` ,
353365 deleteError ,
354366 )
367+
355368 TelemetryService . instance . captureEvent ( TelemetryEventName . CODE_INDEX_ERROR , {
356- error : sanitizeErrorMessage (
357- deleteError instanceof Error ? deleteError . message : String ( deleteError ) ,
358- ) ,
369+ error : sanitizeErrorMessage ( errorMessage ) ,
359370 stack :
360371 deleteError instanceof Error
361372 ? sanitizeErrorMessage ( deleteError . stack || "" )
362373 : undefined ,
363374 location : "processBatch:deletePointsByMultipleFilePaths" ,
364375 fileCount : uniqueFilePaths . length ,
376+ errorStatus : errorStatus ,
365377 } )
366- // Re-throw the error with workspace context
378+
379+ // Re-throw with workspace context
367380 throw new Error (
368- `Failed to delete points for ${ uniqueFilePaths . length } files. Workspace: ${ scanWorkspace } . ${ deleteError instanceof Error ? deleteError . message : String ( deleteError ) } ` ,
381+ `Failed to delete points for ${ uniqueFilePaths . length } files. Workspace: ${ scanWorkspace } . ${ errorMessage } ` ,
369382 { cause : deleteError } ,
370383 )
371384 }
0 commit comments