{"abstract":"Every container number fails its check.","category":"Check-digit algorithms","checks":8,"contract":"Shipping container identification check digit: three uppercase owner letters, category U, J or Z, six serial digits and a check digit (else \"malformed\"). Letter values start at A=10 and skip every multiple of 11 (so B=12, L=23, V=34, Z=38). Position i (0-based) has weight 2^i; the check digit is (sum mod 11) mod 10. Return [check, match].","contract_signature":"s","evaluation_group":"w2-check_digit_algorithms-iso6346-container","failed_approach":"Reversing the exponent assigns 2^9 to the owner code instead of the serial number.","family":"w2-check_digit_algorithms-iso6346-container-power-weights","id":"FA-72721","implementations":{"attempt":{"sha256":"3237f4c01e0c56b12c89332e0a6bedd571cd63cdb6320888ff3602e119c4dbc4","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(s):\n    if len(s) != 11 or not s.isascii() or not s[:3].isalpha() or not s[:3].isupper():\n        return 'malformed'\n    if s[3] not in 'UJZ' or not s[4:].isdigit():\n        return 'malformed'\n    vals = {}\n    v = 10\n    for ch in 'ABCDEFGHIJKLMNOPQRSTUVWXYZ':\n        if v % 11 == 0:\n            v += 1\n        vals[ch] = v\n        v += 1\n    total = 0\n    for i, ch in enumerate(s[:10]):\n        total += (vals[ch] if ch.isalpha() else int(ch)) * 2 ** (9 - i)\n    check = total % 11 % 10\n    return [check, check == int(s[10])]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression [\"HRNU7843702\"]', ['HRNU7843702'], [9, False]], ['regression [\"BYYJ6917585\"]', ['BYYJ6917585'], [8, False]], ['control [\"VQAJ3159690\"]', ['VQAJ3159690'], [0, True]], ['control [\"CSQU305438\"]', ['CSQU305438'], 'malformed'], ['control [\"CSQX3054383\"]', ['CSQX3054383'], 'malformed'], ['control [\"csqu3054383\"]', ['csqu3054383'], 'malformed'], ['control [\"C1QU3054383\"]', ['C1QU3054383'], 'malformed'], ['control [\"YQEU5793145\"]', ['YQEU5793145'], [6, False]]], [['regression [\"MUHJ6260452\"]', ['MUHJ6260452'], [4, False]], ['regression [\"GEDJ3497886\"]', ['GEDJ3497886'], [3, False]], ['partial-repair [\"YQEU5793145\"]', ['YQEU5793145'], [6, False]], ['control [\"VQAJ3159690\"]', ['VQAJ3159690'], [0, True]], ['control [\"CSQU305438\"]', ['CSQU305438'], 'malformed'], ['control [\"CSQX3054383\"]', ['CSQX3054383'], 'malformed'], ['control [\"csqu3054383\"]', ['csqu3054383'], 'malformed'], ['control [\"C1QU3054383\"]', ['C1QU3054383'], 'malformed']], [['regression [\"CTZU8384457\"]', ['CTZU8384457'], [2, False]], ['regression [\"CYVU1050697\"]', ['CYVU1050697'], [7, True]], ['partial-repair [\"FLAU0380833\"]', ['FLAU0380833'], [7, False]], ['control [\"VQAJ3159690\"]', ['VQAJ3159690'], [0, True]], ['control [\"CSQU305438\"]', ['CSQU305438'], 'malformed'], ['control [\"CSQX3054383\"]', ['CSQX3054383'], 'malformed'], ['control [\"csqu3054383\"]', ['csqu3054383'], 'malformed'], ['control [\"C1QU3054383\"]', ['C1QU3054383'], 'malformed']], [['regression [\"OQHU9278051\"]', ['OQHU9278051'], [8, False]], ['regression [\"TRVJ4468592\"]', ['TRVJ4468592'], [8, False]], ['partial-repair [\"LGSU0173454\"]', ['LGSU0173454'], [8, False]], ['control [\"VQAJ3159690\"]', ['VQAJ3159690'], [0, True]], ['control [\"CSQU305438\"]', ['CSQU305438'], 'malformed'], ['control [\"CSQX3054383\"]', ['CSQX3054383'], 'malformed'], ['control [\"csqu3054383\"]', ['csqu3054383'], 'malformed'], ['control [\"C1QU3054383\"]', ['C1QU3054383'], 'malformed']], [['regression [\"RGOU0215685\"]', ['RGOU0215685'], [3, False]], ['regression [\"LBRU3332332\"]', ['LBRU3332332'], [4, False]], ['partial-repair [\"TSAZ4635083\"]', ['TSAZ4635083'], [9, False]], ['control [\"VQAJ3159690\"]', ['VQAJ3159690'], [0, True]], ['control [\"CSQU305438\"]', ['CSQU305438'], 'malformed'], ['control [\"CSQX3054383\"]', ['CSQX3054383'], 'malformed'], ['control [\"csqu3054383\"]', ['csqu3054383'], 'malformed'], ['control [\"C1QU3054383\"]', ['C1QU3054383'], 'malformed']]]\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":"4f4d248c5f4f591e62883b4d937ba204a123b6167d753521142fd85bc709e5a7","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(s):\n    if len(s) != 11 or not s.isascii() or not s[:3].isalpha() or not s[:3].isupper():\n        return 'malformed'\n    if s[3] not in 'UJZ' or not s[4:].isdigit():\n        return 'malformed'\n    vals = {}\n    v = 10\n    for ch in 'ABCDEFGHIJKLMNOPQRSTUVWXYZ':\n        if v % 11 == 0:\n            v += 1\n        vals[ch] = v\n        v += 1\n    total = 0\n    for i, ch in enumerate(s[:10]):\n        total += (vals[ch] if ch.isalpha() else int(ch)) * 2 ** (i + 1)\n    check = total % 11 % 10\n    return [check, check == int(s[10])]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression [\"HRNU7843702\"]', ['HRNU7843702'], [9, False]], ['regression [\"BYYJ6917585\"]', ['BYYJ6917585'], [8, False]], ['control [\"VQAJ3159690\"]', ['VQAJ3159690'], [0, True]], ['control [\"CSQU305438\"]', ['CSQU305438'], 'malformed'], ['control [\"CSQX3054383\"]', ['CSQX3054383'], 'malformed'], ['control [\"csqu3054383\"]', ['csqu3054383'], 'malformed'], ['control [\"C1QU3054383\"]', ['C1QU3054383'], 'malformed'], ['control [\"YQEU5793145\"]', ['YQEU5793145'], [6, False]]], [['regression [\"MUHJ6260452\"]', ['MUHJ6260452'], [4, False]], ['regression [\"GEDJ3497886\"]', ['GEDJ3497886'], [3, False]], ['partial-repair [\"YQEU5793145\"]', ['YQEU5793145'], [6, False]], ['control [\"VQAJ3159690\"]', ['VQAJ3159690'], [0, True]], ['control [\"CSQU305438\"]', ['CSQU305438'], 'malformed'], ['control [\"CSQX3054383\"]', ['CSQX3054383'], 'malformed'], ['control [\"csqu3054383\"]', ['csqu3054383'], 'malformed'], ['control [\"C1QU3054383\"]', ['C1QU3054383'], 'malformed']], [['regression [\"CTZU8384457\"]', ['CTZU8384457'], [2, False]], ['regression [\"CYVU1050697\"]', ['CYVU1050697'], [7, True]], ['partial-repair [\"FLAU0380833\"]', ['FLAU0380833'], [7, False]], ['control [\"VQAJ3159690\"]', ['VQAJ3159690'], [0, True]], ['control [\"CSQU305438\"]', ['CSQU305438'], 'malformed'], ['control [\"CSQX3054383\"]', ['CSQX3054383'], 'malformed'], ['control [\"csqu3054383\"]', ['csqu3054383'], 'malformed'], ['control [\"C1QU3054383\"]', ['C1QU3054383'], 'malformed']], [['regression [\"OQHU9278051\"]', ['OQHU9278051'], [8, False]], ['regression [\"TRVJ4468592\"]', ['TRVJ4468592'], [8, False]], ['partial-repair [\"LGSU0173454\"]', ['LGSU0173454'], [8, False]], ['control [\"VQAJ3159690\"]', ['VQAJ3159690'], [0, True]], ['control [\"CSQU305438\"]', ['CSQU305438'], 'malformed'], ['control [\"CSQX3054383\"]', ['CSQX3054383'], 'malformed'], ['control [\"csqu3054383\"]', ['csqu3054383'], 'malformed'], ['control [\"C1QU3054383\"]', ['C1QU3054383'], 'malformed']], [['regression [\"RGOU0215685\"]', ['RGOU0215685'], [3, False]], ['regression [\"LBRU3332332\"]', ['LBRU3332332'], [4, False]], ['partial-repair [\"TSAZ4635083\"]', ['TSAZ4635083'], [9, False]], ['control [\"VQAJ3159690\"]', ['VQAJ3159690'], [0, True]], ['control [\"CSQU305438\"]', ['CSQU305438'], 'malformed'], ['control [\"CSQX3054383\"]', ['CSQX3054383'], 'malformed'], ['control [\"csqu3054383\"]', ['csqu3054383'], 'malformed'], ['control [\"C1QU3054383\"]', ['C1QU3054383'], 'malformed']]]\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-iso6346-container-power-weights","generated_at":"2026-09-29T14:48:41.012753+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Terminal gate systems validate container numbers read by OCR cameras before booking moves.","root_cause":"Weights are 2^(i+1), doubling every term.","sha256":"e670952e29ff52a649340094ee2330fa061067611f6a8fa1345eb2b376823f8c","title":"Container weights start at two · 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":38.41,"exit_code":1,"observations":[{"actual":[1,false],"check":"regression [\"HRNU7843702\"]","expected":[9,false],"passed":false},{"actual":[0,false],"check":"regression [\"BYYJ6917585\"]","expected":[8,false],"passed":false},{"actual":[0,true],"check":"control [\"VQAJ3159690\"]","expected":[0,true],"passed":true},{"actual":"malformed","check":"control [\"CSQU305438\"]","expected":"malformed","passed":true},{"actual":"malformed","check":"control [\"CSQX3054383\"]","expected":"malformed","passed":true},{"actual":"malformed","check":"control [\"csqu3054383\"]","expected":"malformed","passed":true},{"actual":"malformed","check":"control [\"C1QU3054383\"]","expected":"malformed","passed":true},{"actual":[5,true],"check":"control [\"YQEU5793145\"]","expected":[6,false],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression [\\\"HRNU7843702\\\"]\", \"actual\": [1, false], \"expected\": [9, false], \"passed\": false}, {\"check\": \"regression [\\\"BYYJ6917585\\\"]\", \"actual\": [0, false], \"expected\": [8, false], \"passed\": false}, {\"check\": \"control [\\\"VQAJ3159690\\\"]\", \"actual\": [0, true], \"expected\": [0, true], \"passed\": true}, {\"check\": \"control [\\\"CSQU305438\\\"]\", \"actual\": \"malformed\", \"expected\": \"malformed\", \"passed\": true}, {\"check\": \"control [\\\"CSQX3054383\\\"]\", \"actual\": \"malformed\", \"expected\": \"malformed\", \"passed\": true}, {\"check\": \"control [\\\"csqu3054383\\\"]\", \"actual\": \"malformed\", \"expected\": \"malformed\", \"passed\": true}, {\"check\": \"control [\\\"C1QU3054383\\\"]\", \"actual\": \"malformed\", \"expected\": \"malformed\", \"passed\": true}, {\"check\": \"control [\\\"YQEU5793145\\\"]\", \"actual\": [5, true], \"expected\": [6, false], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":40.15,"exit_code":1,"observations":[{"actual":[7,false],"check":"regression [\"HRNU7843702\"]","expected":[9,false],"passed":false},{"actual":[5,true],"check":"regression [\"BYYJ6917585\"]","expected":[8,false],"passed":false},{"actual":[0,true],"check":"control [\"VQAJ3159690\"]","expected":[0,true],"passed":true},{"actual":"malformed","check":"control [\"CSQU305438\"]","expected":"malformed","passed":true},{"actual":"malformed","check":"control [\"CSQX3054383\"]","expected":"malformed","passed":true},{"actual":"malformed","check":"control [\"csqu3054383\"]","expected":"malformed","passed":true},{"actual":"malformed","check":"control [\"C1QU3054383\"]","expected":"malformed","passed":true},{"actual":[1,false],"check":"control [\"YQEU5793145\"]","expected":[6,false],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression [\\\"HRNU7843702\\\"]\", \"actual\": [7, false], \"expected\": [9, false], \"passed\": false}, {\"check\": \"regression [\\\"BYYJ6917585\\\"]\", \"actual\": [5, true], \"expected\": [8, false], \"passed\": false}, {\"check\": \"control [\\\"VQAJ3159690\\\"]\", \"actual\": [0, true], \"expected\": [0, true], \"passed\": true}, {\"check\": \"control [\\\"CSQU305438\\\"]\", \"actual\": \"malformed\", \"expected\": \"malformed\", \"passed\": true}, {\"check\": \"control [\\\"CSQX3054383\\\"]\", \"actual\": \"malformed\", \"expected\": \"malformed\", \"passed\": true}, {\"check\": \"control [\\\"csqu3054383\\\"]\", \"actual\": \"malformed\", \"expected\": \"malformed\", \"passed\": true}, {\"check\": \"control [\\\"C1QU3054383\\\"]\", \"actual\": \"malformed\", \"expected\": \"malformed\", \"passed\": true}, {\"check\": \"control [\\\"YQEU5793145\\\"]\", \"actual\": [1, false], \"expected\": [6, false], \"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."}}