{"abstract":"The representation length header does not collapse to the transferred fragment length.","category":"HTTP ranges","checks":6,"contract":"Return [Content-Length,complete-length] as [part,whole] for a prevalidated single range response.","evaluation_group":"s3-http_ranges-response-metadata","failed_approach":"The partial repair uses return [whole,whole], which still violates the stated contract.","family":"s3-http_ranges-range-response-total-not-part-length","id":"FA-26736","implementations":{"attempt":{"sha256":"f1a7ddd9eb8284d57bcc115af8eb623fcfa17b2a2c7f22f2fff3b0b36c95e4ba","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(whole, part):\n    return [whole,whole]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('range-response-total-not-part-length fixture 0', solve(3*N,N), [N,3*N])\ncheck('range-response-total-not-part-length fixture 1', solve(N,0), [0,N])\ncheck('range-response-total-not-part-length fixture 2', solve(0,0), [0,0])\ncheck('range-response-total-not-part-length fixture 3', solve(N,N), [N,N])\ncheck('range-response-total-not-part-length fixture 4', solve(10,1), [1,10])\ncheck('range-response-total-not-part-length fixture 5', solve(10,9), [9,10])\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":"4c6ba737eb647e632e4ada03466615b2e9030ec956979a92247efefc4cc62a4c","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(whole, part):\n    return [part,part]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('range-response-total-not-part-length fixture 0', solve(3*N,N), [N,3*N])\ncheck('range-response-total-not-part-length fixture 1', solve(N,0), [0,N])\ncheck('range-response-total-not-part-length fixture 2', solve(0,0), [0,0])\ncheck('range-response-total-not-part-length fixture 3', solve(N,N), [N,N])\ncheck('range-response-total-not-part-length fixture 4', solve(10,1), [1,10])\ncheck('range-response-total-not-part-length fixture 5', solve(10,9), [9,10])\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":"088b5d884d0c3c2f695c1e8d41513a085f7902c115c8329de521cbc2483eea6c","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(whole, part):\n    return [part,whole]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('range-response-total-not-part-length fixture 0', solve(3*N,N), [N,3*N])\ncheck('range-response-total-not-part-length fixture 1', solve(N,0), [0,N])\ncheck('range-response-total-not-part-length fixture 2', solve(0,0), [0,0])\ncheck('range-response-total-not-part-length fixture 3', solve(N,N), [N,N])\ncheck('range-response-total-not-part-length fixture 4', solve(10,1), [1,10])\ncheck('range-response-total-not-part-length fixture 5', solve(10,9), [9,10])\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":"Deterministic simplified range service, with stipulated local policies and already parsed trusted inputs; not a complete HTTP implementation. 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_ranges-range-response-total-not-part-length","generated_at":"2026-09-29T14:41:18.738126+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Range responses combine representation identity, conditional requests, framing, and partial-object state.","repair":"Apply the bounded decision exactly: return [part,whole]","root_cause":"The range-response-total-not-part-length decision uses return [part,part].","sha256":"ed64b4c04993135af4792f98655d205486115e4975345db6a8ba0739a26e4093","title":"The representation length header does not collapse to the transferred fragment length · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":39.373,"exit_code":1,"observations":[{"actual":[3,3],"check":"range-response-total-not-part-length fixture 0","expected":[1,3],"passed":false},{"actual":[1,1],"check":"range-response-total-not-part-length fixture 1","expected":[0,1],"passed":false},{"actual":[0,0],"check":"range-response-total-not-part-length fixture 2","expected":[0,0],"passed":true},{"actual":[1,1],"check":"range-response-total-not-part-length fixture 3","expected":[1,1],"passed":true},{"actual":[10,10],"check":"range-response-total-not-part-length fixture 4","expected":[1,10],"passed":false},{"actual":[10,10],"check":"range-response-total-not-part-length fixture 5","expected":[9,10],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"range-response-total-not-part-length fixture 0\", \"actual\": [3, 3], \"expected\": [1, 3], \"passed\": false}, {\"check\": \"range-response-total-not-part-length fixture 1\", \"actual\": [1, 1], \"expected\": [0, 1], \"passed\": false}, {\"check\": \"range-response-total-not-part-length fixture 2\", \"actual\": [0, 0], \"expected\": [0, 0], \"passed\": true}, {\"check\": \"range-response-total-not-part-length fixture 3\", \"actual\": [1, 1], \"expected\": [1, 1], \"passed\": true}, {\"check\": \"range-response-total-not-part-length fixture 4\", \"actual\": [10, 10], \"expected\": [1, 10], \"passed\": false}, {\"check\": \"range-response-total-not-part-length fixture 5\", \"actual\": [10, 10], \"expected\": [9, 10], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":40.352,"exit_code":1,"observations":[{"actual":[1,1],"check":"range-response-total-not-part-length fixture 0","expected":[1,3],"passed":false},{"actual":[0,0],"check":"range-response-total-not-part-length fixture 1","expected":[0,1],"passed":false},{"actual":[0,0],"check":"range-response-total-not-part-length fixture 2","expected":[0,0],"passed":true},{"actual":[1,1],"check":"range-response-total-not-part-length fixture 3","expected":[1,1],"passed":true},{"actual":[1,1],"check":"range-response-total-not-part-length fixture 4","expected":[1,10],"passed":false},{"actual":[9,9],"check":"range-response-total-not-part-length fixture 5","expected":[9,10],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"range-response-total-not-part-length fixture 0\", \"actual\": [1, 1], \"expected\": [1, 3], \"passed\": false}, {\"check\": \"range-response-total-not-part-length fixture 1\", \"actual\": [0, 0], \"expected\": [0, 1], \"passed\": false}, {\"check\": \"range-response-total-not-part-length fixture 2\", \"actual\": [0, 0], \"expected\": [0, 0], \"passed\": true}, {\"check\": \"range-response-total-not-part-length fixture 3\", \"actual\": [1, 1], \"expected\": [1, 1], \"passed\": true}, {\"check\": \"range-response-total-not-part-length fixture 4\", \"actual\": [1, 1], \"expected\": [1, 10], \"passed\": false}, {\"check\": \"range-response-total-not-part-length fixture 5\", \"actual\": [9, 9], \"expected\": [9, 10], \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":42.667,"exit_code":0,"observations":[{"actual":[1,3],"check":"range-response-total-not-part-length fixture 0","expected":[1,3],"passed":true},{"actual":[0,1],"check":"range-response-total-not-part-length fixture 1","expected":[0,1],"passed":true},{"actual":[0,0],"check":"range-response-total-not-part-length fixture 2","expected":[0,0],"passed":true},{"actual":[1,1],"check":"range-response-total-not-part-length fixture 3","expected":[1,1],"passed":true},{"actual":[1,10],"check":"range-response-total-not-part-length fixture 4","expected":[1,10],"passed":true},{"actual":[9,10],"check":"range-response-total-not-part-length fixture 5","expected":[9,10],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"range-response-total-not-part-length fixture 0\", \"actual\": [1, 3], \"expected\": [1, 3], \"passed\": true}, {\"check\": \"range-response-total-not-part-length fixture 1\", \"actual\": [0, 1], \"expected\": [0, 1], \"passed\": true}, {\"check\": \"range-response-total-not-part-length fixture 2\", \"actual\": [0, 0], \"expected\": [0, 0], \"passed\": true}, {\"check\": \"range-response-total-not-part-length fixture 3\", \"actual\": [1, 1], \"expected\": [1, 1], \"passed\": true}, {\"check\": \"range-response-total-not-part-length fixture 4\", \"actual\": [1, 10], \"expected\": [1, 10], \"passed\": true}, {\"check\": \"range-response-total-not-part-length fixture 5\", \"actual\": [9, 10], \"expected\": [9, 10], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}