FAILURE MAP
← Case archive

FA-59105 / Payroll withholding rules / Member archive

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

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

Member previewVariant 5 · 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": {"loan": 16506, "parking": 35641}, "net": 0, "taken": {"charity": 49144, "loan": 7343, "parking": 0, "union": 4833}}{"arrears": {"loan": 23849, "parking": 28298}, "net": 0, "taken": {"charity": 49144, "loan": 0, "parking": 7343, "union": 4833}}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 ↗