diff --git a/app/(marketing)/recent/outreach-form.tsx b/app/(marketing)/recent/outreach-form.tsx
index 6b2b0f33..0590a99b 100644
--- a/app/(marketing)/recent/outreach-form.tsx
+++ b/app/(marketing)/recent/outreach-form.tsx
@@ -131,14 +131,21 @@ export function RecentOutreachForm({
History
- {progress.inFlight ? (
-
-
- Live · updating…
-
- ) : (
- Idle
- )}
+
+ h.status === "failed" || h.status === "timed_out")
+ .map((h) => h.id)}
+ />
+ {progress.inFlight ? (
+
+
+ Live · updating…
+
+ ) : (
+ Idle
+ )}
+
{history.map((h) => (
@@ -322,6 +329,43 @@ export function RecentOutreachForm({
);
}
+function RetryAllFailedButton({ messageIds }: { messageIds: string[] }) {
+ const router = useRouter();
+ const [pending, start] = useTransition();
+ const [progress, setProgress] = useState<{ done: number; total: number } | null>(null);
+
+ if (messageIds.length === 0) return null;
+
+ return (
+
+
+
+ );
+}
+
function RetryOutreachButton({ messageId }: { messageId: string }) {
const router = useRouter();
const [pending, start] = useTransition();