From 0624b2eaf69975d42840f3a5f7aeb19fd0a23174 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Wed, 13 May 2026 15:21:06 +0200 Subject: [PATCH 1/3] fix(backend-defaults): fix flaky TaskWorker initialDelayDuration test MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The "respects initialDelayDuration per worker" test had only a 50ms margin (350ms total sleep vs 300ms initial delay) for the worker to complete its internal DB roundtrips before asserting. Under CI load this frequently wasn't enough. Replace the fixed sleep with waitForExpect, consistent with the rest of the test file. Co-Authored-By: Claude Opus 4.6 (1M context) Signed-off-by: Fredrik Adelöw --- .../src/entrypoints/scheduler/lib/TaskWorker.test.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/backend-defaults/src/entrypoints/scheduler/lib/TaskWorker.test.ts b/packages/backend-defaults/src/entrypoints/scheduler/lib/TaskWorker.test.ts index 2f690ef499..547ec23474 100644 --- a/packages/backend-defaults/src/entrypoints/scheduler/lib/TaskWorker.test.ts +++ b/packages/backend-defaults/src/entrypoints/scheduler/lib/TaskWorker.test.ts @@ -328,8 +328,9 @@ describe.each(databases.eachSupportedId())('TaskWorker, %s', databaseId => { expect(fn1).toHaveBeenCalledTimes(0); await new Promise(resolve => setTimeout(resolve, 250)); expect(fn1).toHaveBeenCalledTimes(0); - await new Promise(resolve => setTimeout(resolve, 100)); - expect(fn1.mock.calls.length).toBeGreaterThan(0); + await waitForExpect(() => { + expect(fn1.mock.calls.length).toBeGreaterThan(0); + }); // Start a second worker and make sure it waits but the first worker still works along const fn2 = jest.fn(); From e4ac8e22445bb841a000899d53d869d946142f92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Wed, 13 May 2026 16:03:56 +0200 Subject: [PATCH 2/3] Update packages/backend-defaults/src/entrypoints/scheduler/lib/TaskWorker.test.ts MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Marat Dyatko <31615495+dyatko@users.noreply.github.com> Signed-off-by: Fredrik Adelöw --- .../src/entrypoints/scheduler/lib/TaskWorker.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/backend-defaults/src/entrypoints/scheduler/lib/TaskWorker.test.ts b/packages/backend-defaults/src/entrypoints/scheduler/lib/TaskWorker.test.ts index 547ec23474..041a83426a 100644 --- a/packages/backend-defaults/src/entrypoints/scheduler/lib/TaskWorker.test.ts +++ b/packages/backend-defaults/src/entrypoints/scheduler/lib/TaskWorker.test.ts @@ -329,7 +329,7 @@ describe.each(databases.eachSupportedId())('TaskWorker, %s', databaseId => { await new Promise(resolve => setTimeout(resolve, 250)); expect(fn1).toHaveBeenCalledTimes(0); await waitForExpect(() => { - expect(fn1.mock.calls.length).toBeGreaterThan(0); + expect(fn1.mock).toHaveBeenCalled(); }); // Start a second worker and make sure it waits but the first worker still works along From e72fcdcbdfe90a3568b8a8e7c9c697a131d5ef22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Wed, 13 May 2026 16:52:03 +0200 Subject: [PATCH 3/3] fix assertion: expect(fn1) not expect(fn1.mock) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.6 (1M context) Signed-off-by: Fredrik Adelöw --- .../src/entrypoints/scheduler/lib/TaskWorker.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/backend-defaults/src/entrypoints/scheduler/lib/TaskWorker.test.ts b/packages/backend-defaults/src/entrypoints/scheduler/lib/TaskWorker.test.ts index 041a83426a..19a1427637 100644 --- a/packages/backend-defaults/src/entrypoints/scheduler/lib/TaskWorker.test.ts +++ b/packages/backend-defaults/src/entrypoints/scheduler/lib/TaskWorker.test.ts @@ -329,7 +329,7 @@ describe.each(databases.eachSupportedId())('TaskWorker, %s', databaseId => { await new Promise(resolve => setTimeout(resolve, 250)); expect(fn1).toHaveBeenCalledTimes(0); await waitForExpect(() => { - expect(fn1.mock).toHaveBeenCalled(); + expect(fn1).toHaveBeenCalled(); }); // Start a second worker and make sure it waits but the first worker still works along