{"abstract":"Deque savepoint insertion overwrites outer checkpoints.","category":"Bounded deques","checks":6,"contract":"Deque savepoints capture ordered snapshots by unique tag. Rolling back restores a named snapshot and discards it plus nested checkpoints. Release discards the same checkpoint suffix without restoring data. Unknown tags preserve state.","evaluation_group":"s3-bounded-deques-nested-checkpoints","failed_approach":"The partial repair still applies the incorrect transition to an admitted boundary or multi-element case.","family":"s3-bounded-deques-nested-checkpoints-snapshot-stack","id":"FA-46886","implementations":{"attempt":{"sha256":"ef6e0a9a2e7b48a3778529b676a5a6336b6e35f5a0f2575255c83f846c855844","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    a,stack,op,tag=x\n    if op=='save':return [a,stack+[[tag,a[:]]] if not stack else [[tag,a[:]]],tag,True]\n    where=next((i for i,z in enumerate(stack) if z[0]==tag),None)\n    if where is None:return [a,stack,None,False]\n    retained=stack[:where]\n    state=stack[where][1][:] if op=='rollback' else a[:]\n    return [state,retained,tag,True]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('0', solve([[N+2],[[1,[N]],[2,[N+1]]],\"rollback\",1]), {1: [[1], [], 1, True], 2: [[2], [], 1, True], 3: [[3], [], 1, True], 4: [[4], [], 1, True], 5: [[5], [], 1, True]}[N])\ncheck('1', solve([[N+2],[[1,[N]],[2,[N+1]]],\"rollback\",2]), {1: [[2], [[1, [1]]], 2, True], 2: [[3], [[1, [2]]], 2, True], 3: [[4], [[1, [3]]], 2, True], 4: [[5], [[1, [4]]], 2, True], 5: [[6], [[1, [5]]], 2, True]}[N])\ncheck('2', solve([[N+2],[[1,[N]],[2,[N+1]]],\"release\",1]), {1: [[3], [], 1, True], 2: [[4], [], 1, True], 3: [[5], [], 1, True], 4: [[6], [], 1, True], 5: [[7], [], 1, True]}[N])\ncheck('3', solve([[N],[],\"save\",3]), {1: [[1], [[3, [1]]], 3, True], 2: [[2], [[3, [2]]], 3, True], 3: [[3], [[3, [3]]], 3, True], 4: [[4], [[3, [4]]], 3, True], 5: [[5], [[3, [5]]], 3, True]}[N])\ncheck('4', solve([[N],[[1,[N-1]]],\"save\",4]), {1: [[1], [[1, [0]], [4, [1]]], 4, True], 2: [[2], [[1, [1]], [4, [2]]], 4, True], 3: [[3], [[1, [2]], [4, [3]]], 4, True], 4: [[4], [[1, [3]], [4, [4]]], 4, True], 5: [[5], [[1, [4]], [4, [5]]], 4, True]}[N])\ncheck('5', solve([[N],[[1,[N-1]]],\"rollback\",9]), {1: [[1], [[1, [0]]], None, False], 2: [[2], [[1, [1]]], None, False], 3: [[3], [[1, [2]]], None, False], 4: [[4], [[1, [3]]], None, False], 5: [[5], [[1, [4]]], None, False]}[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":"a10387972f3ad8aa7a9171343b87d72ffc92f263c88ae058967b971af65f1fab","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    a,stack,op,tag=x\n    if op=='save':return [a,[[tag,a[:]]],tag,True]\n    where=next((i for i,z in enumerate(stack) if z[0]==tag),None)\n    if where is None:return [a,stack,None,False]\n    retained=stack[:where]\n    state=stack[where][1][:] if op=='rollback' else a[:]\n    return [state,retained,tag,True]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('0', solve([[N+2],[[1,[N]],[2,[N+1]]],\"rollback\",1]), {1: [[1], [], 1, True], 2: [[2], [], 1, True], 3: [[3], [], 1, True], 4: [[4], [], 1, True], 5: [[5], [], 1, True]}[N])\ncheck('1', solve([[N+2],[[1,[N]],[2,[N+1]]],\"rollback\",2]), {1: [[2], [[1, [1]]], 2, True], 2: [[3], [[1, [2]]], 2, True], 3: [[4], [[1, [3]]], 2, True], 4: [[5], [[1, [4]]], 2, True], 5: [[6], [[1, [5]]], 2, True]}[N])\ncheck('2', solve([[N+2],[[1,[N]],[2,[N+1]]],\"release\",1]), {1: [[3], [], 1, True], 2: [[4], [], 1, True], 3: [[5], [], 1, True], 4: [[6], [], 1, True], 5: [[7], [], 1, True]}[N])\ncheck('3', solve([[N],[],\"save\",3]), {1: [[1], [[3, [1]]], 3, True], 2: [[2], [[3, [2]]], 3, True], 3: [[3], [[3, [3]]], 3, True], 4: [[4], [[3, [4]]], 3, True], 5: [[5], [[3, [5]]], 3, True]}[N])\ncheck('4', solve([[N],[[1,[N-1]]],\"save\",4]), {1: [[1], [[1, [0]], [4, [1]]], 4, True], 2: [[2], [[1, [1]], [4, [2]]], 4, True], 3: [[3], [[1, [2]], [4, [3]]], 4, True], 4: [[4], [[1, [3]], [4, [4]]], 4, True], 5: [[5], [[1, [4]], [4, [5]]], 4, True]}[N])\ncheck('5', solve([[N],[[1,[N-1]]],\"rollback\",9]), {1: [[1], [[1, [0]]], None, False], 2: [[2], [[1, [1]]], None, False], 3: [[3], [[1, [2]]], None, False], 4: [[4], [[1, [3]]], None, False], 5: [[5], [[1, [4]]], None, False]}[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"},"fixed":{"sha256":"7750aaa508db48ef2d6f81ac9d3a162d24ff25dadb23f315531b1ad6238c63bc","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    a,stack,op,tag=x\n    if op=='save':return [a,stack+[[tag,a[:]]],tag,True]\n    where=next((i for i,z in enumerate(stack) if z[0]==tag),None)\n    if where is None:return [a,stack,None,False]\n    retained=stack[:where]\n    state=stack[where][1][:] if op=='rollback' else a[:]\n    return [state,retained,tag,True]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('0', solve([[N+2],[[1,[N]],[2,[N+1]]],\"rollback\",1]), {1: [[1], [], 1, True], 2: [[2], [], 1, True], 3: [[3], [], 1, True], 4: [[4], [], 1, True], 5: [[5], [], 1, True]}[N])\ncheck('1', solve([[N+2],[[1,[N]],[2,[N+1]]],\"rollback\",2]), {1: [[2], [[1, [1]]], 2, True], 2: [[3], [[1, [2]]], 2, True], 3: [[4], [[1, [3]]], 2, True], 4: [[5], [[1, [4]]], 2, True], 5: [[6], [[1, [5]]], 2, True]}[N])\ncheck('2', solve([[N+2],[[1,[N]],[2,[N+1]]],\"release\",1]), {1: [[3], [], 1, True], 2: [[4], [], 1, True], 3: [[5], [], 1, True], 4: [[6], [], 1, True], 5: [[7], [], 1, True]}[N])\ncheck('3', solve([[N],[],\"save\",3]), {1: [[1], [[3, [1]]], 3, True], 2: [[2], [[3, [2]]], 3, True], 3: [[3], [[3, [3]]], 3, True], 4: [[4], [[3, [4]]], 3, True], 5: [[5], [[3, [5]]], 3, True]}[N])\ncheck('4', solve([[N],[[1,[N-1]]],\"save\",4]), {1: [[1], [[1, [0]], [4, [1]]], 4, True], 2: [[2], [[1, [1]], [4, [2]]], 4, True], 3: [[3], [[1, [2]], [4, [3]]], 4, True], 4: [[4], [[1, [3]], [4, [4]]], 4, True], 5: [[5], [[1, [4]], [4, [5]]], 4, True]}[N])\ncheck('5', solve([[N],[[1,[N-1]]],\"rollback\",9]), {1: [[1], [[1, [0]]], None, False], 2: [[2], [[1, [1]]], None, False], 3: [[3], [[1, [2]]], None, False], 4: [[4], [[1, [3]]], None, False], 5: [[5], [[1, [4]]], None, False]}[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":"Offline finite deterministic model; no claim of production implementation or concurrent memory-model conformance. 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":"s3-bounded-deques-nested-checkpoints-snapshot-stack","generated_at":"2026-09-29T14:44:36.298023+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Controlled bounded deque implementation model with explicit storage and lifecycle observations.","repair":"Restore the documented snapshot stack invariant in nested-checkpoints.","root_cause":"Deque savepoint insertion overwrites outer checkpoints.","sha256":"28394e8978c28aa61b572fe1377bcf460ac588c33b8751a5858a8ab0966233d6","title":"Deque savepoint insertion overwrites outer checkpoints · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":39.72,"exit_code":1,"observations":[{"actual":[[1],[],1,true],"check":"0","expected":[[1],[],1,true],"passed":true},{"actual":[[2],[[1,[1]]],2,true],"check":"1","expected":[[2],[[1,[1]]],2,true],"passed":true},{"actual":[[3],[],1,true],"check":"2","expected":[[3],[],1,true],"passed":true},{"actual":[[1],[[3,[1]]],3,true],"check":"3","expected":[[1],[[3,[1]]],3,true],"passed":true},{"actual":[[1],[[4,[1]]],4,true],"check":"4","expected":[[1],[[1,[0]],[4,[1]]],4,true],"passed":false},{"actual":[[1],[[1,[0]]],null,false],"check":"5","expected":[[1],[[1,[0]]],null,false],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"0\", \"actual\": [[1], [], 1, true], \"expected\": [[1], [], 1, true], \"passed\": true}, {\"check\": \"1\", \"actual\": [[2], [[1, [1]]], 2, true], \"expected\": [[2], [[1, [1]]], 2, true], \"passed\": true}, {\"check\": \"2\", \"actual\": [[3], [], 1, true], \"expected\": [[3], [], 1, true], \"passed\": true}, {\"check\": \"3\", \"actual\": [[1], [[3, [1]]], 3, true], \"expected\": [[1], [[3, [1]]], 3, true], \"passed\": true}, {\"check\": \"4\", \"actual\": [[1], [[4, [1]]], 4, true], \"expected\": [[1], [[1, [0]], [4, [1]]], 4, true], \"passed\": false}, {\"check\": \"5\", \"actual\": [[1], [[1, [0]]], null, false], \"expected\": [[1], [[1, [0]]], null, false], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":38.625,"exit_code":1,"observations":[{"actual":[[1],[],1,true],"check":"0","expected":[[1],[],1,true],"passed":true},{"actual":[[2],[[1,[1]]],2,true],"check":"1","expected":[[2],[[1,[1]]],2,true],"passed":true},{"actual":[[3],[],1,true],"check":"2","expected":[[3],[],1,true],"passed":true},{"actual":[[1],[[3,[1]]],3,true],"check":"3","expected":[[1],[[3,[1]]],3,true],"passed":true},{"actual":[[1],[[4,[1]]],4,true],"check":"4","expected":[[1],[[1,[0]],[4,[1]]],4,true],"passed":false},{"actual":[[1],[[1,[0]]],null,false],"check":"5","expected":[[1],[[1,[0]]],null,false],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"0\", \"actual\": [[1], [], 1, true], \"expected\": [[1], [], 1, true], \"passed\": true}, {\"check\": \"1\", \"actual\": [[2], [[1, [1]]], 2, true], \"expected\": [[2], [[1, [1]]], 2, true], \"passed\": true}, {\"check\": \"2\", \"actual\": [[3], [], 1, true], \"expected\": [[3], [], 1, true], \"passed\": true}, {\"check\": \"3\", \"actual\": [[1], [[3, [1]]], 3, true], \"expected\": [[1], [[3, [1]]], 3, true], \"passed\": true}, {\"check\": \"4\", \"actual\": [[1], [[4, [1]]], 4, true], \"expected\": [[1], [[1, [0]], [4, [1]]], 4, true], \"passed\": false}, {\"check\": \"5\", \"actual\": [[1], [[1, [0]]], null, false], \"expected\": [[1], [[1, [0]]], null, false], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":40.723,"exit_code":0,"observations":[{"actual":[[1],[],1,true],"check":"0","expected":[[1],[],1,true],"passed":true},{"actual":[[2],[[1,[1]]],2,true],"check":"1","expected":[[2],[[1,[1]]],2,true],"passed":true},{"actual":[[3],[],1,true],"check":"2","expected":[[3],[],1,true],"passed":true},{"actual":[[1],[[3,[1]]],3,true],"check":"3","expected":[[1],[[3,[1]]],3,true],"passed":true},{"actual":[[1],[[1,[0]],[4,[1]]],4,true],"check":"4","expected":[[1],[[1,[0]],[4,[1]]],4,true],"passed":true},{"actual":[[1],[[1,[0]]],null,false],"check":"5","expected":[[1],[[1,[0]]],null,false],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"0\", \"actual\": [[1], [], 1, true], \"expected\": [[1], [], 1, true], \"passed\": true}, {\"check\": \"1\", \"actual\": [[2], [[1, [1]]], 2, true], \"expected\": [[2], [[1, [1]]], 2, true], \"passed\": true}, {\"check\": \"2\", \"actual\": [[3], [], 1, true], \"expected\": [[3], [], 1, true], \"passed\": true}, {\"check\": \"3\", \"actual\": [[1], [[3, [1]]], 3, true], \"expected\": [[1], [[3, [1]]], 3, true], \"passed\": true}, {\"check\": \"4\", \"actual\": [[1], [[1, [0]], [4, [1]]], 4, true], \"expected\": [[1], [[1, [0]], [4, [1]]], 4, true], \"passed\": true}, {\"check\": \"5\", \"actual\": [[1], [[1, [0]]], null, false], \"expected\": [[1], [[1, [0]]], null, false], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}