{"abstract":"The acceptor prepare operation is admitted even though the response omits an already accepted value.","category":"Consensus","checks":9,"contract":"Return a Boolean admission decision for promise a proposal ballot. The record r must satisfy all of: tuple(r['ballot_floor'][0]) >= tuple(r['ballot_floor'][1]); r['slot_scope'][0] == r['slot_scope'][1]; r['promise_durable'] is True; r['accepted_attached'][0] is None or r['accepted_attached'][1] == r['accepted_attached'][0]; r['configuration_epoch'][0] == r['configuration_epoch'][1]. Extra tracing fields are ignored; validation does not mutate the record.","evaluation_group":"xd-acceptor-prepare","failed_approach":"Adding the accepted attached check repairs the reported defect, but replacing the adjacent configuration epoch check loses that independent invariant.","family":"xd-acceptor-prepare-accepted_attached","id":"FA-491","implementations":{"attempt":{"sha256":"39ec2aaed18e786725c29ceea1dc8f4d530f9b8fa9edf5169830d12dc0420363","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(r):\n    return (tuple(r['ballot_floor'][0]) >= tuple(r['ballot_floor'][1])) and (r['slot_scope'][0] == r['slot_scope'][1]) and (r['promise_durable'] is True) and (r['accepted_attached'][0] is None or r['accepted_attached'][1] == r['accepted_attached'][0])\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nr = {'ballot_floor': [[5, 2], [5, 1]], 'slot_scope': ['s1', 's1'], 'promise_durable': True, 'accepted_attached': ['chosen', 'chosen'], 'configuration_epoch': [3, 3]}\ncheck('valid operation', solve(r), True)\ncheck('An acceptor promises a ballot below its durable promise', solve(dict(r, **{'ballot_floor': [[4, 9], [5, 1]]})), False)\ncheck('A prepare message targets a different consensus instance', solve(dict(r, **{'slot_scope': ['s2', 's1']})), False)\ncheck('A promise response escapes before its durable write', solve(dict(r, **{'promise_durable': False})), False)\ncheck('The response omits an already accepted value', solve(dict(r, **{'accepted_attached': ['chosen', None]})), False)\ncheck('A prepare is counted under the wrong voting epoch', solve(dict(r, **{'configuration_epoch': [2, 3]})), False)\ncheck('unrelated tracing metadata', solve(dict(r, trace='run-'+str(N))), True)\ncheck('repeat validation is pure', solve(r), True)\ninvalid = {'ballot_floor': [[4, 9], [5, 1]], 'slot_scope': ['s2', 's1'], 'promise_durable': False, 'accepted_attached': ['chosen', None], 'configuration_epoch': [2, 3]}\nkeys = list(invalid)\npair = {keys[N % len(keys)]: invalid[keys[N % len(keys)]], keys[(N+1) % len(keys)]: invalid[keys[(N+1) % len(keys)]]}\ncheck('two independent violations in variant', solve(dict(r, **pair)), False)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"17a02dfce22218514699f5aff05e63bbde28cf9bb2c92af60a1e94ef5eacaa9b","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(r):\n    return (tuple(r['ballot_floor'][0]) >= tuple(r['ballot_floor'][1])) and (r['slot_scope'][0] == r['slot_scope'][1]) and (r['promise_durable'] is True) and (r['configuration_epoch'][0] == r['configuration_epoch'][1])\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nr = {'ballot_floor': [[5, 2], [5, 1]], 'slot_scope': ['s1', 's1'], 'promise_durable': True, 'accepted_attached': ['chosen', 'chosen'], 'configuration_epoch': [3, 3]}\ncheck('valid operation', solve(r), True)\ncheck('An acceptor promises a ballot below its durable promise', solve(dict(r, **{'ballot_floor': [[4, 9], [5, 1]]})), False)\ncheck('A prepare message targets a different consensus instance', solve(dict(r, **{'slot_scope': ['s2', 's1']})), False)\ncheck('A promise response escapes before its durable write', solve(dict(r, **{'promise_durable': False})), False)\ncheck('The response omits an already accepted value', solve(dict(r, **{'accepted_attached': ['chosen', None]})), False)\ncheck('A prepare is counted under the wrong voting epoch', solve(dict(r, **{'configuration_epoch': [2, 3]})), False)\ncheck('unrelated tracing metadata', solve(dict(r, trace='run-'+str(N))), True)\ncheck('repeat validation is pure', solve(r), True)\ninvalid = {'ballot_floor': [[4, 9], [5, 1]], 'slot_scope': ['s2', 's1'], 'promise_durable': False, 'accepted_attached': ['chosen', None], 'configuration_epoch': [2, 3]}\nkeys = list(invalid)\npair = {keys[N % len(keys)]: invalid[keys[N % len(keys)]], keys[(N+1) % len(keys)]: invalid[keys[(N+1) % len(keys)]]}\ncheck('two independent violations in variant', solve(dict(r, **pair)), False)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"fixed":{"sha256":"6fda7f5600af25833ae2df8b1d1264351e333deb380f24081686c0e68fc05297","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(r):\n    return (tuple(r['ballot_floor'][0]) >= tuple(r['ballot_floor'][1])) and (r['slot_scope'][0] == r['slot_scope'][1]) and (r['promise_durable'] is True) and (r['accepted_attached'][0] is None or r['accepted_attached'][1] == r['accepted_attached'][0]) and (r['configuration_epoch'][0] == r['configuration_epoch'][1])\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nr = {'ballot_floor': [[5, 2], [5, 1]], 'slot_scope': ['s1', 's1'], 'promise_durable': True, 'accepted_attached': ['chosen', 'chosen'], 'configuration_epoch': [3, 3]}\ncheck('valid operation', solve(r), True)\ncheck('An acceptor promises a ballot below its durable promise', solve(dict(r, **{'ballot_floor': [[4, 9], [5, 1]]})), False)\ncheck('A prepare message targets a different consensus instance', solve(dict(r, **{'slot_scope': ['s2', 's1']})), False)\ncheck('A promise response escapes before its durable write', solve(dict(r, **{'promise_durable': False})), False)\ncheck('The response omits an already accepted value', solve(dict(r, **{'accepted_attached': ['chosen', None]})), False)\ncheck('A prepare is counted under the wrong voting epoch', solve(dict(r, **{'configuration_epoch': [2, 3]})), False)\ncheck('unrelated tracing metadata', solve(dict(r, trace='run-'+str(N))), True)\ncheck('repeat validation is pure', solve(r), True)\ninvalid = {'ballot_floor': [[4, 9], [5, 1]], 'slot_scope': ['s2', 's1'], 'promise_durable': False, 'accepted_attached': ['chosen', None], 'configuration_epoch': [2, 3]}\nkeys = list(invalid)\npair = {keys[N % len(keys)]: invalid[keys[N % len(keys)]], keys[(N+1) % len(keys)]: invalid[keys[(N+1) % len(keys)]]}\ncheck('two independent violations in variant', solve(dict(r, **pair)), False)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":" 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.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"xd-acceptor-prepare-accepted_attached","generated_at":"2026-09-29T14:36:53.608651+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"A deterministic local contract for consensus. Each negative fixture violates exactly one invariant. No transport timing, persistence, cryptographic verification, or full protocol implementation is claimed.","repair":"Require r['accepted_attached'][0] is None or r['accepted_attached'][1] == r['accepted_attached'][0] together with every other stated precondition before accepting the operation.","root_cause":"The admission path omits the accepted attached invariant while validating the other operation preconditions.","sha256":"8872c395f46640094f8587880c498e5a9e059b5277a9a7e2ae5980fb21d9aa5d","title":"Promise a proposal ballot: The response omits an already accepted value · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":32.65,"exit_code":1,"observations":[{"actual":true,"check":"valid operation","expected":true,"passed":true},{"actual":false,"check":"An acceptor promises a ballot below its durable promise","expected":false,"passed":true},{"actual":false,"check":"A prepare message targets a different consensus instance","expected":false,"passed":true},{"actual":false,"check":"A promise response escapes before its durable write","expected":false,"passed":true},{"actual":false,"check":"The response omits an already accepted value","expected":false,"passed":true},{"actual":true,"check":"A prepare is counted under the wrong voting epoch","expected":false,"passed":false},{"actual":true,"check":"unrelated tracing metadata","expected":true,"passed":true},{"actual":true,"check":"repeat validation is pure","expected":true,"passed":true},{"actual":false,"check":"two independent violations in variant","expected":false,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"valid operation\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"An acceptor promises a ballot below its durable promise\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"A prepare message targets a different consensus instance\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"A promise response escapes before its durable write\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"The response omits an already accepted value\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"A prepare is counted under the wrong voting epoch\", \"actual\": true, \"expected\": false, \"passed\": false}, {\"check\": \"unrelated tracing metadata\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"repeat validation is pure\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"two independent violations in variant\", \"actual\": false, \"expected\": false, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":37.424,"exit_code":1,"observations":[{"actual":true,"check":"valid operation","expected":true,"passed":true},{"actual":false,"check":"An acceptor promises a ballot below its durable promise","expected":false,"passed":true},{"actual":false,"check":"A prepare message targets a different consensus instance","expected":false,"passed":true},{"actual":false,"check":"A promise response escapes before its durable write","expected":false,"passed":true},{"actual":true,"check":"The response omits an already accepted value","expected":false,"passed":false},{"actual":false,"check":"A prepare is counted under the wrong voting epoch","expected":false,"passed":true},{"actual":true,"check":"unrelated tracing metadata","expected":true,"passed":true},{"actual":true,"check":"repeat validation is pure","expected":true,"passed":true},{"actual":false,"check":"two independent violations in variant","expected":false,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"valid operation\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"An acceptor promises a ballot below its durable promise\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"A prepare message targets a different consensus instance\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"A promise response escapes before its durable write\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"The response omits an already accepted value\", \"actual\": true, \"expected\": false, \"passed\": false}, {\"check\": \"A prepare is counted under the wrong voting epoch\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"unrelated tracing metadata\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"repeat validation is pure\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"two independent violations in variant\", \"actual\": false, \"expected\": false, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":38.976,"exit_code":0,"observations":[{"actual":true,"check":"valid operation","expected":true,"passed":true},{"actual":false,"check":"An acceptor promises a ballot below its durable promise","expected":false,"passed":true},{"actual":false,"check":"A prepare message targets a different consensus instance","expected":false,"passed":true},{"actual":false,"check":"A promise response escapes before its durable write","expected":false,"passed":true},{"actual":false,"check":"The response omits an already accepted value","expected":false,"passed":true},{"actual":false,"check":"A prepare is counted under the wrong voting epoch","expected":false,"passed":true},{"actual":true,"check":"unrelated tracing metadata","expected":true,"passed":true},{"actual":true,"check":"repeat validation is pure","expected":true,"passed":true},{"actual":false,"check":"two independent violations in variant","expected":false,"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"valid operation\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"An acceptor promises a ballot below its durable promise\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"A prepare message targets a different consensus instance\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"A promise response escapes before its durable write\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"The response omits an already accepted value\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"A prepare is counted under the wrong voting epoch\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"unrelated tracing metadata\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"repeat validation is pure\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"two independent violations in variant\", \"actual\": false, \"expected\": false, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}