FA-95601 / Shipping rate zone lookup / Open access
Cubic tiers: quarter inches rounded to nearest · case 01
Parcels are bumped into a higher cubic tier because measurements round up to the next quarter inch.
ROOT CAUSE
Dimensions are rounded to the nearest quarter inch instead of down.
VERIFIED REPAIR
Round each dimension down to the quarter inch.
Unsuccessful approach: Rounding down to whole inches discards legitimate quarter inches.
Case contract
dims inches, each rounded down to the quarter inch; weight lb. Eligible for cubic pricing when weight <= 20 and the longest rounded side <= 18. Cubic feet = product/1728, tier = tenths of a cubic foot rounded up (minimum 1); tiers above 5 are not cubic. Return ["CUBIC", tier] or ["WEIGHT", lb rounded up, minimum 1].
Why this case matters
Cubic pricing rates small dense parcels by volume tier instead of weight.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
import math
from fractions import Fraction
N = 1
observations = []
def solve(dims, weight):
q = [Fraction(round(d * 4), 4) for d in dims]
lb = max(1, math.ceil(weight))
if weight > 20 or max(q) > 18:
return ['WEIGHT', lb]
cf = q[0] * q[1] * q[2] / 1728
tenths = math.ceil(cf * 10)
if tenths > 5:
return ['WEIGHT', lb]
return ['CUBIC', max(1, tenths)]
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['quarter inch down', [[8.2, 8.2, 8.2], 2], ['CUBIC', 3]], ['generated mix 10', [[8, 6.3, 18.2], 7.3], ['WEIGHT', 8]], ['one cubic foot', [[12, 12, 12], 5], ['WEIGHT', 5]], ['side rounds to 18', [[18.2, 10, 4], 3], ['CUBIC', 5]], ['weight 20', [[6, 6, 6], 20], ['CUBIC', 2]], ['tier over cap', [[10, 10, 10], 1], ['WEIGHT', 1]], ['small cube', [[6, 6, 6], 2], ['CUBIC', 2]], ['generated mix 5', [[18.2, 6.3, 6], 20], ['CUBIC', 4]]], [['side rounds to 18', [[18.2, 10, 4], 3], ['CUBIC', 5]], ['generated mix 7', [[10, 17.9, 4.6], 7.3], ['CUBIC', 5]], ['side exactly 18', [[18, 10, 4], 3], ['CUBIC', 5]], ['weight over 20', [[6, 6, 6], 20.5], ['WEIGHT', 21]], ['tier half', [[12, 12, 3], 1], ['CUBIC', 3]], ['small cube', [[6, 6, 6], 2], ['CUBIC', 2]], ['generated mix 9', [[18, 12, 6.3], 0.5], ['WEIGHT', 1]], ['generated mix 17', [[6, 19, 18], 19.9], ['WEIGHT', 20]]], [['generated mix 4', [[3, 18.2, 4.6], 0.5], ['CUBIC', 2]], ['generated mix 72', [[10, 9.9, 9.9], 0.5], ['WEIGHT', 1]], ['weight over 20', [[6, 6, 6], 20.5], ['WEIGHT', 21]], ['tier half', [[12, 12, 3], 1], ['CUBIC', 3]], ['small cube', [[6, 6, 6], 2], ['CUBIC', 2]], ['side rounds to 18', [[18.2, 10, 4], 3], ['CUBIC', 5]], ['generated mix 19', [[18, 18, 6.3], 7.3], ['WEIGHT', 8]], ['generated mix 27', [[10, 8.2, 8], 20.5], ['WEIGHT', 21]]], [['generated mix 5', [[18.2, 6.3, 6], 20], ['CUBIC', 4]], ['generated mix 10', [[8, 6.3, 18.2], 7.3], ['WEIGHT', 8]], ['one cubic foot', [[12, 12, 12], 5], ['WEIGHT', 5]], ['quarter inch down', [[8.2, 8.2, 8.2], 2], ['CUBIC', 3]], ['side exactly 18', [[18, 10, 4], 3], ['CUBIC', 5]], ['weight over 20', [[6, 6, 6], 20.5], ['WEIGHT', 21]], ['generated mix 31', [[18, 6, 17.9], 19.9], ['WEIGHT', 20]], ['generated mix 39', [[19, 9.9, 19], 19.9], ['WEIGHT', 20]]], [['generated mix 6', [[10, 18.2, 4.6], 7.3], ['CUBIC', 5]], ['generated mix 7', [[10, 17.9, 4.6], 7.3], ['CUBIC', 5]], ['side rounds to 18', [[18.2, 10, 4], 3], ['CUBIC', 5]], ['weight 20', [[6, 6, 6], 20], ['CUBIC', 2]], ['tier over cap', [[10, 10, 10], 1], ['WEIGHT', 1]], ['one cubic foot', [[12, 12, 12], 5], ['WEIGHT', 5]], ['generated mix 42', [[18, 6.3, 9.9], 2], ['WEIGHT', 2]], ['generated mix 50', [[18, 3, 19], 19.9], ['WEIGHT', 20]]]]
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 |
|---|---|---|---|
| quarter inch down | ['CUBIC', 4] | ['CUBIC', 3] | Failed |
| generated mix 10 | ['WEIGHT', 8] | ['WEIGHT', 8] | Passed |
| one cubic foot | ['WEIGHT', 5] | ['WEIGHT', 5] | Passed |
| side rounds to 18 | ['WEIGHT', 3] | ['CUBIC', 5] | Failed |
| weight 20 | ['CUBIC', 2] | ['CUBIC', 2] | Passed |
| tier over cap | ['WEIGHT', 1] | ['WEIGHT', 1] | Passed |
| small cube | ['CUBIC', 2] | ['CUBIC', 2] | Passed |
| generated mix 5 | ['WEIGHT', 20] | ['CUBIC', 4] | Failed |
SHA-256 / d54ae9df5560da2646dadad23788d82ff5454d177419ade346cd9fd5e152ba59
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
import math
from fractions import Fraction
N = 1
observations = []
def solve(dims, weight):
q = [Fraction(math.floor(d)) for d in dims]
lb = max(1, math.ceil(weight))
if weight > 20 or max(q) > 18:
return ['WEIGHT', lb]
cf = q[0] * q[1] * q[2] / 1728
tenths = math.ceil(cf * 10)
if tenths > 5:
return ['WEIGHT', lb]
return ['CUBIC', max(1, tenths)]
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['quarter inch down', [[8.2, 8.2, 8.2], 2], ['CUBIC', 3]], ['generated mix 10', [[8, 6.3, 18.2], 7.3], ['WEIGHT', 8]], ['one cubic foot', [[12, 12, 12], 5], ['WEIGHT', 5]], ['side rounds to 18', [[18.2, 10, 4], 3], ['CUBIC', 5]], ['weight 20', [[6, 6, 6], 20], ['CUBIC', 2]], ['tier over cap', [[10, 10, 10], 1], ['WEIGHT', 1]], ['small cube', [[6, 6, 6], 2], ['CUBIC', 2]], ['generated mix 5', [[18.2, 6.3, 6], 20], ['CUBIC', 4]]], [['side rounds to 18', [[18.2, 10, 4], 3], ['CUBIC', 5]], ['generated mix 7', [[10, 17.9, 4.6], 7.3], ['CUBIC', 5]], ['side exactly 18', [[18, 10, 4], 3], ['CUBIC', 5]], ['weight over 20', [[6, 6, 6], 20.5], ['WEIGHT', 21]], ['tier half', [[12, 12, 3], 1], ['CUBIC', 3]], ['small cube', [[6, 6, 6], 2], ['CUBIC', 2]], ['generated mix 9', [[18, 12, 6.3], 0.5], ['WEIGHT', 1]], ['generated mix 17', [[6, 19, 18], 19.9], ['WEIGHT', 20]]], [['generated mix 4', [[3, 18.2, 4.6], 0.5], ['CUBIC', 2]], ['generated mix 72', [[10, 9.9, 9.9], 0.5], ['WEIGHT', 1]], ['weight over 20', [[6, 6, 6], 20.5], ['WEIGHT', 21]], ['tier half', [[12, 12, 3], 1], ['CUBIC', 3]], ['small cube', [[6, 6, 6], 2], ['CUBIC', 2]], ['side rounds to 18', [[18.2, 10, 4], 3], ['CUBIC', 5]], ['generated mix 19', [[18, 18, 6.3], 7.3], ['WEIGHT', 8]], ['generated mix 27', [[10, 8.2, 8], 20.5], ['WEIGHT', 21]]], [['generated mix 5', [[18.2, 6.3, 6], 20], ['CUBIC', 4]], ['generated mix 10', [[8, 6.3, 18.2], 7.3], ['WEIGHT', 8]], ['one cubic foot', [[12, 12, 12], 5], ['WEIGHT', 5]], ['quarter inch down', [[8.2, 8.2, 8.2], 2], ['CUBIC', 3]], ['side exactly 18', [[18, 10, 4], 3], ['CUBIC', 5]], ['weight over 20', [[6, 6, 6], 20.5], ['WEIGHT', 21]], ['generated mix 31', [[18, 6, 17.9], 19.9], ['WEIGHT', 20]], ['generated mix 39', [[19, 9.9, 19], 19.9], ['WEIGHT', 20]]], [['generated mix 6', [[10, 18.2, 4.6], 7.3], ['CUBIC', 5]], ['generated mix 7', [[10, 17.9, 4.6], 7.3], ['CUBIC', 5]], ['side rounds to 18', [[18.2, 10, 4], 3], ['CUBIC', 5]], ['weight 20', [[6, 6, 6], 20], ['CUBIC', 2]], ['tier over cap', [[10, 10, 10], 1], ['WEIGHT', 1]], ['one cubic foot', [[12, 12, 12], 5], ['WEIGHT', 5]], ['generated mix 42', [[18, 6.3, 9.9], 2], ['WEIGHT', 2]], ['generated mix 50', [[18, 3, 19], 19.9], ['WEIGHT', 20]]]]
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 |
|---|---|---|---|
| quarter inch down | ['CUBIC', 3] | ['CUBIC', 3] | Passed |
| generated mix 10 | ['CUBIC', 5] | ['WEIGHT', 8] | Failed |
| one cubic foot | ['WEIGHT', 5] | ['WEIGHT', 5] | Passed |
| side rounds to 18 | ['CUBIC', 5] | ['CUBIC', 5] | Passed |
| weight 20 | ['CUBIC', 2] | ['CUBIC', 2] | Passed |
| tier over cap | ['WEIGHT', 1] | ['WEIGHT', 1] | Passed |
| small cube | ['CUBIC', 2] | ['CUBIC', 2] | Passed |
| generated mix 5 | ['CUBIC', 4] | ['CUBIC', 4] | Passed |
SHA-256 / 1c83a68bf80a69b9772f7f3d73e748ab050a21c41bbff842612b3c3984196713
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
import math
from fractions import Fraction
N = 1
observations = []
def solve(dims, weight):
q = [Fraction(math.floor(d * 4), 4) for d in dims]
lb = max(1, math.ceil(weight))
if weight > 20 or max(q) > 18:
return ['WEIGHT', lb]
cf = q[0] * q[1] * q[2] / 1728
tenths = math.ceil(cf * 10)
if tenths > 5:
return ['WEIGHT', lb]
return ['CUBIC', max(1, tenths)]
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['quarter inch down', [[8.2, 8.2, 8.2], 2], ['CUBIC', 3]], ['generated mix 10', [[8, 6.3, 18.2], 7.3], ['WEIGHT', 8]], ['one cubic foot', [[12, 12, 12], 5], ['WEIGHT', 5]], ['side rounds to 18', [[18.2, 10, 4], 3], ['CUBIC', 5]], ['weight 20', [[6, 6, 6], 20], ['CUBIC', 2]], ['tier over cap', [[10, 10, 10], 1], ['WEIGHT', 1]], ['small cube', [[6, 6, 6], 2], ['CUBIC', 2]], ['generated mix 5', [[18.2, 6.3, 6], 20], ['CUBIC', 4]]], [['side rounds to 18', [[18.2, 10, 4], 3], ['CUBIC', 5]], ['generated mix 7', [[10, 17.9, 4.6], 7.3], ['CUBIC', 5]], ['side exactly 18', [[18, 10, 4], 3], ['CUBIC', 5]], ['weight over 20', [[6, 6, 6], 20.5], ['WEIGHT', 21]], ['tier half', [[12, 12, 3], 1], ['CUBIC', 3]], ['small cube', [[6, 6, 6], 2], ['CUBIC', 2]], ['generated mix 9', [[18, 12, 6.3], 0.5], ['WEIGHT', 1]], ['generated mix 17', [[6, 19, 18], 19.9], ['WEIGHT', 20]]], [['generated mix 4', [[3, 18.2, 4.6], 0.5], ['CUBIC', 2]], ['generated mix 72', [[10, 9.9, 9.9], 0.5], ['WEIGHT', 1]], ['weight over 20', [[6, 6, 6], 20.5], ['WEIGHT', 21]], ['tier half', [[12, 12, 3], 1], ['CUBIC', 3]], ['small cube', [[6, 6, 6], 2], ['CUBIC', 2]], ['side rounds to 18', [[18.2, 10, 4], 3], ['CUBIC', 5]], ['generated mix 19', [[18, 18, 6.3], 7.3], ['WEIGHT', 8]], ['generated mix 27', [[10, 8.2, 8], 20.5], ['WEIGHT', 21]]], [['generated mix 5', [[18.2, 6.3, 6], 20], ['CUBIC', 4]], ['generated mix 10', [[8, 6.3, 18.2], 7.3], ['WEIGHT', 8]], ['one cubic foot', [[12, 12, 12], 5], ['WEIGHT', 5]], ['quarter inch down', [[8.2, 8.2, 8.2], 2], ['CUBIC', 3]], ['side exactly 18', [[18, 10, 4], 3], ['CUBIC', 5]], ['weight over 20', [[6, 6, 6], 20.5], ['WEIGHT', 21]], ['generated mix 31', [[18, 6, 17.9], 19.9], ['WEIGHT', 20]], ['generated mix 39', [[19, 9.9, 19], 19.9], ['WEIGHT', 20]]], [['generated mix 6', [[10, 18.2, 4.6], 7.3], ['CUBIC', 5]], ['generated mix 7', [[10, 17.9, 4.6], 7.3], ['CUBIC', 5]], ['side rounds to 18', [[18.2, 10, 4], 3], ['CUBIC', 5]], ['weight 20', [[6, 6, 6], 20], ['CUBIC', 2]], ['tier over cap', [[10, 10, 10], 1], ['WEIGHT', 1]], ['one cubic foot', [[12, 12, 12], 5], ['WEIGHT', 5]], ['generated mix 42', [[18, 6.3, 9.9], 2], ['WEIGHT', 2]], ['generated mix 50', [[18, 3, 19], 19.9], ['WEIGHT', 20]]]]
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 |
|---|---|---|---|
| quarter inch down | ['CUBIC', 3] | ['CUBIC', 3] | Passed |
| generated mix 10 | ['WEIGHT', 8] | ['WEIGHT', 8] | Passed |
| one cubic foot | ['WEIGHT', 5] | ['WEIGHT', 5] | Passed |
| side rounds to 18 | ['CUBIC', 5] | ['CUBIC', 5] | Passed |
| weight 20 | ['CUBIC', 2] | ['CUBIC', 2] | Passed |
| tier over cap | ['WEIGHT', 1] | ['WEIGHT', 1] | Passed |
| small cube | ['CUBIC', 2] | ['CUBIC', 2] | Passed |
| generated mix 5 | ['CUBIC', 4] | ['CUBIC', 4] | Passed |
SHA-256 / 7b3264ec0ed54fbd053b2f48cc9cf94979b043b43c68ad4a3954a5885df2f7c3
Verification & scope
Stipulated tier sizes and eligibility. 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:15.164818+00:00.
Case digest / c6412850caa17aa5b75eaa05d4c63b234bd3645d2b9497beb9941c4469c03c31