src/vs/workbench/services/workingCopy/electron-sandbox/workingCopyBackupTracker.ts/NativeWorkingCopyBackupTracker/discardBackupsBeforeShutdown
class NativeWorkingCopyBackupTracker:	private async discardBackupsBeforeShutdown(arg1: IWorkingCopyIdentifier[] | { except: IWorkingCopyIdentifier[] }): Promise<void> {

		// We never discard any backups before we are ready
		// and have resolved all backups that exist. This
		// is important to not loose backups that have not
		// been handled.
		if (!this.isReady) {
			return;
		}

		// When we shutdown either with no dirty working copies left
		// or with some handled, we start to discard these backups
		// to free them up. This helps to get rid of stale backups
		// as reported in https://github.com/microsoft/vscode/issues/92962
		//
		// However, we never want to discard backups that we know
		// were not restored in the session.
		try {
			if (Array.isArray(arg1)) {
				await Promises.settled(arg1.map(workingCopy => this.workingCopyBackupService.discardBackup(workingCopy)));
			} else {
				await this.workingCopyBackupService.discardBackups(arg1);
			}
		} catch (error) {
			this.logService.error(`[backup tracker] error discarding backups: ${error}`);
		}
	}