FAILURE MAP
← Case archive

FA-66121 / Aviation weight and balance / Open access

Compartment loaded exactly to its limit flagged over · case 01

Filling the bulk hold to exactly 800 lb raises an OVER finding.

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

ROOT CAUSE

The compartment total comparison is inclusive.

VERIFIED REPAIR

Flag only totals strictly above the compartment maximum.

Unsuccessful approach: Rounding totals to the nearest hundred pounds hides genuine small overloads.

Case contract

Input {'compartments':{name:[max lb, area sqft, max lb/sqft]},'pieces':[[compartment, lb, footprint sqft]]}. Per piece in order: unknown compartment -> 'UNKNOWN:i'; footprint <= 0 -> 'FOOTPRINT:i'; both exclude the piece from totals. Piece weight/footprint above the floor limit -> 'PSF:c:i' (piece still loaded). Then per compartment in sorted order, total above max -> 'OVER:c'. i is the zero-based index in the whole piece list.

Why this case matters

Hold loading is limited both by total compartment weight and by floor bearing pressure under each individual piece.

1 / The failure

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

N = 1
observations = []
def solve(x):
    comps = x['compartments']
    tot = {}
    out = []
    for i, (c, wt, fp) in enumerate(x['pieces']):
        if c not in comps:
            out.append('UNKNOWN:%d' % i)
            continue
        if fp <= 0:
            out.append('FOOTPRINT:%d' % i)
            continue
        if wt / fp > comps[c][2]:
            out.append('PSF:%s:%d' % (c, i))
        tot[c] = tot.get(c, 0) + wt
    for c in sorted(tot):
        if tot[c] >= comps[c][0]:
            out.append('OVER:%s' % c)
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['clean load', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 400, 8.0], ['AFT', 900, 12.0], ['BULK', 200, 5.0]]}, []], ['dense engine part', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 300, 2.1], ['FWD', 500, 10.0]]}, ['PSF:FWD:0']], ['compartment exactly full', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 500, 10.0], ['BULK', 300, 6.0]]}, []], ['compartment overloaded', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 1200, 20.0], ['AFT', 1001, 20.0], ['FWD', 100, 2.0]]}, ['OVER:AFT']], ['unknown and bad footprint', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 100, 2.0], ['BULK', 700, 0.0], ['BULK', 151, 3.0]]}, ['UNKNOWN:0', 'FOOTPRINT:1']], ['floor limit exactly met', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 450, 5.0], ['BULK', 120, 2.0], ['FWD', 50, 1.0]]}, []], ['sampled case 1', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 200, 13.8], ['FWD', 590, 13.1], ['AFT', 390, 8.0], ['AFT', 970, 10.3], ['FWD', 320, 5.7], ['FWD', 50, 0.6], ['MID', 840, 14.1]]}, ['PSF:AFT:3', 'UNKNOWN:6']], ['sampled case 2', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 650, 0.0]]}, ['UNKNOWN:0']], ['sampled case 3', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 790, 8.8], ['FWD', 1180, 13.1], ['AFT', 770, 12.8], ['MID', 1020, 6.5]]}, ['UNKNOWN:3']]], [['clean load', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 400, 8.0], ['AFT', 900, 12.0], ['BULK', 200, 6.0]]}, []], ['dense engine part', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 300, 2.2], ['FWD', 500, 10.0]]}, ['PSF:FWD:0']], ['compartment exactly full', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 500, 10.0], ['BULK', 300, 6.0]]}, []], ['compartment overloaded', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 1200, 20.0], ['AFT', 1002, 20.0], ['FWD', 100, 2.0]]}, ['OVER:AFT']], ['unknown and bad footprint', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 100, 2.0], ['BULK', 700, 0.0], ['BULK', 152, 3.0]]}, ['UNKNOWN:0', 'FOOTPRINT:1']], ['floor limit exactly met', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 450, 5.0], ['BULK', 120, 2.0], ['FWD', 100, 1.0]]}, []], ['sampled case 1', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 400, 0.0], ['BULK', 270, 6.4], ['FWD', 420, 0.0], ['AFT', 300, 3.3], ['MID', 190, 3.2], ['AFT', 690, 12.9]]}, ['FOOTPRINT:0', 'FOOTPRINT:2', 'PSF:AFT:3', 'UNKNOWN:4']], ['sampled case 2', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 650, 0.0], ['MID', 930, 7.9], ['MID', 80, 0.0], ['BULK', 30, 0.3]]}, ['UNKNOWN:0', 'UNKNOWN:1', 'UNKNOWN:2', 'PSF:BULK:3']], ['sampled case 3', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 580, 0.0], ['AFT', 780, 9.4], ['FWD', 860, 0.0], ['BULK', 630, 0.0]]}, ['FOOTPRINT:0', 'FOOTPRINT:2', 'FOOTPRINT:3']]], [['clean load', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 400, 8.0], ['AFT', 900, 12.0], ['BULK', 200, 7.0]]}, []], ['dense engine part', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 300, 2.3], ['FWD', 500, 10.0]]}, ['PSF:FWD:0']], ['compartment exactly full', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 500, 10.0], ['BULK', 300, 6.0]]}, []], ['compartment overloaded', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 1200, 20.0], ['AFT', 1003, 20.0], ['FWD', 100, 2.0]]}, ['OVER:AFT']], ['unknown and bad footprint', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 100, 2.0], ['BULK', 700, 0.0], ['BULK', 153, 3.0]]}, ['UNKNOWN:0', 'FOOTPRINT:1']], ['floor limit exactly met', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 450, 5.0], ['BULK', 120, 2.0], ['FWD', 150, 1.0]]}, ['PSF:FWD:2']], ['sampled case 1', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 750, 0.0]]}, ['FOOTPRINT:0']], ['sampled case 2', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 80, 0.9], ['BULK', 60, 11.6]]}, []], ['sampled case 3', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 990, 11.5], ['FWD', 920, 14.9], ['FWD', 400, 5.3], ['FWD', 820, 0.0], ['MID', 260, 0.8]]}, ['PSF:BULK:0', 'FOOTPRINT:3', 'UNKNOWN:4', 'OVER:BULK']]], [['clean load', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 400, 8.0], ['AFT', 900, 12.0], ['BULK', 200, 8.0]]}, []], ['dense engine part', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 300, 2.4], ['FWD', 500, 10.0]]}, ['PSF:FWD:0']], ['compartment exactly full', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 500, 10.0], ['BULK', 300, 6.0]]}, []], ['compartment overloaded', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 1200, 20.0], ['AFT', 1004, 20.0], ['FWD', 100, 2.0]]}, ['OVER:AFT']], ['unknown and bad footprint', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 100, 2.0], ['BULK', 700, 0.0], ['BULK', 154, 3.0]]}, ['UNKNOWN:0', 'FOOTPRINT:1']], ['floor limit exactly met', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 450, 5.0], ['BULK', 120, 2.0], ['FWD', 200, 1.0]]}, ['PSF:FWD:2']], ['sampled case 1', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 630, 9.8], ['FWD', 1030, 17.2], ['BULK', 900, 0.0], ['FWD', 650, 10.8], ['FWD', 960, 16.0], ['BULK', 480, 5.3]]}, ['PSF:BULK:0', 'FOOTPRINT:2', 'PSF:BULK:5', 'OVER:BULK', 'OVER:FWD']], ['sampled case 2', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 190, 11.6], ['BULK', 360, 4.0]]}, ['PSF:BULK:1']], ['sampled case 3', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 1190, 9.0], ['AFT', 470, 4.7]]}, ['UNKNOWN:0', 'PSF:AFT:1']]], [['clean load', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 400, 8.0], ['AFT', 900, 12.0], ['BULK', 200, 9.0]]}, []], ['dense engine part', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 300, 2.5], ['FWD', 500, 10.0]]}, ['PSF:FWD:0']], ['compartment exactly full', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 500, 10.0], ['BULK', 300, 6.0]]}, []], ['compartment overloaded', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 1200, 20.0], ['AFT', 1005, 20.0], ['FWD', 100, 2.0]]}, ['OVER:AFT']], ['unknown and bad footprint', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 100, 2.0], ['BULK', 700, 0.0], ['BULK', 155, 3.0]]}, ['UNKNOWN:0', 'FOOTPRINT:1']], ['floor limit exactly met', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 450, 5.0], ['BULK', 120, 2.0], ['FWD', 250, 1.0]]}, ['PSF:FWD:2']], ['sampled case 1', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 910, 0.0], ['AFT', 890, 1.7], ['FWD', 750, 8.3], ['FWD', 1060, 17.7], ['AFT', 160, 0.0], ['AFT', 1180, 19.7], ['BULK', 440, 5.9]]}, ['FOOTPRINT:0', 'PSF:AFT:1', 'FOOTPRINT:4', 'PSF:BULK:6', 'OVER:FWD']], ['sampled case 2', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 290, 12.8], ['FWD', 660, 0.0], ['BULK', 170, 8.9], ['FWD', 590, 6.6], ['AFT', 520, 5.2], ['FWD', 460, 8.4], ['BULK', 60, 0.6]]}, ['FOOTPRINT:1', 'PSF:AFT:4', 'PSF:BULK:6']], ['sampled case 3', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 900, 10.0], ['FWD', 1020, 11.3], ['AFT', 410, 6.8], ['MID', 280, 0.9], ['AFT', 770, 0.0], ['MID', 560, 0.0], ['FWD', 990, 16.5]]}, ['UNKNOWN:0', 'UNKNOWN:3', 'FOOTPRINT:4', 'UNKNOWN:5', 'OVER:FWD']]]]
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
clean load[][]Passed
dense engine part['PSF:FWD:0']['PSF:FWD:0']Passed
compartment exactly full['OVER:BULK'][]Failed
compartment overloaded['OVER:AFT']['OVER:AFT']Passed
unknown and bad footprint['UNKNOWN:0', 'FOOTPRINT:1']['UNKNOWN:0', 'FOOTPRINT:1']Passed
floor limit exactly met[][]Passed
sampled case 1['PSF:AFT:3', 'UNKNOWN:6']['PSF:AFT:3', 'UNKNOWN:6']Passed
sampled case 2['UNKNOWN:0']['UNKNOWN:0']Passed
sampled case 3['UNKNOWN:3']['UNKNOWN:3']Passed

SHA-256 / d882715bc883ca6f65907730ee4b6255c320e31eb2d894aa0dbaa8a54cf0ef62

2 / The unsuccessful fix

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

N = 1
observations = []
def solve(x):
    comps = x['compartments']
    tot = {}
    out = []
    for i, (c, wt, fp) in enumerate(x['pieces']):
        if c not in comps:
            out.append('UNKNOWN:%d' % i)
            continue
        if fp <= 0:
            out.append('FOOTPRINT:%d' % i)
            continue
        if wt / fp > comps[c][2]:
            out.append('PSF:%s:%d' % (c, i))
        tot[c] = tot.get(c, 0) + wt
    for c in sorted(tot):
        if round(tot[c], -2) > comps[c][0]:
            out.append('OVER:%s' % c)
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['clean load', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 400, 8.0], ['AFT', 900, 12.0], ['BULK', 200, 5.0]]}, []], ['dense engine part', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 300, 2.1], ['FWD', 500, 10.0]]}, ['PSF:FWD:0']], ['compartment exactly full', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 500, 10.0], ['BULK', 300, 6.0]]}, []], ['compartment overloaded', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 1200, 20.0], ['AFT', 1001, 20.0], ['FWD', 100, 2.0]]}, ['OVER:AFT']], ['unknown and bad footprint', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 100, 2.0], ['BULK', 700, 0.0], ['BULK', 151, 3.0]]}, ['UNKNOWN:0', 'FOOTPRINT:1']], ['floor limit exactly met', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 450, 5.0], ['BULK', 120, 2.0], ['FWD', 50, 1.0]]}, []], ['sampled case 1', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 200, 13.8], ['FWD', 590, 13.1], ['AFT', 390, 8.0], ['AFT', 970, 10.3], ['FWD', 320, 5.7], ['FWD', 50, 0.6], ['MID', 840, 14.1]]}, ['PSF:AFT:3', 'UNKNOWN:6']], ['sampled case 2', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 650, 0.0]]}, ['UNKNOWN:0']], ['sampled case 3', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 790, 8.8], ['FWD', 1180, 13.1], ['AFT', 770, 12.8], ['MID', 1020, 6.5]]}, ['UNKNOWN:3']]], [['clean load', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 400, 8.0], ['AFT', 900, 12.0], ['BULK', 200, 6.0]]}, []], ['dense engine part', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 300, 2.2], ['FWD', 500, 10.0]]}, ['PSF:FWD:0']], ['compartment exactly full', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 500, 10.0], ['BULK', 300, 6.0]]}, []], ['compartment overloaded', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 1200, 20.0], ['AFT', 1002, 20.0], ['FWD', 100, 2.0]]}, ['OVER:AFT']], ['unknown and bad footprint', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 100, 2.0], ['BULK', 700, 0.0], ['BULK', 152, 3.0]]}, ['UNKNOWN:0', 'FOOTPRINT:1']], ['floor limit exactly met', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 450, 5.0], ['BULK', 120, 2.0], ['FWD', 100, 1.0]]}, []], ['sampled case 1', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 400, 0.0], ['BULK', 270, 6.4], ['FWD', 420, 0.0], ['AFT', 300, 3.3], ['MID', 190, 3.2], ['AFT', 690, 12.9]]}, ['FOOTPRINT:0', 'FOOTPRINT:2', 'PSF:AFT:3', 'UNKNOWN:4']], ['sampled case 2', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 650, 0.0], ['MID', 930, 7.9], ['MID', 80, 0.0], ['BULK', 30, 0.3]]}, ['UNKNOWN:0', 'UNKNOWN:1', 'UNKNOWN:2', 'PSF:BULK:3']], ['sampled case 3', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 580, 0.0], ['AFT', 780, 9.4], ['FWD', 860, 0.0], ['BULK', 630, 0.0]]}, ['FOOTPRINT:0', 'FOOTPRINT:2', 'FOOTPRINT:3']]], [['clean load', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 400, 8.0], ['AFT', 900, 12.0], ['BULK', 200, 7.0]]}, []], ['dense engine part', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 300, 2.3], ['FWD', 500, 10.0]]}, ['PSF:FWD:0']], ['compartment exactly full', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 500, 10.0], ['BULK', 300, 6.0]]}, []], ['compartment overloaded', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 1200, 20.0], ['AFT', 1003, 20.0], ['FWD', 100, 2.0]]}, ['OVER:AFT']], ['unknown and bad footprint', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 100, 2.0], ['BULK', 700, 0.0], ['BULK', 153, 3.0]]}, ['UNKNOWN:0', 'FOOTPRINT:1']], ['floor limit exactly met', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 450, 5.0], ['BULK', 120, 2.0], ['FWD', 150, 1.0]]}, ['PSF:FWD:2']], ['sampled case 1', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 750, 0.0]]}, ['FOOTPRINT:0']], ['sampled case 2', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 80, 0.9], ['BULK', 60, 11.6]]}, []], ['sampled case 3', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 990, 11.5], ['FWD', 920, 14.9], ['FWD', 400, 5.3], ['FWD', 820, 0.0], ['MID', 260, 0.8]]}, ['PSF:BULK:0', 'FOOTPRINT:3', 'UNKNOWN:4', 'OVER:BULK']]], [['clean load', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 400, 8.0], ['AFT', 900, 12.0], ['BULK', 200, 8.0]]}, []], ['dense engine part', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 300, 2.4], ['FWD', 500, 10.0]]}, ['PSF:FWD:0']], ['compartment exactly full', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 500, 10.0], ['BULK', 300, 6.0]]}, []], ['compartment overloaded', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 1200, 20.0], ['AFT', 1004, 20.0], ['FWD', 100, 2.0]]}, ['OVER:AFT']], ['unknown and bad footprint', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 100, 2.0], ['BULK', 700, 0.0], ['BULK', 154, 3.0]]}, ['UNKNOWN:0', 'FOOTPRINT:1']], ['floor limit exactly met', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 450, 5.0], ['BULK', 120, 2.0], ['FWD', 200, 1.0]]}, ['PSF:FWD:2']], ['sampled case 1', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 630, 9.8], ['FWD', 1030, 17.2], ['BULK', 900, 0.0], ['FWD', 650, 10.8], ['FWD', 960, 16.0], ['BULK', 480, 5.3]]}, ['PSF:BULK:0', 'FOOTPRINT:2', 'PSF:BULK:5', 'OVER:BULK', 'OVER:FWD']], ['sampled case 2', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 190, 11.6], ['BULK', 360, 4.0]]}, ['PSF:BULK:1']], ['sampled case 3', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 1190, 9.0], ['AFT', 470, 4.7]]}, ['UNKNOWN:0', 'PSF:AFT:1']]], [['clean load', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 400, 8.0], ['AFT', 900, 12.0], ['BULK', 200, 9.0]]}, []], ['dense engine part', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 300, 2.5], ['FWD', 500, 10.0]]}, ['PSF:FWD:0']], ['compartment exactly full', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 500, 10.0], ['BULK', 300, 6.0]]}, []], ['compartment overloaded', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 1200, 20.0], ['AFT', 1005, 20.0], ['FWD', 100, 2.0]]}, ['OVER:AFT']], ['unknown and bad footprint', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 100, 2.0], ['BULK', 700, 0.0], ['BULK', 155, 3.0]]}, ['UNKNOWN:0', 'FOOTPRINT:1']], ['floor limit exactly met', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 450, 5.0], ['BULK', 120, 2.0], ['FWD', 250, 1.0]]}, ['PSF:FWD:2']], ['sampled case 1', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 910, 0.0], ['AFT', 890, 1.7], ['FWD', 750, 8.3], ['FWD', 1060, 17.7], ['AFT', 160, 0.0], ['AFT', 1180, 19.7], ['BULK', 440, 5.9]]}, ['FOOTPRINT:0', 'PSF:AFT:1', 'FOOTPRINT:4', 'PSF:BULK:6', 'OVER:FWD']], ['sampled case 2', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 290, 12.8], ['FWD', 660, 0.0], ['BULK', 170, 8.9], ['FWD', 590, 6.6], ['AFT', 520, 5.2], ['FWD', 460, 8.4], ['BULK', 60, 0.6]]}, ['FOOTPRINT:1', 'PSF:AFT:4', 'PSF:BULK:6']], ['sampled case 3', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 900, 10.0], ['FWD', 1020, 11.3], ['AFT', 410, 6.8], ['MID', 280, 0.9], ['AFT', 770, 0.0], ['MID', 560, 0.0], ['FWD', 990, 16.5]]}, ['UNKNOWN:0', 'UNKNOWN:3', 'FOOTPRINT:4', 'UNKNOWN:5', 'OVER:FWD']]]]
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
clean load[][]Passed
dense engine part['PSF:FWD:0']['PSF:FWD:0']Passed
compartment exactly full[][]Passed
compartment overloaded[]['OVER:AFT']Failed
unknown and bad footprint['UNKNOWN:0', 'FOOTPRINT:1']['UNKNOWN:0', 'FOOTPRINT:1']Passed
floor limit exactly met[][]Passed
sampled case 1['PSF:AFT:3', 'UNKNOWN:6']['PSF:AFT:3', 'UNKNOWN:6']Passed
sampled case 2['UNKNOWN:0']['UNKNOWN:0']Passed
sampled case 3['UNKNOWN:3']['UNKNOWN:3']Passed

SHA-256 / 87a7ca702253c617dcbd016726d10923a3cc332d60d8a975dcc5277e4f4ac70c

3 / The verified repair

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

N = 1
observations = []
def solve(x):
    comps = x['compartments']
    tot = {}
    out = []
    for i, (c, wt, fp) in enumerate(x['pieces']):
        if c not in comps:
            out.append('UNKNOWN:%d' % i)
            continue
        if fp <= 0:
            out.append('FOOTPRINT:%d' % i)
            continue
        if wt / fp > comps[c][2]:
            out.append('PSF:%s:%d' % (c, i))
        tot[c] = tot.get(c, 0) + wt
    for c in sorted(tot):
        if tot[c] > comps[c][0]:
            out.append('OVER:%s' % c)
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['clean load', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 400, 8.0], ['AFT', 900, 12.0], ['BULK', 200, 5.0]]}, []], ['dense engine part', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 300, 2.1], ['FWD', 500, 10.0]]}, ['PSF:FWD:0']], ['compartment exactly full', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 500, 10.0], ['BULK', 300, 6.0]]}, []], ['compartment overloaded', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 1200, 20.0], ['AFT', 1001, 20.0], ['FWD', 100, 2.0]]}, ['OVER:AFT']], ['unknown and bad footprint', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 100, 2.0], ['BULK', 700, 0.0], ['BULK', 151, 3.0]]}, ['UNKNOWN:0', 'FOOTPRINT:1']], ['floor limit exactly met', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 450, 5.0], ['BULK', 120, 2.0], ['FWD', 50, 1.0]]}, []], ['sampled case 1', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 200, 13.8], ['FWD', 590, 13.1], ['AFT', 390, 8.0], ['AFT', 970, 10.3], ['FWD', 320, 5.7], ['FWD', 50, 0.6], ['MID', 840, 14.1]]}, ['PSF:AFT:3', 'UNKNOWN:6']], ['sampled case 2', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 650, 0.0]]}, ['UNKNOWN:0']], ['sampled case 3', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 790, 8.8], ['FWD', 1180, 13.1], ['AFT', 770, 12.8], ['MID', 1020, 6.5]]}, ['UNKNOWN:3']]], [['clean load', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 400, 8.0], ['AFT', 900, 12.0], ['BULK', 200, 6.0]]}, []], ['dense engine part', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 300, 2.2], ['FWD', 500, 10.0]]}, ['PSF:FWD:0']], ['compartment exactly full', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 500, 10.0], ['BULK', 300, 6.0]]}, []], ['compartment overloaded', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 1200, 20.0], ['AFT', 1002, 20.0], ['FWD', 100, 2.0]]}, ['OVER:AFT']], ['unknown and bad footprint', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 100, 2.0], ['BULK', 700, 0.0], ['BULK', 152, 3.0]]}, ['UNKNOWN:0', 'FOOTPRINT:1']], ['floor limit exactly met', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 450, 5.0], ['BULK', 120, 2.0], ['FWD', 100, 1.0]]}, []], ['sampled case 1', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 400, 0.0], ['BULK', 270, 6.4], ['FWD', 420, 0.0], ['AFT', 300, 3.3], ['MID', 190, 3.2], ['AFT', 690, 12.9]]}, ['FOOTPRINT:0', 'FOOTPRINT:2', 'PSF:AFT:3', 'UNKNOWN:4']], ['sampled case 2', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 650, 0.0], ['MID', 930, 7.9], ['MID', 80, 0.0], ['BULK', 30, 0.3]]}, ['UNKNOWN:0', 'UNKNOWN:1', 'UNKNOWN:2', 'PSF:BULK:3']], ['sampled case 3', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 580, 0.0], ['AFT', 780, 9.4], ['FWD', 860, 0.0], ['BULK', 630, 0.0]]}, ['FOOTPRINT:0', 'FOOTPRINT:2', 'FOOTPRINT:3']]], [['clean load', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 400, 8.0], ['AFT', 900, 12.0], ['BULK', 200, 7.0]]}, []], ['dense engine part', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 300, 2.3], ['FWD', 500, 10.0]]}, ['PSF:FWD:0']], ['compartment exactly full', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 500, 10.0], ['BULK', 300, 6.0]]}, []], ['compartment overloaded', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 1200, 20.0], ['AFT', 1003, 20.0], ['FWD', 100, 2.0]]}, ['OVER:AFT']], ['unknown and bad footprint', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 100, 2.0], ['BULK', 700, 0.0], ['BULK', 153, 3.0]]}, ['UNKNOWN:0', 'FOOTPRINT:1']], ['floor limit exactly met', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 450, 5.0], ['BULK', 120, 2.0], ['FWD', 150, 1.0]]}, ['PSF:FWD:2']], ['sampled case 1', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 750, 0.0]]}, ['FOOTPRINT:0']], ['sampled case 2', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 80, 0.9], ['BULK', 60, 11.6]]}, []], ['sampled case 3', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 990, 11.5], ['FWD', 920, 14.9], ['FWD', 400, 5.3], ['FWD', 820, 0.0], ['MID', 260, 0.8]]}, ['PSF:BULK:0', 'FOOTPRINT:3', 'UNKNOWN:4', 'OVER:BULK']]], [['clean load', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 400, 8.0], ['AFT', 900, 12.0], ['BULK', 200, 8.0]]}, []], ['dense engine part', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 300, 2.4], ['FWD', 500, 10.0]]}, ['PSF:FWD:0']], ['compartment exactly full', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 500, 10.0], ['BULK', 300, 6.0]]}, []], ['compartment overloaded', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 1200, 20.0], ['AFT', 1004, 20.0], ['FWD', 100, 2.0]]}, ['OVER:AFT']], ['unknown and bad footprint', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 100, 2.0], ['BULK', 700, 0.0], ['BULK', 154, 3.0]]}, ['UNKNOWN:0', 'FOOTPRINT:1']], ['floor limit exactly met', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 450, 5.0], ['BULK', 120, 2.0], ['FWD', 200, 1.0]]}, ['PSF:FWD:2']], ['sampled case 1', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 630, 9.8], ['FWD', 1030, 17.2], ['BULK', 900, 0.0], ['FWD', 650, 10.8], ['FWD', 960, 16.0], ['BULK', 480, 5.3]]}, ['PSF:BULK:0', 'FOOTPRINT:2', 'PSF:BULK:5', 'OVER:BULK', 'OVER:FWD']], ['sampled case 2', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 190, 11.6], ['BULK', 360, 4.0]]}, ['PSF:BULK:1']], ['sampled case 3', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 1190, 9.0], ['AFT', 470, 4.7]]}, ['UNKNOWN:0', 'PSF:AFT:1']]], [['clean load', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 400, 8.0], ['AFT', 900, 12.0], ['BULK', 200, 9.0]]}, []], ['dense engine part', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['FWD', 300, 2.5], ['FWD', 500, 10.0]]}, ['PSF:FWD:0']], ['compartment exactly full', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['BULK', 500, 10.0], ['BULK', 300, 6.0]]}, []], ['compartment overloaded', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 1200, 20.0], ['AFT', 1005, 20.0], ['FWD', 100, 2.0]]}, ['OVER:AFT']], ['unknown and bad footprint', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 100, 2.0], ['BULK', 700, 0.0], ['BULK', 155, 3.0]]}, ['UNKNOWN:0', 'FOOTPRINT:1']], ['floor limit exactly met', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 450, 5.0], ['BULK', 120, 2.0], ['FWD', 250, 1.0]]}, ['PSF:FWD:2']], ['sampled case 1', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 910, 0.0], ['AFT', 890, 1.7], ['FWD', 750, 8.3], ['FWD', 1060, 17.7], ['AFT', 160, 0.0], ['AFT', 1180, 19.7], ['BULK', 440, 5.9]]}, ['FOOTPRINT:0', 'PSF:AFT:1', 'FOOTPRINT:4', 'PSF:BULK:6', 'OVER:FWD']], ['sampled case 2', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['AFT', 290, 12.8], ['FWD', 660, 0.0], ['BULK', 170, 8.9], ['FWD', 590, 6.6], ['AFT', 520, 5.2], ['FWD', 460, 8.4], ['BULK', 60, 0.6]]}, ['FOOTPRINT:1', 'PSF:AFT:4', 'PSF:BULK:6']], ['sampled case 3', {'compartments': {'FWD': [1500, 40.0, 100.0], 'AFT': [2200, 55.0, 90.0], 'BULK': [800, 20.0, 60.0]}, 'pieces': [['MID', 900, 10.0], ['FWD', 1020, 11.3], ['AFT', 410, 6.8], ['MID', 280, 0.9], ['AFT', 770, 0.0], ['MID', 560, 0.0], ['FWD', 990, 16.5]]}, ['UNKNOWN:0', 'UNKNOWN:3', 'FOOTPRINT:4', 'UNKNOWN:5', 'OVER:FWD']]]]
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
clean load[][]Passed
dense engine part['PSF:FWD:0']['PSF:FWD:0']Passed
compartment exactly full[][]Passed
compartment overloaded['OVER:AFT']['OVER:AFT']Passed
unknown and bad footprint['UNKNOWN:0', 'FOOTPRINT:1']['UNKNOWN:0', 'FOOTPRINT:1']Passed
floor limit exactly met[][]Passed
sampled case 1['PSF:AFT:3', 'UNKNOWN:6']['PSF:AFT:3', 'UNKNOWN:6']Passed
sampled case 2['UNKNOWN:0']['UNKNOWN:0']Passed
sampled case 3['UNKNOWN:3']['UNKNOWN:3']Passed

SHA-256 / 61f5ccc4808f2dceedf7daf739340eba604431e089526e8481f5014ddd20ced6

Verification & scope

A deterministic toy loading model with stipulated constants; it is not an approved aircraft flight manual procedure and makes no claim of regulatory conformance. 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:47:40.416536+00:00.

Case digest / 2df3efd342a2833116079cc942161e2e2d085dcb11ce5d41ecd7ef5fc2c488b1