{"abstract":"Codes ending in 5 through 9 expand to six-digit manufacturer prefixes.","category":"Barcode symbology encoding","checks":8,"contract":"Expand an 8-digit zero-suppressed UPC-E string (number system 0 or 1, six digits d1..d6, check digit passed through) into 12-digit UPC-A: d6 in 0-2 -> d1 d2 d6 0000 d3 d4 d5; d6 = 3 -> d1 d2 d3 00000 d4 d5; d6 = 4 -> d1 d2 d3 d4 00000 d5; d6 in 5-9 -> d1..d5 0000 d6. Invalid input returns None.","evaluation_group":"w2-barcode-symbology-encoding-upce-expansion","failed_approach":"Dropping d6 loses the item reference digit.","family":"w2-barcode-symbology-encoding-upce-expansion-rule-high","id":"FA-79386","implementations":{"attempt":{"sha256":"848e32e051ecbe79eb86deacf426bfeeddccbdb34213042450ad2c7902504990","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(e):\n    if len(e) != 8 or not all(ch in '0123456789' for ch in e):\n        return None\n    ns, d, chk = e[0], e[1:7], e[7]\n    if ns not in ('0', '1'):\n        return None\n    last = d[5]\n    if last in '012':\n        body = d[0:2] + last + '0000' + d[2:5]\n    elif last == '3':\n        body = d[0:3] + '00000' + d[3:5]\n    elif last == '4':\n        body = d[0:4] + '00000' + d[4]\n    else:\n        body = d[0:5] + '00000'\n    return ns + body + chk\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['04319958', '043199000058'], ['05569680', '055696000080'], ['25279409', None], ['16787022', '167200008702'], ['24955674', None], ['01189536', '011800000956'], ['29819666', None], ['08023781', '080237000081']], [['15524099', '155240000099'], ['15378564', '153785000064'], ['06482006', '064000008206'], ['28046301', None], ['18039301', '180000003931'], ['01759900', '017000005990'], ['07073924', '070200007394'], ['08877566', '088775000066']], [['19840591', '198405000091'], ['15031958', '150319000058'], ['11882825', '118200008285'], ['21587198', None], ['01282734', '012800000274'], ['07273910', '072100007390'], ['29592260', None], ['00838090', '008380000090']], [['08858661', '088586000061'], ['01646181', '016461000081'], ['09720132', '097200000012'], ['14528005', '145000002805'], ['06465438', '064600000548'], ['07908112', '079100000812'], ['17766731', '177600000671'], ['10203167', '102031000067']], [['03833572', '038335000072'], ['00721470', '007214000070'], ['28773952', None], ['11755520', '117200005550'], ['16547623', '165200004763'], ['06185620', '061200008560'], ['02180640', '021800000060'], ['08283998', '082839000098']]]\nlabels = [\"regression: final digit 5-9 layout\", \"repair trap\", \"combined fault\", \"control\", \"control\", \"boundary\", \"boundary\", \"control\"]\nfor i, (args, expected) in enumerate(fixtures[N-1]):\n    check(\"%s %d\" % (labels[i % len(labels)], i), 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":"a3d00ba6962f0ce6d3da9c0be31d3db6b8808a1346c3a0b270aeb29326284545","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(e):\n    if len(e) != 8 or not all(ch in '0123456789' for ch in e):\n        return None\n    ns, d, chk = e[0], e[1:7], e[7]\n    if ns not in ('0', '1'):\n        return None\n    last = d[5]\n    if last in '012':\n        body = d[0:2] + last + '0000' + d[2:5]\n    elif last == '3':\n        body = d[0:3] + '00000' + d[3:5]\n    elif last == '4':\n        body = d[0:4] + '00000' + d[4]\n    else:\n        body = d[0:5] + last + '0000'\n    return ns + body + chk\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['04319958', '043199000058'], ['05569680', '055696000080'], ['25279409', None], ['16787022', '167200008702'], ['24955674', None], ['01189536', '011800000956'], ['29819666', None], ['08023781', '080237000081']], [['15524099', '155240000099'], ['15378564', '153785000064'], ['06482006', '064000008206'], ['28046301', None], ['18039301', '180000003931'], ['01759900', '017000005990'], ['07073924', '070200007394'], ['08877566', '088775000066']], [['19840591', '198405000091'], ['15031958', '150319000058'], ['11882825', '118200008285'], ['21587198', None], ['01282734', '012800000274'], ['07273910', '072100007390'], ['29592260', None], ['00838090', '008380000090']], [['08858661', '088586000061'], ['01646181', '016461000081'], ['09720132', '097200000012'], ['14528005', '145000002805'], ['06465438', '064600000548'], ['07908112', '079100000812'], ['17766731', '177600000671'], ['10203167', '102031000067']], [['03833572', '038335000072'], ['00721470', '007214000070'], ['28773952', None], ['11755520', '117200005550'], ['16547623', '165200004763'], ['06185620', '061200008560'], ['02180640', '021800000060'], ['08283998', '082839000098']]]\nlabels = [\"regression: final digit 5-9 layout\", \"repair trap\", \"combined fault\", \"control\", \"control\", \"boundary\", \"boundary\", \"control\"]\nfor i, (args, expected) in enumerate(fixtures[N-1]):\n    check(\"%s %d\" % (labels[i % len(labels)], i), 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"},"fixed":{"sha256":"87994348208de10d0bc12a514e8d8a01e4221eed0ec80d07fcff50ed46d1ff7d","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(e):\n    if len(e) != 8 or not all(ch in '0123456789' for ch in e):\n        return None\n    ns, d, chk = e[0], e[1:7], e[7]\n    if ns not in ('0', '1'):\n        return None\n    last = d[5]\n    if last in '012':\n        body = d[0:2] + last + '0000' + d[2:5]\n    elif last == '3':\n        body = d[0:3] + '00000' + d[3:5]\n    elif last == '4':\n        body = d[0:4] + '00000' + d[4]\n    else:\n        body = d[0:5] + '0000' + last\n    return ns + body + chk\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['04319958', '043199000058'], ['05569680', '055696000080'], ['25279409', None], ['16787022', '167200008702'], ['24955674', None], ['01189536', '011800000956'], ['29819666', None], ['08023781', '080237000081']], [['15524099', '155240000099'], ['15378564', '153785000064'], ['06482006', '064000008206'], ['28046301', None], ['18039301', '180000003931'], ['01759900', '017000005990'], ['07073924', '070200007394'], ['08877566', '088775000066']], [['19840591', '198405000091'], ['15031958', '150319000058'], ['11882825', '118200008285'], ['21587198', None], ['01282734', '012800000274'], ['07273910', '072100007390'], ['29592260', None], ['00838090', '008380000090']], [['08858661', '088586000061'], ['01646181', '016461000081'], ['09720132', '097200000012'], ['14528005', '145000002805'], ['06465438', '064600000548'], ['07908112', '079100000812'], ['17766731', '177600000671'], ['10203167', '102031000067']], [['03833572', '038335000072'], ['00721470', '007214000070'], ['28773952', None], ['11755520', '117200005550'], ['16547623', '165200004763'], ['06185620', '061200008560'], ['02180640', '021800000060'], ['08283998', '082839000098']]]\nlabels = [\"regression: final digit 5-9 layout\", \"repair trap\", \"combined fault\", \"control\", \"control\", \"boundary\", \"boundary\", \"control\"]\nfor i, (args, expected) in enumerate(fixtures[N-1]):\n    check(\"%s %d\" % (labels[i % len(labels)], i), 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 with a stipulated contract; it makes no claim of conformance to any published specification. 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-barcode-symbology-encoding-upce-expansion-rule-high","generated_at":"2026-09-29T14:49:44.085008+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Retail, logistics, pharmacy and document workflows depend on encoders that produce exactly the module pattern, code-set switches, separators and quiet zones scanners expect; one misplaced module or separator makes a label unreadable or, worse, scan as different data.","repair":"Fill with four zeros and put d6 last.","root_cause":"The final digit is concatenated before the zero fill instead of at the end of the item reference.","sha256":"629d09dc88c6fc7be529af7aaf4125d9a344f26442d8ae299046c5f2281af567","title":"UPC-E rule 5-9 places the final digit in the manufacturer number · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":39.966,"exit_code":1,"observations":[{"actual":"043199000008","check":"regression: final digit 5-9 layout 0","expected":"043199000058","passed":false},{"actual":"055696000000","check":"repair trap 1","expected":"055696000080","passed":false},{"actual":null,"check":"combined fault 2","expected":null,"passed":true},{"actual":"167200008702","check":"control 3","expected":"167200008702","passed":true},{"actual":null,"check":"control 4","expected":null,"passed":true},{"actual":"011800000956","check":"boundary 5","expected":"011800000956","passed":true},{"actual":null,"check":"boundary 6","expected":null,"passed":true},{"actual":"080237000001","check":"control 7","expected":"080237000081","passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: final digit 5-9 layout 0\", \"actual\": \"043199000008\", \"expected\": \"043199000058\", \"passed\": false}, {\"check\": \"repair trap 1\", \"actual\": \"055696000000\", \"expected\": \"055696000080\", \"passed\": false}, {\"check\": \"combined fault 2\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"control 3\", \"actual\": \"167200008702\", \"expected\": \"167200008702\", \"passed\": true}, {\"check\": \"control 4\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"boundary 5\", \"actual\": \"011800000956\", \"expected\": \"011800000956\", \"passed\": true}, {\"check\": \"boundary 6\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"control 7\", \"actual\": \"080237000001\", \"expected\": \"080237000081\", \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.201,"exit_code":1,"observations":[{"actual":"043199500008","check":"regression: final digit 5-9 layout 0","expected":"043199000058","passed":false},{"actual":"055696800000","check":"repair trap 1","expected":"055696000080","passed":false},{"actual":null,"check":"combined fault 2","expected":null,"passed":true},{"actual":"167200008702","check":"control 3","expected":"167200008702","passed":true},{"actual":null,"check":"control 4","expected":null,"passed":true},{"actual":"011800000956","check":"boundary 5","expected":"011800000956","passed":true},{"actual":null,"check":"boundary 6","expected":null,"passed":true},{"actual":"080237800001","check":"control 7","expected":"080237000081","passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: final digit 5-9 layout 0\", \"actual\": \"043199500008\", \"expected\": \"043199000058\", \"passed\": false}, {\"check\": \"repair trap 1\", \"actual\": \"055696800000\", \"expected\": \"055696000080\", \"passed\": false}, {\"check\": \"combined fault 2\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"control 3\", \"actual\": \"167200008702\", \"expected\": \"167200008702\", \"passed\": true}, {\"check\": \"control 4\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"boundary 5\", \"actual\": \"011800000956\", \"expected\": \"011800000956\", \"passed\": true}, {\"check\": \"boundary 6\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"control 7\", \"actual\": \"080237800001\", \"expected\": \"080237000081\", \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":42.1,"exit_code":0,"observations":[{"actual":"043199000058","check":"regression: final digit 5-9 layout 0","expected":"043199000058","passed":true},{"actual":"055696000080","check":"repair trap 1","expected":"055696000080","passed":true},{"actual":null,"check":"combined fault 2","expected":null,"passed":true},{"actual":"167200008702","check":"control 3","expected":"167200008702","passed":true},{"actual":null,"check":"control 4","expected":null,"passed":true},{"actual":"011800000956","check":"boundary 5","expected":"011800000956","passed":true},{"actual":null,"check":"boundary 6","expected":null,"passed":true},{"actual":"080237000081","check":"control 7","expected":"080237000081","passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: final digit 5-9 layout 0\", \"actual\": \"043199000058\", \"expected\": \"043199000058\", \"passed\": true}, {\"check\": \"repair trap 1\", \"actual\": \"055696000080\", \"expected\": \"055696000080\", \"passed\": true}, {\"check\": \"combined fault 2\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"control 3\", \"actual\": \"167200008702\", \"expected\": \"167200008702\", \"passed\": true}, {\"check\": \"control 4\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"boundary 5\", \"actual\": \"011800000956\", \"expected\": \"011800000956\", \"passed\": true}, {\"check\": \"boundary 6\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"control 7\", \"actual\": \"080237000081\", \"expected\": \"080237000081\", \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}