{"abstract":"An old lease holder writes after a higher fencing epoch has already committed.","category":"Distributed coordination","checks":6,"contract":"Process [epoch,value] writes in arrival order. Accept epochs >= the stored epoch and return [largest accepted epoch,last accepted value]. Tokens are nonnegative and uniquely allocated per lease.","contract_signature":"epoch, value, writes","evaluation_group":"model-d914f8dd50ece37b","failed_approach":"Requiring a strictly newer epoch for every write blocks valid updates by the current holder.","family":"dist-fencing-epoch","id":"FA-051","implementations":{"attempt":{"sha256":"b94903bcf619d24c2932523e45a8224b332b1c647a82db5a069801a0fe473076","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(epoch, value, writes):\n    for next_epoch, next_value in writes:\n        if next_epoch > epoch:\n            epoch, value = next_epoch, next_value\n    return [epoch, value]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ne = 10*N\ncheck('late revoked writer', solve(e, 'current', [[e-1, 'stale']]), [e, 'current'])\ncheck('same holder writes twice', solve(e, 'a', [[e, 'b'], [e, 'c']]), [e, 'c'])\ncheck('new holder then old arrival', solve(e, 'a', [[e+1, 'new'], [e, 'old']]), [e+1, 'new'])\ncheck('multiple handoffs', solve(e, 'a', [[e+2, 'b'], [e+1, 'c'], [e+3, 'd']]), [e+3, 'd'])\ncheck('idle resource', solve(e, 'kept', []), [e, 'kept'])\ncheck('initial epoch may be zero', solve(0, None, [[0, N]]), [0, N])\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":"ba98821e37640d0bdc96d8f3d700e68edcaba8b53e319f6e580bbae41e017e9d","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(epoch, value, writes):\n    for next_epoch, next_value in writes:\n        epoch, value = next_epoch, next_value\n    return [epoch, value]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ne = 10*N\ncheck('late revoked writer', solve(e, 'current', [[e-1, 'stale']]), [e, 'current'])\ncheck('same holder writes twice', solve(e, 'a', [[e, 'b'], [e, 'c']]), [e, 'c'])\ncheck('new holder then old arrival', solve(e, 'a', [[e+1, 'new'], [e, 'old']]), [e+1, 'new'])\ncheck('multiple handoffs', solve(e, 'a', [[e+2, 'b'], [e+1, 'c'], [e+3, 'd']]), [e+3, 'd'])\ncheck('idle resource', solve(e, 'kept', []), [e, 'kept'])\ncheck('initial epoch may be zero', solve(0, None, [[0, N]]), [0, N])\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":"dist-fencing-epoch","generated_at":"2026-09-29T14:36:49.883418+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Models storage-side fencing after delayed writes outlive a coordinator lease; lease expiry alone cannot stop a paused former holder from sending a request.","root_cause":"The protected resource does not enforce the largest fencing token it has observed.","sha256":"e27712cb3c0e7a61089c6c45c2b2a33c6fa41cee4ef1487dcc19546591241ffb","title":"A revoked writer overwrites its successor's state · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verified":true,"visibility":"public","verification":{"attempt":{"elapsed_ms":30.114,"exit_code":1,"observations":[{"actual":[10,"current"],"check":"late revoked writer","expected":[10,"current"],"passed":true},{"actual":[10,"a"],"check":"same holder writes twice","expected":[10,"c"],"passed":false},{"actual":[11,"new"],"check":"new holder then old arrival","expected":[11,"new"],"passed":true},{"actual":[13,"d"],"check":"multiple handoffs","expected":[13,"d"],"passed":true},{"actual":[10,"kept"],"check":"idle resource","expected":[10,"kept"],"passed":true},{"actual":[0,null],"check":"initial epoch may be zero","expected":[0,1],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"late revoked writer\", \"actual\": [10, \"current\"], \"expected\": [10, \"current\"], \"passed\": true}, {\"check\": \"same holder writes twice\", \"actual\": [10, \"a\"], \"expected\": [10, \"c\"], \"passed\": false}, {\"check\": \"new holder then old arrival\", \"actual\": [11, \"new\"], \"expected\": [11, \"new\"], \"passed\": true}, {\"check\": \"multiple handoffs\", \"actual\": [13, \"d\"], \"expected\": [13, \"d\"], \"passed\": true}, {\"check\": \"idle resource\", \"actual\": [10, \"kept\"], \"expected\": [10, \"kept\"], \"passed\": true}, {\"check\": \"initial epoch may be zero\", \"actual\": [0, null], \"expected\": [0, 1], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":37.839,"exit_code":1,"observations":[{"actual":[9,"stale"],"check":"late revoked writer","expected":[10,"current"],"passed":false},{"actual":[10,"c"],"check":"same holder writes twice","expected":[10,"c"],"passed":true},{"actual":[10,"old"],"check":"new holder then old arrival","expected":[11,"new"],"passed":false},{"actual":[13,"d"],"check":"multiple handoffs","expected":[13,"d"],"passed":true},{"actual":[10,"kept"],"check":"idle resource","expected":[10,"kept"],"passed":true},{"actual":[0,1],"check":"initial epoch may be zero","expected":[0,1],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"late revoked writer\", \"actual\": [9, \"stale\"], \"expected\": [10, \"current\"], \"passed\": false}, {\"check\": \"same holder writes twice\", \"actual\": [10, \"c\"], \"expected\": [10, \"c\"], \"passed\": true}, {\"check\": \"new holder then old arrival\", \"actual\": [10, \"old\"], \"expected\": [11, \"new\"], \"passed\": false}, {\"check\": \"multiple handoffs\", \"actual\": [13, \"d\"], \"expected\": [13, \"d\"], \"passed\": true}, {\"check\": \"idle resource\", \"actual\": [10, \"kept\"], \"expected\": [10, \"kept\"], \"passed\": true}, {\"check\": \"initial epoch may be zero\", \"actual\": [0, 1], \"expected\": [0, 1], \"passed\": true}], \"passed\": false}\n"}},"member_only":{"stages":["fixed"],"fields":["implementations.fixed","verification.fixed","harness","repair"],"note":"The verified repair, its recorded checks, the repair description, and the scoring harness are available to members."}}