Function: resolveStrandedLateHours()
resolveStrandedLateHours(
raw):Promise<ResolveStrandedState>
Defined in: src/server/actions/strandedHours.ts:38
Owner-only: resolve one contractor-assignment's late-entered hours whose pay run is ALREADY CLOSED (ADR-0056, extending ADR-0038's disposition flow to contractor-entered hours).
- 'next': price the hours' marginal pay in the period that would have paid them (same engine,
caps respected) and queue it as a
pending_pay_itemscatch-up drained into the next draft. - 'paid': the hours were settled outside the system — record them as locked, queue nothing.
Either way the entries lock, so no run (or second click) can ever pay them again. The entry rows
are re-read and re-mapped server-side via
payPeriodForDate(the client only names the group), so a date that actually settles in a still-open period is never resolved here.
Parameters
raw
infer<any>
Returns
Promise<ResolveStrandedState>