FA-85896 / Game economy crafting balance / Open access
Salvage component return: Broken items return components · case 01
A zero-durability rare item returns guaranteed components instead of scrap.
ROOT CAUSE
The broken check is strict, so durability exactly zero proceeds into the component loop.
VERIFIED REPAIR
Restore `if d <= 0:` at the broken item gate step.
Unsuccessful approach: Restricting the scrap rule to common items lets broken rare and epic gear keep its guarantee.
Case contract
Return rate: common 50%, rare 70%, epic 90%. Condition d/mx with d clamped to mx; max_durability 0 means indestructible (full condition). Durability <= 0 yields {"scrap": 1}. Each component amount = floor(count*pct*d/(100*mx)) computed once; rare and epic items return at least 1 of each component; zero amounts are omitted.
Why this case matters
Game economies leak or destroy currency when one crafting or pricing rule is off by one boundary, rounding stage or state update; the defect is observable in exact integer outcomes.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(item, components):
pct = {'common': 50, 'rare': 70, 'epic': 90}[item['rarity']]
mx = item['max_durability']
if mx == 0:
d, mx = 1, 1
else:
d = min(item['durability'], mx)
if d < 0:
return {'scrap': 1}
out = {}
for name, count in components.items():
amt = count * pct * d // (100 * mx)
if item['rarity'] != 'common' and amt < 1:
amt = 1
if amt:
out[name] = amt
return dict(sorted(out.items()))
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = [[('broken rare #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 40}, {'thread': 2}],
{'scrap': 1}),
('regression broken item gate #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 100}, {'shard': 5}],
{'scrap': 1}),
('fault site broken item gate #1',
[{'rarity': 'common', 'durability': 0, 'max_durability': 100}, {'cloth': 6, 'thread': 1}],
{'scrap': 1}),
('regression broken item gate #2',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'cloth': 6}],
{'scrap': 1}),
('regression broken item gate #3',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'ingot': 5, 'thread': 3}],
{'scrap': 1}),
('indestructible relic #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 0}, {'shard': 5}],
{'shard': 4}),
('over-repaired common #1',
[{'rarity': 'common', 'durability': 30, 'max_durability': 20}, {'ingot': 4, 'cloth': 3}],
{'cloth': 1, 'ingot': 2}),
('control #1',
[{'rarity': 'common', 'durability': 3, 'max_durability': 10}, {'thread': 4, 'cloth': 5}],
{})],
[('broken rare #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 40}, {'thread': 2}],
{'scrap': 1}),
('fault site broken item gate #1',
[{'rarity': 'common', 'durability': 0, 'max_durability': 100}, {'cloth': 6, 'thread': 1}],
{'scrap': 1}),
('fault site broken item gate #2',
[{'rarity': 'common', 'durability': 0, 'max_durability': 10}, {'thread': 3}],
{'scrap': 1}),
('regression broken item gate #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'cloth': 6}],
{'scrap': 1}),
('regression broken item gate #2',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'ingot': 5, 'thread': 3}],
{'scrap': 1}),
('indestructible relic #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 0}, {'shard': 5}],
{'shard': 4}),
('over-repaired common #1',
[{'rarity': 'common', 'durability': 30, 'max_durability': 20}, {'ingot': 4, 'cloth': 3}],
{'cloth': 1, 'ingot': 2}),
('control #1',
[{'rarity': 'common', 'durability': 3, 'max_durability': 10}, {'thread': 4, 'cloth': 5}],
{})],
[('broken rare #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 40}, {'thread': 2}],
{'scrap': 1}),
('regression broken item gate #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'cloth': 6}],
{'scrap': 1}),
('regression broken item gate #2',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'ingot': 5, 'thread': 3}],
{'scrap': 1}),
('regression broken item gate #3',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 7}, {'cloth': 5, 'shard': 5, 'ingot': 1}],
{'scrap': 1}),
('regression broken item gate #4',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 20}, {'cloth': 6, 'thread': 2, 'shard': 3}],
{'scrap': 1}),
('indestructible relic #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 0}, {'shard': 5}],
{'shard': 4}),
('over-repaired common #1',
[{'rarity': 'common', 'durability': 30, 'max_durability': 20}, {'ingot': 4, 'cloth': 3}],
{'cloth': 1, 'ingot': 2}),
('control #1',
[{'rarity': 'common', 'durability': 3, 'max_durability': 10}, {'thread': 4, 'cloth': 5}],
{})],
[('broken rare #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 40}, {'thread': 2}],
{'scrap': 1}),
('fault site broken item gate #1',
[{'rarity': 'common', 'durability': 0, 'max_durability': 7}, {'thread': 4, 'cloth': 5}],
{'scrap': 1}),
('regression broken item gate #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 7}, {'cloth': 5, 'shard': 5, 'ingot': 1}],
{'scrap': 1}),
('regression broken item gate #2',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 100}, {'shard': 2, 'ingot': 4, 'thread': 1}],
{'scrap': 1}),
('regression broken item gate #3',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 100}, {'ingot': 2, 'shard': 5, 'cloth': 5}],
{'scrap': 1}),
('indestructible relic #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 0}, {'shard': 5}],
{'shard': 4}),
('over-repaired common #1',
[{'rarity': 'common', 'durability': 30, 'max_durability': 20}, {'ingot': 4, 'cloth': 3}],
{'cloth': 1, 'ingot': 2}),
('control #1',
[{'rarity': 'rare', 'durability': 1, 'max_durability': 0}, {'cloth': 5, 'ingot': 4, 'shard': 1}],
{'cloth': 3, 'ingot': 2, 'shard': 1})],
[('broken rare #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 40}, {'thread': 2}],
{'scrap': 1}),
('fault site broken item gate #1',
[{'rarity': 'common', 'durability': 0, 'max_durability': 7}, {'cloth': 6, 'ingot': 4, 'shard': 2}],
{'scrap': 1}),
('regression broken item gate #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 20}, {'cloth': 6, 'thread': 2, 'shard': 3}],
{'scrap': 1}),
('regression broken item gate #2',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 7}, {'shard': 1, 'thread': 2, 'ingot': 2}],
{'scrap': 1}),
('regression broken item gate #3',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 7}, {'ingot': 6}],
{'scrap': 1}),
('indestructible relic #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 0}, {'shard': 5}],
{'shard': 4}),
('over-repaired common #1',
[{'rarity': 'common', 'durability': 30, 'max_durability': 20}, {'ingot': 4, 'cloth': 3}],
{'cloth': 1, 'ingot': 2}),
('control #1',
[{'rarity': 'common', 'durability': 1, 'max_durability': 0}, {'shard': 2, 'ingot': 2, 'thread': 6}],
{'ingot': 1, 'shard': 1, 'thread': 3})]]
for label, args, expected in cases[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 |
|---|---|---|---|
| broken rare #1 | {'thread': 1} | {'scrap': 1} | Failed |
| regression broken item gate #1 | {'shard': 1} | {'scrap': 1} | Failed |
| fault site broken item gate #1 | {} | {'scrap': 1} | Failed |
| regression broken item gate #2 | {'cloth': 1} | {'scrap': 1} | Failed |
| regression broken item gate #3 | {'ingot': 1, 'thread': 1} | {'scrap': 1} | Failed |
| indestructible relic #1 | {'shard': 4} | {'shard': 4} | Passed |
| over-repaired common #1 | {'cloth': 1, 'ingot': 2} | {'cloth': 1, 'ingot': 2} | Passed |
| control #1 | {} | {} | Passed |
SHA-256 / 21ff6ccba3b99269083c0266c44302b242d17baed09906e5fa671657942659d0
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(item, components):
pct = {'common': 50, 'rare': 70, 'epic': 90}[item['rarity']]
mx = item['max_durability']
if mx == 0:
d, mx = 1, 1
else:
d = min(item['durability'], mx)
if d <= 0 and item['rarity'] == 'common':
return {'scrap': 1}
out = {}
for name, count in components.items():
amt = count * pct * d // (100 * mx)
if item['rarity'] != 'common' and amt < 1:
amt = 1
if amt:
out[name] = amt
return dict(sorted(out.items()))
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = [[('broken rare #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 40}, {'thread': 2}],
{'scrap': 1}),
('regression broken item gate #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 100}, {'shard': 5}],
{'scrap': 1}),
('fault site broken item gate #1',
[{'rarity': 'common', 'durability': 0, 'max_durability': 100}, {'cloth': 6, 'thread': 1}],
{'scrap': 1}),
('regression broken item gate #2',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'cloth': 6}],
{'scrap': 1}),
('regression broken item gate #3',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'ingot': 5, 'thread': 3}],
{'scrap': 1}),
('indestructible relic #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 0}, {'shard': 5}],
{'shard': 4}),
('over-repaired common #1',
[{'rarity': 'common', 'durability': 30, 'max_durability': 20}, {'ingot': 4, 'cloth': 3}],
{'cloth': 1, 'ingot': 2}),
('control #1',
[{'rarity': 'common', 'durability': 3, 'max_durability': 10}, {'thread': 4, 'cloth': 5}],
{})],
[('broken rare #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 40}, {'thread': 2}],
{'scrap': 1}),
('fault site broken item gate #1',
[{'rarity': 'common', 'durability': 0, 'max_durability': 100}, {'cloth': 6, 'thread': 1}],
{'scrap': 1}),
('fault site broken item gate #2',
[{'rarity': 'common', 'durability': 0, 'max_durability': 10}, {'thread': 3}],
{'scrap': 1}),
('regression broken item gate #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'cloth': 6}],
{'scrap': 1}),
('regression broken item gate #2',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'ingot': 5, 'thread': 3}],
{'scrap': 1}),
('indestructible relic #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 0}, {'shard': 5}],
{'shard': 4}),
('over-repaired common #1',
[{'rarity': 'common', 'durability': 30, 'max_durability': 20}, {'ingot': 4, 'cloth': 3}],
{'cloth': 1, 'ingot': 2}),
('control #1',
[{'rarity': 'common', 'durability': 3, 'max_durability': 10}, {'thread': 4, 'cloth': 5}],
{})],
[('broken rare #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 40}, {'thread': 2}],
{'scrap': 1}),
('regression broken item gate #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'cloth': 6}],
{'scrap': 1}),
('regression broken item gate #2',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'ingot': 5, 'thread': 3}],
{'scrap': 1}),
('regression broken item gate #3',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 7}, {'cloth': 5, 'shard': 5, 'ingot': 1}],
{'scrap': 1}),
('regression broken item gate #4',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 20}, {'cloth': 6, 'thread': 2, 'shard': 3}],
{'scrap': 1}),
('indestructible relic #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 0}, {'shard': 5}],
{'shard': 4}),
('over-repaired common #1',
[{'rarity': 'common', 'durability': 30, 'max_durability': 20}, {'ingot': 4, 'cloth': 3}],
{'cloth': 1, 'ingot': 2}),
('control #1',
[{'rarity': 'common', 'durability': 3, 'max_durability': 10}, {'thread': 4, 'cloth': 5}],
{})],
[('broken rare #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 40}, {'thread': 2}],
{'scrap': 1}),
('fault site broken item gate #1',
[{'rarity': 'common', 'durability': 0, 'max_durability': 7}, {'thread': 4, 'cloth': 5}],
{'scrap': 1}),
('regression broken item gate #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 7}, {'cloth': 5, 'shard': 5, 'ingot': 1}],
{'scrap': 1}),
('regression broken item gate #2',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 100}, {'shard': 2, 'ingot': 4, 'thread': 1}],
{'scrap': 1}),
('regression broken item gate #3',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 100}, {'ingot': 2, 'shard': 5, 'cloth': 5}],
{'scrap': 1}),
('indestructible relic #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 0}, {'shard': 5}],
{'shard': 4}),
('over-repaired common #1',
[{'rarity': 'common', 'durability': 30, 'max_durability': 20}, {'ingot': 4, 'cloth': 3}],
{'cloth': 1, 'ingot': 2}),
('control #1',
[{'rarity': 'rare', 'durability': 1, 'max_durability': 0}, {'cloth': 5, 'ingot': 4, 'shard': 1}],
{'cloth': 3, 'ingot': 2, 'shard': 1})],
[('broken rare #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 40}, {'thread': 2}],
{'scrap': 1}),
('fault site broken item gate #1',
[{'rarity': 'common', 'durability': 0, 'max_durability': 7}, {'cloth': 6, 'ingot': 4, 'shard': 2}],
{'scrap': 1}),
('regression broken item gate #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 20}, {'cloth': 6, 'thread': 2, 'shard': 3}],
{'scrap': 1}),
('regression broken item gate #2',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 7}, {'shard': 1, 'thread': 2, 'ingot': 2}],
{'scrap': 1}),
('regression broken item gate #3',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 7}, {'ingot': 6}],
{'scrap': 1}),
('indestructible relic #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 0}, {'shard': 5}],
{'shard': 4}),
('over-repaired common #1',
[{'rarity': 'common', 'durability': 30, 'max_durability': 20}, {'ingot': 4, 'cloth': 3}],
{'cloth': 1, 'ingot': 2}),
('control #1',
[{'rarity': 'common', 'durability': 1, 'max_durability': 0}, {'shard': 2, 'ingot': 2, 'thread': 6}],
{'ingot': 1, 'shard': 1, 'thread': 3})]]
for label, args, expected in cases[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 |
|---|---|---|---|
| broken rare #1 | {'thread': 1} | {'scrap': 1} | Failed |
| regression broken item gate #1 | {'shard': 1} | {'scrap': 1} | Failed |
| fault site broken item gate #1 | {'scrap': 1} | {'scrap': 1} | Passed |
| regression broken item gate #2 | {'cloth': 1} | {'scrap': 1} | Failed |
| regression broken item gate #3 | {'ingot': 1, 'thread': 1} | {'scrap': 1} | Failed |
| indestructible relic #1 | {'shard': 4} | {'shard': 4} | Passed |
| over-repaired common #1 | {'cloth': 1, 'ingot': 2} | {'cloth': 1, 'ingot': 2} | Passed |
| control #1 | {} | {} | Passed |
SHA-256 / d3800bc5c5d1f516941a3b1a7056592776e5ade267bde27a4973d253636d94d5
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(item, components):
pct = {'common': 50, 'rare': 70, 'epic': 90}[item['rarity']]
mx = item['max_durability']
if mx == 0:
d, mx = 1, 1
else:
d = min(item['durability'], mx)
if d <= 0:
return {'scrap': 1}
out = {}
for name, count in components.items():
amt = count * pct * d // (100 * mx)
if item['rarity'] != 'common' and amt < 1:
amt = 1
if amt:
out[name] = amt
return dict(sorted(out.items()))
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = [[('broken rare #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 40}, {'thread': 2}],
{'scrap': 1}),
('regression broken item gate #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 100}, {'shard': 5}],
{'scrap': 1}),
('fault site broken item gate #1',
[{'rarity': 'common', 'durability': 0, 'max_durability': 100}, {'cloth': 6, 'thread': 1}],
{'scrap': 1}),
('regression broken item gate #2',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'cloth': 6}],
{'scrap': 1}),
('regression broken item gate #3',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'ingot': 5, 'thread': 3}],
{'scrap': 1}),
('indestructible relic #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 0}, {'shard': 5}],
{'shard': 4}),
('over-repaired common #1',
[{'rarity': 'common', 'durability': 30, 'max_durability': 20}, {'ingot': 4, 'cloth': 3}],
{'cloth': 1, 'ingot': 2}),
('control #1',
[{'rarity': 'common', 'durability': 3, 'max_durability': 10}, {'thread': 4, 'cloth': 5}],
{})],
[('broken rare #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 40}, {'thread': 2}],
{'scrap': 1}),
('fault site broken item gate #1',
[{'rarity': 'common', 'durability': 0, 'max_durability': 100}, {'cloth': 6, 'thread': 1}],
{'scrap': 1}),
('fault site broken item gate #2',
[{'rarity': 'common', 'durability': 0, 'max_durability': 10}, {'thread': 3}],
{'scrap': 1}),
('regression broken item gate #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'cloth': 6}],
{'scrap': 1}),
('regression broken item gate #2',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'ingot': 5, 'thread': 3}],
{'scrap': 1}),
('indestructible relic #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 0}, {'shard': 5}],
{'shard': 4}),
('over-repaired common #1',
[{'rarity': 'common', 'durability': 30, 'max_durability': 20}, {'ingot': 4, 'cloth': 3}],
{'cloth': 1, 'ingot': 2}),
('control #1',
[{'rarity': 'common', 'durability': 3, 'max_durability': 10}, {'thread': 4, 'cloth': 5}],
{})],
[('broken rare #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 40}, {'thread': 2}],
{'scrap': 1}),
('regression broken item gate #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'cloth': 6}],
{'scrap': 1}),
('regression broken item gate #2',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 10}, {'ingot': 5, 'thread': 3}],
{'scrap': 1}),
('regression broken item gate #3',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 7}, {'cloth': 5, 'shard': 5, 'ingot': 1}],
{'scrap': 1}),
('regression broken item gate #4',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 20}, {'cloth': 6, 'thread': 2, 'shard': 3}],
{'scrap': 1}),
('indestructible relic #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 0}, {'shard': 5}],
{'shard': 4}),
('over-repaired common #1',
[{'rarity': 'common', 'durability': 30, 'max_durability': 20}, {'ingot': 4, 'cloth': 3}],
{'cloth': 1, 'ingot': 2}),
('control #1',
[{'rarity': 'common', 'durability': 3, 'max_durability': 10}, {'thread': 4, 'cloth': 5}],
{})],
[('broken rare #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 40}, {'thread': 2}],
{'scrap': 1}),
('fault site broken item gate #1',
[{'rarity': 'common', 'durability': 0, 'max_durability': 7}, {'thread': 4, 'cloth': 5}],
{'scrap': 1}),
('regression broken item gate #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 7}, {'cloth': 5, 'shard': 5, 'ingot': 1}],
{'scrap': 1}),
('regression broken item gate #2',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 100}, {'shard': 2, 'ingot': 4, 'thread': 1}],
{'scrap': 1}),
('regression broken item gate #3',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 100}, {'ingot': 2, 'shard': 5, 'cloth': 5}],
{'scrap': 1}),
('indestructible relic #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 0}, {'shard': 5}],
{'shard': 4}),
('over-repaired common #1',
[{'rarity': 'common', 'durability': 30, 'max_durability': 20}, {'ingot': 4, 'cloth': 3}],
{'cloth': 1, 'ingot': 2}),
('control #1',
[{'rarity': 'rare', 'durability': 1, 'max_durability': 0}, {'cloth': 5, 'ingot': 4, 'shard': 1}],
{'cloth': 3, 'ingot': 2, 'shard': 1})],
[('broken rare #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 40}, {'thread': 2}],
{'scrap': 1}),
('fault site broken item gate #1',
[{'rarity': 'common', 'durability': 0, 'max_durability': 7}, {'cloth': 6, 'ingot': 4, 'shard': 2}],
{'scrap': 1}),
('regression broken item gate #1',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 20}, {'cloth': 6, 'thread': 2, 'shard': 3}],
{'scrap': 1}),
('regression broken item gate #2',
[{'rarity': 'rare', 'durability': 0, 'max_durability': 7}, {'shard': 1, 'thread': 2, 'ingot': 2}],
{'scrap': 1}),
('regression broken item gate #3',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 7}, {'ingot': 6}],
{'scrap': 1}),
('indestructible relic #1',
[{'rarity': 'epic', 'durability': 0, 'max_durability': 0}, {'shard': 5}],
{'shard': 4}),
('over-repaired common #1',
[{'rarity': 'common', 'durability': 30, 'max_durability': 20}, {'ingot': 4, 'cloth': 3}],
{'cloth': 1, 'ingot': 2}),
('control #1',
[{'rarity': 'common', 'durability': 1, 'max_durability': 0}, {'shard': 2, 'ingot': 2, 'thread': 6}],
{'ingot': 1, 'shard': 1, 'thread': 3})]]
for label, args, expected in cases[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 |
|---|---|---|---|
| broken rare #1 | {'scrap': 1} | {'scrap': 1} | Passed |
| regression broken item gate #1 | {'scrap': 1} | {'scrap': 1} | Passed |
| fault site broken item gate #1 | {'scrap': 1} | {'scrap': 1} | Passed |
| regression broken item gate #2 | {'scrap': 1} | {'scrap': 1} | Passed |
| regression broken item gate #3 | {'scrap': 1} | {'scrap': 1} | Passed |
| indestructible relic #1 | {'shard': 4} | {'shard': 4} | Passed |
| over-repaired common #1 | {'cloth': 1, 'ingot': 2} | {'cloth': 1, 'ingot': 2} | Passed |
| control #1 | {} | {} | Passed |
SHA-256 / 82c9536a83b3b4fb83ddcc7ee6b2648b98cad38d9e2cbefd4ce88e804f9758fa
Verification & scope
Deterministic toy contract stipulated for this model; integer or exact arithmetic only, not a reproduction of any specific game engine. 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:50:44.521753+00:00.
Case digest / bc3ec2bdf2c7332b00d6aa720e5f2ab1dc76d68cae97713de2e999d86e6e61bc