FAILURE MAP
← Case archive

FA-57226 / Auction allocation rules / Open access

Bilateral confirmation: reversal execution guard · case 01

Reversal posts before the corresponding trade executed.

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

ROOT CAUSE

Reversal posts before the corresponding trade executed.

VERIFIED REPAIR

For reversal execution guard, apply the stipulated decision x["reversed"] and x["executed"].

Unsuccessful approach: The attempted repair uses x["executed"]; the explicit regression cases demonstrate that this still violates the stipulated auction rule.

Case contract

After an auction allocation, buyer and seller confirmations reserve a specific trade version. A trade is final only when both parties confirm the same proposed version; rejection releases reservations but does not erase executed trades. Match identity differs from party identity. Named decision reversal-execution-guard: For reversal execution guard, apply the stipulated decision x["reversed"] and x["executed"].

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 = x["buyer_accept"] and x["seller_accept"]
    v1 = x["buyer_version"]==x["seller_version"]==x["version"]
    v2 = x["held"] if x["rejected"] and not x["executed"] else 0
    v3 = max(0,x["held"]-x["fill"])
    v4 = x["buyer_signer"]==x["buyer"] and x["buyer_accept"]
    v5 = (x["seller_signer"]==x["seller"] or x["seller_signer"] in x["seller_delegates"]) and x["seller_accept"]
    v6 = 0 if x["match_id"]==x["last_match"] else x["fill"]
    v7 = x["reversed"]
    v8 = x["held"] if x["timeout"] and not x["executed"] else 0
    v9 = [m for m in x["matched"] if m not in x["reported"]]
    return {'both-party-confirmation':v0,'same-proposal-version':v1,'rejection-release':v2,'partial-fill-reservation':v3,'buyer-confirmation-author':v4,'seller-delegate-authorization':v5,'execution-match-replay':v6,'reversal-execution-guard':v7,'timeout-release-guard':v8,'unreported-match-output':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('trade reversal', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': True, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('both current / trade reversal', {'version': 2, 'buyer_version': 2, 'seller_version': 2, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': True, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('already executed', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': True, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('both current / already executed', {'version': 2, 'buyer_version': 2, 'seller_version': 2, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': True, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('normal contract', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('both current', {'version': 2, 'buyer_version': 2, 'seller_version': 2, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('buyer rejects', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': False, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('seller rejects', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': False, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('trade rejected', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': True, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('wrong buyer signer', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 's', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('wrong seller signer', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 'b', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('match replay', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm1', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False])]
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))['reversal-execution-guard'], 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 fixtureActualExpectedOutcome
trade reversalTrueFalseFailed
both current / trade reversalTrueFalseFailed
already executedFalseFalsePassed
both current / already executedFalseFalsePassed
normal contractFalseFalsePassed
both currentFalseFalsePassed
buyer rejectsFalseFalsePassed
seller rejectsFalseFalsePassed
trade rejectedFalseFalsePassed
wrong buyer signerFalseFalsePassed
wrong seller signerFalseFalsePassed
match replayFalseFalsePassed

SHA-256 / 101b81596da35a8dae571b65da0dc973f07b77a0098c7a5e8b7d8601285bea6b

2 / The unsuccessful fix

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

N = 1
observations = []
def solve(x):
    v0 = x["buyer_accept"] and x["seller_accept"]
    v1 = x["buyer_version"]==x["seller_version"]==x["version"]
    v2 = x["held"] if x["rejected"] and not x["executed"] else 0
    v3 = max(0,x["held"]-x["fill"])
    v4 = x["buyer_signer"]==x["buyer"] and x["buyer_accept"]
    v5 = (x["seller_signer"]==x["seller"] or x["seller_signer"] in x["seller_delegates"]) and x["seller_accept"]
    v6 = 0 if x["match_id"]==x["last_match"] else x["fill"]
    v7 = x["executed"]
    v8 = x["held"] if x["timeout"] and not x["executed"] else 0
    v9 = [m for m in x["matched"] if m not in x["reported"]]
    return {'both-party-confirmation':v0,'same-proposal-version':v1,'rejection-release':v2,'partial-fill-reservation':v3,'buyer-confirmation-author':v4,'seller-delegate-authorization':v5,'execution-match-replay':v6,'reversal-execution-guard':v7,'timeout-release-guard':v8,'unreported-match-output':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('trade reversal', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': True, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('both current / trade reversal', {'version': 2, 'buyer_version': 2, 'seller_version': 2, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': True, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('already executed', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': True, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('both current / already executed', {'version': 2, 'buyer_version': 2, 'seller_version': 2, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': True, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('normal contract', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('both current', {'version': 2, 'buyer_version': 2, 'seller_version': 2, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('buyer rejects', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': False, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('seller rejects', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': False, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('trade rejected', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': True, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('wrong buyer signer', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 's', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('wrong seller signer', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 'b', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('match replay', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm1', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False])]
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))['reversal-execution-guard'], 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 fixtureActualExpectedOutcome
trade reversalFalseFalsePassed
both current / trade reversalFalseFalsePassed
already executedTrueFalseFailed
both current / already executedTrueFalseFailed
normal contractFalseFalsePassed
both currentFalseFalsePassed
buyer rejectsFalseFalsePassed
seller rejectsFalseFalsePassed
trade rejectedFalseFalsePassed
wrong buyer signerFalseFalsePassed
wrong seller signerFalseFalsePassed
match replayFalseFalsePassed

SHA-256 / b56ee36f83015b1110e656c9d59bd5084406703ef07d83f5f6130d89ccfa9a47

3 / The verified repair

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

N = 1
observations = []
def solve(x):
    v0 = x["buyer_accept"] and x["seller_accept"]
    v1 = x["buyer_version"]==x["seller_version"]==x["version"]
    v2 = x["held"] if x["rejected"] and not x["executed"] else 0
    v3 = max(0,x["held"]-x["fill"])
    v4 = x["buyer_signer"]==x["buyer"] and x["buyer_accept"]
    v5 = (x["seller_signer"]==x["seller"] or x["seller_signer"] in x["seller_delegates"]) and x["seller_accept"]
    v6 = 0 if x["match_id"]==x["last_match"] else x["fill"]
    v7 = x["reversed"] and x["executed"]
    v8 = x["held"] if x["timeout"] and not x["executed"] else 0
    v9 = [m for m in x["matched"] if m not in x["reported"]]
    return {'both-party-confirmation':v0,'same-proposal-version':v1,'rejection-release':v2,'partial-fill-reservation':v3,'buyer-confirmation-author':v4,'seller-delegate-authorization':v5,'execution-match-replay':v6,'reversal-execution-guard':v7,'timeout-release-guard':v8,'unreported-match-output':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('trade reversal', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': True, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('both current / trade reversal', {'version': 2, 'buyer_version': 2, 'seller_version': 2, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': True, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('already executed', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': True, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('both current / already executed', {'version': 2, 'buyer_version': 2, 'seller_version': 2, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': True, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('normal contract', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('both current', {'version': 2, 'buyer_version': 2, 'seller_version': 2, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('buyer rejects', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': False, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('seller rejects', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': False, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('trade rejected', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': True, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('wrong buyer signer', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 's', 'seller_signer': 's', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('wrong seller signer', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 'b', 'match_id': 'm2', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False]), ('match replay', {'version': 2, 'buyer_version': 2, 'seller_version': 1, 'buyer_accept': True, 'seller_accept': True, 'rejected': False, 'executed': False, 'proposed': 5, 'held': 5, 'fill': 2, 'buyer': 'b', 'seller': 's', 'buyer_signer': 'b', 'seller_signer': 's', 'match_id': 'm1', 'last_match': 'm1', 'reversed': False, 'timeout': False, 'reported': ['m1'], 'matched': ['m1', 'm2'], 'seller_delegates': ['agent']}, [False, False, False, False, False])]
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))['reversal-execution-guard'], 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 fixtureActualExpectedOutcome
trade reversalFalseFalsePassed
both current / trade reversalFalseFalsePassed
already executedFalseFalsePassed
both current / already executedFalseFalsePassed
normal contractFalseFalsePassed
both currentFalseFalsePassed
buyer rejectsFalseFalsePassed
seller rejectsFalseFalsePassed
trade rejectedFalseFalsePassed
wrong buyer signerFalseFalsePassed
wrong seller signerFalseFalsePassed
match replayFalseFalsePassed

SHA-256 / 93502cd9f792476f1da1035880c9efb8f9610ca9b2bea917648ea1b7407e3411

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:14.645963+00:00.

Case digest / 59c7db5442daf3a171b8daebfe50e8f0d884ea38402f481d2dd9ce01ecb38097