{"abstract":"Reverse complement leaves ambiguity symbols untranslated.","category":"Biological sequence representation","checks":6,"contract":"Reverse the string then substitute A:T,T:A,C:G,G:C,R:Y,Y:R,N:N,-:-. Inputs use only this explicit uppercase alphabet.","contract_signature":"s","evaluation_group":"model-082731ae8759abb8","failed_approach":"Complementing only canonical letters leaves the paired ambiguity markers unchanged.","family":"z-bio_sequences-reverse-symbol-map","id":"FA-12501","implementations":{"attempt":{"sha256":"5c3f16514458c172f50202842bdcc7fe83793a44c8fb0b890f28e3276997e6ee","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(s):\n    return s[::-1].translate(str.maketrans('ACGT','TGCA'))\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('variable', solve('A'*N+'R'), 'Y'+'T'*N)\ncheck('gap', solve('A-C'), 'G-T')\ncheck('unknown', solve('N'), 'N')\ncheck('empty', solve(''), '')\ncheck('paired', solve('RY'), 'RY')\ncheck('asymmetric', solve('YCA'), 'TGR')\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":"728b7a2b1c4012169ac6a0558cb083ea745090bf7b01d7aad974ae5c1beef9af","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(s):\n    return s[::-1]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('variable', solve('A'*N+'R'), 'Y'+'T'*N)\ncheck('gap', solve('A-C'), 'G-T')\ncheck('unknown', solve('N'), 'N')\ncheck('empty', solve(''), '')\ncheck('paired', solve('RY'), 'RY')\ncheck('asymmetric', solve('YCA'), 'TGR')\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":"Synthetic strings and explicit policies only; no biological interpretation or laboratory workflow. 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":"z-bio_sequences-reverse-symbol-map","generated_at":"2026-09-29T14:38:57.485308+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"An offline abstract sequence-data model; useful for testing representation invariants without biological inference.","root_cause":"The reversal omits complementation.","sha256":"81778af913fcd3198f9c7abf4e29a0b13dbaa40c4d77542a2f33ba4c432874de","title":"Reverse complement leaves ambiguity symbols untranslated · 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":40.775,"exit_code":1,"observations":[{"actual":"RT","check":"variable","expected":"YT","passed":false},{"actual":"G-T","check":"gap","expected":"G-T","passed":true},{"actual":"N","check":"unknown","expected":"N","passed":true},{"actual":"","check":"empty","expected":"","passed":true},{"actual":"YR","check":"paired","expected":"RY","passed":false},{"actual":"TGY","check":"asymmetric","expected":"TGR","passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"variable\", \"actual\": \"RT\", \"expected\": \"YT\", \"passed\": false}, {\"check\": \"gap\", \"actual\": \"G-T\", \"expected\": \"G-T\", \"passed\": true}, {\"check\": \"unknown\", \"actual\": \"N\", \"expected\": \"N\", \"passed\": true}, {\"check\": \"empty\", \"actual\": \"\", \"expected\": \"\", \"passed\": true}, {\"check\": \"paired\", \"actual\": \"YR\", \"expected\": \"RY\", \"passed\": false}, {\"check\": \"asymmetric\", \"actual\": \"TGY\", \"expected\": \"TGR\", \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.262,"exit_code":1,"observations":[{"actual":"RA","check":"variable","expected":"YT","passed":false},{"actual":"C-A","check":"gap","expected":"G-T","passed":false},{"actual":"N","check":"unknown","expected":"N","passed":true},{"actual":"","check":"empty","expected":"","passed":true},{"actual":"YR","check":"paired","expected":"RY","passed":false},{"actual":"ACY","check":"asymmetric","expected":"TGR","passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"variable\", \"actual\": \"RA\", \"expected\": \"YT\", \"passed\": false}, {\"check\": \"gap\", \"actual\": \"C-A\", \"expected\": \"G-T\", \"passed\": false}, {\"check\": \"unknown\", \"actual\": \"N\", \"expected\": \"N\", \"passed\": true}, {\"check\": \"empty\", \"actual\": \"\", \"expected\": \"\", \"passed\": true}, {\"check\": \"paired\", \"actual\": \"YR\", \"expected\": \"RY\", \"passed\": false}, {\"check\": \"asymmetric\", \"actual\": \"ACY\", \"expected\": \"TGR\", \"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."}}