{"abstract":"New clears poison violates retry transition semantics","category":"HTTP retries","checks":8,"contract":"headers(length) opens failed response with remaining bytes; read(count) drains bounded content. eof confirms framing only if no bytes remain, otherwise poisons connection. close marks response closed; release returns pooled only for closed, fully drained, EOF-confirmed unpoisoned response. abort permanently poisons current connection. new resets all connection state. Return drain amounts and release disposition.","contract_signature":"events","evaluation_group":"s3-http_retries-response-dispose-pool","failed_approach":"The attempted repair changes the faulty site to if e[0]=='new': remaining=0; closed=True; eof=False; poison=True but still violates a regression oracle.","family":"s3-http_retries-response-dispose-pool-new-clears-poison","id":"FA-30166","implementations":{"attempt":{"sha256":"d4cd0237d95fc9487aa21c8d981103ca185953b648bf84c6a7d01905c7250db7","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(events):\n    remaining=0; closed=True; eof=False; poison=False; out=[]\n    for e in events:\n        if e[0]=='new': remaining=0; closed=True; eof=False; poison=True\n        elif e[0]=='headers':\n            remaining=e[1]; closed=False; eof=False\n        elif e[0]=='read':\n            if closed: out.append('closed'); continue\n            n=min(remaining,e[1]); remaining-=n; out.append(n)\n        elif e[0]=='eof':\n            if remaining!=0: poison=True\n            else: eof=True\n        elif e[0]=='close': closed=True\n        elif e[0]=='abort': poison=True; closed=True\n        elif e[0]=='release':\n            if poison: out.append('discard')\n            elif not closed: out.append('busy')\n            elif remaining!=0: out.append('unread')\n            elif not eof: out.append('unframed')\n            else: out.append('pooled')\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('0', solve([]), [])\ncheck('1', solve([('headers',N+3),('read',2),('read',N+9),('eof',),('release',),('close',),('release',)]), [2,N+1,'busy','pooled'])\ncheck('2', solve([('headers',1),('close',),('read',1),('release',)]), ['closed','unread'])\ncheck('3', solve([('headers',1),('eof',),('read',1),('close',),('release',)]), [1,'discard'])\ncheck('4', solve([('headers',0),('close',),('release',),('eof',),('release',)]), ['unframed','pooled'])\ncheck('5', solve([('headers',0),('eof',),('abort',),('release',),('new',),('headers',0),('eof',),('close',),('release',)]), ['discard','pooled'])\ncheck('6', solve([('headers',0),('eof',),('close',),('headers',0),('close',),('release',)]), ['unframed'])\ncheck('7', solve([('headers',0),('read',1)]), [0])\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":"66e2502ce0f03e0687bb96c12da7573be3cfbd6ab1dfb555dcd8a8c3e31575a9","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(events):\n    remaining=0; closed=True; eof=False; poison=False; out=[]\n    for e in events:\n        if e[0]=='new': remaining=0; closed=True; eof=False; poison=poison\n        elif e[0]=='headers':\n            remaining=e[1]; closed=False; eof=False\n        elif e[0]=='read':\n            if closed: out.append('closed'); continue\n            n=min(remaining,e[1]); remaining-=n; out.append(n)\n        elif e[0]=='eof':\n            if remaining!=0: poison=True\n            else: eof=True\n        elif e[0]=='close': closed=True\n        elif e[0]=='abort': poison=True; closed=True\n        elif e[0]=='release':\n            if poison: out.append('discard')\n            elif not closed: out.append('busy')\n            elif remaining!=0: out.append('unread')\n            elif not eof: out.append('unframed')\n            else: out.append('pooled')\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('0', solve([]), [])\ncheck('1', solve([('headers',N+3),('read',2),('read',N+9),('eof',),('release',),('close',),('release',)]), [2,N+1,'busy','pooled'])\ncheck('2', solve([('headers',1),('close',),('read',1),('release',)]), ['closed','unread'])\ncheck('3', solve([('headers',1),('eof',),('read',1),('close',),('release',)]), [1,'discard'])\ncheck('4', solve([('headers',0),('close',),('release',),('eof',),('release',)]), ['unframed','pooled'])\ncheck('5', solve([('headers',0),('eof',),('abort',),('release',),('new',),('headers',0),('eof',),('close',),('release',)]), ['discard','pooled'])\ncheck('6', solve([('headers',0),('eof',),('close',),('headers',0),('close',),('release',)]), ['unframed'])\ncheck('7', solve([('headers',0),('read',1)]), [0])\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":"Stipulated bounded simulator, not a complete HTTP implementation or a standards conformance claim. 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-http_retries-response-dispose-pool-new-clears-poison","generated_at":"2026-09-29T14:41:50.292388+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Offline deterministic model of HTTP request retries.","root_cause":"New clears poison violates retry transition semantics","sha256":"5f1029ce727cc0b884cab57b18202b1424223b008eba08ca5de8e4e836112005","title":"Failed response disposal and pool eligibility: New clears poison violates retry transition semantics · 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":46.498,"exit_code":1,"observations":[{"actual":[],"check":"0","expected":[],"passed":true},{"actual":[2,2,"busy","pooled"],"check":"1","expected":[2,2,"busy","pooled"],"passed":true},{"actual":["closed","unread"],"check":"2","expected":["closed","unread"],"passed":true},{"actual":[1,"discard"],"check":"3","expected":[1,"discard"],"passed":true},{"actual":["unframed","pooled"],"check":"4","expected":["unframed","pooled"],"passed":true},{"actual":["discard","discard"],"check":"5","expected":["discard","pooled"],"passed":false},{"actual":["unframed"],"check":"6","expected":["unframed"],"passed":true},{"actual":[0],"check":"7","expected":[0],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"0\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"1\", \"actual\": [2, 2, \"busy\", \"pooled\"], \"expected\": [2, 2, \"busy\", \"pooled\"], \"passed\": true}, {\"check\": \"2\", \"actual\": [\"closed\", \"unread\"], \"expected\": [\"closed\", \"unread\"], \"passed\": true}, {\"check\": \"3\", \"actual\": [1, \"discard\"], \"expected\": [1, \"discard\"], \"passed\": true}, {\"check\": \"4\", \"actual\": [\"unframed\", \"pooled\"], \"expected\": [\"unframed\", \"pooled\"], \"passed\": true}, {\"check\": \"5\", \"actual\": [\"discard\", \"discard\"], \"expected\": [\"discard\", \"pooled\"], \"passed\": false}, {\"check\": \"6\", \"actual\": [\"unframed\"], \"expected\": [\"unframed\"], \"passed\": true}, {\"check\": \"7\", \"actual\": [0], \"expected\": [0], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":45.073,"exit_code":1,"observations":[{"actual":[],"check":"0","expected":[],"passed":true},{"actual":[2,2,"busy","pooled"],"check":"1","expected":[2,2,"busy","pooled"],"passed":true},{"actual":["closed","unread"],"check":"2","expected":["closed","unread"],"passed":true},{"actual":[1,"discard"],"check":"3","expected":[1,"discard"],"passed":true},{"actual":["unframed","pooled"],"check":"4","expected":["unframed","pooled"],"passed":true},{"actual":["discard","discard"],"check":"5","expected":["discard","pooled"],"passed":false},{"actual":["unframed"],"check":"6","expected":["unframed"],"passed":true},{"actual":[0],"check":"7","expected":[0],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"0\", \"actual\": [], \"expected\": [], \"passed\": true}, {\"check\": \"1\", \"actual\": [2, 2, \"busy\", \"pooled\"], \"expected\": [2, 2, \"busy\", \"pooled\"], \"passed\": true}, {\"check\": \"2\", \"actual\": [\"closed\", \"unread\"], \"expected\": [\"closed\", \"unread\"], \"passed\": true}, {\"check\": \"3\", \"actual\": [1, \"discard\"], \"expected\": [1, \"discard\"], \"passed\": true}, {\"check\": \"4\", \"actual\": [\"unframed\", \"pooled\"], \"expected\": [\"unframed\", \"pooled\"], \"passed\": true}, {\"check\": \"5\", \"actual\": [\"discard\", \"discard\"], \"expected\": [\"discard\", \"pooled\"], \"passed\": false}, {\"check\": \"6\", \"actual\": [\"unframed\"], \"expected\": [\"unframed\"], \"passed\": true}, {\"check\": \"7\", \"actual\": [0], \"expected\": [0], \"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."}}