diff --git a/server/src/__tests__/heartbeat-process-recovery.test.ts b/server/src/__tests__/heartbeat-process-recovery.test.ts index 1a7cc7f992f..006fe19a732 100644 --- a/server/src/__tests__/heartbeat-process-recovery.test.ts +++ b/server/src/__tests__/heartbeat-process-recovery.test.ts @@ -748,16 +748,18 @@ describeEmbeddedPostgres("heartbeat orphaned process recovery", () => { )); expect(recoveryIssues).toHaveLength(0); - const wakeups = await db - .select() - .from(agentWakeupRequests) - .where(eq(agentWakeupRequests.agentId, input.agentId)); - const recoveryWakeup = wakeups.find((wakeup) => { - const payload = wakeup.payload as Record | null; - return payload?.issueId === input.issueId && - payload?.sourceIssueId === input.issueId && - payload?.recoveryActionId === action.id && - payload?.strandedRunId === input.runId; + const recoveryWakeup = await waitForValue(async () => { + const wakeups = await db + .select() + .from(agentWakeupRequests) + .where(eq(agentWakeupRequests.agentId, input.agentId)); + return wakeups.find((wakeup) => { + const payload = wakeup.payload as Record | null; + return payload?.issueId === input.issueId && + payload?.sourceIssueId === input.issueId && + payload?.recoveryActionId === action.id && + payload?.strandedRunId === input.runId; + }) ?? null; }); expect(recoveryWakeup).toMatchObject({ companyId: input.companyId,