FAILURE MAP
← Case archive

FA-59104 / Payroll withholding rules / Member archive

Net-pay deduction priority and arrears: all-or-nothing deduction · case 04

Deductions that must be taken in full are partially taken when pay is short.

Member previewVariant 4 · 3 implementations · 8 checks per implementation

Case contract

Input {gross, taxes, deductions: [[name, amount, priority, allow_partial]], arrears: {name: cents}}. Available = max(0, gross - taxes). Deductions run by ascending priority, ties in input order. Each is due amount + prior arrears; if due fits it is taken in full, else partial deductions take what is left and all-or-nothing deductions take 0. Any unpaid due becomes new arrears (only positive entries). Return {net, taken, arrears}.

Why this case matters

When net pay cannot cover every deduction, ordering and arrears carry-forward decide who gets paid.

One recorded failure

Sample boundary fixture

This sample comes from the broken implementation of a controlled reproducer.

Boundary fixtureActualExpectedOutcome
regression 0{"arrears": {"charity": 38440, "medical": 12402, "parking": 36984, "union": 19250}, "net": 0, "taken": {"charity": 0, "medical": 13360, "parking": 0, "union": 0}}{"arrears": {"charity": 25080, "medical": 25762, "parking": 36984, "union": 19250}, "net": 0, "taken": {"charity": 13360, "medical": 0, "parking": 0, "union": 0}}Failed

MEMBER ARCHIVE

The complete case is available to members.

This record includes three runnable implementations, regression fixtures, execution results, and source hashes.

Member access is invitation-based. Sign in with your invited account to inspect the sources.

Sign in to the archive ↗