FAILURE MAP
← Case archive

FA-59091 / Payroll withholding rules / Open access

Net-pay deduction priority and arrears: priority ordering · case 01

Low-priority voluntary deductions consume net pay before mandatory ones.

Verified by executionVariant 1 · 8 checks per implementationDownload source bundle ↓JSON ↗

ROOT CAUSE

Deductions are sorted with the highest priority number first.

VERIFIED REPAIR

Restore the contract rule at the priority ordering step: use `key=lambda d: d[2]`.

Unsuccessful approach: The attempt sorts ascending but breaks priority ties alphabetically instead of by input order.

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.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    avail = max(0, x['gross'] - x['taxes'])
    taken = {}
    arrears = {}
    for name, amt, pri, partial in sorted(x['deductions'], key=lambda d: -d[2]):
        due = amt + x['arrears'].get(name, 0)
        if due <= avail:
            take = due
        elif partial:
            take = avail
        else:
            take = 0
        avail -= take
        taken[name] = take
        if due - take > 0:
            arrears[name] = due - take
    return {'net': avail, 'taken': taken, 'arrears': arrears}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression', {'gross': 63849, 'taxes': 6027, 'deductions': [['union', 18684, 2, True], ['charity', 28880, 1, True], ['loan', 38844, 2, True], ['support', 20513, 3, False]], 'arrears': {'union': 15372}}, {'net': 0, 'taken': {'charity': 28880, 'union': 28942, 'loan': 0, 'support': 0}, 'arrears': {'union': 5114, 'loan': 38844, 'support': 20513}}), ('regression', {'gross': 6593, 'taxes': 872, 'deductions': [['parking', 5312, 3, False], ['union', 4345, 3, False], ['medical', 14587, 3, False], ['loan', 24540, 2, True], ['support', 7319, 3, True]], 'arrears': {'parking': 388, 'medical': 17218}}, {'net': 0, 'taken': {'loan': 5721, 'parking': 0, 'union': 0, 'medical': 0, 'support': 0}, 'arrears': {'loan': 18819, 'parking': 5700, 'union': 4345, 'medical': 31805, 'support': 7319}}), ('partial-repair probe', {'gross': 45406, 'taxes': 3941, 'deductions': [['parking', 32509, 3, True], ['loan', 15062, 3, True], ['charity', 31648, 1, False]], 'arrears': {'parking': 1472, 'charity': 15167}}, {'net': 0, 'taken': {'charity': 0, 'parking': 33981, 'loan': 7484}, 'arrears': {'charity': 46815, 'loan': 7578}}), ('partial-repair probe', {'gross': 71403, 'taxes': 15182, 'deductions': [['support', 561, 2, True], ['charity', 7949, 1, True], ['parking', 31674, 1, False], ['medical', 37176, 1, False]], 'arrears': {'support': 13700}}, {'net': 2337, 'taken': {'charity': 7949, 'parking': 31674, 'medical': 0, 'support': 14261}, 'arrears': {'medical': 37176}}), ('normal control', {'gross': 134653, 'taxes': 27454, 'deductions': [['parking', 26770, 3, False], ['loan', 12315, 2, False], ['union', 3364, 1, False], ['support', 11662, 3, True]], 'arrears': {'parking': 10177, 'loan': 15972, 'support': 6216}}, {'net': 20723, 'taken': {'union': 3364, 'loan': 28287, 'parking': 36947, 'support': 17878}, 'arrears': {}}), ('normal control', {'gross': 138327, 'taxes': 24358, 'deductions': [['loan', 12004, 3, True], ['union', 4120, 2, True], ['medical', 35331, 3, False], ['parking', 697, 1, True], ['support', 15166, 2, True]], 'arrears': {'loan': 5341, 'union': 19151, 'support': 16971}}, {'net': 5188, 'taken': {'parking': 697, 'union': 23271, 'support': 32137, 'loan': 17345, 'medical': 35331}, 'arrears': {}}), ('normal control', {'gross': 102757, 'taxes': 16339, 'deductions': [['medical', 20312, 1, False]], 'arrears': {'medical': 12422}}, {'net': 53684, 'taken': {'medical': 32734}, 'arrears': {}}), ('normal control', {'gross': 106436, 'taxes': 29897, 'deductions': [['parking', 39254, 1, True]], 'arrears': {}}, {'net': 37285, 'taken': {'parking': 39254}, 'arrears': {}})], [('regression', {'gross': 60703, 'taxes': 11543, 'deductions': [['support', 14720, 2, False], ['loan', 10777, 3, False], ['medical', 34788, 2, True]], 'arrears': {}}, {'net': 0, 'taken': {'support': 14720, 'medical': 34440, 'loan': 0}, 'arrears': {'medical': 348, 'loan': 10777}}), ('regression', {'gross': 3515, 'taxes': 674, 'deductions': [['parking', 20962, 1, False], ['union', 18985, 3, True], ['loan', 33701, 1, True]], 'arrears': {}}, {'net': 0, 'taken': {'parking': 0, 'loan': 2841, 'union': 0}, 'arrears': {'parking': 20962, 'loan': 30860, 'union': 18985}}), ('partial-repair probe', {'gross': 63849, 'taxes': 6027, 'deductions': [['union', 18684, 2, True], ['charity', 28880, 1, True], ['loan', 38844, 2, True], ['support', 20513, 3, False]], 'arrears': {'union': 15372}}, {'net': 0, 'taken': {'charity': 28880, 'union': 28942, 'loan': 0, 'support': 0}, 'arrears': {'union': 5114, 'loan': 38844, 'support': 20513}}), ('partial-repair probe', {'gross': 37898, 'taxes': 10470, 'deductions': [['union', 18447, 3, False], ['parking', 30036, 3, True], ['support', 12641, 2, True], ['loan', 39343, 2, False], ['charity', 10333, 2, False]], 'arrears': {'parking': 13057, 'support': 19997}}, {'net': 0, 'taken': {'support': 27428, 'loan': 0, 'charity': 0, 'union': 0, 'parking': 0}, 'arrears': {'support': 5210, 'loan': 39343, 'charity': 10333, 'union': 18447, 'parking': 43093}}), ('normal control', {'gross': 132719, 'taxes': 9617, 'deductions': [['charity', 21694, 1, False], ['loan', 11829, 1, True], ['parking', 18178, 3, True], ['union', 1782, 3, True]], 'arrears': {'loan': 14963, 'parking': 3722, 'union': 3447}}, {'net': 47487, 'taken': {'charity': 21694, 'loan': 26792, 'parking': 21900, 'union': 5229}, 'arrears': {}}), ('normal control', {'gross': 13589, 'taxes': 714, 'deductions': [['charity', 299, 3, True]], 'arrears': {'charity': 4459}}, {'net': 8117, 'taken': {'charity': 4758}, 'arrears': {}}), ('normal control', {'gross': 33426, 'taxes': 5333, 'deductions': [['union', 35082, 2, False], ['loan', 36975, 1, True], ['support', 21693, 3, False], ['parking', 29816, 1, True]], 'arrears': {'union': 18802, 'support': 12060, 'parking': 10514}}, {'net': 0, 'taken': {'loan': 28093, 'parking': 0, 'union': 0, 'support': 0}, 'arrears': {'loan': 8882, 'parking': 40330, 'union': 53884, 'support': 33753}}), ('normal control', {'gross': 142935, 'taxes': 39131, 'deductions': [['parking', 22705, 2, False], ['charity', 7658, 1, True], ['union', 9456, 1, False]], 'arrears': {'charity': 15978}}, {'net': 48007, 'taken': {'charity': 23636, 'union': 9456, 'parking': 22705}, 'arrears': {}})], [('regression', {'gross': 37898, 'taxes': 10470, 'deductions': [['union', 18447, 3, False], ['parking', 30036, 3, True], ['support', 12641, 2, True], ['loan', 39343, 2, False], ['charity', 10333, 2, False]], 'arrears': {'parking': 13057, 'support': 19997}}, {'net': 0, 'taken': {'support': 27428, 'loan': 0, 'charity': 0, 'union': 0, 'parking': 0}, 'arrears': {'support': 5210, 'loan': 39343, 'charity': 10333, 'union': 18447, 'parking': 43093}}), ('regression', {'gross': 91681, 'taxes': 9563, 'deductions': [['union', 25760, 2, False], ['parking', 28566, 1, False], ['support', 8036, 1, False], ['medical', 15864, 1, False], ['charity', 5966, 2, True]], 'arrears': {'parking': 5836, 'support': 18944, 'charity': 5663}}, {'net': 0, 'taken': {'parking': 34402, 'support': 26980, 'medical': 15864, 'union': 0, 'charity': 4872}, 'arrears': {'union': 25760, 'charity': 6757}}), ('partial-repair probe', {'gross': 70795, 'taxes': 21939, 'deductions': [['charity', 32424, 2, True], ['union', 13741, 1, True], ['support', 37512, 1, True], ['loan', 10429, 3, False], ['parking', 8289, 3, False]], 'arrears': {'charity': 12305, 'union': 10397, 'support': 13769}}, {'net': 0, 'taken': {'union': 24138, 'support': 24718, 'charity': 0, 'loan': 0, 'parking': 0}, 'arrears': {'support': 26563, 'charity': 44729, 'loan': 10429, 'parking': 8289}}), ('partial-repair probe', {'gross': 75893, 'taxes': 4166, 'deductions': [['parking', 28979, 1, True], ['medical', 32307, 2, True], ['support', 39584, 3, True], ['loan', 36560, 1, True]], 'arrears': {'medical': 4976, 'loan': 12853}}, {'net': 0, 'taken': {'parking': 28979, 'loan': 42748, 'medical': 0, 'support': 0}, 'arrears': {'loan': 6665, 'medical': 37283, 'support': 39584}}), ('normal control', {'gross': 42097, 'taxes': 527, 'deductions': [['medical', 23283, 1, False], ['union', 33588, 1, False]], 'arrears': {}}, {'net': 18287, 'taken': {'medical': 23283, 'union': 0}, 'arrears': {'union': 33588}}), ('normal control', {'gross': 123929, 'taxes': 27738, 'deductions': [['parking', 24255, 3, False]], 'arrears': {}}, {'net': 71936, 'taken': {'parking': 24255}, 'arrears': {}}), ('normal control', {'gross': 18626, 'taxes': 5266, 'deductions': [['union', 19250, 2, False], ['medical', 18064, 1, False], ['parking', 36984, 1, False], ['charity', 38440, 1, True]], 'arrears': {'medical': 7698}}, {'net': 0, 'taken': {'medical': 0, 'parking': 0, 'charity': 13360, 'union': 0}, 'arrears': {'medical': 25762, 'parking': 36984, 'charity': 25080, 'union': 19250}}), ('normal control', {'gross': 121022, 'taxes': 14438, 'deductions': [['charity', 24183, 2, False], ['loan', 4420, 2, True]], 'arrears': {}}, {'net': 77981, 'taken': {'charity': 24183, 'loan': 4420}, 'arrears': {}})], [('regression', {'gross': 70795, 'taxes': 21939, 'deductions': [['charity', 32424, 2, True], ['union', 13741, 1, True], ['support', 37512, 1, True], ['loan', 10429, 3, False], ['parking', 8289, 3, False]], 'arrears': {'charity': 12305, 'union': 10397, 'support': 13769}}, {'net': 0, 'taken': {'union': 24138, 'support': 24718, 'charity': 0, 'loan': 0, 'parking': 0}, 'arrears': {'support': 26563, 'charity': 44729, 'loan': 10429, 'parking': 8289}}), ('regression', {'gross': 13592, 'taxes': 3481, 'deductions': [['union', 941, 2, False], ['medical', 37170, 2, False], ['charity', 11425, 3, True], ['support', 36894, 2, False], ['parking', 10277, 3, True]], 'arrears': {'medical': 2360}}, {'net': 0, 'taken': {'union': 941, 'medical': 0, 'support': 0, 'charity': 9170, 'parking': 0}, 'arrears': {'medical': 39530, 'support': 36894, 'charity': 2255, 'parking': 10277}}), ('partial-repair probe', {'gross': 75893, 'taxes': 4166, 'deductions': [['parking', 28979, 1, True], ['medical', 32307, 2, True], ['support', 39584, 3, True], ['loan', 36560, 1, True]], 'arrears': {'medical': 4976, 'loan': 12853}}, {'net': 0, 'taken': {'parking': 28979, 'loan': 42748, 'medical': 0, 'support': 0}, 'arrears': {'loan': 6665, 'medical': 37283, 'support': 39584}}), ('partial-repair probe', {'gross': 90353, 'taxes': 27655, 'deductions': [['charity', 13590, 1, False], ['support', 19892, 1, False], ['parking', 27727, 2, False], ['loan', 31849, 1, False]], 'arrears': {'support': 554, 'parking': 7070}}, {'net': 28662, 'taken': {'charity': 13590, 'support': 20446, 'loan': 0, 'parking': 0}, 'arrears': {'loan': 31849, 'parking': 34797}}), ('normal control', {'gross': 77237, 'taxes': 17252, 'deductions': [['medical', 39008, 2, True], ['charity', 8652, 1, False]], 'arrears': {'medical': 6588, 'charity': 5636}}, {'net': 101, 'taken': {'charity': 14288, 'medical': 45596}, 'arrears': {}}), ('normal control', {'gross': 131039, 'taxes': 2132, 'deductions': [['charity', 22460, 2, True], ['loan', 32332, 3, False]], 'arrears': {}}, {'net': 74115, 'taken': {'charity': 22460, 'loan': 32332}, 'arrears': {}}), ('normal control', {'gross': 35155, 'taxes': 4541, 'deductions': [['parking', 30989, 1, False], ['support', 32872, 1, False]], 'arrears': {'parking': 10286, 'support': 19476}}, {'net': 30614, 'taken': {'parking': 0, 'support': 0}, 'arrears': {'parking': 41275, 'support': 52348}}), ('normal control', {'gross': 93080, 'taxes': 11717, 'deductions': [['medical', 15825, 3, False]], 'arrears': {}}, {'net': 65538, 'taken': {'medical': 15825}, 'arrears': {}})], [('regression', {'gross': 75893, 'taxes': 4166, 'deductions': [['parking', 28979, 1, True], ['medical', 32307, 2, True], ['support', 39584, 3, True], ['loan', 36560, 1, True]], 'arrears': {'medical': 4976, 'loan': 12853}}, {'net': 0, 'taken': {'parking': 28979, 'loan': 42748, 'medical': 0, 'support': 0}, 'arrears': {'loan': 6665, 'medical': 37283, 'support': 39584}}), ('regression', {'gross': 32919, 'taxes': 7584, 'deductions': [['parking', 36420, 3, True], ['charity', 19693, 3, False], ['loan', 12305, 1, True], ['medical', 7400, 2, True], ['support', 39536, 2, True]], 'arrears': {}}, {'net': 0, 'taken': {'loan': 12305, 'medical': 7400, 'support': 5630, 'parking': 0, 'charity': 0}, 'arrears': {'support': 33906, 'parking': 36420, 'charity': 19693}}), ('partial-repair probe', {'gross': 75942, 'taxes': 7615, 'deductions': [['parking', 25077, 2, False], ['loan', 28426, 2, True], ['union', 34888, 3, True], ['support', 7824, 1, True], ['medical', 30567, 3, True]], 'arrears': {'union': 13295, 'medical': 8109}}, {'net': 0, 'taken': {'support': 7824, 'parking': 25077, 'loan': 28426, 'union': 7000, 'medical': 0}, 'arrears': {'union': 41183, 'medical': 38676}}), ('partial-repair probe', {'gross': 15439, 'taxes': 1016, 'deductions': [['support', 4501, 1, False], ['parking', 36906, 1, True]], 'arrears': {'support': 32}}, {'net': 0, 'taken': {'support': 4533, 'parking': 9890}, 'arrears': {'parking': 27016}}), ('normal control', {'gross': 46146, 'taxes': 9111, 'deductions': [['loan', 7074, 1, False]], 'arrears': {'loan': 552}}, {'net': 29409, 'taken': {'loan': 7626}, 'arrears': {}}), ('normal control', {'gross': 58263, 'taxes': 3517, 'deductions': [['loan', 34211, 3, False], ['support', 2445, 1, True], ['parking', 6724, 3, False]], 'arrears': {}}, {'net': 11366, 'taken': {'support': 2445, 'loan': 34211, 'parking': 6724}, 'arrears': {}}), ('normal control', {'gross': 133300, 'taxes': 877, 'deductions': [['loan', 8059, 1, False], ['support', 15673, 3, True], ['parking', 24069, 2, True], ['medical', 3549, 2, True], ['union', 35943, 1, False]], 'arrears': {'support': 13159, 'parking': 11492, 'medical': 4680}}, {'net': 15799, 'taken': {'loan': 8059, 'union': 35943, 'parking': 35561, 'medical': 8229, 'support': 28832}, 'arrears': {}}), ('normal control', {'gross': 77880, 'taxes': 19549, 'deductions': [['loan', 3379, 3, True]], 'arrears': {}}, {'net': 54952, 'taken': {'loan': 3379}, 'arrears': {}})]]
for i, (label, args, expected) in enumerate(fixtures[N-1]):
    check("%s %d" % (label, i), solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
regression 0{'arrears': {'charity': 28880, 'loan': 35591}, 'net': 0, 'taken': {'charity': 0, 'loan': 3253, 'support': 20513, 'union': 34056}}{'arrears': {'loan': 38844, 'support': 20513, 'union': 5114}, 'net': 0, 'taken': {'charity': 28880, 'loan': 0, 'support': 0, 'union': 28942}}Failed
regression 1{'arrears': {'loan': 24540, 'medical': 31805, 'support': 7298, 'union': 4345}, 'net': 0, 'taken': {'loan': 0, 'medical': 0, 'parking': 5700, 'support': 21, 'union': 0}}{'arrears': {'loan': 18819, 'medical': 31805, 'parking': 5700, 'support': 7319, 'union': 4345}, 'net': 0, 'taken': {'loan': 5721, 'medical': 0, 'parking': 0, 'support': 0, 'union': 0}}Failed
partial-repair probe 2{'arrears': {'charity': 46815, 'loan': 7578}, 'net': 0, 'taken': {'charity': 0, 'loan': 7484, 'parking': 33981}}{'arrears': {'charity': 46815, 'loan': 7578}, 'net': 0, 'taken': {'charity': 0, 'loan': 7484, 'parking': 33981}}Passed
partial-repair probe 3{'arrears': {'medical': 37176}, 'net': 2337, 'taken': {'charity': 7949, 'medical': 0, 'parking': 31674, 'support': 14261}}{'arrears': {'medical': 37176}, 'net': 2337, 'taken': {'charity': 7949, 'medical': 0, 'parking': 31674, 'support': 14261}}Passed
normal control 4{'arrears': {}, 'net': 20723, 'taken': {'loan': 28287, 'parking': 36947, 'support': 17878, 'union': 3364}}{'arrears': {}, 'net': 20723, 'taken': {'loan': 28287, 'parking': 36947, 'support': 17878, 'union': 3364}}Passed
normal control 5{'arrears': {}, 'net': 5188, 'taken': {'loan': 17345, 'medical': 35331, 'parking': 697, 'support': 32137, 'union': 23271}}{'arrears': {}, 'net': 5188, 'taken': {'loan': 17345, 'medical': 35331, 'parking': 697, 'support': 32137, 'union': 23271}}Passed
normal control 6{'arrears': {}, 'net': 53684, 'taken': {'medical': 32734}}{'arrears': {}, 'net': 53684, 'taken': {'medical': 32734}}Passed
normal control 7{'arrears': {}, 'net': 37285, 'taken': {'parking': 39254}}{'arrears': {}, 'net': 37285, 'taken': {'parking': 39254}}Passed

SHA-256 / c6997cabc1063ca17a3cc6bc522dddb21e1ceb9b3fa6215fdb64e602376705fb

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    avail = max(0, x['gross'] - x['taxes'])
    taken = {}
    arrears = {}
    for name, amt, pri, partial in sorted(x['deductions'], key=lambda d: (d[2], d[0])):
        due = amt + x['arrears'].get(name, 0)
        if due <= avail:
            take = due
        elif partial:
            take = avail
        else:
            take = 0
        avail -= take
        taken[name] = take
        if due - take > 0:
            arrears[name] = due - take
    return {'net': avail, 'taken': taken, 'arrears': arrears}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression', {'gross': 63849, 'taxes': 6027, 'deductions': [['union', 18684, 2, True], ['charity', 28880, 1, True], ['loan', 38844, 2, True], ['support', 20513, 3, False]], 'arrears': {'union': 15372}}, {'net': 0, 'taken': {'charity': 28880, 'union': 28942, 'loan': 0, 'support': 0}, 'arrears': {'union': 5114, 'loan': 38844, 'support': 20513}}), ('regression', {'gross': 6593, 'taxes': 872, 'deductions': [['parking', 5312, 3, False], ['union', 4345, 3, False], ['medical', 14587, 3, False], ['loan', 24540, 2, True], ['support', 7319, 3, True]], 'arrears': {'parking': 388, 'medical': 17218}}, {'net': 0, 'taken': {'loan': 5721, 'parking': 0, 'union': 0, 'medical': 0, 'support': 0}, 'arrears': {'loan': 18819, 'parking': 5700, 'union': 4345, 'medical': 31805, 'support': 7319}}), ('partial-repair probe', {'gross': 45406, 'taxes': 3941, 'deductions': [['parking', 32509, 3, True], ['loan', 15062, 3, True], ['charity', 31648, 1, False]], 'arrears': {'parking': 1472, 'charity': 15167}}, {'net': 0, 'taken': {'charity': 0, 'parking': 33981, 'loan': 7484}, 'arrears': {'charity': 46815, 'loan': 7578}}), ('partial-repair probe', {'gross': 71403, 'taxes': 15182, 'deductions': [['support', 561, 2, True], ['charity', 7949, 1, True], ['parking', 31674, 1, False], ['medical', 37176, 1, False]], 'arrears': {'support': 13700}}, {'net': 2337, 'taken': {'charity': 7949, 'parking': 31674, 'medical': 0, 'support': 14261}, 'arrears': {'medical': 37176}}), ('normal control', {'gross': 134653, 'taxes': 27454, 'deductions': [['parking', 26770, 3, False], ['loan', 12315, 2, False], ['union', 3364, 1, False], ['support', 11662, 3, True]], 'arrears': {'parking': 10177, 'loan': 15972, 'support': 6216}}, {'net': 20723, 'taken': {'union': 3364, 'loan': 28287, 'parking': 36947, 'support': 17878}, 'arrears': {}}), ('normal control', {'gross': 138327, 'taxes': 24358, 'deductions': [['loan', 12004, 3, True], ['union', 4120, 2, True], ['medical', 35331, 3, False], ['parking', 697, 1, True], ['support', 15166, 2, True]], 'arrears': {'loan': 5341, 'union': 19151, 'support': 16971}}, {'net': 5188, 'taken': {'parking': 697, 'union': 23271, 'support': 32137, 'loan': 17345, 'medical': 35331}, 'arrears': {}}), ('normal control', {'gross': 102757, 'taxes': 16339, 'deductions': [['medical', 20312, 1, False]], 'arrears': {'medical': 12422}}, {'net': 53684, 'taken': {'medical': 32734}, 'arrears': {}}), ('normal control', {'gross': 106436, 'taxes': 29897, 'deductions': [['parking', 39254, 1, True]], 'arrears': {}}, {'net': 37285, 'taken': {'parking': 39254}, 'arrears': {}})], [('regression', {'gross': 60703, 'taxes': 11543, 'deductions': [['support', 14720, 2, False], ['loan', 10777, 3, False], ['medical', 34788, 2, True]], 'arrears': {}}, {'net': 0, 'taken': {'support': 14720, 'medical': 34440, 'loan': 0}, 'arrears': {'medical': 348, 'loan': 10777}}), ('regression', {'gross': 3515, 'taxes': 674, 'deductions': [['parking', 20962, 1, False], ['union', 18985, 3, True], ['loan', 33701, 1, True]], 'arrears': {}}, {'net': 0, 'taken': {'parking': 0, 'loan': 2841, 'union': 0}, 'arrears': {'parking': 20962, 'loan': 30860, 'union': 18985}}), ('partial-repair probe', {'gross': 63849, 'taxes': 6027, 'deductions': [['union', 18684, 2, True], ['charity', 28880, 1, True], ['loan', 38844, 2, True], ['support', 20513, 3, False]], 'arrears': {'union': 15372}}, {'net': 0, 'taken': {'charity': 28880, 'union': 28942, 'loan': 0, 'support': 0}, 'arrears': {'union': 5114, 'loan': 38844, 'support': 20513}}), ('partial-repair probe', {'gross': 37898, 'taxes': 10470, 'deductions': [['union', 18447, 3, False], ['parking', 30036, 3, True], ['support', 12641, 2, True], ['loan', 39343, 2, False], ['charity', 10333, 2, False]], 'arrears': {'parking': 13057, 'support': 19997}}, {'net': 0, 'taken': {'support': 27428, 'loan': 0, 'charity': 0, 'union': 0, 'parking': 0}, 'arrears': {'support': 5210, 'loan': 39343, 'charity': 10333, 'union': 18447, 'parking': 43093}}), ('normal control', {'gross': 132719, 'taxes': 9617, 'deductions': [['charity', 21694, 1, False], ['loan', 11829, 1, True], ['parking', 18178, 3, True], ['union', 1782, 3, True]], 'arrears': {'loan': 14963, 'parking': 3722, 'union': 3447}}, {'net': 47487, 'taken': {'charity': 21694, 'loan': 26792, 'parking': 21900, 'union': 5229}, 'arrears': {}}), ('normal control', {'gross': 13589, 'taxes': 714, 'deductions': [['charity', 299, 3, True]], 'arrears': {'charity': 4459}}, {'net': 8117, 'taken': {'charity': 4758}, 'arrears': {}}), ('normal control', {'gross': 33426, 'taxes': 5333, 'deductions': [['union', 35082, 2, False], ['loan', 36975, 1, True], ['support', 21693, 3, False], ['parking', 29816, 1, True]], 'arrears': {'union': 18802, 'support': 12060, 'parking': 10514}}, {'net': 0, 'taken': {'loan': 28093, 'parking': 0, 'union': 0, 'support': 0}, 'arrears': {'loan': 8882, 'parking': 40330, 'union': 53884, 'support': 33753}}), ('normal control', {'gross': 142935, 'taxes': 39131, 'deductions': [['parking', 22705, 2, False], ['charity', 7658, 1, True], ['union', 9456, 1, False]], 'arrears': {'charity': 15978}}, {'net': 48007, 'taken': {'charity': 23636, 'union': 9456, 'parking': 22705}, 'arrears': {}})], [('regression', {'gross': 37898, 'taxes': 10470, 'deductions': [['union', 18447, 3, False], ['parking', 30036, 3, True], ['support', 12641, 2, True], ['loan', 39343, 2, False], ['charity', 10333, 2, False]], 'arrears': {'parking': 13057, 'support': 19997}}, {'net': 0, 'taken': {'support': 27428, 'loan': 0, 'charity': 0, 'union': 0, 'parking': 0}, 'arrears': {'support': 5210, 'loan': 39343, 'charity': 10333, 'union': 18447, 'parking': 43093}}), ('regression', {'gross': 91681, 'taxes': 9563, 'deductions': [['union', 25760, 2, False], ['parking', 28566, 1, False], ['support', 8036, 1, False], ['medical', 15864, 1, False], ['charity', 5966, 2, True]], 'arrears': {'parking': 5836, 'support': 18944, 'charity': 5663}}, {'net': 0, 'taken': {'parking': 34402, 'support': 26980, 'medical': 15864, 'union': 0, 'charity': 4872}, 'arrears': {'union': 25760, 'charity': 6757}}), ('partial-repair probe', {'gross': 70795, 'taxes': 21939, 'deductions': [['charity', 32424, 2, True], ['union', 13741, 1, True], ['support', 37512, 1, True], ['loan', 10429, 3, False], ['parking', 8289, 3, False]], 'arrears': {'charity': 12305, 'union': 10397, 'support': 13769}}, {'net': 0, 'taken': {'union': 24138, 'support': 24718, 'charity': 0, 'loan': 0, 'parking': 0}, 'arrears': {'support': 26563, 'charity': 44729, 'loan': 10429, 'parking': 8289}}), ('partial-repair probe', {'gross': 75893, 'taxes': 4166, 'deductions': [['parking', 28979, 1, True], ['medical', 32307, 2, True], ['support', 39584, 3, True], ['loan', 36560, 1, True]], 'arrears': {'medical': 4976, 'loan': 12853}}, {'net': 0, 'taken': {'parking': 28979, 'loan': 42748, 'medical': 0, 'support': 0}, 'arrears': {'loan': 6665, 'medical': 37283, 'support': 39584}}), ('normal control', {'gross': 42097, 'taxes': 527, 'deductions': [['medical', 23283, 1, False], ['union', 33588, 1, False]], 'arrears': {}}, {'net': 18287, 'taken': {'medical': 23283, 'union': 0}, 'arrears': {'union': 33588}}), ('normal control', {'gross': 123929, 'taxes': 27738, 'deductions': [['parking', 24255, 3, False]], 'arrears': {}}, {'net': 71936, 'taken': {'parking': 24255}, 'arrears': {}}), ('normal control', {'gross': 18626, 'taxes': 5266, 'deductions': [['union', 19250, 2, False], ['medical', 18064, 1, False], ['parking', 36984, 1, False], ['charity', 38440, 1, True]], 'arrears': {'medical': 7698}}, {'net': 0, 'taken': {'medical': 0, 'parking': 0, 'charity': 13360, 'union': 0}, 'arrears': {'medical': 25762, 'parking': 36984, 'charity': 25080, 'union': 19250}}), ('normal control', {'gross': 121022, 'taxes': 14438, 'deductions': [['charity', 24183, 2, False], ['loan', 4420, 2, True]], 'arrears': {}}, {'net': 77981, 'taken': {'charity': 24183, 'loan': 4420}, 'arrears': {}})], [('regression', {'gross': 70795, 'taxes': 21939, 'deductions': [['charity', 32424, 2, True], ['union', 13741, 1, True], ['support', 37512, 1, True], ['loan', 10429, 3, False], ['parking', 8289, 3, False]], 'arrears': {'charity': 12305, 'union': 10397, 'support': 13769}}, {'net': 0, 'taken': {'union': 24138, 'support': 24718, 'charity': 0, 'loan': 0, 'parking': 0}, 'arrears': {'support': 26563, 'charity': 44729, 'loan': 10429, 'parking': 8289}}), ('regression', {'gross': 13592, 'taxes': 3481, 'deductions': [['union', 941, 2, False], ['medical', 37170, 2, False], ['charity', 11425, 3, True], ['support', 36894, 2, False], ['parking', 10277, 3, True]], 'arrears': {'medical': 2360}}, {'net': 0, 'taken': {'union': 941, 'medical': 0, 'support': 0, 'charity': 9170, 'parking': 0}, 'arrears': {'medical': 39530, 'support': 36894, 'charity': 2255, 'parking': 10277}}), ('partial-repair probe', {'gross': 75893, 'taxes': 4166, 'deductions': [['parking', 28979, 1, True], ['medical', 32307, 2, True], ['support', 39584, 3, True], ['loan', 36560, 1, True]], 'arrears': {'medical': 4976, 'loan': 12853}}, {'net': 0, 'taken': {'parking': 28979, 'loan': 42748, 'medical': 0, 'support': 0}, 'arrears': {'loan': 6665, 'medical': 37283, 'support': 39584}}), ('partial-repair probe', {'gross': 90353, 'taxes': 27655, 'deductions': [['charity', 13590, 1, False], ['support', 19892, 1, False], ['parking', 27727, 2, False], ['loan', 31849, 1, False]], 'arrears': {'support': 554, 'parking': 7070}}, {'net': 28662, 'taken': {'charity': 13590, 'support': 20446, 'loan': 0, 'parking': 0}, 'arrears': {'loan': 31849, 'parking': 34797}}), ('normal control', {'gross': 77237, 'taxes': 17252, 'deductions': [['medical', 39008, 2, True], ['charity', 8652, 1, False]], 'arrears': {'medical': 6588, 'charity': 5636}}, {'net': 101, 'taken': {'charity': 14288, 'medical': 45596}, 'arrears': {}}), ('normal control', {'gross': 131039, 'taxes': 2132, 'deductions': [['charity', 22460, 2, True], ['loan', 32332, 3, False]], 'arrears': {}}, {'net': 74115, 'taken': {'charity': 22460, 'loan': 32332}, 'arrears': {}}), ('normal control', {'gross': 35155, 'taxes': 4541, 'deductions': [['parking', 30989, 1, False], ['support', 32872, 1, False]], 'arrears': {'parking': 10286, 'support': 19476}}, {'net': 30614, 'taken': {'parking': 0, 'support': 0}, 'arrears': {'parking': 41275, 'support': 52348}}), ('normal control', {'gross': 93080, 'taxes': 11717, 'deductions': [['medical', 15825, 3, False]], 'arrears': {}}, {'net': 65538, 'taken': {'medical': 15825}, 'arrears': {}})], [('regression', {'gross': 75893, 'taxes': 4166, 'deductions': [['parking', 28979, 1, True], ['medical', 32307, 2, True], ['support', 39584, 3, True], ['loan', 36560, 1, True]], 'arrears': {'medical': 4976, 'loan': 12853}}, {'net': 0, 'taken': {'parking': 28979, 'loan': 42748, 'medical': 0, 'support': 0}, 'arrears': {'loan': 6665, 'medical': 37283, 'support': 39584}}), ('regression', {'gross': 32919, 'taxes': 7584, 'deductions': [['parking', 36420, 3, True], ['charity', 19693, 3, False], ['loan', 12305, 1, True], ['medical', 7400, 2, True], ['support', 39536, 2, True]], 'arrears': {}}, {'net': 0, 'taken': {'loan': 12305, 'medical': 7400, 'support': 5630, 'parking': 0, 'charity': 0}, 'arrears': {'support': 33906, 'parking': 36420, 'charity': 19693}}), ('partial-repair probe', {'gross': 75942, 'taxes': 7615, 'deductions': [['parking', 25077, 2, False], ['loan', 28426, 2, True], ['union', 34888, 3, True], ['support', 7824, 1, True], ['medical', 30567, 3, True]], 'arrears': {'union': 13295, 'medical': 8109}}, {'net': 0, 'taken': {'support': 7824, 'parking': 25077, 'loan': 28426, 'union': 7000, 'medical': 0}, 'arrears': {'union': 41183, 'medical': 38676}}), ('partial-repair probe', {'gross': 15439, 'taxes': 1016, 'deductions': [['support', 4501, 1, False], ['parking', 36906, 1, True]], 'arrears': {'support': 32}}, {'net': 0, 'taken': {'support': 4533, 'parking': 9890}, 'arrears': {'parking': 27016}}), ('normal control', {'gross': 46146, 'taxes': 9111, 'deductions': [['loan', 7074, 1, False]], 'arrears': {'loan': 552}}, {'net': 29409, 'taken': {'loan': 7626}, 'arrears': {}}), ('normal control', {'gross': 58263, 'taxes': 3517, 'deductions': [['loan', 34211, 3, False], ['support', 2445, 1, True], ['parking', 6724, 3, False]], 'arrears': {}}, {'net': 11366, 'taken': {'support': 2445, 'loan': 34211, 'parking': 6724}, 'arrears': {}}), ('normal control', {'gross': 133300, 'taxes': 877, 'deductions': [['loan', 8059, 1, False], ['support', 15673, 3, True], ['parking', 24069, 2, True], ['medical', 3549, 2, True], ['union', 35943, 1, False]], 'arrears': {'support': 13159, 'parking': 11492, 'medical': 4680}}, {'net': 15799, 'taken': {'loan': 8059, 'union': 35943, 'parking': 35561, 'medical': 8229, 'support': 28832}, 'arrears': {}}), ('normal control', {'gross': 77880, 'taxes': 19549, 'deductions': [['loan', 3379, 3, True]], 'arrears': {}}, {'net': 54952, 'taken': {'loan': 3379}, 'arrears': {}})]]
for i, (label, args, expected) in enumerate(fixtures[N-1]):
    check("%s %d" % (label, i), solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
regression 0{'arrears': {'loan': 9902, 'support': 20513, 'union': 34056}, 'net': 0, 'taken': {'charity': 28880, 'loan': 28942, 'support': 0, 'union': 0}}{'arrears': {'loan': 38844, 'support': 20513, 'union': 5114}, 'net': 0, 'taken': {'charity': 28880, 'loan': 0, 'support': 0, 'union': 28942}}Failed
regression 1{'arrears': {'loan': 18819, 'medical': 31805, 'parking': 5700, 'support': 7319, 'union': 4345}, 'net': 0, 'taken': {'loan': 5721, 'medical': 0, 'parking': 0, 'support': 0, 'union': 0}}{'arrears': {'loan': 18819, 'medical': 31805, 'parking': 5700, 'support': 7319, 'union': 4345}, 'net': 0, 'taken': {'loan': 5721, 'medical': 0, 'parking': 0, 'support': 0, 'union': 0}}Passed
partial-repair probe 2{'arrears': {'charity': 46815, 'parking': 7578}, 'net': 0, 'taken': {'charity': 0, 'loan': 15062, 'parking': 26403}}{'arrears': {'charity': 46815, 'loan': 7578}, 'net': 0, 'taken': {'charity': 0, 'loan': 7484, 'parking': 33981}}Failed
partial-repair probe 3{'arrears': {'parking': 31674, 'support': 3165}, 'net': 0, 'taken': {'charity': 7949, 'medical': 37176, 'parking': 0, 'support': 11096}}{'arrears': {'medical': 37176}, 'net': 2337, 'taken': {'charity': 7949, 'medical': 0, 'parking': 31674, 'support': 14261}}Failed
normal control 4{'arrears': {}, 'net': 20723, 'taken': {'loan': 28287, 'parking': 36947, 'support': 17878, 'union': 3364}}{'arrears': {}, 'net': 20723, 'taken': {'loan': 28287, 'parking': 36947, 'support': 17878, 'union': 3364}}Passed
normal control 5{'arrears': {}, 'net': 5188, 'taken': {'loan': 17345, 'medical': 35331, 'parking': 697, 'support': 32137, 'union': 23271}}{'arrears': {}, 'net': 5188, 'taken': {'loan': 17345, 'medical': 35331, 'parking': 697, 'support': 32137, 'union': 23271}}Passed
normal control 6{'arrears': {}, 'net': 53684, 'taken': {'medical': 32734}}{'arrears': {}, 'net': 53684, 'taken': {'medical': 32734}}Passed
normal control 7{'arrears': {}, 'net': 37285, 'taken': {'parking': 39254}}{'arrears': {}, 'net': 37285, 'taken': {'parking': 39254}}Passed

SHA-256 / 0901f0da777ebc87c5e19215f05bfb3591857908edad251b3bada976da0d7cbf

3 / The verified repair

Exit 0
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    avail = max(0, x['gross'] - x['taxes'])
    taken = {}
    arrears = {}
    for name, amt, pri, partial in sorted(x['deductions'], key=lambda d: d[2]):
        due = amt + x['arrears'].get(name, 0)
        if due <= avail:
            take = due
        elif partial:
            take = avail
        else:
            take = 0
        avail -= take
        taken[name] = take
        if due - take > 0:
            arrears[name] = due - take
    return {'net': avail, 'taken': taken, 'arrears': arrears}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression', {'gross': 63849, 'taxes': 6027, 'deductions': [['union', 18684, 2, True], ['charity', 28880, 1, True], ['loan', 38844, 2, True], ['support', 20513, 3, False]], 'arrears': {'union': 15372}}, {'net': 0, 'taken': {'charity': 28880, 'union': 28942, 'loan': 0, 'support': 0}, 'arrears': {'union': 5114, 'loan': 38844, 'support': 20513}}), ('regression', {'gross': 6593, 'taxes': 872, 'deductions': [['parking', 5312, 3, False], ['union', 4345, 3, False], ['medical', 14587, 3, False], ['loan', 24540, 2, True], ['support', 7319, 3, True]], 'arrears': {'parking': 388, 'medical': 17218}}, {'net': 0, 'taken': {'loan': 5721, 'parking': 0, 'union': 0, 'medical': 0, 'support': 0}, 'arrears': {'loan': 18819, 'parking': 5700, 'union': 4345, 'medical': 31805, 'support': 7319}}), ('partial-repair probe', {'gross': 45406, 'taxes': 3941, 'deductions': [['parking', 32509, 3, True], ['loan', 15062, 3, True], ['charity', 31648, 1, False]], 'arrears': {'parking': 1472, 'charity': 15167}}, {'net': 0, 'taken': {'charity': 0, 'parking': 33981, 'loan': 7484}, 'arrears': {'charity': 46815, 'loan': 7578}}), ('partial-repair probe', {'gross': 71403, 'taxes': 15182, 'deductions': [['support', 561, 2, True], ['charity', 7949, 1, True], ['parking', 31674, 1, False], ['medical', 37176, 1, False]], 'arrears': {'support': 13700}}, {'net': 2337, 'taken': {'charity': 7949, 'parking': 31674, 'medical': 0, 'support': 14261}, 'arrears': {'medical': 37176}}), ('normal control', {'gross': 134653, 'taxes': 27454, 'deductions': [['parking', 26770, 3, False], ['loan', 12315, 2, False], ['union', 3364, 1, False], ['support', 11662, 3, True]], 'arrears': {'parking': 10177, 'loan': 15972, 'support': 6216}}, {'net': 20723, 'taken': {'union': 3364, 'loan': 28287, 'parking': 36947, 'support': 17878}, 'arrears': {}}), ('normal control', {'gross': 138327, 'taxes': 24358, 'deductions': [['loan', 12004, 3, True], ['union', 4120, 2, True], ['medical', 35331, 3, False], ['parking', 697, 1, True], ['support', 15166, 2, True]], 'arrears': {'loan': 5341, 'union': 19151, 'support': 16971}}, {'net': 5188, 'taken': {'parking': 697, 'union': 23271, 'support': 32137, 'loan': 17345, 'medical': 35331}, 'arrears': {}}), ('normal control', {'gross': 102757, 'taxes': 16339, 'deductions': [['medical', 20312, 1, False]], 'arrears': {'medical': 12422}}, {'net': 53684, 'taken': {'medical': 32734}, 'arrears': {}}), ('normal control', {'gross': 106436, 'taxes': 29897, 'deductions': [['parking', 39254, 1, True]], 'arrears': {}}, {'net': 37285, 'taken': {'parking': 39254}, 'arrears': {}})], [('regression', {'gross': 60703, 'taxes': 11543, 'deductions': [['support', 14720, 2, False], ['loan', 10777, 3, False], ['medical', 34788, 2, True]], 'arrears': {}}, {'net': 0, 'taken': {'support': 14720, 'medical': 34440, 'loan': 0}, 'arrears': {'medical': 348, 'loan': 10777}}), ('regression', {'gross': 3515, 'taxes': 674, 'deductions': [['parking', 20962, 1, False], ['union', 18985, 3, True], ['loan', 33701, 1, True]], 'arrears': {}}, {'net': 0, 'taken': {'parking': 0, 'loan': 2841, 'union': 0}, 'arrears': {'parking': 20962, 'loan': 30860, 'union': 18985}}), ('partial-repair probe', {'gross': 63849, 'taxes': 6027, 'deductions': [['union', 18684, 2, True], ['charity', 28880, 1, True], ['loan', 38844, 2, True], ['support', 20513, 3, False]], 'arrears': {'union': 15372}}, {'net': 0, 'taken': {'charity': 28880, 'union': 28942, 'loan': 0, 'support': 0}, 'arrears': {'union': 5114, 'loan': 38844, 'support': 20513}}), ('partial-repair probe', {'gross': 37898, 'taxes': 10470, 'deductions': [['union', 18447, 3, False], ['parking', 30036, 3, True], ['support', 12641, 2, True], ['loan', 39343, 2, False], ['charity', 10333, 2, False]], 'arrears': {'parking': 13057, 'support': 19997}}, {'net': 0, 'taken': {'support': 27428, 'loan': 0, 'charity': 0, 'union': 0, 'parking': 0}, 'arrears': {'support': 5210, 'loan': 39343, 'charity': 10333, 'union': 18447, 'parking': 43093}}), ('normal control', {'gross': 132719, 'taxes': 9617, 'deductions': [['charity', 21694, 1, False], ['loan', 11829, 1, True], ['parking', 18178, 3, True], ['union', 1782, 3, True]], 'arrears': {'loan': 14963, 'parking': 3722, 'union': 3447}}, {'net': 47487, 'taken': {'charity': 21694, 'loan': 26792, 'parking': 21900, 'union': 5229}, 'arrears': {}}), ('normal control', {'gross': 13589, 'taxes': 714, 'deductions': [['charity', 299, 3, True]], 'arrears': {'charity': 4459}}, {'net': 8117, 'taken': {'charity': 4758}, 'arrears': {}}), ('normal control', {'gross': 33426, 'taxes': 5333, 'deductions': [['union', 35082, 2, False], ['loan', 36975, 1, True], ['support', 21693, 3, False], ['parking', 29816, 1, True]], 'arrears': {'union': 18802, 'support': 12060, 'parking': 10514}}, {'net': 0, 'taken': {'loan': 28093, 'parking': 0, 'union': 0, 'support': 0}, 'arrears': {'loan': 8882, 'parking': 40330, 'union': 53884, 'support': 33753}}), ('normal control', {'gross': 142935, 'taxes': 39131, 'deductions': [['parking', 22705, 2, False], ['charity', 7658, 1, True], ['union', 9456, 1, False]], 'arrears': {'charity': 15978}}, {'net': 48007, 'taken': {'charity': 23636, 'union': 9456, 'parking': 22705}, 'arrears': {}})], [('regression', {'gross': 37898, 'taxes': 10470, 'deductions': [['union', 18447, 3, False], ['parking', 30036, 3, True], ['support', 12641, 2, True], ['loan', 39343, 2, False], ['charity', 10333, 2, False]], 'arrears': {'parking': 13057, 'support': 19997}}, {'net': 0, 'taken': {'support': 27428, 'loan': 0, 'charity': 0, 'union': 0, 'parking': 0}, 'arrears': {'support': 5210, 'loan': 39343, 'charity': 10333, 'union': 18447, 'parking': 43093}}), ('regression', {'gross': 91681, 'taxes': 9563, 'deductions': [['union', 25760, 2, False], ['parking', 28566, 1, False], ['support', 8036, 1, False], ['medical', 15864, 1, False], ['charity', 5966, 2, True]], 'arrears': {'parking': 5836, 'support': 18944, 'charity': 5663}}, {'net': 0, 'taken': {'parking': 34402, 'support': 26980, 'medical': 15864, 'union': 0, 'charity': 4872}, 'arrears': {'union': 25760, 'charity': 6757}}), ('partial-repair probe', {'gross': 70795, 'taxes': 21939, 'deductions': [['charity', 32424, 2, True], ['union', 13741, 1, True], ['support', 37512, 1, True], ['loan', 10429, 3, False], ['parking', 8289, 3, False]], 'arrears': {'charity': 12305, 'union': 10397, 'support': 13769}}, {'net': 0, 'taken': {'union': 24138, 'support': 24718, 'charity': 0, 'loan': 0, 'parking': 0}, 'arrears': {'support': 26563, 'charity': 44729, 'loan': 10429, 'parking': 8289}}), ('partial-repair probe', {'gross': 75893, 'taxes': 4166, 'deductions': [['parking', 28979, 1, True], ['medical', 32307, 2, True], ['support', 39584, 3, True], ['loan', 36560, 1, True]], 'arrears': {'medical': 4976, 'loan': 12853}}, {'net': 0, 'taken': {'parking': 28979, 'loan': 42748, 'medical': 0, 'support': 0}, 'arrears': {'loan': 6665, 'medical': 37283, 'support': 39584}}), ('normal control', {'gross': 42097, 'taxes': 527, 'deductions': [['medical', 23283, 1, False], ['union', 33588, 1, False]], 'arrears': {}}, {'net': 18287, 'taken': {'medical': 23283, 'union': 0}, 'arrears': {'union': 33588}}), ('normal control', {'gross': 123929, 'taxes': 27738, 'deductions': [['parking', 24255, 3, False]], 'arrears': {}}, {'net': 71936, 'taken': {'parking': 24255}, 'arrears': {}}), ('normal control', {'gross': 18626, 'taxes': 5266, 'deductions': [['union', 19250, 2, False], ['medical', 18064, 1, False], ['parking', 36984, 1, False], ['charity', 38440, 1, True]], 'arrears': {'medical': 7698}}, {'net': 0, 'taken': {'medical': 0, 'parking': 0, 'charity': 13360, 'union': 0}, 'arrears': {'medical': 25762, 'parking': 36984, 'charity': 25080, 'union': 19250}}), ('normal control', {'gross': 121022, 'taxes': 14438, 'deductions': [['charity', 24183, 2, False], ['loan', 4420, 2, True]], 'arrears': {}}, {'net': 77981, 'taken': {'charity': 24183, 'loan': 4420}, 'arrears': {}})], [('regression', {'gross': 70795, 'taxes': 21939, 'deductions': [['charity', 32424, 2, True], ['union', 13741, 1, True], ['support', 37512, 1, True], ['loan', 10429, 3, False], ['parking', 8289, 3, False]], 'arrears': {'charity': 12305, 'union': 10397, 'support': 13769}}, {'net': 0, 'taken': {'union': 24138, 'support': 24718, 'charity': 0, 'loan': 0, 'parking': 0}, 'arrears': {'support': 26563, 'charity': 44729, 'loan': 10429, 'parking': 8289}}), ('regression', {'gross': 13592, 'taxes': 3481, 'deductions': [['union', 941, 2, False], ['medical', 37170, 2, False], ['charity', 11425, 3, True], ['support', 36894, 2, False], ['parking', 10277, 3, True]], 'arrears': {'medical': 2360}}, {'net': 0, 'taken': {'union': 941, 'medical': 0, 'support': 0, 'charity': 9170, 'parking': 0}, 'arrears': {'medical': 39530, 'support': 36894, 'charity': 2255, 'parking': 10277}}), ('partial-repair probe', {'gross': 75893, 'taxes': 4166, 'deductions': [['parking', 28979, 1, True], ['medical', 32307, 2, True], ['support', 39584, 3, True], ['loan', 36560, 1, True]], 'arrears': {'medical': 4976, 'loan': 12853}}, {'net': 0, 'taken': {'parking': 28979, 'loan': 42748, 'medical': 0, 'support': 0}, 'arrears': {'loan': 6665, 'medical': 37283, 'support': 39584}}), ('partial-repair probe', {'gross': 90353, 'taxes': 27655, 'deductions': [['charity', 13590, 1, False], ['support', 19892, 1, False], ['parking', 27727, 2, False], ['loan', 31849, 1, False]], 'arrears': {'support': 554, 'parking': 7070}}, {'net': 28662, 'taken': {'charity': 13590, 'support': 20446, 'loan': 0, 'parking': 0}, 'arrears': {'loan': 31849, 'parking': 34797}}), ('normal control', {'gross': 77237, 'taxes': 17252, 'deductions': [['medical', 39008, 2, True], ['charity', 8652, 1, False]], 'arrears': {'medical': 6588, 'charity': 5636}}, {'net': 101, 'taken': {'charity': 14288, 'medical': 45596}, 'arrears': {}}), ('normal control', {'gross': 131039, 'taxes': 2132, 'deductions': [['charity', 22460, 2, True], ['loan', 32332, 3, False]], 'arrears': {}}, {'net': 74115, 'taken': {'charity': 22460, 'loan': 32332}, 'arrears': {}}), ('normal control', {'gross': 35155, 'taxes': 4541, 'deductions': [['parking', 30989, 1, False], ['support', 32872, 1, False]], 'arrears': {'parking': 10286, 'support': 19476}}, {'net': 30614, 'taken': {'parking': 0, 'support': 0}, 'arrears': {'parking': 41275, 'support': 52348}}), ('normal control', {'gross': 93080, 'taxes': 11717, 'deductions': [['medical', 15825, 3, False]], 'arrears': {}}, {'net': 65538, 'taken': {'medical': 15825}, 'arrears': {}})], [('regression', {'gross': 75893, 'taxes': 4166, 'deductions': [['parking', 28979, 1, True], ['medical', 32307, 2, True], ['support', 39584, 3, True], ['loan', 36560, 1, True]], 'arrears': {'medical': 4976, 'loan': 12853}}, {'net': 0, 'taken': {'parking': 28979, 'loan': 42748, 'medical': 0, 'support': 0}, 'arrears': {'loan': 6665, 'medical': 37283, 'support': 39584}}), ('regression', {'gross': 32919, 'taxes': 7584, 'deductions': [['parking', 36420, 3, True], ['charity', 19693, 3, False], ['loan', 12305, 1, True], ['medical', 7400, 2, True], ['support', 39536, 2, True]], 'arrears': {}}, {'net': 0, 'taken': {'loan': 12305, 'medical': 7400, 'support': 5630, 'parking': 0, 'charity': 0}, 'arrears': {'support': 33906, 'parking': 36420, 'charity': 19693}}), ('partial-repair probe', {'gross': 75942, 'taxes': 7615, 'deductions': [['parking', 25077, 2, False], ['loan', 28426, 2, True], ['union', 34888, 3, True], ['support', 7824, 1, True], ['medical', 30567, 3, True]], 'arrears': {'union': 13295, 'medical': 8109}}, {'net': 0, 'taken': {'support': 7824, 'parking': 25077, 'loan': 28426, 'union': 7000, 'medical': 0}, 'arrears': {'union': 41183, 'medical': 38676}}), ('partial-repair probe', {'gross': 15439, 'taxes': 1016, 'deductions': [['support', 4501, 1, False], ['parking', 36906, 1, True]], 'arrears': {'support': 32}}, {'net': 0, 'taken': {'support': 4533, 'parking': 9890}, 'arrears': {'parking': 27016}}), ('normal control', {'gross': 46146, 'taxes': 9111, 'deductions': [['loan', 7074, 1, False]], 'arrears': {'loan': 552}}, {'net': 29409, 'taken': {'loan': 7626}, 'arrears': {}}), ('normal control', {'gross': 58263, 'taxes': 3517, 'deductions': [['loan', 34211, 3, False], ['support', 2445, 1, True], ['parking', 6724, 3, False]], 'arrears': {}}, {'net': 11366, 'taken': {'support': 2445, 'loan': 34211, 'parking': 6724}, 'arrears': {}}), ('normal control', {'gross': 133300, 'taxes': 877, 'deductions': [['loan', 8059, 1, False], ['support', 15673, 3, True], ['parking', 24069, 2, True], ['medical', 3549, 2, True], ['union', 35943, 1, False]], 'arrears': {'support': 13159, 'parking': 11492, 'medical': 4680}}, {'net': 15799, 'taken': {'loan': 8059, 'union': 35943, 'parking': 35561, 'medical': 8229, 'support': 28832}, 'arrears': {}}), ('normal control', {'gross': 77880, 'taxes': 19549, 'deductions': [['loan', 3379, 3, True]], 'arrears': {}}, {'net': 54952, 'taken': {'loan': 3379}, 'arrears': {}})]]
for i, (label, args, expected) in enumerate(fixtures[N-1]):
    check("%s %d" % (label, i), solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
regression 0{'arrears': {'loan': 38844, 'support': 20513, 'union': 5114}, 'net': 0, 'taken': {'charity': 28880, 'loan': 0, 'support': 0, 'union': 28942}}{'arrears': {'loan': 38844, 'support': 20513, 'union': 5114}, 'net': 0, 'taken': {'charity': 28880, 'loan': 0, 'support': 0, 'union': 28942}}Passed
regression 1{'arrears': {'loan': 18819, 'medical': 31805, 'parking': 5700, 'support': 7319, 'union': 4345}, 'net': 0, 'taken': {'loan': 5721, 'medical': 0, 'parking': 0, 'support': 0, 'union': 0}}{'arrears': {'loan': 18819, 'medical': 31805, 'parking': 5700, 'support': 7319, 'union': 4345}, 'net': 0, 'taken': {'loan': 5721, 'medical': 0, 'parking': 0, 'support': 0, 'union': 0}}Passed
partial-repair probe 2{'arrears': {'charity': 46815, 'loan': 7578}, 'net': 0, 'taken': {'charity': 0, 'loan': 7484, 'parking': 33981}}{'arrears': {'charity': 46815, 'loan': 7578}, 'net': 0, 'taken': {'charity': 0, 'loan': 7484, 'parking': 33981}}Passed
partial-repair probe 3{'arrears': {'medical': 37176}, 'net': 2337, 'taken': {'charity': 7949, 'medical': 0, 'parking': 31674, 'support': 14261}}{'arrears': {'medical': 37176}, 'net': 2337, 'taken': {'charity': 7949, 'medical': 0, 'parking': 31674, 'support': 14261}}Passed
normal control 4{'arrears': {}, 'net': 20723, 'taken': {'loan': 28287, 'parking': 36947, 'support': 17878, 'union': 3364}}{'arrears': {}, 'net': 20723, 'taken': {'loan': 28287, 'parking': 36947, 'support': 17878, 'union': 3364}}Passed
normal control 5{'arrears': {}, 'net': 5188, 'taken': {'loan': 17345, 'medical': 35331, 'parking': 697, 'support': 32137, 'union': 23271}}{'arrears': {}, 'net': 5188, 'taken': {'loan': 17345, 'medical': 35331, 'parking': 697, 'support': 32137, 'union': 23271}}Passed
normal control 6{'arrears': {}, 'net': 53684, 'taken': {'medical': 32734}}{'arrears': {}, 'net': 53684, 'taken': {'medical': 32734}}Passed
normal control 7{'arrears': {}, 'net': 37285, 'taken': {'parking': 39254}}{'arrears': {}, 'net': 37285, 'taken': {'parking': 39254}}Passed

SHA-256 / ffa4c261cf5de0ef9463e0003a4b723ec5f0e26cfceb743c11d58a0d33db494a

Verification & scope

A deterministic teaching model of a stipulated payroll rule with toy thresholds and rates. It makes no claim of conformance to any tax authority, statute or jurisdiction and is not payroll software. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.

Observations recorded using Python 3.12.14 at 2026-09-29T14:46:32.843460+00:00.

Case digest / e38650f6ca417143186531a7da53d635b5ecd4f5038980adec8f5f51621d329e