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; }>