FA-95226 / Warehouse slotting and bin packing / Open access
Pick sequence: serpentine parity inverted · case 01
Pickers enter odd aisles from the far end and double back through every aisle.
ROOT CAUSE
Bay direction is ascending on even aisles instead of odd aisles.
VERIFIED REPAIR
Walk bays ascending on odd aisles and descending on even aisles.
Unsuccessful approach: Always walking bays ascending removes the serpentine and returns to the front of each aisle.
Case contract
codes "aisle-bay-level" with decimal parts and optional surrounding whitespace. Valid aisles 1-40, levels 1-6. Canonical form "AA-BB-L" (two-digit aisle and bay). Duplicates collapse. Sequence: aisles ascending; odd aisles walk bays ascending, even aisles descending; level ascending within a bay. Invalid codes are returned as given, sorted, duplicates kept. Return [sequence, invalid].
Why this case matters
Pick paths are sequenced from location codes in a serpentine walk.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(codes):
seq = {}
bad = []
for code in codes:
parts = code.strip().split('-')
if len(parts) != 3 or not all(p.isdecimal() for p in parts):
bad.append(code)
continue
a, b, l = (int(p) for p in parts)
if not (1 <= a <= 40 and 1 <= l <= 6):
bad.append(code)
continue
seq[(a, b, l)] = '%02d-%02d-%d' % (a, b, l)
def walk(k):
a, b, l = k
return (a, b if a % 2 == 0 else -b, l)
return [[seq[k] for k in sorted(seq, key=walk)], sorted(bad)]
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['serpentine', [['2-01-1', '1-05-1', '2-09-1', '1-02-1']], [['01-02-1', '01-05-1', '02-09-1', '02-01-1'], []]], ['generated mix 9', [['2-7-1', '2-1-2', '1-12-2\n']], [['01-12-2', '02-07-1', '02-01-2'], []]], ['levels ascend', [['3-4-2', '3-4-1']], [['03-04-1', '03-04-2'], []]], ['inner space invalid', [['1 -1-1', '1-1-1']], [['01-01-1'], ['1 -1-1']]], ['dup invalid kept', [['B', 'A', 'B']], [[], ['A', 'B', 'B']]], ['whitespace', [[' 1-1-1\n', '\t1-2-1']], [['01-01-1', '01-02-1'], []]], ['generated mix 6', [['\t41-05-0\n', ' 3-12-0 ', ' 02-05-7 ']], [[], ['\t41-05-0\n', ' 02-05-7 ', ' 3-12-0 ']]], ['generated mix 15', [['\t41-12-2', ' 40-1-2 ', '\t2-7-1\n']], [['02-07-1', '40-01-2'], ['\t41-12-2']]]], [['generated mix 17', [['\t02-7-1', ' 2-12-2', '03-12-2']], [['02-12-2', '02-07-1', '03-12-2'], []]], ['generated mix 69', [[' 3-12-0', ' 03-12-7\n', '2-7-2', '\t40-12-2\n', ' 02-1-2 ']], [['02-07-2', '02-01-2', '40-12-2'], [' 03-12-7\n', ' 3-12-0']]], ['inner space invalid', [['1 -1-1', '1-1-1']], [['01-01-1'], ['1 -1-1']]], ['dup invalid kept', [['B', 'A', 'B']], [[], ['A', 'B', 'B']]], ['serpentine', [['2-01-1', '1-05-1', '2-09-1', '1-02-1']], [['01-02-1', '01-05-1', '02-09-1', '02-01-1'], []]], ['whitespace', [[' 1-1-1\n', '\t1-2-1']], [['01-01-1', '01-02-1'], []]], ['generated mix 9', [['2-7-1', '2-1-2', '1-12-2\n']], [['01-12-2', '02-07-1', '02-01-2'], []]], ['generated mix 18', [['X03-1-1', 'X 40-05-2 ', '\t01-7-1 ', '40-7-6\n', '01-7-2 ']], [['01-07-1', '01-07-2', '40-07-6'], ['X 40-05-2 ', 'X03-1-1']]]], [['generated mix 37', [['0-12-2\n', '02-7-6', '2-7-6 ', ' 1-05-2', '\t40-12-0', '\t1-12-2\n', '01-7-6 ']], [['01-05-2', '01-07-6', '01-12-2', '02-07-6'], ['\t40-12-0', '0-12-2\n']]], ['generated mix 14', [['1-1-1 ', ' 1-1-7\n', '\t40-12-6', '\t2-1-1', ' 1-1-7\n', '40-05-2 ', '01-1-7 ']], [['01-01-1', '02-01-1', '40-12-6', '40-05-2'], [' 1-1-7\n', ' 1-1-7\n', '01-1-7 ']]], ['dedupe canonical', [['01-01-1', '1-1-1']], [['01-01-1'], []]], ['levels ascend', [['3-4-2', '3-4-1']], [['03-04-1', '03-04-2'], []]], ['inner space invalid', [['1 -1-1', '1-1-1']], [['01-01-1'], ['1 -1-1']]], ['dup invalid kept', [['B', 'A', 'B']], [[], ['A', 'B', 'B']]], ['generated mix 21', [['2-12-2\n', '\t1-05-1\n', '1-12-1', ' 3-05-2 ', '02-05-2', '1 -12-7\n', '40-7-0 ']], [['01-05-1', '01-12-1', '02-12-2', '02-05-2', '03-05-2'], ['1 -12-7\n', '40-7-0 ']]], ['generated mix 29', [['03-12-0\n', 'X 0-7-6\n', ' 2-7-7\n']], [[], [' 2-7-7\n', '03-12-0\n', 'X 0-7-6\n']]]], [['generated mix 64', [['03-12-6 ', '03-7-6\n', 'X\t41-1-2 ']], [['03-07-6', '03-12-6'], ['X\t41-1-2 ']]], ['generated mix 71', [['\t02-7-2 ', '02 -1-1', 'X\t0-1-6\n', '02-12-0\n', 'X\t2 -05-1', '\t02-1-2\n']], [['02-07-2', '02-01-2'], ['02 -1-1', '02-12-0\n', 'X\t0-1-6\n', 'X\t2 -05-1']]], ['whitespace', [[' 1-1-1\n', '\t1-2-1']], [['01-01-1', '01-02-1'], []]], ['range limits', [['40-1-6', '41-1-1', '1-1-7', '0-1-1']], [['40-01-6'], ['0-1-1', '1-1-7', '41-1-1']]], ['dedupe canonical', [['01-01-1', '1-1-1']], [['01-01-1'], []]], ['levels ascend', [['3-4-2', '3-4-1']], [['03-04-1', '03-04-2'], []]], ['generated mix 31', [['3-05-0 ', '2-05-1 ', '\t03-7-2\n', '3-05-6 ']], [['02-05-1', '03-05-6', '03-07-2'], ['3-05-0 ']]], ['generated mix 39', [[' 0-7-7 ', ' 3-05-1\n']], [['03-05-1'], [' 0-7-7 ']]]], [['whitespace', [[' 1-1-1\n', '\t1-2-1']], [['01-01-1', '01-02-1'], []]], ['generated mix 17', [['\t02-7-1', ' 2-12-2', '03-12-2']], [['02-12-2', '02-07-1', '03-12-2'], []]], ['serpentine', [['2-01-1', '1-05-1', '2-09-1', '1-02-1']], [['01-02-1', '01-05-1', '02-09-1', '02-01-1'], []]], ['inner space invalid', [['1 -1-1', '1-1-1']], [['01-01-1'], ['1 -1-1']]], ['dup invalid kept', [['B', 'A', 'B']], [[], ['A', 'B', 'B']]], ['generated mix 43', [[' 3-1-6\n', '03-1-7', '1 -12-6', ' 41-7-6']], [['03-01-6'], [' 41-7-6', '03-1-7', '1 -12-6']]], ['generated mix 51', [['\t01-7-2', ' 41-1-0 ', ' 01-1-6\n', ' 01 -12-0']], [['01-01-6', '01-07-2'], [' 01 -12-0', ' 41-1-0 ']]], ['generated mix 59', [['1-05-1', '\t40-1-1']], [['01-05-1', '40-01-1'], []]]]]
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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| serpentine | [['01-05-1', '01-02-1', '02-01-1', '02-09-1'], []] | [['01-02-1', '01-05-1', '02-09-1', '02-01-1'], []] | Failed |
| generated mix 9 | [['01-12-2', '02-01-2', '02-07-1'], []] | [['01-12-2', '02-07-1', '02-01-2'], []] | Failed |
| levels ascend | [['03-04-1', '03-04-2'], []] | [['03-04-1', '03-04-2'], []] | Passed |
| inner space invalid | [['01-01-1'], ['1 -1-1']] | [['01-01-1'], ['1 -1-1']] | Passed |
| dup invalid kept | [[], ['A', 'B', 'B']] | [[], ['A', 'B', 'B']] | Passed |
| whitespace | [['01-02-1', '01-01-1'], []] | [['01-01-1', '01-02-1'], []] | Failed |
| generated mix 6 | [[], ['\t41-05-0\n', ' 02-05-7 ', ' 3-12-0 ']] | [[], ['\t41-05-0\n', ' 02-05-7 ', ' 3-12-0 ']] | Passed |
| generated mix 15 | [['02-07-1', '40-01-2'], ['\t41-12-2']] | [['02-07-1', '40-01-2'], ['\t41-12-2']] | Passed |
SHA-256 / 54106e76437bc1fde6ef916bdb248e8f46f3e20f95d45337fa8d83d2423aa703
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(codes):
seq = {}
bad = []
for code in codes:
parts = code.strip().split('-')
if len(parts) != 3 or not all(p.isdecimal() for p in parts):
bad.append(code)
continue
a, b, l = (int(p) for p in parts)
if not (1 <= a <= 40 and 1 <= l <= 6):
bad.append(code)
continue
seq[(a, b, l)] = '%02d-%02d-%d' % (a, b, l)
def walk(k):
a, b, l = k
return (a, b, l)
return [[seq[k] for k in sorted(seq, key=walk)], sorted(bad)]
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['serpentine', [['2-01-1', '1-05-1', '2-09-1', '1-02-1']], [['01-02-1', '01-05-1', '02-09-1', '02-01-1'], []]], ['generated mix 9', [['2-7-1', '2-1-2', '1-12-2\n']], [['01-12-2', '02-07-1', '02-01-2'], []]], ['levels ascend', [['3-4-2', '3-4-1']], [['03-04-1', '03-04-2'], []]], ['inner space invalid', [['1 -1-1', '1-1-1']], [['01-01-1'], ['1 -1-1']]], ['dup invalid kept', [['B', 'A', 'B']], [[], ['A', 'B', 'B']]], ['whitespace', [[' 1-1-1\n', '\t1-2-1']], [['01-01-1', '01-02-1'], []]], ['generated mix 6', [['\t41-05-0\n', ' 3-12-0 ', ' 02-05-7 ']], [[], ['\t41-05-0\n', ' 02-05-7 ', ' 3-12-0 ']]], ['generated mix 15', [['\t41-12-2', ' 40-1-2 ', '\t2-7-1\n']], [['02-07-1', '40-01-2'], ['\t41-12-2']]]], [['generated mix 17', [['\t02-7-1', ' 2-12-2', '03-12-2']], [['02-12-2', '02-07-1', '03-12-2'], []]], ['generated mix 69', [[' 3-12-0', ' 03-12-7\n', '2-7-2', '\t40-12-2\n', ' 02-1-2 ']], [['02-07-2', '02-01-2', '40-12-2'], [' 03-12-7\n', ' 3-12-0']]], ['inner space invalid', [['1 -1-1', '1-1-1']], [['01-01-1'], ['1 -1-1']]], ['dup invalid kept', [['B', 'A', 'B']], [[], ['A', 'B', 'B']]], ['serpentine', [['2-01-1', '1-05-1', '2-09-1', '1-02-1']], [['01-02-1', '01-05-1', '02-09-1', '02-01-1'], []]], ['whitespace', [[' 1-1-1\n', '\t1-2-1']], [['01-01-1', '01-02-1'], []]], ['generated mix 9', [['2-7-1', '2-1-2', '1-12-2\n']], [['01-12-2', '02-07-1', '02-01-2'], []]], ['generated mix 18', [['X03-1-1', 'X 40-05-2 ', '\t01-7-1 ', '40-7-6\n', '01-7-2 ']], [['01-07-1', '01-07-2', '40-07-6'], ['X 40-05-2 ', 'X03-1-1']]]], [['generated mix 37', [['0-12-2\n', '02-7-6', '2-7-6 ', ' 1-05-2', '\t40-12-0', '\t1-12-2\n', '01-7-6 ']], [['01-05-2', '01-07-6', '01-12-2', '02-07-6'], ['\t40-12-0', '0-12-2\n']]], ['generated mix 14', [['1-1-1 ', ' 1-1-7\n', '\t40-12-6', '\t2-1-1', ' 1-1-7\n', '40-05-2 ', '01-1-7 ']], [['01-01-1', '02-01-1', '40-12-6', '40-05-2'], [' 1-1-7\n', ' 1-1-7\n', '01-1-7 ']]], ['dedupe canonical', [['01-01-1', '1-1-1']], [['01-01-1'], []]], ['levels ascend', [['3-4-2', '3-4-1']], [['03-04-1', '03-04-2'], []]], ['inner space invalid', [['1 -1-1', '1-1-1']], [['01-01-1'], ['1 -1-1']]], ['dup invalid kept', [['B', 'A', 'B']], [[], ['A', 'B', 'B']]], ['generated mix 21', [['2-12-2\n', '\t1-05-1\n', '1-12-1', ' 3-05-2 ', '02-05-2', '1 -12-7\n', '40-7-0 ']], [['01-05-1', '01-12-1', '02-12-2', '02-05-2', '03-05-2'], ['1 -12-7\n', '40-7-0 ']]], ['generated mix 29', [['03-12-0\n', 'X 0-7-6\n', ' 2-7-7\n']], [[], [' 2-7-7\n', '03-12-0\n', 'X 0-7-6\n']]]], [['generated mix 64', [['03-12-6 ', '03-7-6\n', 'X\t41-1-2 ']], [['03-07-6', '03-12-6'], ['X\t41-1-2 ']]], ['generated mix 71', [['\t02-7-2 ', '02 -1-1', 'X\t0-1-6\n', '02-12-0\n', 'X\t2 -05-1', '\t02-1-2\n']], [['02-07-2', '02-01-2'], ['02 -1-1', '02-12-0\n', 'X\t0-1-6\n', 'X\t2 -05-1']]], ['whitespace', [[' 1-1-1\n', '\t1-2-1']], [['01-01-1', '01-02-1'], []]], ['range limits', [['40-1-6', '41-1-1', '1-1-7', '0-1-1']], [['40-01-6'], ['0-1-1', '1-1-7', '41-1-1']]], ['dedupe canonical', [['01-01-1', '1-1-1']], [['01-01-1'], []]], ['levels ascend', [['3-4-2', '3-4-1']], [['03-04-1', '03-04-2'], []]], ['generated mix 31', [['3-05-0 ', '2-05-1 ', '\t03-7-2\n', '3-05-6 ']], [['02-05-1', '03-05-6', '03-07-2'], ['3-05-0 ']]], ['generated mix 39', [[' 0-7-7 ', ' 3-05-1\n']], [['03-05-1'], [' 0-7-7 ']]]], [['whitespace', [[' 1-1-1\n', '\t1-2-1']], [['01-01-1', '01-02-1'], []]], ['generated mix 17', [['\t02-7-1', ' 2-12-2', '03-12-2']], [['02-12-2', '02-07-1', '03-12-2'], []]], ['serpentine', [['2-01-1', '1-05-1', '2-09-1', '1-02-1']], [['01-02-1', '01-05-1', '02-09-1', '02-01-1'], []]], ['inner space invalid', [['1 -1-1', '1-1-1']], [['01-01-1'], ['1 -1-1']]], ['dup invalid kept', [['B', 'A', 'B']], [[], ['A', 'B', 'B']]], ['generated mix 43', [[' 3-1-6\n', '03-1-7', '1 -12-6', ' 41-7-6']], [['03-01-6'], [' 41-7-6', '03-1-7', '1 -12-6']]], ['generated mix 51', [['\t01-7-2', ' 41-1-0 ', ' 01-1-6\n', ' 01 -12-0']], [['01-01-6', '01-07-2'], [' 01 -12-0', ' 41-1-0 ']]], ['generated mix 59', [['1-05-1', '\t40-1-1']], [['01-05-1', '40-01-1'], []]]]]
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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| serpentine | [['01-02-1', '01-05-1', '02-01-1', '02-09-1'], []] | [['01-02-1', '01-05-1', '02-09-1', '02-01-1'], []] | Failed |
| generated mix 9 | [['01-12-2', '02-01-2', '02-07-1'], []] | [['01-12-2', '02-07-1', '02-01-2'], []] | Failed |
| levels ascend | [['03-04-1', '03-04-2'], []] | [['03-04-1', '03-04-2'], []] | Passed |
| inner space invalid | [['01-01-1'], ['1 -1-1']] | [['01-01-1'], ['1 -1-1']] | Passed |
| dup invalid kept | [[], ['A', 'B', 'B']] | [[], ['A', 'B', 'B']] | Passed |
| whitespace | [['01-01-1', '01-02-1'], []] | [['01-01-1', '01-02-1'], []] | Passed |
| generated mix 6 | [[], ['\t41-05-0\n', ' 02-05-7 ', ' 3-12-0 ']] | [[], ['\t41-05-0\n', ' 02-05-7 ', ' 3-12-0 ']] | Passed |
| generated mix 15 | [['02-07-1', '40-01-2'], ['\t41-12-2']] | [['02-07-1', '40-01-2'], ['\t41-12-2']] | Passed |
SHA-256 / 8a76cc8e4ec05466872486d2e08f94c8607f1fa5321f323ae638b1d5c4bd8196
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(codes):
seq = {}
bad = []
for code in codes:
parts = code.strip().split('-')
if len(parts) != 3 or not all(p.isdecimal() for p in parts):
bad.append(code)
continue
a, b, l = (int(p) for p in parts)
if not (1 <= a <= 40 and 1 <= l <= 6):
bad.append(code)
continue
seq[(a, b, l)] = '%02d-%02d-%d' % (a, b, l)
def walk(k):
a, b, l = k
return (a, b if a % 2 == 1 else -b, l)
return [[seq[k] for k in sorted(seq, key=walk)], sorted(bad)]
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['serpentine', [['2-01-1', '1-05-1', '2-09-1', '1-02-1']], [['01-02-1', '01-05-1', '02-09-1', '02-01-1'], []]], ['generated mix 9', [['2-7-1', '2-1-2', '1-12-2\n']], [['01-12-2', '02-07-1', '02-01-2'], []]], ['levels ascend', [['3-4-2', '3-4-1']], [['03-04-1', '03-04-2'], []]], ['inner space invalid', [['1 -1-1', '1-1-1']], [['01-01-1'], ['1 -1-1']]], ['dup invalid kept', [['B', 'A', 'B']], [[], ['A', 'B', 'B']]], ['whitespace', [[' 1-1-1\n', '\t1-2-1']], [['01-01-1', '01-02-1'], []]], ['generated mix 6', [['\t41-05-0\n', ' 3-12-0 ', ' 02-05-7 ']], [[], ['\t41-05-0\n', ' 02-05-7 ', ' 3-12-0 ']]], ['generated mix 15', [['\t41-12-2', ' 40-1-2 ', '\t2-7-1\n']], [['02-07-1', '40-01-2'], ['\t41-12-2']]]], [['generated mix 17', [['\t02-7-1', ' 2-12-2', '03-12-2']], [['02-12-2', '02-07-1', '03-12-2'], []]], ['generated mix 69', [[' 3-12-0', ' 03-12-7\n', '2-7-2', '\t40-12-2\n', ' 02-1-2 ']], [['02-07-2', '02-01-2', '40-12-2'], [' 03-12-7\n', ' 3-12-0']]], ['inner space invalid', [['1 -1-1', '1-1-1']], [['01-01-1'], ['1 -1-1']]], ['dup invalid kept', [['B', 'A', 'B']], [[], ['A', 'B', 'B']]], ['serpentine', [['2-01-1', '1-05-1', '2-09-1', '1-02-1']], [['01-02-1', '01-05-1', '02-09-1', '02-01-1'], []]], ['whitespace', [[' 1-1-1\n', '\t1-2-1']], [['01-01-1', '01-02-1'], []]], ['generated mix 9', [['2-7-1', '2-1-2', '1-12-2\n']], [['01-12-2', '02-07-1', '02-01-2'], []]], ['generated mix 18', [['X03-1-1', 'X 40-05-2 ', '\t01-7-1 ', '40-7-6\n', '01-7-2 ']], [['01-07-1', '01-07-2', '40-07-6'], ['X 40-05-2 ', 'X03-1-1']]]], [['generated mix 37', [['0-12-2\n', '02-7-6', '2-7-6 ', ' 1-05-2', '\t40-12-0', '\t1-12-2\n', '01-7-6 ']], [['01-05-2', '01-07-6', '01-12-2', '02-07-6'], ['\t40-12-0', '0-12-2\n']]], ['generated mix 14', [['1-1-1 ', ' 1-1-7\n', '\t40-12-6', '\t2-1-1', ' 1-1-7\n', '40-05-2 ', '01-1-7 ']], [['01-01-1', '02-01-1', '40-12-6', '40-05-2'], [' 1-1-7\n', ' 1-1-7\n', '01-1-7 ']]], ['dedupe canonical', [['01-01-1', '1-1-1']], [['01-01-1'], []]], ['levels ascend', [['3-4-2', '3-4-1']], [['03-04-1', '03-04-2'], []]], ['inner space invalid', [['1 -1-1', '1-1-1']], [['01-01-1'], ['1 -1-1']]], ['dup invalid kept', [['B', 'A', 'B']], [[], ['A', 'B', 'B']]], ['generated mix 21', [['2-12-2\n', '\t1-05-1\n', '1-12-1', ' 3-05-2 ', '02-05-2', '1 -12-7\n', '40-7-0 ']], [['01-05-1', '01-12-1', '02-12-2', '02-05-2', '03-05-2'], ['1 -12-7\n', '40-7-0 ']]], ['generated mix 29', [['03-12-0\n', 'X 0-7-6\n', ' 2-7-7\n']], [[], [' 2-7-7\n', '03-12-0\n', 'X 0-7-6\n']]]], [['generated mix 64', [['03-12-6 ', '03-7-6\n', 'X\t41-1-2 ']], [['03-07-6', '03-12-6'], ['X\t41-1-2 ']]], ['generated mix 71', [['\t02-7-2 ', '02 -1-1', 'X\t0-1-6\n', '02-12-0\n', 'X\t2 -05-1', '\t02-1-2\n']], [['02-07-2', '02-01-2'], ['02 -1-1', '02-12-0\n', 'X\t0-1-6\n', 'X\t2 -05-1']]], ['whitespace', [[' 1-1-1\n', '\t1-2-1']], [['01-01-1', '01-02-1'], []]], ['range limits', [['40-1-6', '41-1-1', '1-1-7', '0-1-1']], [['40-01-6'], ['0-1-1', '1-1-7', '41-1-1']]], ['dedupe canonical', [['01-01-1', '1-1-1']], [['01-01-1'], []]], ['levels ascend', [['3-4-2', '3-4-1']], [['03-04-1', '03-04-2'], []]], ['generated mix 31', [['3-05-0 ', '2-05-1 ', '\t03-7-2\n', '3-05-6 ']], [['02-05-1', '03-05-6', '03-07-2'], ['3-05-0 ']]], ['generated mix 39', [[' 0-7-7 ', ' 3-05-1\n']], [['03-05-1'], [' 0-7-7 ']]]], [['whitespace', [[' 1-1-1\n', '\t1-2-1']], [['01-01-1', '01-02-1'], []]], ['generated mix 17', [['\t02-7-1', ' 2-12-2', '03-12-2']], [['02-12-2', '02-07-1', '03-12-2'], []]], ['serpentine', [['2-01-1', '1-05-1', '2-09-1', '1-02-1']], [['01-02-1', '01-05-1', '02-09-1', '02-01-1'], []]], ['inner space invalid', [['1 -1-1', '1-1-1']], [['01-01-1'], ['1 -1-1']]], ['dup invalid kept', [['B', 'A', 'B']], [[], ['A', 'B', 'B']]], ['generated mix 43', [[' 3-1-6\n', '03-1-7', '1 -12-6', ' 41-7-6']], [['03-01-6'], [' 41-7-6', '03-1-7', '1 -12-6']]], ['generated mix 51', [['\t01-7-2', ' 41-1-0 ', ' 01-1-6\n', ' 01 -12-0']], [['01-01-6', '01-07-2'], [' 01 -12-0', ' 41-1-0 ']]], ['generated mix 59', [['1-05-1', '\t40-1-1']], [['01-05-1', '40-01-1'], []]]]]
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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| serpentine | [['01-02-1', '01-05-1', '02-09-1', '02-01-1'], []] | [['01-02-1', '01-05-1', '02-09-1', '02-01-1'], []] | Passed |
| generated mix 9 | [['01-12-2', '02-07-1', '02-01-2'], []] | [['01-12-2', '02-07-1', '02-01-2'], []] | Passed |
| levels ascend | [['03-04-1', '03-04-2'], []] | [['03-04-1', '03-04-2'], []] | Passed |
| inner space invalid | [['01-01-1'], ['1 -1-1']] | [['01-01-1'], ['1 -1-1']] | Passed |
| dup invalid kept | [[], ['A', 'B', 'B']] | [[], ['A', 'B', 'B']] | Passed |
| whitespace | [['01-01-1', '01-02-1'], []] | [['01-01-1', '01-02-1'], []] | Passed |
| generated mix 6 | [[], ['\t41-05-0\n', ' 02-05-7 ', ' 3-12-0 ']] | [[], ['\t41-05-0\n', ' 02-05-7 ', ' 3-12-0 ']] | Passed |
| generated mix 15 | [['02-07-1', '40-01-2'], ['\t41-12-2']] | [['02-07-1', '40-01-2'], ['\t41-12-2']] | Passed |
SHA-256 / 3f1adb1ee1c2f268f0b3cc465783e5dd2428b92c9976bd6fcd3c20af18e7930d
Verification & scope
Stipulated code format and layout; no cross aisles or zone routing. 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:11.724847+00:00.
Case digest / 6b2aeb3f04ff7ddf5bc6274106cc4fe71f925296681f41a92dc2d3d15389101a