FA-57576 / Auction allocation rules / Open access
Round carryover: future round reoffer · case 01
An offer is carried back into the same source round.
ROOT CAUSE
An offer is carried back into the same source round.
VERIFIED REPAIR
For future round reoffer, apply the stipulated decision [l for l in x["standing"] if x["source_round"][l]<x["new_round"]].
Unsuccessful approach: The attempted repair uses [l for l in x["standing"] if x["source_round"][l]<=x["new_round"]]; the explicit regression cases demonstrate that this still violates the stipulated auction rule.
Case contract
Unsold auction lots may carry into a later round with explicit seller consent and inherited encumbrances. Standing offers carry only while their bidder authorization survives and may retain or lose priority according to whether lot specification changed. Sale identifiers retain provenance. Named decision future-round-reoffer: For future round reoffer, apply the stipulated decision [l for l in x["standing"] if x["source_round"][l]<x["new_round"]].
Why this case matters
Offline administrative auction model for software failure analysis.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
v0 = [l for l in x["offered"] if l not in x["sold"] and l in x["seller_carry"]]
v1 = [l for l in x["standing"] if l in x["bidder_carry"]]
v2 = [l for l in x["standing"] if l not in x["withdrawn"]]
v3 = {l:x["old_priority"][l] if x["old_specs"][l]==x["new_specs"][l] else x["new_round"] for l in x["standing"]}
v4 = [l for l in x["standing"] if l not in x["already_carried"]]
v5 = {l:x["holds"].get(l,0) for l in x["standing"] if l in x["encumbered"]}
v6 = {l:x["source_round"][l] for l in x["standing"]}
v7 = x["standing"]
v8 = [l for l in x["standing"] if l in x["bidder_carry"] and l not in x["expired"]]
v9 = {l:x["approved_reserves"].get(l,x["reserves"][l]) for l in x["standing"]}
return {'unsold-reoffer':v0,'standing-bid-reconsent':v1,'withdrawal-carry-veto':v2,'specification-priority-reset':v3,'carry-once-per-round':v4,'inherited-reservation':v5,'source-round-provenance':v6,'future-round-reoffer':v7,'authorization-expiry-carry':v8,'approved-reserve-revision':v9}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('source from current round', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 3, 'B': 3, 'C': 3}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [[], [], [], [], []]), ('all seller carry / source from current round', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B', 'C'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 3, 'B': 3, 'C': 3}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [[], [], [], [], []]), ('normal contract', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('all seller carry', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B', 'C'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('all bidder carry', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['B', 'C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('no withdrawals', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': [], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('unchanged lot specs', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v1', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('nothing already carried', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': [], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('no expired authorization', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': [], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('all sold', {'offered': ['A', 'B', 'C'], 'sold': ['A', 'B', 'C'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('no encumbrance', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': [], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']])]
def vary(value):
if type(value) is int: return value*N
if isinstance(value,list): return [vary(v) for v in value]
if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
return value
for label, request, expected in fixtures:
check(label, solve(vary(request))['future-round-reoffer'], expected[N-1])
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 |
|---|---|---|---|
| source from current round | ['B', 'C'] | [] | Failed |
| all seller carry / source from current round | ['B', 'C'] | [] | Failed |
| normal contract | ['B', 'C'] | ['B', 'C'] | Passed |
| all seller carry | ['B', 'C'] | ['B', 'C'] | Passed |
| all bidder carry | ['B', 'C'] | ['B', 'C'] | Passed |
| no withdrawals | ['B', 'C'] | ['B', 'C'] | Passed |
| unchanged lot specs | ['B', 'C'] | ['B', 'C'] | Passed |
| nothing already carried | ['B', 'C'] | ['B', 'C'] | Passed |
| no expired authorization | ['B', 'C'] | ['B', 'C'] | Passed |
| all sold | ['B', 'C'] | ['B', 'C'] | Passed |
| no encumbrance | ['B', 'C'] | ['B', 'C'] | Passed |
SHA-256 / c7550ee9376d59dd3c606ad528a2280ed32f5ddfbad34feb58ad5cd661a7126c
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
v0 = [l for l in x["offered"] if l not in x["sold"] and l in x["seller_carry"]]
v1 = [l for l in x["standing"] if l in x["bidder_carry"]]
v2 = [l for l in x["standing"] if l not in x["withdrawn"]]
v3 = {l:x["old_priority"][l] if x["old_specs"][l]==x["new_specs"][l] else x["new_round"] for l in x["standing"]}
v4 = [l for l in x["standing"] if l not in x["already_carried"]]
v5 = {l:x["holds"].get(l,0) for l in x["standing"] if l in x["encumbered"]}
v6 = {l:x["source_round"][l] for l in x["standing"]}
v7 = [l for l in x["standing"] if x["source_round"][l]<=x["new_round"]]
v8 = [l for l in x["standing"] if l in x["bidder_carry"] and l not in x["expired"]]
v9 = {l:x["approved_reserves"].get(l,x["reserves"][l]) for l in x["standing"]}
return {'unsold-reoffer':v0,'standing-bid-reconsent':v1,'withdrawal-carry-veto':v2,'specification-priority-reset':v3,'carry-once-per-round':v4,'inherited-reservation':v5,'source-round-provenance':v6,'future-round-reoffer':v7,'authorization-expiry-carry':v8,'approved-reserve-revision':v9}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('source from current round', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 3, 'B': 3, 'C': 3}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [[], [], [], [], []]), ('all seller carry / source from current round', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B', 'C'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 3, 'B': 3, 'C': 3}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [[], [], [], [], []]), ('normal contract', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('all seller carry', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B', 'C'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('all bidder carry', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['B', 'C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('no withdrawals', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': [], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('unchanged lot specs', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v1', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('nothing already carried', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': [], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('no expired authorization', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': [], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('all sold', {'offered': ['A', 'B', 'C'], 'sold': ['A', 'B', 'C'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('no encumbrance', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': [], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']])]
def vary(value):
if type(value) is int: return value*N
if isinstance(value,list): return [vary(v) for v in value]
if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
return value
for label, request, expected in fixtures:
check(label, solve(vary(request))['future-round-reoffer'], expected[N-1])
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 |
|---|---|---|---|
| source from current round | ['B', 'C'] | [] | Failed |
| all seller carry / source from current round | ['B', 'C'] | [] | Failed |
| normal contract | ['B', 'C'] | ['B', 'C'] | Passed |
| all seller carry | ['B', 'C'] | ['B', 'C'] | Passed |
| all bidder carry | ['B', 'C'] | ['B', 'C'] | Passed |
| no withdrawals | ['B', 'C'] | ['B', 'C'] | Passed |
| unchanged lot specs | ['B', 'C'] | ['B', 'C'] | Passed |
| nothing already carried | ['B', 'C'] | ['B', 'C'] | Passed |
| no expired authorization | ['B', 'C'] | ['B', 'C'] | Passed |
| all sold | ['B', 'C'] | ['B', 'C'] | Passed |
| no encumbrance | ['B', 'C'] | ['B', 'C'] | Passed |
SHA-256 / 4059cd713379af82fc6bc40b5d9029bdb809a93c51811645171915b655af985e
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
v0 = [l for l in x["offered"] if l not in x["sold"] and l in x["seller_carry"]]
v1 = [l for l in x["standing"] if l in x["bidder_carry"]]
v2 = [l for l in x["standing"] if l not in x["withdrawn"]]
v3 = {l:x["old_priority"][l] if x["old_specs"][l]==x["new_specs"][l] else x["new_round"] for l in x["standing"]}
v4 = [l for l in x["standing"] if l not in x["already_carried"]]
v5 = {l:x["holds"].get(l,0) for l in x["standing"] if l in x["encumbered"]}
v6 = {l:x["source_round"][l] for l in x["standing"]}
v7 = [l for l in x["standing"] if x["source_round"][l]<x["new_round"]]
v8 = [l for l in x["standing"] if l in x["bidder_carry"] and l not in x["expired"]]
v9 = {l:x["approved_reserves"].get(l,x["reserves"][l]) for l in x["standing"]}
return {'unsold-reoffer':v0,'standing-bid-reconsent':v1,'withdrawal-carry-veto':v2,'specification-priority-reset':v3,'carry-once-per-round':v4,'inherited-reservation':v5,'source-round-provenance':v6,'future-round-reoffer':v7,'authorization-expiry-carry':v8,'approved-reserve-revision':v9}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('source from current round', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 3, 'B': 3, 'C': 3}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [[], [], [], [], []]), ('all seller carry / source from current round', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B', 'C'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 3, 'B': 3, 'C': 3}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [[], [], [], [], []]), ('normal contract', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('all seller carry', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B', 'C'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('all bidder carry', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['B', 'C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('no withdrawals', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': [], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('unchanged lot specs', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v1', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('nothing already carried', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': [], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('no expired authorization', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': [], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('all sold', {'offered': ['A', 'B', 'C'], 'sold': ['A', 'B', 'C'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': ['C'], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']]), ('no encumbrance', {'offered': ['A', 'B', 'C'], 'sold': ['A'], 'seller_carry': ['B'], 'standing': ['B', 'C'], 'bidder_carry': ['C'], 'withdrawn': ['B'], 'old_specs': {'B': 'v1', 'C': 'v1'}, 'new_specs': {'B': 'v2', 'C': 'v1'}, 'old_priority': {'B': 1, 'C': 2}, 'new_round': 3, 'source_round': {'A': 1, 'B': 1, 'C': 2}, 'already_carried': ['B'], 'holds': {'B': 5, 'C': 3}, 'encumbered': [], 'expired': ['C'], 'reserves': {'B': 8, 'C': 6}, 'approved_reserves': {'B': 9}}, [['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C'], ['B', 'C']])]
def vary(value):
if type(value) is int: return value*N
if isinstance(value,list): return [vary(v) for v in value]
if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
return value
for label, request, expected in fixtures:
check(label, solve(vary(request))['future-round-reoffer'], expected[N-1])
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 |
|---|---|---|---|
| source from current round | [] | [] | Passed |
| all seller carry / source from current round | [] | [] | Passed |
| normal contract | ['B', 'C'] | ['B', 'C'] | Passed |
| all seller carry | ['B', 'C'] | ['B', 'C'] | Passed |
| all bidder carry | ['B', 'C'] | ['B', 'C'] | Passed |
| no withdrawals | ['B', 'C'] | ['B', 'C'] | Passed |
| unchanged lot specs | ['B', 'C'] | ['B', 'C'] | Passed |
| nothing already carried | ['B', 'C'] | ['B', 'C'] | Passed |
| no expired authorization | ['B', 'C'] | ['B', 'C'] | Passed |
| all sold | ['B', 'C'] | ['B', 'C'] | Passed |
| no encumbrance | ['B', 'C'] | ['B', 'C'] | Passed |
SHA-256 / 6a2803eaae3e594a26cd5045a4d39a2a6f49562e93d4a94c54f96e263c4cd95c
Verification & scope
Stipulated toy auction rules, not a venue specification, financial advice, optimization claim, or live trading implementation. Nonnegative integer inputs and internally aligned list fields only. 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:18.199873+00:00.
Case digest / 8f88bf9263c010295323d0f7061fabfb8e6cac7de58b12234f00ee544334e464