FA-95186 / Warehouse slotting and bin packing / Open access
Rack audit: level 5 not derated · case 01
Level 5 beams are audited against the full rating although the derate starts at level 5.
ROOT CAUSE
The derate condition starts above level 5.
VERIFIED REPAIR
Apply the 90% derate for levels 5 and higher.
Unsuccessful approach: Subtracting a flat 10 kg is not the 90% derate.
Case contract
loads [[bay, level, kg]]; level 0 is floor storage and loads neither beams nor uprights. Sum kg per (bay, level) and per bay. Beam capacity is beam_cap, derated to floor(90%) for levels 5 and up. Report ["BEAM", bay, level, total] when a level exceeds capacity and ["BAY", bay, 0, total] when a bay exceeds bay_cap, sorted.
Why this case matters
Rack load audits prevent beam and upright overloads in pallet racking.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(loads, beam_cap, bay_cap):
beam = {}
bay = {}
for b, lvl, kg in loads:
if lvl == 0:
continue
beam[(b, lvl)] = beam.get((b, lvl), 0) + kg
bay[b] = bay.get(b, 0) + kg
out = []
for (b, lvl), t in beam.items():
cap = beam_cap * 9 // 10 if lvl > 5 else beam_cap
if t > cap:
out.append(['BEAM', b, lvl, t])
for b, t in bay.items():
if t > bay_cap:
out.append(['BAY', b, 0, t])
out.sort()
return out
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['derated level 5', [[[1, 5, 950]], 1000, 5000], [['BEAM', 1, 5, 950]]], ['beam over', [[[1, 1, 600], [1, 1, 500]], 1000, 5000], [['BEAM', 1, 1, 1100]]], ['level 4 full rating', [[[1, 4, 950]], 1000, 5000], []], ['bay over', [[[3, 1, 900], [3, 2, 900], [3, 3, 900]], 1000, 2500], [['BAY', 3, 0, 2700]]], ['beam equal ok', [[[1, 1, 500], [1, 1, 500]], 1000, 5000], []], ['floor ignored', [[[2, 0, 3000], [2, 1, 900]], 1000, 2000], []], ['generated mix 8', [[[1, 1, 300], [3, 5, 300], [3, 5, 300], [2, 4, 900], [2, 4, 1000], [1, 6, 1000]], 1000, 2000], [['BEAM', 1, 6, 1000], ['BEAM', 2, 4, 1900]]], ['generated mix 16', [[[3, 0, 1000], [2, 2, 450], [1, 6, 1000]], 1000, 2000], [['BEAM', 1, 6, 1000]]]], [['generated mix 59', [[[2, 5, 450], [3, 2, 1000], [3, 5, 1000], [2, 1, 450], [3, 6, 900], [3, 2, 300], [1, 6, 900], [2, 4, 300]], 1000, 2000], [['BAY', 3, 0, 3200], ['BEAM', 3, 2, 1300], ['BEAM', 3, 5, 1000]]], ['derated level 5', [[[1, 5, 950]], 1000, 5000], [['BEAM', 1, 5, 950]]], ['floor ignored', [[[2, 0, 3000], [2, 1, 900]], 1000, 2000], []], ['beam over', [[[1, 1, 600], [1, 1, 500]], 1000, 5000], [['BEAM', 1, 1, 1100]]], ['level 4 full rating', [[[1, 4, 950]], 1000, 5000], []], ['bay over', [[[3, 1, 900], [3, 2, 900], [3, 3, 900]], 1000, 2500], [['BAY', 3, 0, 2700]]], ['generated mix 11', [[[3, 5, 900], [2, 5, 300], [3, 5, 300], [3, 0, 500]], 1500, 4000], []], ['generated mix 19', [[[3, 6, 500], [1, 4, 1000], [2, 0, 450], [3, 1, 500], [2, 5, 900], [3, 0, 500], [1, 6, 500]], 1500, 4000], []]], [['generated mix 55', [[[3, 6, 300], [2, 1, 300], [2, 2, 900], [2, 1, 500], [2, 6, 450], [3, 5, 1000], [1, 1, 450]], 1000, 3000], [['BEAM', 3, 5, 1000]]], ['derated level 5', [[[1, 5, 950]], 1000, 5000], [['BEAM', 1, 5, 950]]], ['beam equal ok', [[[1, 1, 500], [1, 1, 500]], 1000, 5000], []], ['floor ignored', [[[2, 0, 3000], [2, 1, 900]], 1000, 2000], []], ['beam over', [[[1, 1, 600], [1, 1, 500]], 1000, 5000], [['BEAM', 1, 1, 1100]]], ['level 4 full rating', [[[1, 4, 950]], 1000, 5000], []], ['generated mix 22', [[[3, 5, 1000], [1, 6, 1000], [2, 5, 450], [2, 0, 300]], 1500, 3000], []], ['generated mix 30', [[[3, 6, 900], [2, 6, 1000], [2, 5, 450], [3, 0, 500], [1, 5, 900], [2, 6, 500], [3, 1, 450]], 1500, 2000], [['BEAM', 2, 6, 1500]]]], [['generated mix 37', [[[1, 6, 300], [1, 4, 1000], [3, 0, 1000], [1, 4, 900], [1, 4, 900], [1, 5, 1000], [3, 0, 900], [3, 0, 1000]], 1000, 3000], [['BAY', 1, 0, 4100], ['BEAM', 1, 4, 2800], ['BEAM', 1, 5, 1000]]], ['derated level 5', [[[1, 5, 950]], 1000, 5000], [['BEAM', 1, 5, 950]]], ['bay over', [[[3, 1, 900], [3, 2, 900], [3, 3, 900]], 1000, 2500], [['BAY', 3, 0, 2700]]], ['beam equal ok', [[[1, 1, 500], [1, 1, 500]], 1000, 5000], []], ['floor ignored', [[[2, 0, 3000], [2, 1, 900]], 1000, 2000], []], ['beam over', [[[1, 1, 600], [1, 1, 500]], 1000, 5000], [['BEAM', 1, 1, 1100]]], ['generated mix 33', [[[1, 5, 500], [2, 0, 450], [1, 6, 1000], [1, 5, 300]], 1000, 3000], [['BEAM', 1, 6, 1000]]], ['generated mix 42', [[[1, 0, 450], [3, 5, 900], [1, 2, 900], [1, 1, 500], [1, 0, 1000], [1, 0, 450]], 1500, 3000], []]], [['derated level 5', [[[1, 5, 950]], 1000, 5000], [['BEAM', 1, 5, 950]]], ['level 4 full rating', [[[1, 4, 950]], 1000, 5000], []], ['bay over', [[[3, 1, 900], [3, 2, 900], [3, 3, 900]], 1000, 2500], [['BAY', 3, 0, 2700]]], ['beam equal ok', [[[1, 1, 500], [1, 1, 500]], 1000, 5000], []], ['floor ignored', [[[2, 0, 3000], [2, 1, 900]], 1000, 2000], []], ['generated mix 44', [[[2, 5, 500], [1, 2, 300], [1, 4, 900], [1, 1, 1000], [3, 2, 300], [3, 2, 500]], 1000, 4000], []], ['generated mix 52', [[[1, 5, 900], [2, 0, 1000], [1, 6, 1000], [3, 5, 300], [1, 0, 450], [1, 0, 900], [2, 4, 500], [2, 0, 500]], 1000, 3000], [['BEAM', 1, 6, 1000]]], ['generated mix 60', [[[1, 4, 450], [1, 4, 900], [2, 4, 500]], 1500, 4000], []]]]
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 |
|---|---|---|---|
| derated level 5 | [] | [['BEAM', 1, 5, 950]] | Failed |
| beam over | [['BEAM', 1, 1, 1100]] | [['BEAM', 1, 1, 1100]] | Passed |
| level 4 full rating | [] | [] | Passed |
| bay over | [['BAY', 3, 0, 2700]] | [['BAY', 3, 0, 2700]] | Passed |
| beam equal ok | [] | [] | Passed |
| floor ignored | [] | [] | Passed |
| generated mix 8 | [['BEAM', 1, 6, 1000], ['BEAM', 2, 4, 1900]] | [['BEAM', 1, 6, 1000], ['BEAM', 2, 4, 1900]] | Passed |
| generated mix 16 | [['BEAM', 1, 6, 1000]] | [['BEAM', 1, 6, 1000]] | Passed |
SHA-256 / 2f687d740b615626021d08427148cc53f05079e9de88789bbd2320781ebc0341
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(loads, beam_cap, bay_cap):
beam = {}
bay = {}
for b, lvl, kg in loads:
if lvl == 0:
continue
beam[(b, lvl)] = beam.get((b, lvl), 0) + kg
bay[b] = bay.get(b, 0) + kg
out = []
for (b, lvl), t in beam.items():
cap = beam_cap - 10 if lvl >= 5 else beam_cap
if t > cap:
out.append(['BEAM', b, lvl, t])
for b, t in bay.items():
if t > bay_cap:
out.append(['BAY', b, 0, t])
out.sort()
return out
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['derated level 5', [[[1, 5, 950]], 1000, 5000], [['BEAM', 1, 5, 950]]], ['beam over', [[[1, 1, 600], [1, 1, 500]], 1000, 5000], [['BEAM', 1, 1, 1100]]], ['level 4 full rating', [[[1, 4, 950]], 1000, 5000], []], ['bay over', [[[3, 1, 900], [3, 2, 900], [3, 3, 900]], 1000, 2500], [['BAY', 3, 0, 2700]]], ['beam equal ok', [[[1, 1, 500], [1, 1, 500]], 1000, 5000], []], ['floor ignored', [[[2, 0, 3000], [2, 1, 900]], 1000, 2000], []], ['generated mix 8', [[[1, 1, 300], [3, 5, 300], [3, 5, 300], [2, 4, 900], [2, 4, 1000], [1, 6, 1000]], 1000, 2000], [['BEAM', 1, 6, 1000], ['BEAM', 2, 4, 1900]]], ['generated mix 16', [[[3, 0, 1000], [2, 2, 450], [1, 6, 1000]], 1000, 2000], [['BEAM', 1, 6, 1000]]]], [['generated mix 59', [[[2, 5, 450], [3, 2, 1000], [3, 5, 1000], [2, 1, 450], [3, 6, 900], [3, 2, 300], [1, 6, 900], [2, 4, 300]], 1000, 2000], [['BAY', 3, 0, 3200], ['BEAM', 3, 2, 1300], ['BEAM', 3, 5, 1000]]], ['derated level 5', [[[1, 5, 950]], 1000, 5000], [['BEAM', 1, 5, 950]]], ['floor ignored', [[[2, 0, 3000], [2, 1, 900]], 1000, 2000], []], ['beam over', [[[1, 1, 600], [1, 1, 500]], 1000, 5000], [['BEAM', 1, 1, 1100]]], ['level 4 full rating', [[[1, 4, 950]], 1000, 5000], []], ['bay over', [[[3, 1, 900], [3, 2, 900], [3, 3, 900]], 1000, 2500], [['BAY', 3, 0, 2700]]], ['generated mix 11', [[[3, 5, 900], [2, 5, 300], [3, 5, 300], [3, 0, 500]], 1500, 4000], []], ['generated mix 19', [[[3, 6, 500], [1, 4, 1000], [2, 0, 450], [3, 1, 500], [2, 5, 900], [3, 0, 500], [1, 6, 500]], 1500, 4000], []]], [['generated mix 55', [[[3, 6, 300], [2, 1, 300], [2, 2, 900], [2, 1, 500], [2, 6, 450], [3, 5, 1000], [1, 1, 450]], 1000, 3000], [['BEAM', 3, 5, 1000]]], ['derated level 5', [[[1, 5, 950]], 1000, 5000], [['BEAM', 1, 5, 950]]], ['beam equal ok', [[[1, 1, 500], [1, 1, 500]], 1000, 5000], []], ['floor ignored', [[[2, 0, 3000], [2, 1, 900]], 1000, 2000], []], ['beam over', [[[1, 1, 600], [1, 1, 500]], 1000, 5000], [['BEAM', 1, 1, 1100]]], ['level 4 full rating', [[[1, 4, 950]], 1000, 5000], []], ['generated mix 22', [[[3, 5, 1000], [1, 6, 1000], [2, 5, 450], [2, 0, 300]], 1500, 3000], []], ['generated mix 30', [[[3, 6, 900], [2, 6, 1000], [2, 5, 450], [3, 0, 500], [1, 5, 900], [2, 6, 500], [3, 1, 450]], 1500, 2000], [['BEAM', 2, 6, 1500]]]], [['generated mix 37', [[[1, 6, 300], [1, 4, 1000], [3, 0, 1000], [1, 4, 900], [1, 4, 900], [1, 5, 1000], [3, 0, 900], [3, 0, 1000]], 1000, 3000], [['BAY', 1, 0, 4100], ['BEAM', 1, 4, 2800], ['BEAM', 1, 5, 1000]]], ['derated level 5', [[[1, 5, 950]], 1000, 5000], [['BEAM', 1, 5, 950]]], ['bay over', [[[3, 1, 900], [3, 2, 900], [3, 3, 900]], 1000, 2500], [['BAY', 3, 0, 2700]]], ['beam equal ok', [[[1, 1, 500], [1, 1, 500]], 1000, 5000], []], ['floor ignored', [[[2, 0, 3000], [2, 1, 900]], 1000, 2000], []], ['beam over', [[[1, 1, 600], [1, 1, 500]], 1000, 5000], [['BEAM', 1, 1, 1100]]], ['generated mix 33', [[[1, 5, 500], [2, 0, 450], [1, 6, 1000], [1, 5, 300]], 1000, 3000], [['BEAM', 1, 6, 1000]]], ['generated mix 42', [[[1, 0, 450], [3, 5, 900], [1, 2, 900], [1, 1, 500], [1, 0, 1000], [1, 0, 450]], 1500, 3000], []]], [['derated level 5', [[[1, 5, 950]], 1000, 5000], [['BEAM', 1, 5, 950]]], ['level 4 full rating', [[[1, 4, 950]], 1000, 5000], []], ['bay over', [[[3, 1, 900], [3, 2, 900], [3, 3, 900]], 1000, 2500], [['BAY', 3, 0, 2700]]], ['beam equal ok', [[[1, 1, 500], [1, 1, 500]], 1000, 5000], []], ['floor ignored', [[[2, 0, 3000], [2, 1, 900]], 1000, 2000], []], ['generated mix 44', [[[2, 5, 500], [1, 2, 300], [1, 4, 900], [1, 1, 1000], [3, 2, 300], [3, 2, 500]], 1000, 4000], []], ['generated mix 52', [[[1, 5, 900], [2, 0, 1000], [1, 6, 1000], [3, 5, 300], [1, 0, 450], [1, 0, 900], [2, 4, 500], [2, 0, 500]], 1000, 3000], [['BEAM', 1, 6, 1000]]], ['generated mix 60', [[[1, 4, 450], [1, 4, 900], [2, 4, 500]], 1500, 4000], []]]]
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 |
|---|---|---|---|
| derated level 5 | [] | [['BEAM', 1, 5, 950]] | Failed |
| beam over | [['BEAM', 1, 1, 1100]] | [['BEAM', 1, 1, 1100]] | Passed |
| level 4 full rating | [] | [] | Passed |
| bay over | [['BAY', 3, 0, 2700]] | [['BAY', 3, 0, 2700]] | Passed |
| beam equal ok | [] | [] | Passed |
| floor ignored | [] | [] | Passed |
| generated mix 8 | [['BEAM', 1, 6, 1000], ['BEAM', 2, 4, 1900]] | [['BEAM', 1, 6, 1000], ['BEAM', 2, 4, 1900]] | Passed |
| generated mix 16 | [['BEAM', 1, 6, 1000]] | [['BEAM', 1, 6, 1000]] | Passed |
SHA-256 / b5d29d1cdec0d2091ee280bc6b6f7f53015ea4de0f8e6ea5677b251318544676
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(loads, beam_cap, bay_cap):
beam = {}
bay = {}
for b, lvl, kg in loads:
if lvl == 0:
continue
beam[(b, lvl)] = beam.get((b, lvl), 0) + kg
bay[b] = bay.get(b, 0) + kg
out = []
for (b, lvl), t in beam.items():
cap = beam_cap * 9 // 10 if lvl >= 5 else beam_cap
if t > cap:
out.append(['BEAM', b, lvl, t])
for b, t in bay.items():
if t > bay_cap:
out.append(['BAY', b, 0, t])
out.sort()
return out
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['derated level 5', [[[1, 5, 950]], 1000, 5000], [['BEAM', 1, 5, 950]]], ['beam over', [[[1, 1, 600], [1, 1, 500]], 1000, 5000], [['BEAM', 1, 1, 1100]]], ['level 4 full rating', [[[1, 4, 950]], 1000, 5000], []], ['bay over', [[[3, 1, 900], [3, 2, 900], [3, 3, 900]], 1000, 2500], [['BAY', 3, 0, 2700]]], ['beam equal ok', [[[1, 1, 500], [1, 1, 500]], 1000, 5000], []], ['floor ignored', [[[2, 0, 3000], [2, 1, 900]], 1000, 2000], []], ['generated mix 8', [[[1, 1, 300], [3, 5, 300], [3, 5, 300], [2, 4, 900], [2, 4, 1000], [1, 6, 1000]], 1000, 2000], [['BEAM', 1, 6, 1000], ['BEAM', 2, 4, 1900]]], ['generated mix 16', [[[3, 0, 1000], [2, 2, 450], [1, 6, 1000]], 1000, 2000], [['BEAM', 1, 6, 1000]]]], [['generated mix 59', [[[2, 5, 450], [3, 2, 1000], [3, 5, 1000], [2, 1, 450], [3, 6, 900], [3, 2, 300], [1, 6, 900], [2, 4, 300]], 1000, 2000], [['BAY', 3, 0, 3200], ['BEAM', 3, 2, 1300], ['BEAM', 3, 5, 1000]]], ['derated level 5', [[[1, 5, 950]], 1000, 5000], [['BEAM', 1, 5, 950]]], ['floor ignored', [[[2, 0, 3000], [2, 1, 900]], 1000, 2000], []], ['beam over', [[[1, 1, 600], [1, 1, 500]], 1000, 5000], [['BEAM', 1, 1, 1100]]], ['level 4 full rating', [[[1, 4, 950]], 1000, 5000], []], ['bay over', [[[3, 1, 900], [3, 2, 900], [3, 3, 900]], 1000, 2500], [['BAY', 3, 0, 2700]]], ['generated mix 11', [[[3, 5, 900], [2, 5, 300], [3, 5, 300], [3, 0, 500]], 1500, 4000], []], ['generated mix 19', [[[3, 6, 500], [1, 4, 1000], [2, 0, 450], [3, 1, 500], [2, 5, 900], [3, 0, 500], [1, 6, 500]], 1500, 4000], []]], [['generated mix 55', [[[3, 6, 300], [2, 1, 300], [2, 2, 900], [2, 1, 500], [2, 6, 450], [3, 5, 1000], [1, 1, 450]], 1000, 3000], [['BEAM', 3, 5, 1000]]], ['derated level 5', [[[1, 5, 950]], 1000, 5000], [['BEAM', 1, 5, 950]]], ['beam equal ok', [[[1, 1, 500], [1, 1, 500]], 1000, 5000], []], ['floor ignored', [[[2, 0, 3000], [2, 1, 900]], 1000, 2000], []], ['beam over', [[[1, 1, 600], [1, 1, 500]], 1000, 5000], [['BEAM', 1, 1, 1100]]], ['level 4 full rating', [[[1, 4, 950]], 1000, 5000], []], ['generated mix 22', [[[3, 5, 1000], [1, 6, 1000], [2, 5, 450], [2, 0, 300]], 1500, 3000], []], ['generated mix 30', [[[3, 6, 900], [2, 6, 1000], [2, 5, 450], [3, 0, 500], [1, 5, 900], [2, 6, 500], [3, 1, 450]], 1500, 2000], [['BEAM', 2, 6, 1500]]]], [['generated mix 37', [[[1, 6, 300], [1, 4, 1000], [3, 0, 1000], [1, 4, 900], [1, 4, 900], [1, 5, 1000], [3, 0, 900], [3, 0, 1000]], 1000, 3000], [['BAY', 1, 0, 4100], ['BEAM', 1, 4, 2800], ['BEAM', 1, 5, 1000]]], ['derated level 5', [[[1, 5, 950]], 1000, 5000], [['BEAM', 1, 5, 950]]], ['bay over', [[[3, 1, 900], [3, 2, 900], [3, 3, 900]], 1000, 2500], [['BAY', 3, 0, 2700]]], ['beam equal ok', [[[1, 1, 500], [1, 1, 500]], 1000, 5000], []], ['floor ignored', [[[2, 0, 3000], [2, 1, 900]], 1000, 2000], []], ['beam over', [[[1, 1, 600], [1, 1, 500]], 1000, 5000], [['BEAM', 1, 1, 1100]]], ['generated mix 33', [[[1, 5, 500], [2, 0, 450], [1, 6, 1000], [1, 5, 300]], 1000, 3000], [['BEAM', 1, 6, 1000]]], ['generated mix 42', [[[1, 0, 450], [3, 5, 900], [1, 2, 900], [1, 1, 500], [1, 0, 1000], [1, 0, 450]], 1500, 3000], []]], [['derated level 5', [[[1, 5, 950]], 1000, 5000], [['BEAM', 1, 5, 950]]], ['level 4 full rating', [[[1, 4, 950]], 1000, 5000], []], ['bay over', [[[3, 1, 900], [3, 2, 900], [3, 3, 900]], 1000, 2500], [['BAY', 3, 0, 2700]]], ['beam equal ok', [[[1, 1, 500], [1, 1, 500]], 1000, 5000], []], ['floor ignored', [[[2, 0, 3000], [2, 1, 900]], 1000, 2000], []], ['generated mix 44', [[[2, 5, 500], [1, 2, 300], [1, 4, 900], [1, 1, 1000], [3, 2, 300], [3, 2, 500]], 1000, 4000], []], ['generated mix 52', [[[1, 5, 900], [2, 0, 1000], [1, 6, 1000], [3, 5, 300], [1, 0, 450], [1, 0, 900], [2, 4, 500], [2, 0, 500]], 1000, 3000], [['BEAM', 1, 6, 1000]]], ['generated mix 60', [[[1, 4, 450], [1, 4, 900], [2, 4, 500]], 1500, 4000], []]]]
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 |
|---|---|---|---|
| derated level 5 | [['BEAM', 1, 5, 950]] | [['BEAM', 1, 5, 950]] | Passed |
| beam over | [['BEAM', 1, 1, 1100]] | [['BEAM', 1, 1, 1100]] | Passed |
| level 4 full rating | [] | [] | Passed |
| bay over | [['BAY', 3, 0, 2700]] | [['BAY', 3, 0, 2700]] | Passed |
| beam equal ok | [] | [] | Passed |
| floor ignored | [] | [] | Passed |
| generated mix 8 | [['BEAM', 1, 6, 1000], ['BEAM', 2, 4, 1900]] | [['BEAM', 1, 6, 1000], ['BEAM', 2, 4, 1900]] | Passed |
| generated mix 16 | [['BEAM', 1, 6, 1000]] | [['BEAM', 1, 6, 1000]] | Passed |
SHA-256 / 14646cb4b6630babfa5896849dedfcdd9b4bf3952d6267ed57355852ce0a48f0
Verification & scope
Stipulated capacities and derate; not an engineering rack load calculation. 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.385743+00:00.
Case digest / a97c012c24fe83037a29d6c9b6b3ffb7b6f34db42553e060ac26c6629c8f82cc