FAILURE MAP
← Case archive

FA-95736 / Shipping rate zone lookup / Open access

Area surcharge: ZIP+4 read as nine digits · case 01

ZIP+4 addresses are never surcharged because the nine-digit number exceeds every range.

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

ROOT CAUSE

The hyphen is removed and all nine digits are parsed.

VERIFIED REPAIR

Use the first five digits.

Unsuccessful approach: Taking the last hyphen segment parses the +4 extension for ZIP+4 input.

Case contract

zip5 is a five-digit ZIP or ZIP+4. ranges [[lo, hi, code]] are non-overlapping inclusive five-digit ranges in any order. Look up the range containing the ZIP (sorted ranges, binary search) and return [code, fee] with DAS 395, EXT 510, REMOTE 1500 cents; uncovered ZIPs -> ["NONE", 0].

Why this case matters

Delivery area surcharges are keyed by destination ZIP ranges.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
import bisect
N = 1
observations = []
def solve(zip5, ranges):
    z = int(zip5.replace('-', ''))
    rs = sorted(ranges)
    los = [r[0] for r in rs]
    i = bisect.bisect_right(los, z) - 1
    if i >= 0 and z <= rs[i][1]:
        code = rs[i][2]
    else:
        code = 'NONE'
    return [code, {'NONE': 0, 'DAS': 395, 'EXT': 510, 'REMOTE': 1500}[code]]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['zip plus four', ['59999-1234', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]], ['generated mix 11', ['30000-0001', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['range start', ['10000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['gap', ['10100', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['single zip range', ['30000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['middle', ['20500', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['EXT', 510]], ['range end', ['10099', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 6', ['59000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]]], [['generated mix 60', ['10000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 48', ['59000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]], ['below first', ['09999', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['single zip range', ['30000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['middle', ['20500', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['EXT', 510]], ['range end', ['10099', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 8', ['60000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['generated mix 16', ['30000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]]], [['generated mix 38', ['10050-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 11', ['30000-0001', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['above all', ['99999', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['range start', ['10000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['gap', ['10100', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['zip plus four', ['59999-1234', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]], ['generated mix 20', ['10099', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 28', ['21000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]]], [['generated mix 11', ['30000-0001', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 48', ['59000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]], ['range end', ['10099', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['below first', ['09999', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['single zip range', ['30000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['middle', ['20500', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['EXT', 510]], ['generated mix 31', ['60000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['generated mix 39', ['59999', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]]], [['generated mix 66', ['30000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 11', ['30000-0001', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['zip plus four', ['59999-1234', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]], ['above all', ['99999', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['range start', ['10000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['gap', ['10100', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['generated mix 42', ['10099', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 50', ['10100', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]]]]
for label, args, expected in fixtures[N-1]:
    check(label, 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
zip plus four['NONE', 0]['REMOTE', 1500]Failed
generated mix 11['NONE', 0]['DAS', 395]Failed
range start['DAS', 395]['DAS', 395]Passed
gap['NONE', 0]['NONE', 0]Passed
single zip range['DAS', 395]['DAS', 395]Passed
middle['EXT', 510]['EXT', 510]Passed
range end['DAS', 395]['DAS', 395]Passed
generated mix 6['REMOTE', 1500]['REMOTE', 1500]Passed

SHA-256 / 40f0148660406cd5363cf6f73d4700237568671216cba157b565f6d7dffdee81

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
import bisect
N = 1
observations = []
def solve(zip5, ranges):
    z = int(zip5.split('-')[-1])
    rs = sorted(ranges)
    los = [r[0] for r in rs]
    i = bisect.bisect_right(los, z) - 1
    if i >= 0 and z <= rs[i][1]:
        code = rs[i][2]
    else:
        code = 'NONE'
    return [code, {'NONE': 0, 'DAS': 395, 'EXT': 510, 'REMOTE': 1500}[code]]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['zip plus four', ['59999-1234', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]], ['generated mix 11', ['30000-0001', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['range start', ['10000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['gap', ['10100', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['single zip range', ['30000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['middle', ['20500', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['EXT', 510]], ['range end', ['10099', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 6', ['59000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]]], [['generated mix 60', ['10000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 48', ['59000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]], ['below first', ['09999', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['single zip range', ['30000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['middle', ['20500', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['EXT', 510]], ['range end', ['10099', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 8', ['60000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['generated mix 16', ['30000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]]], [['generated mix 38', ['10050-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 11', ['30000-0001', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['above all', ['99999', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['range start', ['10000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['gap', ['10100', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['zip plus four', ['59999-1234', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]], ['generated mix 20', ['10099', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 28', ['21000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]]], [['generated mix 11', ['30000-0001', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 48', ['59000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]], ['range end', ['10099', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['below first', ['09999', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['single zip range', ['30000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['middle', ['20500', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['EXT', 510]], ['generated mix 31', ['60000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['generated mix 39', ['59999', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]]], [['generated mix 66', ['30000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 11', ['30000-0001', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['zip plus four', ['59999-1234', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]], ['above all', ['99999', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['range start', ['10000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['gap', ['10100', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['generated mix 42', ['10099', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 50', ['10100', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]]]]
for label, args, expected in fixtures[N-1]:
    check(label, 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
zip plus four['NONE', 0]['REMOTE', 1500]Failed
generated mix 11['NONE', 0]['DAS', 395]Failed
range start['DAS', 395]['DAS', 395]Passed
gap['NONE', 0]['NONE', 0]Passed
single zip range['DAS', 395]['DAS', 395]Passed
middle['EXT', 510]['EXT', 510]Passed
range end['DAS', 395]['DAS', 395]Passed
generated mix 6['REMOTE', 1500]['REMOTE', 1500]Passed

SHA-256 / 4990f08a7d10fca0a437fe94700a8c6023b5e2ae4a966b1b5d2d526f107b9826

3 / The verified repair

Exit 0
"""Failure Map reference implementation. Python standard library only."""
import json
import bisect
N = 1
observations = []
def solve(zip5, ranges):
    z = int(zip5[:5])
    rs = sorted(ranges)
    los = [r[0] for r in rs]
    i = bisect.bisect_right(los, z) - 1
    if i >= 0 and z <= rs[i][1]:
        code = rs[i][2]
    else:
        code = 'NONE'
    return [code, {'NONE': 0, 'DAS': 395, 'EXT': 510, 'REMOTE': 1500}[code]]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['zip plus four', ['59999-1234', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]], ['generated mix 11', ['30000-0001', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['range start', ['10000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['gap', ['10100', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['single zip range', ['30000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['middle', ['20500', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['EXT', 510]], ['range end', ['10099', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 6', ['59000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]]], [['generated mix 60', ['10000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 48', ['59000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]], ['below first', ['09999', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['single zip range', ['30000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['middle', ['20500', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['EXT', 510]], ['range end', ['10099', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 8', ['60000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['generated mix 16', ['30000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]]], [['generated mix 38', ['10050-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 11', ['30000-0001', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['above all', ['99999', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['range start', ['10000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['gap', ['10100', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['zip plus four', ['59999-1234', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]], ['generated mix 20', ['10099', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 28', ['21000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]]], [['generated mix 11', ['30000-0001', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 48', ['59000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]], ['range end', ['10099', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['below first', ['09999', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['single zip range', ['30000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['middle', ['20500', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['EXT', 510]], ['generated mix 31', ['60000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['generated mix 39', ['59999', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]]], [['generated mix 66', ['30000-4321', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 11', ['30000-0001', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['zip plus four', ['59999-1234', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['REMOTE', 1500]], ['above all', ['99999', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['range start', ['10000', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['gap', ['10100', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]], ['generated mix 42', ['10099', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['DAS', 395]], ['generated mix 50', ['10100', [[10000, 10099, 'DAS'], [20000, 20999, 'EXT'], [59000, 59999, 'REMOTE'], [30000, 30000, 'DAS']]], ['NONE', 0]]]]
for label, args, expected in fixtures[N-1]:
    check(label, 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
zip plus four['REMOTE', 1500]['REMOTE', 1500]Passed
generated mix 11['DAS', 395]['DAS', 395]Passed
range start['DAS', 395]['DAS', 395]Passed
gap['NONE', 0]['NONE', 0]Passed
single zip range['DAS', 395]['DAS', 395]Passed
middle['EXT', 510]['EXT', 510]Passed
range end['DAS', 395]['DAS', 395]Passed
generated mix 6['REMOTE', 1500]['REMOTE', 1500]Passed

SHA-256 / bc8e93b00c9d7cac6d1c39b6c3b4a450a2f0f475ee91292b3df192f986d78db8

Verification & scope

Stipulated ranges and fee amounts. 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:52:16.352125+00:00.

Case digest / fcf147948927ad030d2518ddf41bbf4acfde6c82a78c18eee97264ada3758638