Skip to main content

Function: purgeExpiredCandidates()

purgeExpiredCandidates(svc): Promise<{ candidates: number; files: number; rawRows: number; }>

Defined in: src/server/services/recruitingRetention.ts:22

RA 10173 storage-limitation purge (review CMP-2/CMP-3 — previously paper-only).

Hard-deletes soft-deleted, non-hire candidates whose deleted_at is past the retention window, removing their Storage objects first (the FK cascade clears child rows; storage is separate). Also drops application_raw payloads past their own (shorter) window. Hired candidates and those converted to a contractor are never purged. Windows come from retention_policies (seeded by 0054), falling back to 2y (candidates) / 1y (raw). Audit_log copies are already masked (CMP-1).

Parameters

svc

SupabaseClient

Returns

Promise<{ candidates: number; files: number; rawRows: number; }>