FAILURE MAP
← Case archive

FA-58166 / Double-entry ledger accounting / Open access

Cost pool allocation entry: magnitude for shares · case 01

Reversal allocations produce negative or lopsided center shares.

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

ROOT CAUSE

Shares are floored from the signed amount, so negative amounts floor away from zero.

VERIFIED REPAIR

Allocate the magnitude and express direction through the sides.

Unsuccessful approach: Changing only the floor still mixes a signed base with unsigned remainders.

Case contract

x = {'amount': signed cents, 'weights': [[center, non-negative weight]] (some positive), 'source': account}. The pool magnitude is split across positive-weight centers by the largest remainder method: floor shares, then one extra cent to the largest remainders, ties to the earlier-listed center. A non-negative amount credits the source and debits centers; a negative amount (reversal) debits the source and credits centers, all amounts positive. Return lines [[source, side, magnitude]] + [[center, side, share]] for nonzero shares in listing order.

Why this case matters

Ledger software must keep debits equal to credits and apply normal-balance, period and cutoff rules exactly; small sign or boundary slips silently misstate financial statements.

1 / The failure

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

N = 1
observations = []
def solve(x):
    amt = x['amount']
    side_src, side_dst = ('C', 'D') if amt >= 0 else ('D', 'C')
    mag = abs(amt)
    ws = [(c, w) for c, w in x['weights'] if w > 0]
    total = sum(w for _, w in ws)
    base = [amt * w // total for _, w in ws]
    rems = [amt * w % total for _, w in ws]
    left = amt - sum(base)
    order = sorted(range(len(ws)), key=lambda i: (-rems[i], i))
    for i in order[:left]:
        base[i] += 1
    lines = [[x['source'], side_src, mag]]
    for (c, w), share in zip(ws, base):
        if share:
            lines.append([c, side_dst, share])
    return lines
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['regression: magnitude for shares', {'amount': -7, 'weights': [['ops', 0], ['mkt', 5], ['hr', 1], ['it', 2], ['lab', 0]], 'source': 'pool'}, [['pool', 'D', 7], ['mkt', 'C', 4], ['hr', 'C', 1], ['it', 'C', 2]]], ['control 1', {'amount': 7, 'weights': [['fin', 0], ['it', 7], ['hr', 2], ['lab', 3], ['ops', 2]], 'source': 'pool'}, [['pool', 'C', 7], ['it', 'D', 4], ['hr', 'D', 1], ['lab', 'D', 1], ['ops', 'D', 1]]], ['control 2', {'amount': 7, 'weights': [['mkt', 0], ['fin', 1]], 'source': 'pool'}, [['pool', 'C', 7], ['fin', 'D', 7]]], ['control 3', {'amount': 99999, 'weights': [['hr', 1], ['it', 0]], 'source': 'pool'}, [['pool', 'C', 99999], ['hr', 'D', 99999]]], ['control 4', {'amount': 0, 'weights': [['ops', 3], ['mkt', 7], ['fin', 3], ['lab', 5]], 'source': 'pool'}, [['pool', 'C', 0]]], ['control 5', {'amount': 100, 'weights': [['ops', 5], ['it', 5]], 'source': 'pool'}, [['pool', 'C', 100], ['ops', 'D', 50], ['it', 'D', 50]]], ['control 6', {'amount': 0, 'weights': [['ops', 5], ['hr', 5], ['mkt', 7], ['fin', 3]], 'source': 'pool'}, [['pool', 'C', 0]]]], [['regression: magnitude for shares', {'amount': -101, 'weights': [['lab', 1], ['mkt', 5], ['ops', 2]], 'source': 'pool'}, [['pool', 'D', 101], ['lab', 'C', 13], ['mkt', 'C', 63], ['ops', 'C', 25]]], ['control 1', {'amount': 7, 'weights': [['mkt', 0], ['it', 7], ['ops', 2], ['fin', 2], ['lab', 1]], 'source': 'pool'}, [['pool', 'C', 7], ['it', 'D', 4], ['ops', 'D', 1], ['fin', 'D', 1], ['lab', 'D', 1]]], ['control 2', {'amount': 0, 'weights': [['it', 3], ['lab', 1], ['mkt', 0]], 'source': 'pool'}, [['pool', 'C', 0]]], ['control 3', {'amount': 101, 'weights': [['lab', 7], ['hr', 5]], 'source': 'pool'}, [['pool', 'C', 101], ['lab', 'D', 59], ['hr', 'D', 42]]], ['control 4', {'amount': 10, 'weights': [['lab', 1], ['it', 3], ['hr', 1], ['ops', 7], ['mkt', 0]], 'source': 'pool'}, [['pool', 'C', 10], ['lab', 'D', 1], ['it', 'D', 2], ['hr', 'D', 1], ['ops', 'D', 6]]], ['control 5', {'amount': 10, 'weights': [['mkt', 1], ['it', 2], ['fin', 1], ['hr', 7]], 'source': 'pool'}, [['pool', 'C', 10], ['mkt', 'D', 1], ['it', 'D', 2], ['fin', 'D', 1], ['hr', 'D', 6]]], ['control 6', {'amount': 1000, 'weights': [['mkt', 2], ['fin', 5]], 'source': 'pool'}, [['pool', 'C', 1000], ['mkt', 'D', 286], ['fin', 'D', 714]]]], [['regression: magnitude for shares', {'amount': -7, 'weights': [['mkt', 7], ['fin', 7]], 'source': 'pool'}, [['pool', 'D', 7], ['mkt', 'C', 4], ['fin', 'C', 3]]], ['control 1', {'amount': 7, 'weights': [['fin', 1], ['mkt', 5]], 'source': 'pool'}, [['pool', 'C', 7], ['fin', 'D', 1], ['mkt', 'D', 6]]], ['control 2', {'amount': 7, 'weights': [['it', 0], ['lab', 7], ['mkt', 1], ['hr', 3]], 'source': 'pool'}, [['pool', 'C', 7], ['lab', 'D', 4], ['mkt', 'D', 1], ['hr', 'D', 2]]], ['control 3', {'amount': 3, 'weights': [['it', 7], ['hr', 1]], 'source': 'pool'}, [['pool', 'C', 3], ['it', 'D', 3]]], ['control 4', {'amount': 10, 'weights': [['ops', 3], ['lab', 5]], 'source': 'pool'}, [['pool', 'C', 10], ['ops', 'D', 4], ['lab', 'D', 6]]], ['control 5', {'amount': 1000, 'weights': [['ops', 7], ['mkt', 5], ['fin', 7]], 'source': 'pool'}, [['pool', 'C', 1000], ['ops', 'D', 369], ['mkt', 'D', 263], ['fin', 'D', 368]]], ['control 6', {'amount': 10, 'weights': [['ops', 1], ['lab', 5]], 'source': 'pool'}, [['pool', 'C', 10], ['ops', 'D', 2], ['lab', 'D', 8]]]], [['regression: magnitude for shares', {'amount': -7, 'weights': [['lab', 2], ['ops', 7], ['mkt', 2]], 'source': 'pool'}, [['pool', 'D', 7], ['lab', 'C', 1], ['ops', 'C', 5], ['mkt', 'C', 1]]], ['control 1', {'amount': 100, 'weights': [['it', 7], ['fin', 3], ['mkt', 7], ['hr', 1]], 'source': 'pool'}, [['pool', 'C', 100], ['it', 'D', 39], ['fin', 'D', 17], ['mkt', 'D', 39], ['hr', 'D', 5]]], ['control 2', {'amount': 10, 'weights': [['lab', 2], ['it', 5], ['hr', 7], ['mkt', 0], ['ops', 7]], 'source': 'pool'}, [['pool', 'C', 10], ['lab', 'D', 1], ['it', 'D', 3], ['hr', 'D', 3], ['ops', 'D', 3]]], ['control 3', {'amount': 1000, 'weights': [['fin', 7], ['mkt', 3], ['it', 3], ['lab', 1], ['hr', 2]], 'source': 'pool'}, [['pool', 'C', 1000], ['fin', 'D', 438], ['mkt', 'D', 188], ['it', 'D', 187], ['lab', 'D', 62], ['hr', 'D', 125]]], ['control 4', {'amount': 3, 'weights': [['it', 3], ['lab', 3], ['hr', 7]], 'source': 'pool'}, [['pool', 'C', 3], ['it', 'D', 1], ['lab', 'D', 1], ['hr', 'D', 1]]], ['control 5', {'amount': 99999, 'weights': [['hr', 0], ['lab', 0], ['ops', 3], ['mkt', 5], ['it', 2]], 'source': 'pool'}, [['pool', 'C', 99999], ['ops', 'D', 30000], ['mkt', 'D', 49999], ['it', 'D', 20000]]], ['control 6', {'amount': 101, 'weights': [['mkt', 3], ['hr', 0], ['fin', 5]], 'source': 'pool'}, [['pool', 'C', 101], ['mkt', 'D', 38], ['fin', 'D', 63]]]], [['regression: magnitude for shares', {'amount': -7, 'weights': [['fin', 3], ['mkt', 1]], 'source': 'pool'}, [['pool', 'D', 7], ['fin', 'C', 5], ['mkt', 'C', 2]]], ['control 1', {'amount': 100, 'weights': [['fin', 2], ['hr', 0], ['it', 0], ['mkt', 0]], 'source': 'pool'}, [['pool', 'C', 100], ['fin', 'D', 100]]], ['control 2', {'amount': 10, 'weights': [['ops', 3], ['it', 1], ['mkt', 3], ['hr', 0]], 'source': 'pool'}, [['pool', 'C', 10], ['ops', 'D', 4], ['it', 'D', 2], ['mkt', 'D', 4]]], ['control 3', {'amount': 7, 'weights': [['mkt', 1], ['it', 0]], 'source': 'pool'}, [['pool', 'C', 7], ['mkt', 'D', 7]]], ['control 4', {'amount': 10, 'weights': [['mkt', 1], ['it', 7], ['fin', 0], ['ops', 1]], 'source': 'pool'}, [['pool', 'C', 10], ['mkt', 'D', 1], ['it', 'D', 8], ['ops', 'D', 1]]], ['control 5', {'amount': 101, 'weights': [['fin', 5], ['hr', 2]], 'source': 'pool'}, [['pool', 'C', 101], ['fin', 'D', 72], ['hr', 'D', 29]]], ['control 6', {'amount': 101, 'weights': [['fin', 2], ['hr', 2]], 'source': 'pool'}, [['pool', 'C', 101], ['fin', 'D', 51], ['hr', 'D', 50]]]]]
for label, args, expected in fixtures[N-1]:
    try:
        actual = solve(args)
    except Exception as exc:
        actual = 'raised ' + type(exc).__name__
    check(label, actual, 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: magnitude for shares[['pool', 'D', 7], ['mkt', 'C', -4], ['hr', 'C', -1], ['it', 'C', -2]][['pool', 'D', 7], ['mkt', 'C', 4], ['hr', 'C', 1], ['it', 'C', 2]]Failed
control 1[['pool', 'C', 7], ['it', 'D', 4], ['hr', 'D', 1], ['lab', 'D', 1], ['ops', 'D', 1]][['pool', 'C', 7], ['it', 'D', 4], ['hr', 'D', 1], ['lab', 'D', 1], ['ops', 'D', 1]]Passed
control 2[['pool', 'C', 7], ['fin', 'D', 7]][['pool', 'C', 7], ['fin', 'D', 7]]Passed
control 3[['pool', 'C', 99999], ['hr', 'D', 99999]][['pool', 'C', 99999], ['hr', 'D', 99999]]Passed
control 4[['pool', 'C', 0]][['pool', 'C', 0]]Passed
control 5[['pool', 'C', 100], ['ops', 'D', 50], ['it', 'D', 50]][['pool', 'C', 100], ['ops', 'D', 50], ['it', 'D', 50]]Passed
control 6[['pool', 'C', 0]][['pool', 'C', 0]]Passed

SHA-256 / e3c38941344503c3002c95d79877cc2ebf7a47245f5b395a055413c7d3ba76bc

2 / The unsuccessful fix

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

N = 1
observations = []
def solve(x):
    amt = x['amount']
    side_src, side_dst = ('C', 'D') if amt >= 0 else ('D', 'C')
    mag = abs(amt)
    ws = [(c, w) for c, w in x['weights'] if w > 0]
    total = sum(w for _, w in ws)
    base = [amt * w // total for _, w in ws]
    rems = [mag * w % total for _, w in ws]
    left = mag - sum(base)
    order = sorted(range(len(ws)), key=lambda i: (-rems[i], i))
    for i in order[:left]:
        base[i] += 1
    lines = [[x['source'], side_src, mag]]
    for (c, w), share in zip(ws, base):
        if share:
            lines.append([c, side_dst, share])
    return lines
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['regression: magnitude for shares', {'amount': -7, 'weights': [['ops', 0], ['mkt', 5], ['hr', 1], ['it', 2], ['lab', 0]], 'source': 'pool'}, [['pool', 'D', 7], ['mkt', 'C', 4], ['hr', 'C', 1], ['it', 'C', 2]]], ['control 1', {'amount': 7, 'weights': [['fin', 0], ['it', 7], ['hr', 2], ['lab', 3], ['ops', 2]], 'source': 'pool'}, [['pool', 'C', 7], ['it', 'D', 4], ['hr', 'D', 1], ['lab', 'D', 1], ['ops', 'D', 1]]], ['control 2', {'amount': 7, 'weights': [['mkt', 0], ['fin', 1]], 'source': 'pool'}, [['pool', 'C', 7], ['fin', 'D', 7]]], ['control 3', {'amount': 99999, 'weights': [['hr', 1], ['it', 0]], 'source': 'pool'}, [['pool', 'C', 99999], ['hr', 'D', 99999]]], ['control 4', {'amount': 0, 'weights': [['ops', 3], ['mkt', 7], ['fin', 3], ['lab', 5]], 'source': 'pool'}, [['pool', 'C', 0]]], ['control 5', {'amount': 100, 'weights': [['ops', 5], ['it', 5]], 'source': 'pool'}, [['pool', 'C', 100], ['ops', 'D', 50], ['it', 'D', 50]]], ['control 6', {'amount': 0, 'weights': [['ops', 5], ['hr', 5], ['mkt', 7], ['fin', 3]], 'source': 'pool'}, [['pool', 'C', 0]]]], [['regression: magnitude for shares', {'amount': -101, 'weights': [['lab', 1], ['mkt', 5], ['ops', 2]], 'source': 'pool'}, [['pool', 'D', 101], ['lab', 'C', 13], ['mkt', 'C', 63], ['ops', 'C', 25]]], ['control 1', {'amount': 7, 'weights': [['mkt', 0], ['it', 7], ['ops', 2], ['fin', 2], ['lab', 1]], 'source': 'pool'}, [['pool', 'C', 7], ['it', 'D', 4], ['ops', 'D', 1], ['fin', 'D', 1], ['lab', 'D', 1]]], ['control 2', {'amount': 0, 'weights': [['it', 3], ['lab', 1], ['mkt', 0]], 'source': 'pool'}, [['pool', 'C', 0]]], ['control 3', {'amount': 101, 'weights': [['lab', 7], ['hr', 5]], 'source': 'pool'}, [['pool', 'C', 101], ['lab', 'D', 59], ['hr', 'D', 42]]], ['control 4', {'amount': 10, 'weights': [['lab', 1], ['it', 3], ['hr', 1], ['ops', 7], ['mkt', 0]], 'source': 'pool'}, [['pool', 'C', 10], ['lab', 'D', 1], ['it', 'D', 2], ['hr', 'D', 1], ['ops', 'D', 6]]], ['control 5', {'amount': 10, 'weights': [['mkt', 1], ['it', 2], ['fin', 1], ['hr', 7]], 'source': 'pool'}, [['pool', 'C', 10], ['mkt', 'D', 1], ['it', 'D', 2], ['fin', 'D', 1], ['hr', 'D', 6]]], ['control 6', {'amount': 1000, 'weights': [['mkt', 2], ['fin', 5]], 'source': 'pool'}, [['pool', 'C', 1000], ['mkt', 'D', 286], ['fin', 'D', 714]]]], [['regression: magnitude for shares', {'amount': -7, 'weights': [['mkt', 7], ['fin', 7]], 'source': 'pool'}, [['pool', 'D', 7], ['mkt', 'C', 4], ['fin', 'C', 3]]], ['control 1', {'amount': 7, 'weights': [['fin', 1], ['mkt', 5]], 'source': 'pool'}, [['pool', 'C', 7], ['fin', 'D', 1], ['mkt', 'D', 6]]], ['control 2', {'amount': 7, 'weights': [['it', 0], ['lab', 7], ['mkt', 1], ['hr', 3]], 'source': 'pool'}, [['pool', 'C', 7], ['lab', 'D', 4], ['mkt', 'D', 1], ['hr', 'D', 2]]], ['control 3', {'amount': 3, 'weights': [['it', 7], ['hr', 1]], 'source': 'pool'}, [['pool', 'C', 3], ['it', 'D', 3]]], ['control 4', {'amount': 10, 'weights': [['ops', 3], ['lab', 5]], 'source': 'pool'}, [['pool', 'C', 10], ['ops', 'D', 4], ['lab', 'D', 6]]], ['control 5', {'amount': 1000, 'weights': [['ops', 7], ['mkt', 5], ['fin', 7]], 'source': 'pool'}, [['pool', 'C', 1000], ['ops', 'D', 369], ['mkt', 'D', 263], ['fin', 'D', 368]]], ['control 6', {'amount': 10, 'weights': [['ops', 1], ['lab', 5]], 'source': 'pool'}, [['pool', 'C', 10], ['ops', 'D', 2], ['lab', 'D', 8]]]], [['regression: magnitude for shares', {'amount': -7, 'weights': [['lab', 2], ['ops', 7], ['mkt', 2]], 'source': 'pool'}, [['pool', 'D', 7], ['lab', 'C', 1], ['ops', 'C', 5], ['mkt', 'C', 1]]], ['control 1', {'amount': 100, 'weights': [['it', 7], ['fin', 3], ['mkt', 7], ['hr', 1]], 'source': 'pool'}, [['pool', 'C', 100], ['it', 'D', 39], ['fin', 'D', 17], ['mkt', 'D', 39], ['hr', 'D', 5]]], ['control 2', {'amount': 10, 'weights': [['lab', 2], ['it', 5], ['hr', 7], ['mkt', 0], ['ops', 7]], 'source': 'pool'}, [['pool', 'C', 10], ['lab', 'D', 1], ['it', 'D', 3], ['hr', 'D', 3], ['ops', 'D', 3]]], ['control 3', {'amount': 1000, 'weights': [['fin', 7], ['mkt', 3], ['it', 3], ['lab', 1], ['hr', 2]], 'source': 'pool'}, [['pool', 'C', 1000], ['fin', 'D', 438], ['mkt', 'D', 188], ['it', 'D', 187], ['lab', 'D', 62], ['hr', 'D', 125]]], ['control 4', {'amount': 3, 'weights': [['it', 3], ['lab', 3], ['hr', 7]], 'source': 'pool'}, [['pool', 'C', 3], ['it', 'D', 1], ['lab', 'D', 1], ['hr', 'D', 1]]], ['control 5', {'amount': 99999, 'weights': [['hr', 0], ['lab', 0], ['ops', 3], ['mkt', 5], ['it', 2]], 'source': 'pool'}, [['pool', 'C', 99999], ['ops', 'D', 30000], ['mkt', 'D', 49999], ['it', 'D', 20000]]], ['control 6', {'amount': 101, 'weights': [['mkt', 3], ['hr', 0], ['fin', 5]], 'source': 'pool'}, [['pool', 'C', 101], ['mkt', 'D', 38], ['fin', 'D', 63]]]], [['regression: magnitude for shares', {'amount': -7, 'weights': [['fin', 3], ['mkt', 1]], 'source': 'pool'}, [['pool', 'D', 7], ['fin', 'C', 5], ['mkt', 'C', 2]]], ['control 1', {'amount': 100, 'weights': [['fin', 2], ['hr', 0], ['it', 0], ['mkt', 0]], 'source': 'pool'}, [['pool', 'C', 100], ['fin', 'D', 100]]], ['control 2', {'amount': 10, 'weights': [['ops', 3], ['it', 1], ['mkt', 3], ['hr', 0]], 'source': 'pool'}, [['pool', 'C', 10], ['ops', 'D', 4], ['it', 'D', 2], ['mkt', 'D', 4]]], ['control 3', {'amount': 7, 'weights': [['mkt', 1], ['it', 0]], 'source': 'pool'}, [['pool', 'C', 7], ['mkt', 'D', 7]]], ['control 4', {'amount': 10, 'weights': [['mkt', 1], ['it', 7], ['fin', 0], ['ops', 1]], 'source': 'pool'}, [['pool', 'C', 10], ['mkt', 'D', 1], ['it', 'D', 8], ['ops', 'D', 1]]], ['control 5', {'amount': 101, 'weights': [['fin', 5], ['hr', 2]], 'source': 'pool'}, [['pool', 'C', 101], ['fin', 'D', 72], ['hr', 'D', 29]]], ['control 6', {'amount': 101, 'weights': [['fin', 2], ['hr', 2]], 'source': 'pool'}, [['pool', 'C', 101], ['fin', 'D', 51], ['hr', 'D', 50]]]]]
for label, args, expected in fixtures[N-1]:
    try:
        actual = solve(args)
    except Exception as exc:
        actual = 'raised ' + type(exc).__name__
    check(label, actual, 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: magnitude for shares[['pool', 'D', 7], ['mkt', 'C', -4], ['it', 'C', -1]][['pool', 'D', 7], ['mkt', 'C', 4], ['hr', 'C', 1], ['it', 'C', 2]]Failed
control 1[['pool', 'C', 7], ['it', 'D', 4], ['hr', 'D', 1], ['lab', 'D', 1], ['ops', 'D', 1]][['pool', 'C', 7], ['it', 'D', 4], ['hr', 'D', 1], ['lab', 'D', 1], ['ops', 'D', 1]]Passed
control 2[['pool', 'C', 7], ['fin', 'D', 7]][['pool', 'C', 7], ['fin', 'D', 7]]Passed
control 3[['pool', 'C', 99999], ['hr', 'D', 99999]][['pool', 'C', 99999], ['hr', 'D', 99999]]Passed
control 4[['pool', 'C', 0]][['pool', 'C', 0]]Passed
control 5[['pool', 'C', 100], ['ops', 'D', 50], ['it', 'D', 50]][['pool', 'C', 100], ['ops', 'D', 50], ['it', 'D', 50]]Passed
control 6[['pool', 'C', 0]][['pool', 'C', 0]]Passed

SHA-256 / ce49a4e80c8ea7ddb5c36d5b80b8e209735d45f9567a21966fdbf776db77834c

3 / The verified repair

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

N = 1
observations = []
def solve(x):
    amt = x['amount']
    side_src, side_dst = ('C', 'D') if amt >= 0 else ('D', 'C')
    mag = abs(amt)
    ws = [(c, w) for c, w in x['weights'] if w > 0]
    total = sum(w for _, w in ws)
    base = [mag * w // total for _, w in ws]
    rems = [mag * w % total for _, w in ws]
    left = mag - sum(base)
    order = sorted(range(len(ws)), key=lambda i: (-rems[i], i))
    for i in order[:left]:
        base[i] += 1
    lines = [[x['source'], side_src, mag]]
    for (c, w), share in zip(ws, base):
        if share:
            lines.append([c, side_dst, share])
    return lines
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['regression: magnitude for shares', {'amount': -7, 'weights': [['ops', 0], ['mkt', 5], ['hr', 1], ['it', 2], ['lab', 0]], 'source': 'pool'}, [['pool', 'D', 7], ['mkt', 'C', 4], ['hr', 'C', 1], ['it', 'C', 2]]], ['control 1', {'amount': 7, 'weights': [['fin', 0], ['it', 7], ['hr', 2], ['lab', 3], ['ops', 2]], 'source': 'pool'}, [['pool', 'C', 7], ['it', 'D', 4], ['hr', 'D', 1], ['lab', 'D', 1], ['ops', 'D', 1]]], ['control 2', {'amount': 7, 'weights': [['mkt', 0], ['fin', 1]], 'source': 'pool'}, [['pool', 'C', 7], ['fin', 'D', 7]]], ['control 3', {'amount': 99999, 'weights': [['hr', 1], ['it', 0]], 'source': 'pool'}, [['pool', 'C', 99999], ['hr', 'D', 99999]]], ['control 4', {'amount': 0, 'weights': [['ops', 3], ['mkt', 7], ['fin', 3], ['lab', 5]], 'source': 'pool'}, [['pool', 'C', 0]]], ['control 5', {'amount': 100, 'weights': [['ops', 5], ['it', 5]], 'source': 'pool'}, [['pool', 'C', 100], ['ops', 'D', 50], ['it', 'D', 50]]], ['control 6', {'amount': 0, 'weights': [['ops', 5], ['hr', 5], ['mkt', 7], ['fin', 3]], 'source': 'pool'}, [['pool', 'C', 0]]]], [['regression: magnitude for shares', {'amount': -101, 'weights': [['lab', 1], ['mkt', 5], ['ops', 2]], 'source': 'pool'}, [['pool', 'D', 101], ['lab', 'C', 13], ['mkt', 'C', 63], ['ops', 'C', 25]]], ['control 1', {'amount': 7, 'weights': [['mkt', 0], ['it', 7], ['ops', 2], ['fin', 2], ['lab', 1]], 'source': 'pool'}, [['pool', 'C', 7], ['it', 'D', 4], ['ops', 'D', 1], ['fin', 'D', 1], ['lab', 'D', 1]]], ['control 2', {'amount': 0, 'weights': [['it', 3], ['lab', 1], ['mkt', 0]], 'source': 'pool'}, [['pool', 'C', 0]]], ['control 3', {'amount': 101, 'weights': [['lab', 7], ['hr', 5]], 'source': 'pool'}, [['pool', 'C', 101], ['lab', 'D', 59], ['hr', 'D', 42]]], ['control 4', {'amount': 10, 'weights': [['lab', 1], ['it', 3], ['hr', 1], ['ops', 7], ['mkt', 0]], 'source': 'pool'}, [['pool', 'C', 10], ['lab', 'D', 1], ['it', 'D', 2], ['hr', 'D', 1], ['ops', 'D', 6]]], ['control 5', {'amount': 10, 'weights': [['mkt', 1], ['it', 2], ['fin', 1], ['hr', 7]], 'source': 'pool'}, [['pool', 'C', 10], ['mkt', 'D', 1], ['it', 'D', 2], ['fin', 'D', 1], ['hr', 'D', 6]]], ['control 6', {'amount': 1000, 'weights': [['mkt', 2], ['fin', 5]], 'source': 'pool'}, [['pool', 'C', 1000], ['mkt', 'D', 286], ['fin', 'D', 714]]]], [['regression: magnitude for shares', {'amount': -7, 'weights': [['mkt', 7], ['fin', 7]], 'source': 'pool'}, [['pool', 'D', 7], ['mkt', 'C', 4], ['fin', 'C', 3]]], ['control 1', {'amount': 7, 'weights': [['fin', 1], ['mkt', 5]], 'source': 'pool'}, [['pool', 'C', 7], ['fin', 'D', 1], ['mkt', 'D', 6]]], ['control 2', {'amount': 7, 'weights': [['it', 0], ['lab', 7], ['mkt', 1], ['hr', 3]], 'source': 'pool'}, [['pool', 'C', 7], ['lab', 'D', 4], ['mkt', 'D', 1], ['hr', 'D', 2]]], ['control 3', {'amount': 3, 'weights': [['it', 7], ['hr', 1]], 'source': 'pool'}, [['pool', 'C', 3], ['it', 'D', 3]]], ['control 4', {'amount': 10, 'weights': [['ops', 3], ['lab', 5]], 'source': 'pool'}, [['pool', 'C', 10], ['ops', 'D', 4], ['lab', 'D', 6]]], ['control 5', {'amount': 1000, 'weights': [['ops', 7], ['mkt', 5], ['fin', 7]], 'source': 'pool'}, [['pool', 'C', 1000], ['ops', 'D', 369], ['mkt', 'D', 263], ['fin', 'D', 368]]], ['control 6', {'amount': 10, 'weights': [['ops', 1], ['lab', 5]], 'source': 'pool'}, [['pool', 'C', 10], ['ops', 'D', 2], ['lab', 'D', 8]]]], [['regression: magnitude for shares', {'amount': -7, 'weights': [['lab', 2], ['ops', 7], ['mkt', 2]], 'source': 'pool'}, [['pool', 'D', 7], ['lab', 'C', 1], ['ops', 'C', 5], ['mkt', 'C', 1]]], ['control 1', {'amount': 100, 'weights': [['it', 7], ['fin', 3], ['mkt', 7], ['hr', 1]], 'source': 'pool'}, [['pool', 'C', 100], ['it', 'D', 39], ['fin', 'D', 17], ['mkt', 'D', 39], ['hr', 'D', 5]]], ['control 2', {'amount': 10, 'weights': [['lab', 2], ['it', 5], ['hr', 7], ['mkt', 0], ['ops', 7]], 'source': 'pool'}, [['pool', 'C', 10], ['lab', 'D', 1], ['it', 'D', 3], ['hr', 'D', 3], ['ops', 'D', 3]]], ['control 3', {'amount': 1000, 'weights': [['fin', 7], ['mkt', 3], ['it', 3], ['lab', 1], ['hr', 2]], 'source': 'pool'}, [['pool', 'C', 1000], ['fin', 'D', 438], ['mkt', 'D', 188], ['it', 'D', 187], ['lab', 'D', 62], ['hr', 'D', 125]]], ['control 4', {'amount': 3, 'weights': [['it', 3], ['lab', 3], ['hr', 7]], 'source': 'pool'}, [['pool', 'C', 3], ['it', 'D', 1], ['lab', 'D', 1], ['hr', 'D', 1]]], ['control 5', {'amount': 99999, 'weights': [['hr', 0], ['lab', 0], ['ops', 3], ['mkt', 5], ['it', 2]], 'source': 'pool'}, [['pool', 'C', 99999], ['ops', 'D', 30000], ['mkt', 'D', 49999], ['it', 'D', 20000]]], ['control 6', {'amount': 101, 'weights': [['mkt', 3], ['hr', 0], ['fin', 5]], 'source': 'pool'}, [['pool', 'C', 101], ['mkt', 'D', 38], ['fin', 'D', 63]]]], [['regression: magnitude for shares', {'amount': -7, 'weights': [['fin', 3], ['mkt', 1]], 'source': 'pool'}, [['pool', 'D', 7], ['fin', 'C', 5], ['mkt', 'C', 2]]], ['control 1', {'amount': 100, 'weights': [['fin', 2], ['hr', 0], ['it', 0], ['mkt', 0]], 'source': 'pool'}, [['pool', 'C', 100], ['fin', 'D', 100]]], ['control 2', {'amount': 10, 'weights': [['ops', 3], ['it', 1], ['mkt', 3], ['hr', 0]], 'source': 'pool'}, [['pool', 'C', 10], ['ops', 'D', 4], ['it', 'D', 2], ['mkt', 'D', 4]]], ['control 3', {'amount': 7, 'weights': [['mkt', 1], ['it', 0]], 'source': 'pool'}, [['pool', 'C', 7], ['mkt', 'D', 7]]], ['control 4', {'amount': 10, 'weights': [['mkt', 1], ['it', 7], ['fin', 0], ['ops', 1]], 'source': 'pool'}, [['pool', 'C', 10], ['mkt', 'D', 1], ['it', 'D', 8], ['ops', 'D', 1]]], ['control 5', {'amount': 101, 'weights': [['fin', 5], ['hr', 2]], 'source': 'pool'}, [['pool', 'C', 101], ['fin', 'D', 72], ['hr', 'D', 29]]], ['control 6', {'amount': 101, 'weights': [['fin', 2], ['hr', 2]], 'source': 'pool'}, [['pool', 'C', 101], ['fin', 'D', 51], ['hr', 'D', 50]]]]]
for label, args, expected in fixtures[N-1]:
    try:
        actual = solve(args)
    except Exception as exc:
        actual = 'raised ' + type(exc).__name__
    check(label, actual, 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: magnitude for shares[['pool', 'D', 7], ['mkt', 'C', 4], ['hr', 'C', 1], ['it', 'C', 2]][['pool', 'D', 7], ['mkt', 'C', 4], ['hr', 'C', 1], ['it', 'C', 2]]Passed
control 1[['pool', 'C', 7], ['it', 'D', 4], ['hr', 'D', 1], ['lab', 'D', 1], ['ops', 'D', 1]][['pool', 'C', 7], ['it', 'D', 4], ['hr', 'D', 1], ['lab', 'D', 1], ['ops', 'D', 1]]Passed
control 2[['pool', 'C', 7], ['fin', 'D', 7]][['pool', 'C', 7], ['fin', 'D', 7]]Passed
control 3[['pool', 'C', 99999], ['hr', 'D', 99999]][['pool', 'C', 99999], ['hr', 'D', 99999]]Passed
control 4[['pool', 'C', 0]][['pool', 'C', 0]]Passed
control 5[['pool', 'C', 100], ['ops', 'D', 50], ['it', 'D', 50]][['pool', 'C', 100], ['ops', 'D', 50], ['it', 'D', 50]]Passed
control 6[['pool', 'C', 0]][['pool', 'C', 0]]Passed

SHA-256 / 0120c394718225d13079d534593dc30c3a2b3e7d865b8b8f5db4b34ca2b3c7e5

Verification & scope

A deterministic bounded teaching model with stipulated toy bookkeeping rules stated in the contract; amounts are integer cents; it makes no claim of conformance to any accounting standard or product. 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:24.108516+00:00.

Case digest / 7ca5fadc79432edfdfca7121898e3bdb5f7d7246bb331695d26b486b20541650