{"abstract":"Non-ASCII response bodies report UTF-8 byte length instead of character count.","category":"HTTP ranges","checks":6,"contract":"The selected representation is UTF-8 text. Return wire octet length; no normalization or decoding after selection.","contract_signature":"body","evaluation_group":"s3-http_ranges-response-metadata","failed_approach":"The partial repair uses return len(body.encode(\"utf-16-le\")), which still violates the stated contract.","family":"s3-http_ranges-content-length-body-byte-unit","id":"FA-26711","implementations":{"attempt":{"sha256":"573ebc01fee4314ee832dd9aa69d5906cce5ff46c27dea2ad2318153a9a203bf","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(body):\n    return len(body.encode(\"utf-16-le\"))\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('content-length-body-byte-unit fixture 0', solve(\"é\"*N), 2*N)\ncheck('content-length-body-byte-unit fixture 1', solve(\"😀\"*N), 4*N)\ncheck('content-length-body-byte-unit fixture 2', solve(\"a\"*N), N)\ncheck('content-length-body-byte-unit fixture 3', solve(\"\"), 0)\ncheck('content-length-body-byte-unit fixture 4', solve(\"aé\"), 3)\ncheck('content-length-body-byte-unit fixture 5', solve(\"e\\u0301\"), 3)\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":"d51b156a2d8da01b6c6f0f4078bfc9bb477d5ecd8c2858b9d7da61301798c29e","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(body):\n    return len(body)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('content-length-body-byte-unit fixture 0', solve(\"é\"*N), 2*N)\ncheck('content-length-body-byte-unit fixture 1', solve(\"😀\"*N), 4*N)\ncheck('content-length-body-byte-unit fixture 2', solve(\"a\"*N), N)\ncheck('content-length-body-byte-unit fixture 3', solve(\"\"), 0)\ncheck('content-length-body-byte-unit fixture 4', solve(\"aé\"), 3)\ncheck('content-length-body-byte-unit fixture 5', solve(\"e\\u0301\"), 3)\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-content-length-body-byte-unit","generated_at":"2026-09-29T14:41:18.422942+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.","root_cause":"The content-length-body-byte-unit decision uses return len(body).","sha256":"ef7ec68f07a069519dd7cb2676d9dc98fc15ed7fa4d8a4d57f036224bcb2f817","title":"Non-ASCII response bodies report UTF-8 byte length instead of character count · 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":37.535,"exit_code":1,"observations":[{"actual":2,"check":"content-length-body-byte-unit fixture 0","expected":2,"passed":true},{"actual":4,"check":"content-length-body-byte-unit fixture 1","expected":4,"passed":true},{"actual":2,"check":"content-length-body-byte-unit fixture 2","expected":1,"passed":false},{"actual":0,"check":"content-length-body-byte-unit fixture 3","expected":0,"passed":true},{"actual":4,"check":"content-length-body-byte-unit fixture 4","expected":3,"passed":false},{"actual":4,"check":"content-length-body-byte-unit fixture 5","expected":3,"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"content-length-body-byte-unit fixture 0\", \"actual\": 2, \"expected\": 2, \"passed\": true}, {\"check\": \"content-length-body-byte-unit fixture 1\", \"actual\": 4, \"expected\": 4, \"passed\": true}, {\"check\": \"content-length-body-byte-unit fixture 2\", \"actual\": 2, \"expected\": 1, \"passed\": false}, {\"check\": \"content-length-body-byte-unit fixture 3\", \"actual\": 0, \"expected\": 0, \"passed\": true}, {\"check\": \"content-length-body-byte-unit fixture 4\", \"actual\": 4, \"expected\": 3, \"passed\": false}, {\"check\": \"content-length-body-byte-unit fixture 5\", \"actual\": 4, \"expected\": 3, \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.784,"exit_code":1,"observations":[{"actual":1,"check":"content-length-body-byte-unit fixture 0","expected":2,"passed":false},{"actual":1,"check":"content-length-body-byte-unit fixture 1","expected":4,"passed":false},{"actual":1,"check":"content-length-body-byte-unit fixture 2","expected":1,"passed":true},{"actual":0,"check":"content-length-body-byte-unit fixture 3","expected":0,"passed":true},{"actual":2,"check":"content-length-body-byte-unit fixture 4","expected":3,"passed":false},{"actual":2,"check":"content-length-body-byte-unit fixture 5","expected":3,"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"content-length-body-byte-unit fixture 0\", \"actual\": 1, \"expected\": 2, \"passed\": false}, {\"check\": \"content-length-body-byte-unit fixture 1\", \"actual\": 1, \"expected\": 4, \"passed\": false}, {\"check\": \"content-length-body-byte-unit fixture 2\", \"actual\": 1, \"expected\": 1, \"passed\": true}, {\"check\": \"content-length-body-byte-unit fixture 3\", \"actual\": 0, \"expected\": 0, \"passed\": true}, {\"check\": \"content-length-body-byte-unit fixture 4\", \"actual\": 2, \"expected\": 3, \"passed\": false}, {\"check\": \"content-length-body-byte-unit fixture 5\", \"actual\": 2, \"expected\": 3, \"passed\": false}], \"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."}}