From ca3aebeac8f0a47e2e096f2a7bbeecd5c5a77fc1 Mon Sep 17 00:00:00 2001 From: gsxdsm Date: Wed, 3 Jun 2026 20:46:54 -0700 Subject: [PATCH] test(dashboard): widen waitFor bound on planning-flow respond assertion The newly-gated backfill file flaked on a loaded CI shard: waitFor's private 1s default (independent of the 15s vitest testTimeout) raced the click->respondToPlanning state-update chain. Passes deterministically in isolation; 5s bound absorbs shard CPU starvation without masking real regressions. --- .../PlanningModeModal.planning-flow.test.tsx | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/packages/dashboard/app/components/__tests__/PlanningModeModal.planning-flow.test.tsx b/packages/dashboard/app/components/__tests__/PlanningModeModal.planning-flow.test.tsx index 4ef0bf51f2..cf03208a2d 100644 --- a/packages/dashboard/app/components/__tests__/PlanningModeModal.planning-flow.test.tsx +++ b/packages/dashboard/app/components/__tests__/PlanningModeModal.planning-flow.test.tsx @@ -337,14 +337,20 @@ describe("PlanningModeModal", () => { fireEvent.click(screen.getByText("Small")); fireEvent.click(screen.getByText("Continue")); - await waitFor(() => { - expect(mockRespondToPlanning).toHaveBeenCalledWith( - "session-123", - { "q-scope": "small" }, - undefined, - "tab-self", - ); - }); + await waitFor( + () => { + expect(mockRespondToPlanning).toHaveBeenCalledWith( + "session-123", + { "q-scope": "small" }, + undefined, + "tab-self", + ); + }, + // waitFor's private 1s default (independent of vitest testTimeout) has + // flaked under loaded CI shards; the click->respond chain crosses + // several state-update hops. Generous bound, still fails fast locally. + { timeout: 5000 }, + ); }); it("shows stop action in loading and stops generation", async () => {