FA-61641 / Options payoff and settlement / Open access
Exercise assignment allocation across short accounts: pro-rata remainders are never assigned · case 01
Fewer contracts are assigned than were exercised.
ROOT CAUSE
The largest-remainder pass is missing.
VERIFIED REPAIR
Assign the leftover contracts one each by largest remainder.
Unsuccessful approach: Giving all leftovers to the largest position can exceed its fair share.
Case contract
Inputs exercised contracts (<= total short), shorts [account, qty, open sequence] and method. fifo assigns in ascending open sequence, each up to its quantity. pro-rata gives floor(exercised*qty/total) and distributes the remaining contracts one each by largest fractional remainder, ties by lower open sequence. Return sorted [account, assigned] for accounts with assignments.
Why this case matters
Option expiry, exercise and settlement engines move cash and shares; a wrong branch misstates obligations.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(exercised, shorts, method):
total = sum(q for _, q, _ in shorts)
alloc = {}
if method == 'fifo':
left = exercised
for acct, q, seq in sorted(shorts, key=lambda s: s[2]):
take = min(q, left)
alloc[acct] = alloc.get(acct, 0) + take
left -= take
else:
rem = []
for acct, q, seq in shorts:
alloc[acct] = alloc.get(acct, 0) + exercised * q // total
rem.append((-(exercised * q % total), seq, acct))
left = exercised - sum(alloc.values())
pass
return sorted([a, n] for a, n in alloc.items() if n > 0)
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['regression remainder distribution 1', [24, [['A1', 10, 8], ['D4', 5, 17], ['F6', 10, 11]], 'pro-rata'], [['A1', 10], ['D4', 5], ['F6', 9]]], ['regression remainder distribution 2', [39, [['D4', 10, 1], ['C3', 10, 3], ['E5', 10, 9], ['A1', 7, 16], ['B2', 10, 12]], 'pro-rata'], [['A1', 6], ['B2', 8], ['C3', 8], ['D4', 9], ['E5', 8]]], ['partial repair probe 1', [10, [['D4', 5, 14], ['F6', 10, 8], ['A1', 3, 1], ['E5', 1, 16], ['B2', 2, 2]], 'pro-rata'], [['A1', 1], ['B2', 1], ['D4', 2], ['E5', 1], ['F6', 5]]], ['partial repair probe 2', [9, [['F6', 1, 11], ['C3', 5, 10], ['E5', 7, 2], ['B2', 5, 12]], 'pro-rata'], [['B2', 2], ['C3', 3], ['E5', 4]]], ['boundary control 1', [2, [['A1', 5, 2], ['B2', 5, 1]], 'fifo'], [['B2', 2]]], ['boundary control 2', [3, [['A1', 1, 1], ['B2', 1, 2], ['C3', 1, 3]], 'pro-rata'], [['A1', 1], ['B2', 1], ['C3', 1]]], ['normal control 1', [2, [['A1', 5, 14]], 'pro-rata'], [['A1', 2]]], ['normal control 2', [3, [['E5', 3, 1]], 'pro-rata'], [['E5', 3]]]], [['regression remainder distribution 1', [9, [['B2', 2, 12], ['E5', 3, 3], ['A1', 7, 17], ['C3', 5, 5]], 'pro-rata'], [['A1', 4], ['B2', 1], ['C3', 3], ['E5', 1]]], ['regression remainder distribution 2', [14, [['C3', 2, 5], ['D4', 5, 11], ['E5', 3, 17], ['A1', 10, 13], ['B2', 10, 18]], 'pro-rata'], [['A1', 5], ['B2', 5], ['C3', 1], ['D4', 2], ['E5', 1]]], ['partial repair probe 1', [21, [['D4', 1, 15], ['E5', 5, 6], ['F6', 7, 19], ['B2', 2, 11], ['A1', 10, 4]], 'pro-rata'], [['A1', 8], ['B2', 2], ['D4', 1], ['E5', 4], ['F6', 6]]], ['partial repair probe 2', [12, [['A1', 1, 16], ['F6', 5, 18], ['D4', 2, 7], ['B2', 7, 3], ['C3', 2, 19]], 'pro-rata'], [['A1', 1], ['B2', 5], ['C3', 1], ['D4', 1], ['F6', 4]]], ['boundary control 1', [3, [['A1', 1, 1], ['B2', 1, 2], ['C3', 1, 3]], 'pro-rata'], [['A1', 1], ['B2', 1], ['C3', 1]]], ['boundary control 2', [2, [['A1', 5, 2], ['B2', 5, 1]], 'fifo'], [['B2', 2]]], ['normal control 1', [2, [['B2', 3, 13], ['F6', 1, 17], ['A1', 2, 1], ['C3', 3, 4], ['E5', 2, 3]], 'fifo'], [['A1', 2]]], ['normal control 2', [5, [['F6', 7, 2]], 'fifo'], [['F6', 5]]]], [['regression remainder distribution 1', [1, [['F6', 1, 8], ['C3', 3, 7], ['A1', 3, 14], ['B2', 2, 10]], 'pro-rata'], [['C3', 1]]], ['regression remainder distribution 2', [12, [['D4', 7, 17], ['C3', 3, 13], ['A1', 7, 8], ['B2', 1, 2], ['F6', 2, 9]], 'pro-rata'], [['A1', 4], ['B2', 1], ['C3', 2], ['D4', 4], ['F6', 1]]], ['partial repair probe 1', [2, [['E5', 1, 5], ['F6', 5, 9], ['B2', 5, 17]], 'pro-rata'], [['B2', 1], ['F6', 1]]], ['partial repair probe 2', [6, [['D4', 3, 11], ['F6', 3, 15], ['C3', 3, 18], ['B2', 5, 16], ['A1', 2, 6]], 'pro-rata'], [['A1', 1], ['B2', 2], ['C3', 1], ['D4', 1], ['F6', 1]]], ['boundary control 1', [3, [['A1', 1, 1], ['B2', 1, 2], ['C3', 1, 3]], 'pro-rata'], [['A1', 1], ['B2', 1], ['C3', 1]]], ['boundary control 2', [2, [['A1', 5, 2], ['B2', 5, 1]], 'fifo'], [['B2', 2]]], ['normal control 1', [20, [['D4', 10, 17], ['C3', 2, 3], ['F6', 3, 5], ['A1', 5, 7]], 'pro-rata'], [['A1', 5], ['C3', 2], ['D4', 10], ['F6', 3]]], ['normal control 2', [9, [['F6', 5, 5], ['E5', 10, 3], ['B2', 3, 19]], 'fifo'], [['E5', 9]]]], [['regression remainder distribution 1', [4, [['D4', 2, 5], ['A1', 5, 9], ['E5', 7, 14]], 'pro-rata'], [['A1', 1], ['D4', 1], ['E5', 2]]], ['regression remainder distribution 2', [5, [['B2', 1, 5], ['F6', 2, 19], ['D4', 2, 18], ['A1', 3, 6], ['C3', 5, 4]], 'pro-rata'], [['A1', 1], ['C3', 2], ['D4', 1], ['F6', 1]]], ['partial repair probe 1', [17, [['B2', 3, 7], ['A1', 10, 3], ['F6', 5, 14]], 'pro-rata'], [['A1', 9], ['B2', 3], ['F6', 5]]], ['partial repair probe 2', [27, [['C3', 10, 15], ['F6', 7, 1], ['D4', 5, 9], ['B2', 7, 18]], 'pro-rata'], [['B2', 6], ['C3', 9], ['D4', 5], ['F6', 7]]], ['boundary control 1', [2, [['A1', 5, 2], ['B2', 5, 1]], 'fifo'], [['B2', 2]]], ['boundary control 2', [3, [['A1', 1, 1], ['B2', 1, 2], ['C3', 1, 3]], 'pro-rata'], [['A1', 1], ['B2', 1], ['C3', 1]]], ['normal control 1', [1, [['A1', 1, 17]], 'pro-rata'], [['A1', 1]]], ['normal control 2', [12, [['D4', 3, 14], ['E5', 5, 15], ['C3', 1, 17], ['F6', 3, 8]], 'pro-rata'], [['C3', 1], ['D4', 3], ['E5', 5], ['F6', 3]]]], [['regression remainder distribution 1', [2, [['E5', 5, 12], ['D4', 10, 13], ['B2', 1, 3]], 'pro-rata'], [['D4', 1], ['E5', 1]]], ['regression remainder distribution 2', [4, [['B2', 3, 14], ['A1', 5, 1], ['C3', 1, 15]], 'pro-rata'], [['A1', 2], ['B2', 1], ['C3', 1]]], ['partial repair probe 1', [4, [['B2', 3, 13], ['F6', 5, 19], ['D4', 7, 1]], 'pro-rata'], [['B2', 1], ['D4', 2], ['F6', 1]]], ['partial repair probe 2', [7, [['B2', 10, 18], ['C3', 7, 3]], 'pro-rata'], [['B2', 4], ['C3', 3]]], ['boundary control 1', [2, [['A1', 5, 2], ['B2', 5, 1]], 'fifo'], [['B2', 2]]], ['boundary control 2', [3, [['A1', 1, 1], ['B2', 1, 2], ['C3', 1, 3]], 'pro-rata'], [['A1', 1], ['B2', 1], ['C3', 1]]], ['normal control 1', [8, [['A1', 2, 17], ['E5', 5, 8], ['C3', 2, 3], ['B2', 1, 14]], 'fifo'], [['B2', 1], ['C3', 2], ['E5', 5]]], ['normal control 2', [14, [['A1', 7, 18], ['B2', 1, 5], ['D4', 10, 12], ['E5', 1, 14]], 'fifo'], [['A1', 2], ['B2', 1], ['D4', 10], ['E5', 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 |
|---|---|---|---|
| regression remainder distribution 1 | [['A1', 9], ['D4', 4], ['F6', 9]] | [['A1', 10], ['D4', 5], ['F6', 9]] | Failed |
| regression remainder distribution 2 | [['A1', 5], ['B2', 8], ['C3', 8], ['D4', 8], ['E5', 8]] | [['A1', 6], ['B2', 8], ['C3', 8], ['D4', 9], ['E5', 8]] | Failed |
| partial repair probe 1 | [['A1', 1], ['D4', 2], ['F6', 4]] | [['A1', 1], ['B2', 1], ['D4', 2], ['E5', 1], ['F6', 5]] | Failed |
| partial repair probe 2 | [['B2', 2], ['C3', 2], ['E5', 3]] | [['B2', 2], ['C3', 3], ['E5', 4]] | Failed |
| boundary control 1 | [['B2', 2]] | [['B2', 2]] | Passed |
| boundary control 2 | [['A1', 1], ['B2', 1], ['C3', 1]] | [['A1', 1], ['B2', 1], ['C3', 1]] | Passed |
| normal control 1 | [['A1', 2]] | [['A1', 2]] | Passed |
| normal control 2 | [['E5', 3]] | [['E5', 3]] | Passed |
SHA-256 / 079e4d40db57f2f7258b3f18fb0d231b0cb4391c2de6c804287a5f6368cea63e
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(exercised, shorts, method):
total = sum(q for _, q, _ in shorts)
alloc = {}
if method == 'fifo':
left = exercised
for acct, q, seq in sorted(shorts, key=lambda s: s[2]):
take = min(q, left)
alloc[acct] = alloc.get(acct, 0) + take
left -= take
else:
rem = []
for acct, q, seq in shorts:
alloc[acct] = alloc.get(acct, 0) + exercised * q // total
rem.append((-(exercised * q % total), seq, acct))
left = exercised - sum(alloc.values())
alloc[max(shorts, key=lambda s: s[1])[0]] += left
return sorted([a, n] for a, n in alloc.items() if n > 0)
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['regression remainder distribution 1', [24, [['A1', 10, 8], ['D4', 5, 17], ['F6', 10, 11]], 'pro-rata'], [['A1', 10], ['D4', 5], ['F6', 9]]], ['regression remainder distribution 2', [39, [['D4', 10, 1], ['C3', 10, 3], ['E5', 10, 9], ['A1', 7, 16], ['B2', 10, 12]], 'pro-rata'], [['A1', 6], ['B2', 8], ['C3', 8], ['D4', 9], ['E5', 8]]], ['partial repair probe 1', [10, [['D4', 5, 14], ['F6', 10, 8], ['A1', 3, 1], ['E5', 1, 16], ['B2', 2, 2]], 'pro-rata'], [['A1', 1], ['B2', 1], ['D4', 2], ['E5', 1], ['F6', 5]]], ['partial repair probe 2', [9, [['F6', 1, 11], ['C3', 5, 10], ['E5', 7, 2], ['B2', 5, 12]], 'pro-rata'], [['B2', 2], ['C3', 3], ['E5', 4]]], ['boundary control 1', [2, [['A1', 5, 2], ['B2', 5, 1]], 'fifo'], [['B2', 2]]], ['boundary control 2', [3, [['A1', 1, 1], ['B2', 1, 2], ['C3', 1, 3]], 'pro-rata'], [['A1', 1], ['B2', 1], ['C3', 1]]], ['normal control 1', [2, [['A1', 5, 14]], 'pro-rata'], [['A1', 2]]], ['normal control 2', [3, [['E5', 3, 1]], 'pro-rata'], [['E5', 3]]]], [['regression remainder distribution 1', [9, [['B2', 2, 12], ['E5', 3, 3], ['A1', 7, 17], ['C3', 5, 5]], 'pro-rata'], [['A1', 4], ['B2', 1], ['C3', 3], ['E5', 1]]], ['regression remainder distribution 2', [14, [['C3', 2, 5], ['D4', 5, 11], ['E5', 3, 17], ['A1', 10, 13], ['B2', 10, 18]], 'pro-rata'], [['A1', 5], ['B2', 5], ['C3', 1], ['D4', 2], ['E5', 1]]], ['partial repair probe 1', [21, [['D4', 1, 15], ['E5', 5, 6], ['F6', 7, 19], ['B2', 2, 11], ['A1', 10, 4]], 'pro-rata'], [['A1', 8], ['B2', 2], ['D4', 1], ['E5', 4], ['F6', 6]]], ['partial repair probe 2', [12, [['A1', 1, 16], ['F6', 5, 18], ['D4', 2, 7], ['B2', 7, 3], ['C3', 2, 19]], 'pro-rata'], [['A1', 1], ['B2', 5], ['C3', 1], ['D4', 1], ['F6', 4]]], ['boundary control 1', [3, [['A1', 1, 1], ['B2', 1, 2], ['C3', 1, 3]], 'pro-rata'], [['A1', 1], ['B2', 1], ['C3', 1]]], ['boundary control 2', [2, [['A1', 5, 2], ['B2', 5, 1]], 'fifo'], [['B2', 2]]], ['normal control 1', [2, [['B2', 3, 13], ['F6', 1, 17], ['A1', 2, 1], ['C3', 3, 4], ['E5', 2, 3]], 'fifo'], [['A1', 2]]], ['normal control 2', [5, [['F6', 7, 2]], 'fifo'], [['F6', 5]]]], [['regression remainder distribution 1', [1, [['F6', 1, 8], ['C3', 3, 7], ['A1', 3, 14], ['B2', 2, 10]], 'pro-rata'], [['C3', 1]]], ['regression remainder distribution 2', [12, [['D4', 7, 17], ['C3', 3, 13], ['A1', 7, 8], ['B2', 1, 2], ['F6', 2, 9]], 'pro-rata'], [['A1', 4], ['B2', 1], ['C3', 2], ['D4', 4], ['F6', 1]]], ['partial repair probe 1', [2, [['E5', 1, 5], ['F6', 5, 9], ['B2', 5, 17]], 'pro-rata'], [['B2', 1], ['F6', 1]]], ['partial repair probe 2', [6, [['D4', 3, 11], ['F6', 3, 15], ['C3', 3, 18], ['B2', 5, 16], ['A1', 2, 6]], 'pro-rata'], [['A1', 1], ['B2', 2], ['C3', 1], ['D4', 1], ['F6', 1]]], ['boundary control 1', [3, [['A1', 1, 1], ['B2', 1, 2], ['C3', 1, 3]], 'pro-rata'], [['A1', 1], ['B2', 1], ['C3', 1]]], ['boundary control 2', [2, [['A1', 5, 2], ['B2', 5, 1]], 'fifo'], [['B2', 2]]], ['normal control 1', [20, [['D4', 10, 17], ['C3', 2, 3], ['F6', 3, 5], ['A1', 5, 7]], 'pro-rata'], [['A1', 5], ['C3', 2], ['D4', 10], ['F6', 3]]], ['normal control 2', [9, [['F6', 5, 5], ['E5', 10, 3], ['B2', 3, 19]], 'fifo'], [['E5', 9]]]], [['regression remainder distribution 1', [4, [['D4', 2, 5], ['A1', 5, 9], ['E5', 7, 14]], 'pro-rata'], [['A1', 1], ['D4', 1], ['E5', 2]]], ['regression remainder distribution 2', [5, [['B2', 1, 5], ['F6', 2, 19], ['D4', 2, 18], ['A1', 3, 6], ['C3', 5, 4]], 'pro-rata'], [['A1', 1], ['C3', 2], ['D4', 1], ['F6', 1]]], ['partial repair probe 1', [17, [['B2', 3, 7], ['A1', 10, 3], ['F6', 5, 14]], 'pro-rata'], [['A1', 9], ['B2', 3], ['F6', 5]]], ['partial repair probe 2', [27, [['C3', 10, 15], ['F6', 7, 1], ['D4', 5, 9], ['B2', 7, 18]], 'pro-rata'], [['B2', 6], ['C3', 9], ['D4', 5], ['F6', 7]]], ['boundary control 1', [2, [['A1', 5, 2], ['B2', 5, 1]], 'fifo'], [['B2', 2]]], ['boundary control 2', [3, [['A1', 1, 1], ['B2', 1, 2], ['C3', 1, 3]], 'pro-rata'], [['A1', 1], ['B2', 1], ['C3', 1]]], ['normal control 1', [1, [['A1', 1, 17]], 'pro-rata'], [['A1', 1]]], ['normal control 2', [12, [['D4', 3, 14], ['E5', 5, 15], ['C3', 1, 17], ['F6', 3, 8]], 'pro-rata'], [['C3', 1], ['D4', 3], ['E5', 5], ['F6', 3]]]], [['regression remainder distribution 1', [2, [['E5', 5, 12], ['D4', 10, 13], ['B2', 1, 3]], 'pro-rata'], [['D4', 1], ['E5', 1]]], ['regression remainder distribution 2', [4, [['B2', 3, 14], ['A1', 5, 1], ['C3', 1, 15]], 'pro-rata'], [['A1', 2], ['B2', 1], ['C3', 1]]], ['partial repair probe 1', [4, [['B2', 3, 13], ['F6', 5, 19], ['D4', 7, 1]], 'pro-rata'], [['B2', 1], ['D4', 2], ['F6', 1]]], ['partial repair probe 2', [7, [['B2', 10, 18], ['C3', 7, 3]], 'pro-rata'], [['B2', 4], ['C3', 3]]], ['boundary control 1', [2, [['A1', 5, 2], ['B2', 5, 1]], 'fifo'], [['B2', 2]]], ['boundary control 2', [3, [['A1', 1, 1], ['B2', 1, 2], ['C3', 1, 3]], 'pro-rata'], [['A1', 1], ['B2', 1], ['C3', 1]]], ['normal control 1', [8, [['A1', 2, 17], ['E5', 5, 8], ['C3', 2, 3], ['B2', 1, 14]], 'fifo'], [['B2', 1], ['C3', 2], ['E5', 5]]], ['normal control 2', [14, [['A1', 7, 18], ['B2', 1, 5], ['D4', 10, 12], ['E5', 1, 14]], 'fifo'], [['A1', 2], ['B2', 1], ['D4', 10], ['E5', 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 |
|---|---|---|---|
| regression remainder distribution 1 | [['A1', 11], ['D4', 4], ['F6', 9]] | [['A1', 10], ['D4', 5], ['F6', 9]] | Failed |
| regression remainder distribution 2 | [['A1', 5], ['B2', 8], ['C3', 8], ['D4', 10], ['E5', 8]] | [['A1', 6], ['B2', 8], ['C3', 8], ['D4', 9], ['E5', 8]] | Failed |
| partial repair probe 1 | [['A1', 1], ['D4', 2], ['F6', 7]] | [['A1', 1], ['B2', 1], ['D4', 2], ['E5', 1], ['F6', 5]] | Failed |
| partial repair probe 2 | [['B2', 2], ['C3', 2], ['E5', 5]] | [['B2', 2], ['C3', 3], ['E5', 4]] | Failed |
| boundary control 1 | [['B2', 2]] | [['B2', 2]] | Passed |
| boundary control 2 | [['A1', 1], ['B2', 1], ['C3', 1]] | [['A1', 1], ['B2', 1], ['C3', 1]] | Passed |
| normal control 1 | [['A1', 2]] | [['A1', 2]] | Passed |
| normal control 2 | [['E5', 3]] | [['E5', 3]] | Passed |
SHA-256 / 65398065c45462da582e8c2e139c097073c96be6cfd4c81f2f2f6a2d3c265497
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(exercised, shorts, method):
total = sum(q for _, q, _ in shorts)
alloc = {}
if method == 'fifo':
left = exercised
for acct, q, seq in sorted(shorts, key=lambda s: s[2]):
take = min(q, left)
alloc[acct] = alloc.get(acct, 0) + take
left -= take
else:
rem = []
for acct, q, seq in shorts:
alloc[acct] = alloc.get(acct, 0) + exercised * q // total
rem.append((-(exercised * q % total), seq, acct))
left = exercised - sum(alloc.values())
for _, seq, acct in sorted(rem)[:left]:
alloc[acct] += 1
return sorted([a, n] for a, n in alloc.items() if n > 0)
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['regression remainder distribution 1', [24, [['A1', 10, 8], ['D4', 5, 17], ['F6', 10, 11]], 'pro-rata'], [['A1', 10], ['D4', 5], ['F6', 9]]], ['regression remainder distribution 2', [39, [['D4', 10, 1], ['C3', 10, 3], ['E5', 10, 9], ['A1', 7, 16], ['B2', 10, 12]], 'pro-rata'], [['A1', 6], ['B2', 8], ['C3', 8], ['D4', 9], ['E5', 8]]], ['partial repair probe 1', [10, [['D4', 5, 14], ['F6', 10, 8], ['A1', 3, 1], ['E5', 1, 16], ['B2', 2, 2]], 'pro-rata'], [['A1', 1], ['B2', 1], ['D4', 2], ['E5', 1], ['F6', 5]]], ['partial repair probe 2', [9, [['F6', 1, 11], ['C3', 5, 10], ['E5', 7, 2], ['B2', 5, 12]], 'pro-rata'], [['B2', 2], ['C3', 3], ['E5', 4]]], ['boundary control 1', [2, [['A1', 5, 2], ['B2', 5, 1]], 'fifo'], [['B2', 2]]], ['boundary control 2', [3, [['A1', 1, 1], ['B2', 1, 2], ['C3', 1, 3]], 'pro-rata'], [['A1', 1], ['B2', 1], ['C3', 1]]], ['normal control 1', [2, [['A1', 5, 14]], 'pro-rata'], [['A1', 2]]], ['normal control 2', [3, [['E5', 3, 1]], 'pro-rata'], [['E5', 3]]]], [['regression remainder distribution 1', [9, [['B2', 2, 12], ['E5', 3, 3], ['A1', 7, 17], ['C3', 5, 5]], 'pro-rata'], [['A1', 4], ['B2', 1], ['C3', 3], ['E5', 1]]], ['regression remainder distribution 2', [14, [['C3', 2, 5], ['D4', 5, 11], ['E5', 3, 17], ['A1', 10, 13], ['B2', 10, 18]], 'pro-rata'], [['A1', 5], ['B2', 5], ['C3', 1], ['D4', 2], ['E5', 1]]], ['partial repair probe 1', [21, [['D4', 1, 15], ['E5', 5, 6], ['F6', 7, 19], ['B2', 2, 11], ['A1', 10, 4]], 'pro-rata'], [['A1', 8], ['B2', 2], ['D4', 1], ['E5', 4], ['F6', 6]]], ['partial repair probe 2', [12, [['A1', 1, 16], ['F6', 5, 18], ['D4', 2, 7], ['B2', 7, 3], ['C3', 2, 19]], 'pro-rata'], [['A1', 1], ['B2', 5], ['C3', 1], ['D4', 1], ['F6', 4]]], ['boundary control 1', [3, [['A1', 1, 1], ['B2', 1, 2], ['C3', 1, 3]], 'pro-rata'], [['A1', 1], ['B2', 1], ['C3', 1]]], ['boundary control 2', [2, [['A1', 5, 2], ['B2', 5, 1]], 'fifo'], [['B2', 2]]], ['normal control 1', [2, [['B2', 3, 13], ['F6', 1, 17], ['A1', 2, 1], ['C3', 3, 4], ['E5', 2, 3]], 'fifo'], [['A1', 2]]], ['normal control 2', [5, [['F6', 7, 2]], 'fifo'], [['F6', 5]]]], [['regression remainder distribution 1', [1, [['F6', 1, 8], ['C3', 3, 7], ['A1', 3, 14], ['B2', 2, 10]], 'pro-rata'], [['C3', 1]]], ['regression remainder distribution 2', [12, [['D4', 7, 17], ['C3', 3, 13], ['A1', 7, 8], ['B2', 1, 2], ['F6', 2, 9]], 'pro-rata'], [['A1', 4], ['B2', 1], ['C3', 2], ['D4', 4], ['F6', 1]]], ['partial repair probe 1', [2, [['E5', 1, 5], ['F6', 5, 9], ['B2', 5, 17]], 'pro-rata'], [['B2', 1], ['F6', 1]]], ['partial repair probe 2', [6, [['D4', 3, 11], ['F6', 3, 15], ['C3', 3, 18], ['B2', 5, 16], ['A1', 2, 6]], 'pro-rata'], [['A1', 1], ['B2', 2], ['C3', 1], ['D4', 1], ['F6', 1]]], ['boundary control 1', [3, [['A1', 1, 1], ['B2', 1, 2], ['C3', 1, 3]], 'pro-rata'], [['A1', 1], ['B2', 1], ['C3', 1]]], ['boundary control 2', [2, [['A1', 5, 2], ['B2', 5, 1]], 'fifo'], [['B2', 2]]], ['normal control 1', [20, [['D4', 10, 17], ['C3', 2, 3], ['F6', 3, 5], ['A1', 5, 7]], 'pro-rata'], [['A1', 5], ['C3', 2], ['D4', 10], ['F6', 3]]], ['normal control 2', [9, [['F6', 5, 5], ['E5', 10, 3], ['B2', 3, 19]], 'fifo'], [['E5', 9]]]], [['regression remainder distribution 1', [4, [['D4', 2, 5], ['A1', 5, 9], ['E5', 7, 14]], 'pro-rata'], [['A1', 1], ['D4', 1], ['E5', 2]]], ['regression remainder distribution 2', [5, [['B2', 1, 5], ['F6', 2, 19], ['D4', 2, 18], ['A1', 3, 6], ['C3', 5, 4]], 'pro-rata'], [['A1', 1], ['C3', 2], ['D4', 1], ['F6', 1]]], ['partial repair probe 1', [17, [['B2', 3, 7], ['A1', 10, 3], ['F6', 5, 14]], 'pro-rata'], [['A1', 9], ['B2', 3], ['F6', 5]]], ['partial repair probe 2', [27, [['C3', 10, 15], ['F6', 7, 1], ['D4', 5, 9], ['B2', 7, 18]], 'pro-rata'], [['B2', 6], ['C3', 9], ['D4', 5], ['F6', 7]]], ['boundary control 1', [2, [['A1', 5, 2], ['B2', 5, 1]], 'fifo'], [['B2', 2]]], ['boundary control 2', [3, [['A1', 1, 1], ['B2', 1, 2], ['C3', 1, 3]], 'pro-rata'], [['A1', 1], ['B2', 1], ['C3', 1]]], ['normal control 1', [1, [['A1', 1, 17]], 'pro-rata'], [['A1', 1]]], ['normal control 2', [12, [['D4', 3, 14], ['E5', 5, 15], ['C3', 1, 17], ['F6', 3, 8]], 'pro-rata'], [['C3', 1], ['D4', 3], ['E5', 5], ['F6', 3]]]], [['regression remainder distribution 1', [2, [['E5', 5, 12], ['D4', 10, 13], ['B2', 1, 3]], 'pro-rata'], [['D4', 1], ['E5', 1]]], ['regression remainder distribution 2', [4, [['B2', 3, 14], ['A1', 5, 1], ['C3', 1, 15]], 'pro-rata'], [['A1', 2], ['B2', 1], ['C3', 1]]], ['partial repair probe 1', [4, [['B2', 3, 13], ['F6', 5, 19], ['D4', 7, 1]], 'pro-rata'], [['B2', 1], ['D4', 2], ['F6', 1]]], ['partial repair probe 2', [7, [['B2', 10, 18], ['C3', 7, 3]], 'pro-rata'], [['B2', 4], ['C3', 3]]], ['boundary control 1', [2, [['A1', 5, 2], ['B2', 5, 1]], 'fifo'], [['B2', 2]]], ['boundary control 2', [3, [['A1', 1, 1], ['B2', 1, 2], ['C3', 1, 3]], 'pro-rata'], [['A1', 1], ['B2', 1], ['C3', 1]]], ['normal control 1', [8, [['A1', 2, 17], ['E5', 5, 8], ['C3', 2, 3], ['B2', 1, 14]], 'fifo'], [['B2', 1], ['C3', 2], ['E5', 5]]], ['normal control 2', [14, [['A1', 7, 18], ['B2', 1, 5], ['D4', 10, 12], ['E5', 1, 14]], 'fifo'], [['A1', 2], ['B2', 1], ['D4', 10], ['E5', 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 |
|---|---|---|---|
| regression remainder distribution 1 | [['A1', 10], ['D4', 5], ['F6', 9]] | [['A1', 10], ['D4', 5], ['F6', 9]] | Passed |
| regression remainder distribution 2 | [['A1', 6], ['B2', 8], ['C3', 8], ['D4', 9], ['E5', 8]] | [['A1', 6], ['B2', 8], ['C3', 8], ['D4', 9], ['E5', 8]] | Passed |
| partial repair probe 1 | [['A1', 1], ['B2', 1], ['D4', 2], ['E5', 1], ['F6', 5]] | [['A1', 1], ['B2', 1], ['D4', 2], ['E5', 1], ['F6', 5]] | Passed |
| partial repair probe 2 | [['B2', 2], ['C3', 3], ['E5', 4]] | [['B2', 2], ['C3', 3], ['E5', 4]] | Passed |
| boundary control 1 | [['B2', 2]] | [['B2', 2]] | Passed |
| boundary control 2 | [['A1', 1], ['B2', 1], ['C3', 1]] | [['A1', 1], ['B2', 1], ['C3', 1]] | Passed |
| normal control 1 | [['A1', 2]] | [['A1', 2]] | Passed |
| normal control 2 | [['E5', 3]] | [['E5', 3]] | Passed |
SHA-256 / 7f5c21928463245b58d701074511c0ca88086e33bb4d11390324d6c75500e622
Verification & scope
A deterministic toy contract stated explicitly in the contract field; no claim of conformance to any exchange or clearing rulebook. 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:57.112568+00:00.
Case digest / 35206d6ed114c3a40dd3fb8355acba9e806dbfee9f50136b250e8424726197eb