Midday / apps /dashboard /src /utils /document.ts
Jules
Final deployment with all fixes and verified content
c09f67c
/**
* Threshold in milliseconds for considering a pending document as "stale"
* Documents pending for longer than this are likely stuck and need retry
*/
const STALE_PROCESSING_THRESHOLD_MS = 10 * 60 * 1000; // 10 minutes
/**
* Check if a document is stuck in processing (pending for >10 minutes)
* Used to show retry options instead of infinite loading skeletons
*
* A document is considered stale if:
* - Status is "pending"
* - It was created more than 10 minutes ago
*
* Documents with a title that are pending for a long time are likely
* stuck (status never updated to completed), not being reprocessed.
*/
export function isStaleProcessing(
processingStatus: string | null | undefined,
createdAt: string | Date | null | undefined,
): boolean {
if (processingStatus !== "pending" || !createdAt) {
return false;
}
return (
Date.now() - new Date(createdAt).getTime() > STALE_PROCESSING_THRESHOLD_MS
);
}