From d37af53858decd95551da1bc47cfe7d1d813519a Mon Sep 17 00:00:00 2001 From: vorotamoroz Date: Sat, 8 Aug 2026 04:29:57 +0000 Subject: [PATCH] Stop repeating cancelled scheduled Fetch --- src/serviceFeatures/redFlag.ts | 2 +- src/serviceFeatures/redFlag.unit.spec.ts | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/serviceFeatures/redFlag.ts b/src/serviceFeatures/redFlag.ts index 1801d34a..e651465c 100644 --- a/src/serviceFeatures/redFlag.ts +++ b/src/serviceFeatures/redFlag.ts @@ -150,7 +150,7 @@ export function createFetchAllFlagHandler( // Select the remote database if there are multiple remotes configured. const isRemoteActivated = await askAndActivateRemoteDatabase(host, log); if (!isRemoteActivated) { - return false; + return await cancelScheduledInitialisation(host, cleanupFlag); } // Ask user for use Fast Setup diff --git a/src/serviceFeatures/redFlag.unit.spec.ts b/src/serviceFeatures/redFlag.unit.spec.ts index 7ded1798..5a05a451 100644 --- a/src/serviceFeatures/redFlag.unit.spec.ts +++ b/src/serviceFeatures/redFlag.unit.spec.ts @@ -581,6 +581,16 @@ describe("Red Flag Feature", () => { expect(result).toBe(false); expect(host.mocks.ui.confirm.confirmWithMessage).not.toHaveBeenCalled(); + expect(host.mocks.storageAccess.files.has(FlagFilesOriginal.FETCH_ALL)).toBe(false); + await expect(handler.check()).resolves.toBe(false); + expect(host.mocks.setting.applyPartial).toHaveBeenCalledWith( + { + suspendFileWatching: true, + suspendParseReplicationResult: true, + }, + true + ); + expect(host.mocks.appLifecycle.performRestart).toHaveBeenCalledOnce(); }); it("should activate selected remote configuration", async () => {