{"abstract":"Legitimate routing numbers are rejected.","category":"Check-digit algorithms","checks":8,"contract":"US ABA routing transit number: exactly nine ASCII digits whose first two digits lie in 00-12, 21-32, 61-72 or equal 80 (else \"malformed\"). Weights 3,7,1 repeat from the left; return whether the weighted sum is a multiple of 10.","contract_signature":"s","evaluation_group":"w2-check_digit_algorithms-aba-routing","failed_approach":"Rotating the triple to (1, 7, 3) is still a different weighting.","family":"w2-check_digit_algorithms-aba-routing-weight-cycle","id":"FA-72521","implementations":{"attempt":{"sha256":"9539904ca21d9e84b7dde234f985b59d58a510143433a50bd5776b52f62561c7","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(s):\n    if len(s) != 9 or not s.isascii() or not s.isdigit():\n        return 'malformed'\n    p = int(s[:2])\n    if not (0 <= p <= 12 or 21 <= p <= 32 or 61 <= p <= 72 or p == 80):\n        return 'malformed'\n    total = sum(int(ch) * (1, 7, 3)[i % 3] for i, ch in enumerate(s))\n    return total % 10 == 0\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression [\"056885062\"]', ['056885062'], True], ['regression [\"119218424\"]', ['119218424'], True], ['partial-repair [\"014060861\"]', ['014060861'], True], ['control [\"000396219\"]', ['000396219'], True], ['control [\"000396210\"]', ['000396210'], False], ['control [\"014060862\"]', ['014060862'], False], ['control [\"056885063\"]', ['056885063'], False], ['control [\"119218425\"]', ['119218425'], False]], [['regression [\"217283403\"]', ['217283403'], True], ['regression [\"262758598\"]', ['262758598'], True], ['partial-repair [\"311681228\"]', ['311681228'], True], ['control [\"121199383\"]', ['121199383'], False], ['control [\"217283404\"]', ['217283404'], False], ['control [\"262758599\"]', ['262758599'], False], ['control [\"311681229\"]', ['311681229'], False], ['control [\"324890049\"]', ['324890049'], False]], [['regression [\"616486212\"]', ['616486212'], True], ['regression [\"670455289\"]', ['670455289'], True], ['control [\"616486213\"]', ['616486213'], False], ['control [\"670455280\"]', ['670455280'], False], ['control [\"720402950\"]', ['720402950'], False], ['control [\"808489769\"]', ['808489769'], False], ['control [\"123311509\"]', ['123311509'], False], ['control [\"328477387\"]', ['328477387'], False]], [['regression [\"123311508\"]', ['123311508'], True], ['regression [\"328477386\"]', ['328477386'], True], ['partial-repair [\"808489768\"]', ['808489768'], True], ['control [\"328477387\"]', ['328477387'], False], ['control [\"721616855\"]', ['721616855'], False], ['control [\"803391247\"]', ['803391247'], False], ['control [\"011000016\"]', ['011000016'], False], ['control [\"131000015\"]', ['131000015'], 'malformed']], [['regression [\"011000015\"]', ['011000015'], True], ['regression [\"021000021\"]', ['021000021'], True], ['partial-repair [\"803391246\"]', ['803391246'], True], ['control [\"811000011\"]', ['811000011'], 'malformed'], ['control [\"0110000150\"]', ['0110000150'], 'malformed'], ['control [\"01100001a\"]', ['01100001a'], 'malformed'], ['control [\"730000000\"]', ['730000000'], 'malformed'], ['control [\"800000009\"]', ['800000009'], False]]]\nfor label, args, expected in fixtures[N - 1]:\n    check(label, solve(*args), expected)\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":"9d4f3272efd01aabfa8f6e39c47d2e2f3483c91708115919d56940ce4743ac6b","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(s):\n    if len(s) != 9 or not s.isascii() or not s.isdigit():\n        return 'malformed'\n    p = int(s[:2])\n    if not (0 <= p <= 12 or 21 <= p <= 32 or 61 <= p <= 72 or p == 80):\n        return 'malformed'\n    total = sum(int(ch) * (7, 3, 1)[i % 3] for i, ch in enumerate(s))\n    return total % 10 == 0\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression [\"056885062\"]', ['056885062'], True], ['regression [\"119218424\"]', ['119218424'], True], ['partial-repair [\"014060861\"]', ['014060861'], True], ['control [\"000396219\"]', ['000396219'], True], ['control [\"000396210\"]', ['000396210'], False], ['control [\"014060862\"]', ['014060862'], False], ['control [\"056885063\"]', ['056885063'], False], ['control [\"119218425\"]', ['119218425'], False]], [['regression [\"217283403\"]', ['217283403'], True], ['regression [\"262758598\"]', ['262758598'], True], ['partial-repair [\"311681228\"]', ['311681228'], True], ['control [\"121199383\"]', ['121199383'], False], ['control [\"217283404\"]', ['217283404'], False], ['control [\"262758599\"]', ['262758599'], False], ['control [\"311681229\"]', ['311681229'], False], ['control [\"324890049\"]', ['324890049'], False]], [['regression [\"616486212\"]', ['616486212'], True], ['regression [\"670455289\"]', ['670455289'], True], ['control [\"616486213\"]', ['616486213'], False], ['control [\"670455280\"]', ['670455280'], False], ['control [\"720402950\"]', ['720402950'], False], ['control [\"808489769\"]', ['808489769'], False], ['control [\"123311509\"]', ['123311509'], False], ['control [\"328477387\"]', ['328477387'], False]], [['regression [\"123311508\"]', ['123311508'], True], ['regression [\"328477386\"]', ['328477386'], True], ['partial-repair [\"808489768\"]', ['808489768'], True], ['control [\"328477387\"]', ['328477387'], False], ['control [\"721616855\"]', ['721616855'], False], ['control [\"803391247\"]', ['803391247'], False], ['control [\"011000016\"]', ['011000016'], False], ['control [\"131000015\"]', ['131000015'], 'malformed']], [['regression [\"011000015\"]', ['011000015'], True], ['regression [\"021000021\"]', ['021000021'], True], ['partial-repair [\"803391246\"]', ['803391246'], True], ['control [\"811000011\"]', ['811000011'], 'malformed'], ['control [\"0110000150\"]', ['0110000150'], 'malformed'], ['control [\"01100001a\"]', ['01100001a'], 'malformed'], ['control [\"730000000\"]', ['730000000'], 'malformed'], ['control [\"800000009\"]', ['800000009'], False]]]\nfor label, args, expected in fixtures[N - 1]:\n    check(label, solve(*args), expected)\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":"A deterministic, bounded teaching model of the named scheme under the stated contract; not a certified validator. 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":"w2-check_digit_algorithms-aba-routing-weight-cycle","generated_at":"2026-09-29T14:48:39.158453+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"ACH origination checks routing numbers before transmitting a batch.","root_cause":"The repeating weight triple is written (7, 3, 1) instead of (3, 7, 1).","sha256":"8cffeab1f5b3b47c72fb05e26bde4489fc0c1d59c6d89b886b2f45533e43be3b","title":"ABA weights cycle as 7,3,1 · 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":36.88,"exit_code":1,"observations":[{"actual":true,"check":"regression [\"056885062\"]","expected":true,"passed":true},{"actual":false,"check":"regression [\"119218424\"]","expected":true,"passed":false},{"actual":false,"check":"partial-repair [\"014060861\"]","expected":true,"passed":false},{"actual":true,"check":"control [\"000396219\"]","expected":true,"passed":true},{"actual":false,"check":"control [\"000396210\"]","expected":false,"passed":true},{"actual":false,"check":"control [\"014060862\"]","expected":false,"passed":true},{"actual":false,"check":"control [\"056885063\"]","expected":false,"passed":true},{"actual":false,"check":"control [\"119218425\"]","expected":false,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression [\\\"056885062\\\"]\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"regression [\\\"119218424\\\"]\", \"actual\": false, \"expected\": true, \"passed\": false}, {\"check\": \"partial-repair [\\\"014060861\\\"]\", \"actual\": false, \"expected\": true, \"passed\": false}, {\"check\": \"control [\\\"000396219\\\"]\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"control [\\\"000396210\\\"]\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"control [\\\"014060862\\\"]\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"control [\\\"056885063\\\"]\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"control [\\\"119218425\\\"]\", \"actual\": false, \"expected\": false, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":37.676,"exit_code":1,"observations":[{"actual":false,"check":"regression [\"056885062\"]","expected":true,"passed":false},{"actual":false,"check":"regression [\"119218424\"]","expected":true,"passed":false},{"actual":true,"check":"partial-repair [\"014060861\"]","expected":true,"passed":true},{"actual":true,"check":"control [\"000396219\"]","expected":true,"passed":true},{"actual":false,"check":"control [\"000396210\"]","expected":false,"passed":true},{"actual":false,"check":"control [\"014060862\"]","expected":false,"passed":true},{"actual":false,"check":"control [\"056885063\"]","expected":false,"passed":true},{"actual":false,"check":"control [\"119218425\"]","expected":false,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression [\\\"056885062\\\"]\", \"actual\": false, \"expected\": true, \"passed\": false}, {\"check\": \"regression [\\\"119218424\\\"]\", \"actual\": false, \"expected\": true, \"passed\": false}, {\"check\": \"partial-repair [\\\"014060861\\\"]\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"control [\\\"000396219\\\"]\", \"actual\": true, \"expected\": true, \"passed\": true}, {\"check\": \"control [\\\"000396210\\\"]\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"control [\\\"014060862\\\"]\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"control [\\\"056885063\\\"]\", \"actual\": false, \"expected\": false, \"passed\": true}, {\"check\": \"control [\\\"119218425\\\"]\", \"actual\": false, \"expected\": false, \"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."}}