{"abstract":"\"post office box 101\" is a street line.","category":"Postal address normalization","checks":11,"contract":"Uppercase, turn periods into spaces and collapse whitespace. If the tokens start with one of the prefixes POST OFFICE BOX, P O BOX, PO BOX, POB, BOX (whole tokens) the line is a box line: exactly one alphanumeric identifier must follow, giving {\"kind\": \"pobox\", \"line\": \"PO BOX ID\"}, otherwise {\"kind\": \"invalid\", \"line\": cleaned}. Other lines return {\"kind\": \"street\", \"line\": cleaned}.","evaluation_group":"w2-postal-address-normalization-po-box","failed_approach":"Adding POST OFFICE as a prefix makes BOX look like the identifier and marks the line invalid.","family":"w2-postal-address-normalization-po-box-spelled-prefix","id":"FA-96081","implementations":{"attempt":{"sha256":"8e171639b6c2e818c183be6f3f381fbd16f33548a7534461283b4bd70fdf257f","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    s = ' '.join(x.upper().replace('.', ' ').split())\n    t = s.split()\n    for prefix in (['POST', 'OFFICE'], ['P', 'O', 'BOX'], ['PO', 'BOX'], ['POB'], ['BOX']):\n        k = len(prefix)\n        if t[:k] == prefix:\n            if len(t) == k + 1 and t[k].isalnum():\n                return {'kind': 'pobox', 'line': 'PO BOX ' + t[k]}\n            return {'kind': 'invalid', 'line': s}\n    return {'kind': 'street', 'line': s}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['dotted prefix', 'P.O. Box 101', {'kind': 'pobox', 'line': 'PO BOX 101'}], ['dotted prefix without spaces', 'P.O.BOX 101', {'kind': 'pobox', 'line': 'PO BOX 101'}], ['spelled-out prefix', 'post office box 101', {'kind': 'pobox', 'line': 'PO BOX 101'}], ['short prefix', 'POB 101', {'kind': 'pobox', 'line': 'PO BOX 101'}], ['bare box with letter suffix', 'Box 1A', {'kind': 'pobox', 'line': 'PO BOX 1A'}], ['box identifier starting with a letter', 'BOX A1', {'kind': 'pobox', 'line': 'PO BOX A1'}], ['trailing town after the box', 'PO BOX 101 FAKETOWN', {'kind': 'invalid', 'line': 'PO BOX 101 FAKETOWN'}], ['prefix without number', 'PO BOX', {'kind': 'invalid', 'line': 'PO BOX'}], ['spelled prefix without number', 'POST OFFICE BOX', {'kind': 'invalid', 'line': 'POST OFFICE BOX'}], ['street starting with BOX letters', 'BOXWOOD LANE', {'kind': 'street', 'line': 'BOXWOOD LANE'}], ['street spacing collapsed', '1  FAKE   RD', {'kind': 'street', 'line': '1 FAKE RD'}]], [['dotted prefix', 'P.O. Box 102', {'kind': 'pobox', 'line': 'PO BOX 102'}], ['dotted prefix without spaces', 'P.O.BOX 102', {'kind': 'pobox', 'line': 'PO BOX 102'}], ['spelled-out prefix', 'post office box 102', {'kind': 'pobox', 'line': 'PO BOX 102'}], ['short prefix', 'POB 102', {'kind': 'pobox', 'line': 'PO BOX 102'}], ['bare box with letter suffix', 'Box 2A', {'kind': 'pobox', 'line': 'PO BOX 2A'}], ['box identifier starting with a letter', 'BOX A2', {'kind': 'pobox', 'line': 'PO BOX A2'}], ['trailing town after the box', 'PO BOX 102 FAKETOWN', {'kind': 'invalid', 'line': 'PO BOX 102 FAKETOWN'}], ['prefix without number', 'PO BOX', {'kind': 'invalid', 'line': 'PO BOX'}], ['spelled prefix without number', 'POST OFFICE BOX', {'kind': 'invalid', 'line': 'POST OFFICE BOX'}], ['street starting with BOX letters', 'BOXWOOD LANE', {'kind': 'street', 'line': 'BOXWOOD LANE'}], ['street spacing collapsed', '2  FAKE   RD', {'kind': 'street', 'line': '2 FAKE RD'}]], [['dotted prefix', 'P.O. Box 103', {'kind': 'pobox', 'line': 'PO BOX 103'}], ['dotted prefix without spaces', 'P.O.BOX 103', {'kind': 'pobox', 'line': 'PO BOX 103'}], ['spelled-out prefix', 'post office box 103', {'kind': 'pobox', 'line': 'PO BOX 103'}], ['short prefix', 'POB 103', {'kind': 'pobox', 'line': 'PO BOX 103'}], ['bare box with letter suffix', 'Box 3A', {'kind': 'pobox', 'line': 'PO BOX 3A'}], ['box identifier starting with a letter', 'BOX A3', {'kind': 'pobox', 'line': 'PO BOX A3'}], ['trailing town after the box', 'PO BOX 103 FAKETOWN', {'kind': 'invalid', 'line': 'PO BOX 103 FAKETOWN'}], ['prefix without number', 'PO BOX', {'kind': 'invalid', 'line': 'PO BOX'}], ['spelled prefix without number', 'POST OFFICE BOX', {'kind': 'invalid', 'line': 'POST OFFICE BOX'}], ['street starting with BOX letters', 'BOXWOOD LANE', {'kind': 'street', 'line': 'BOXWOOD LANE'}], ['street spacing collapsed', '3  FAKE   RD', {'kind': 'street', 'line': '3 FAKE RD'}]], [['dotted prefix', 'P.O. Box 104', {'kind': 'pobox', 'line': 'PO BOX 104'}], ['dotted prefix without spaces', 'P.O.BOX 104', {'kind': 'pobox', 'line': 'PO BOX 104'}], ['spelled-out prefix', 'post office box 104', {'kind': 'pobox', 'line': 'PO BOX 104'}], ['short prefix', 'POB 104', {'kind': 'pobox', 'line': 'PO BOX 104'}], ['bare box with letter suffix', 'Box 4A', {'kind': 'pobox', 'line': 'PO BOX 4A'}], ['box identifier starting with a letter', 'BOX A4', {'kind': 'pobox', 'line': 'PO BOX A4'}], ['trailing town after the box', 'PO BOX 104 FAKETOWN', {'kind': 'invalid', 'line': 'PO BOX 104 FAKETOWN'}], ['prefix without number', 'PO BOX', {'kind': 'invalid', 'line': 'PO BOX'}], ['spelled prefix without number', 'POST OFFICE BOX', {'kind': 'invalid', 'line': 'POST OFFICE BOX'}], ['street starting with BOX letters', 'BOXWOOD LANE', {'kind': 'street', 'line': 'BOXWOOD LANE'}], ['street spacing collapsed', '4  FAKE   RD', {'kind': 'street', 'line': '4 FAKE RD'}]], [['dotted prefix', 'P.O. Box 105', {'kind': 'pobox', 'line': 'PO BOX 105'}], ['dotted prefix without spaces', 'P.O.BOX 105', {'kind': 'pobox', 'line': 'PO BOX 105'}], ['spelled-out prefix', 'post office box 105', {'kind': 'pobox', 'line': 'PO BOX 105'}], ['short prefix', 'POB 105', {'kind': 'pobox', 'line': 'PO BOX 105'}], ['bare box with letter suffix', 'Box 5A', {'kind': 'pobox', 'line': 'PO BOX 5A'}], ['box identifier starting with a letter', 'BOX A5', {'kind': 'pobox', 'line': 'PO BOX A5'}], ['trailing town after the box', 'PO BOX 105 FAKETOWN', {'kind': 'invalid', 'line': 'PO BOX 105 FAKETOWN'}], ['prefix without number', 'PO BOX', {'kind': 'invalid', 'line': 'PO BOX'}], ['spelled prefix without number', 'POST OFFICE BOX', {'kind': 'invalid', 'line': 'POST OFFICE BOX'}], ['street starting with BOX letters', 'BOXWOOD LANE', {'kind': 'street', 'line': 'BOXWOOD LANE'}], ['street spacing collapsed', '5  FAKE   RD', {'kind': 'street', 'line': '5 FAKE RD'}]]]\nfor label, arg, expected in fixtures[N - 1]:\n    check(label, solve(arg), 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":"916f418da5fb0dfb13e733e02ed54f20f0e5927e4dcea63f918a093ca81413e7","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    s = ' '.join(x.upper().replace('.', ' ').split())\n    t = s.split()\n    for prefix in (['P', 'O', 'BOX'], ['PO', 'BOX'], ['POB'], ['BOX']):\n        k = len(prefix)\n        if t[:k] == prefix:\n            if len(t) == k + 1 and t[k].isalnum():\n                return {'kind': 'pobox', 'line': 'PO BOX ' + t[k]}\n            return {'kind': 'invalid', 'line': s}\n    return {'kind': 'street', 'line': s}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['dotted prefix', 'P.O. Box 101', {'kind': 'pobox', 'line': 'PO BOX 101'}], ['dotted prefix without spaces', 'P.O.BOX 101', {'kind': 'pobox', 'line': 'PO BOX 101'}], ['spelled-out prefix', 'post office box 101', {'kind': 'pobox', 'line': 'PO BOX 101'}], ['short prefix', 'POB 101', {'kind': 'pobox', 'line': 'PO BOX 101'}], ['bare box with letter suffix', 'Box 1A', {'kind': 'pobox', 'line': 'PO BOX 1A'}], ['box identifier starting with a letter', 'BOX A1', {'kind': 'pobox', 'line': 'PO BOX A1'}], ['trailing town after the box', 'PO BOX 101 FAKETOWN', {'kind': 'invalid', 'line': 'PO BOX 101 FAKETOWN'}], ['prefix without number', 'PO BOX', {'kind': 'invalid', 'line': 'PO BOX'}], ['spelled prefix without number', 'POST OFFICE BOX', {'kind': 'invalid', 'line': 'POST OFFICE BOX'}], ['street starting with BOX letters', 'BOXWOOD LANE', {'kind': 'street', 'line': 'BOXWOOD LANE'}], ['street spacing collapsed', '1  FAKE   RD', {'kind': 'street', 'line': '1 FAKE RD'}]], [['dotted prefix', 'P.O. Box 102', {'kind': 'pobox', 'line': 'PO BOX 102'}], ['dotted prefix without spaces', 'P.O.BOX 102', {'kind': 'pobox', 'line': 'PO BOX 102'}], ['spelled-out prefix', 'post office box 102', {'kind': 'pobox', 'line': 'PO BOX 102'}], ['short prefix', 'POB 102', {'kind': 'pobox', 'line': 'PO BOX 102'}], ['bare box with letter suffix', 'Box 2A', {'kind': 'pobox', 'line': 'PO BOX 2A'}], ['box identifier starting with a letter', 'BOX A2', {'kind': 'pobox', 'line': 'PO BOX A2'}], ['trailing town after the box', 'PO BOX 102 FAKETOWN', {'kind': 'invalid', 'line': 'PO BOX 102 FAKETOWN'}], ['prefix without number', 'PO BOX', {'kind': 'invalid', 'line': 'PO BOX'}], ['spelled prefix without number', 'POST OFFICE BOX', {'kind': 'invalid', 'line': 'POST OFFICE BOX'}], ['street starting with BOX letters', 'BOXWOOD LANE', {'kind': 'street', 'line': 'BOXWOOD LANE'}], ['street spacing collapsed', '2  FAKE   RD', {'kind': 'street', 'line': '2 FAKE RD'}]], [['dotted prefix', 'P.O. Box 103', {'kind': 'pobox', 'line': 'PO BOX 103'}], ['dotted prefix without spaces', 'P.O.BOX 103', {'kind': 'pobox', 'line': 'PO BOX 103'}], ['spelled-out prefix', 'post office box 103', {'kind': 'pobox', 'line': 'PO BOX 103'}], ['short prefix', 'POB 103', {'kind': 'pobox', 'line': 'PO BOX 103'}], ['bare box with letter suffix', 'Box 3A', {'kind': 'pobox', 'line': 'PO BOX 3A'}], ['box identifier starting with a letter', 'BOX A3', {'kind': 'pobox', 'line': 'PO BOX A3'}], ['trailing town after the box', 'PO BOX 103 FAKETOWN', {'kind': 'invalid', 'line': 'PO BOX 103 FAKETOWN'}], ['prefix without number', 'PO BOX', {'kind': 'invalid', 'line': 'PO BOX'}], ['spelled prefix without number', 'POST OFFICE BOX', {'kind': 'invalid', 'line': 'POST OFFICE BOX'}], ['street starting with BOX letters', 'BOXWOOD LANE', {'kind': 'street', 'line': 'BOXWOOD LANE'}], ['street spacing collapsed', '3  FAKE   RD', {'kind': 'street', 'line': '3 FAKE RD'}]], [['dotted prefix', 'P.O. Box 104', {'kind': 'pobox', 'line': 'PO BOX 104'}], ['dotted prefix without spaces', 'P.O.BOX 104', {'kind': 'pobox', 'line': 'PO BOX 104'}], ['spelled-out prefix', 'post office box 104', {'kind': 'pobox', 'line': 'PO BOX 104'}], ['short prefix', 'POB 104', {'kind': 'pobox', 'line': 'PO BOX 104'}], ['bare box with letter suffix', 'Box 4A', {'kind': 'pobox', 'line': 'PO BOX 4A'}], ['box identifier starting with a letter', 'BOX A4', {'kind': 'pobox', 'line': 'PO BOX A4'}], ['trailing town after the box', 'PO BOX 104 FAKETOWN', {'kind': 'invalid', 'line': 'PO BOX 104 FAKETOWN'}], ['prefix without number', 'PO BOX', {'kind': 'invalid', 'line': 'PO BOX'}], ['spelled prefix without number', 'POST OFFICE BOX', {'kind': 'invalid', 'line': 'POST OFFICE BOX'}], ['street starting with BOX letters', 'BOXWOOD LANE', {'kind': 'street', 'line': 'BOXWOOD LANE'}], ['street spacing collapsed', '4  FAKE   RD', {'kind': 'street', 'line': '4 FAKE RD'}]], [['dotted prefix', 'P.O. Box 105', {'kind': 'pobox', 'line': 'PO BOX 105'}], ['dotted prefix without spaces', 'P.O.BOX 105', {'kind': 'pobox', 'line': 'PO BOX 105'}], ['spelled-out prefix', 'post office box 105', {'kind': 'pobox', 'line': 'PO BOX 105'}], ['short prefix', 'POB 105', {'kind': 'pobox', 'line': 'PO BOX 105'}], ['bare box with letter suffix', 'Box 5A', {'kind': 'pobox', 'line': 'PO BOX 5A'}], ['box identifier starting with a letter', 'BOX A5', {'kind': 'pobox', 'line': 'PO BOX A5'}], ['trailing town after the box', 'PO BOX 105 FAKETOWN', {'kind': 'invalid', 'line': 'PO BOX 105 FAKETOWN'}], ['prefix without number', 'PO BOX', {'kind': 'invalid', 'line': 'PO BOX'}], ['spelled prefix without number', 'POST OFFICE BOX', {'kind': 'invalid', 'line': 'POST OFFICE BOX'}], ['street starting with BOX letters', 'BOXWOOD LANE', {'kind': 'street', 'line': 'BOXWOOD LANE'}], ['street spacing collapsed', '5  FAKE   RD', {'kind': 'street', 'line': '5 FAKE RD'}]]]\nfor label, arg, expected in fixtures[N - 1]:\n    check(label, solve(arg), 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":"11e8509fa44f4e2d4c0c7ee3aef51804fb8bfbe284b0fc2a04aff7367210d416","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    s = ' '.join(x.upper().replace('.', ' ').split())\n    t = s.split()\n    for prefix in (['POST', 'OFFICE', 'BOX'], ['P', 'O', 'BOX'], ['PO', 'BOX'], ['POB'], ['BOX']):\n        k = len(prefix)\n        if t[:k] == prefix:\n            if len(t) == k + 1 and t[k].isalnum():\n                return {'kind': 'pobox', 'line': 'PO BOX ' + t[k]}\n            return {'kind': 'invalid', 'line': s}\n    return {'kind': 'street', 'line': s}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['dotted prefix', 'P.O. Box 101', {'kind': 'pobox', 'line': 'PO BOX 101'}], ['dotted prefix without spaces', 'P.O.BOX 101', {'kind': 'pobox', 'line': 'PO BOX 101'}], ['spelled-out prefix', 'post office box 101', {'kind': 'pobox', 'line': 'PO BOX 101'}], ['short prefix', 'POB 101', {'kind': 'pobox', 'line': 'PO BOX 101'}], ['bare box with letter suffix', 'Box 1A', {'kind': 'pobox', 'line': 'PO BOX 1A'}], ['box identifier starting with a letter', 'BOX A1', {'kind': 'pobox', 'line': 'PO BOX A1'}], ['trailing town after the box', 'PO BOX 101 FAKETOWN', {'kind': 'invalid', 'line': 'PO BOX 101 FAKETOWN'}], ['prefix without number', 'PO BOX', {'kind': 'invalid', 'line': 'PO BOX'}], ['spelled prefix without number', 'POST OFFICE BOX', {'kind': 'invalid', 'line': 'POST OFFICE BOX'}], ['street starting with BOX letters', 'BOXWOOD LANE', {'kind': 'street', 'line': 'BOXWOOD LANE'}], ['street spacing collapsed', '1  FAKE   RD', {'kind': 'street', 'line': '1 FAKE RD'}]], [['dotted prefix', 'P.O. Box 102', {'kind': 'pobox', 'line': 'PO BOX 102'}], ['dotted prefix without spaces', 'P.O.BOX 102', {'kind': 'pobox', 'line': 'PO BOX 102'}], ['spelled-out prefix', 'post office box 102', {'kind': 'pobox', 'line': 'PO BOX 102'}], ['short prefix', 'POB 102', {'kind': 'pobox', 'line': 'PO BOX 102'}], ['bare box with letter suffix', 'Box 2A', {'kind': 'pobox', 'line': 'PO BOX 2A'}], ['box identifier starting with a letter', 'BOX A2', {'kind': 'pobox', 'line': 'PO BOX A2'}], ['trailing town after the box', 'PO BOX 102 FAKETOWN', {'kind': 'invalid', 'line': 'PO BOX 102 FAKETOWN'}], ['prefix without number', 'PO BOX', {'kind': 'invalid', 'line': 'PO BOX'}], ['spelled prefix without number', 'POST OFFICE BOX', {'kind': 'invalid', 'line': 'POST OFFICE BOX'}], ['street starting with BOX letters', 'BOXWOOD LANE', {'kind': 'street', 'line': 'BOXWOOD LANE'}], ['street spacing collapsed', '2  FAKE   RD', {'kind': 'street', 'line': '2 FAKE RD'}]], [['dotted prefix', 'P.O. Box 103', {'kind': 'pobox', 'line': 'PO BOX 103'}], ['dotted prefix without spaces', 'P.O.BOX 103', {'kind': 'pobox', 'line': 'PO BOX 103'}], ['spelled-out prefix', 'post office box 103', {'kind': 'pobox', 'line': 'PO BOX 103'}], ['short prefix', 'POB 103', {'kind': 'pobox', 'line': 'PO BOX 103'}], ['bare box with letter suffix', 'Box 3A', {'kind': 'pobox', 'line': 'PO BOX 3A'}], ['box identifier starting with a letter', 'BOX A3', {'kind': 'pobox', 'line': 'PO BOX A3'}], ['trailing town after the box', 'PO BOX 103 FAKETOWN', {'kind': 'invalid', 'line': 'PO BOX 103 FAKETOWN'}], ['prefix without number', 'PO BOX', {'kind': 'invalid', 'line': 'PO BOX'}], ['spelled prefix without number', 'POST OFFICE BOX', {'kind': 'invalid', 'line': 'POST OFFICE BOX'}], ['street starting with BOX letters', 'BOXWOOD LANE', {'kind': 'street', 'line': 'BOXWOOD LANE'}], ['street spacing collapsed', '3  FAKE   RD', {'kind': 'street', 'line': '3 FAKE RD'}]], [['dotted prefix', 'P.O. Box 104', {'kind': 'pobox', 'line': 'PO BOX 104'}], ['dotted prefix without spaces', 'P.O.BOX 104', {'kind': 'pobox', 'line': 'PO BOX 104'}], ['spelled-out prefix', 'post office box 104', {'kind': 'pobox', 'line': 'PO BOX 104'}], ['short prefix', 'POB 104', {'kind': 'pobox', 'line': 'PO BOX 104'}], ['bare box with letter suffix', 'Box 4A', {'kind': 'pobox', 'line': 'PO BOX 4A'}], ['box identifier starting with a letter', 'BOX A4', {'kind': 'pobox', 'line': 'PO BOX A4'}], ['trailing town after the box', 'PO BOX 104 FAKETOWN', {'kind': 'invalid', 'line': 'PO BOX 104 FAKETOWN'}], ['prefix without number', 'PO BOX', {'kind': 'invalid', 'line': 'PO BOX'}], ['spelled prefix without number', 'POST OFFICE BOX', {'kind': 'invalid', 'line': 'POST OFFICE BOX'}], ['street starting with BOX letters', 'BOXWOOD LANE', {'kind': 'street', 'line': 'BOXWOOD LANE'}], ['street spacing collapsed', '4  FAKE   RD', {'kind': 'street', 'line': '4 FAKE RD'}]], [['dotted prefix', 'P.O. Box 105', {'kind': 'pobox', 'line': 'PO BOX 105'}], ['dotted prefix without spaces', 'P.O.BOX 105', {'kind': 'pobox', 'line': 'PO BOX 105'}], ['spelled-out prefix', 'post office box 105', {'kind': 'pobox', 'line': 'PO BOX 105'}], ['short prefix', 'POB 105', {'kind': 'pobox', 'line': 'PO BOX 105'}], ['bare box with letter suffix', 'Box 5A', {'kind': 'pobox', 'line': 'PO BOX 5A'}], ['box identifier starting with a letter', 'BOX A5', {'kind': 'pobox', 'line': 'PO BOX A5'}], ['trailing town after the box', 'PO BOX 105 FAKETOWN', {'kind': 'invalid', 'line': 'PO BOX 105 FAKETOWN'}], ['prefix without number', 'PO BOX', {'kind': 'invalid', 'line': 'PO BOX'}], ['spelled prefix without number', 'POST OFFICE BOX', {'kind': 'invalid', 'line': 'POST OFFICE BOX'}], ['street starting with BOX letters', 'BOXWOOD LANE', {'kind': 'street', 'line': 'BOXWOOD LANE'}], ['street spacing collapsed', '5  FAKE   RD', {'kind': 'street', 'line': '5 FAKE RD'}]]]\nfor label, arg, expected in fixtures[N - 1]:\n    check(label, solve(arg), 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 toy contract over synthetic, obviously fictitious addresses. The rules are stipulated for this model only and make no claim of conformance with any postal authority standard. 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-postal-address-normalization-po-box-spelled-prefix","generated_at":"2026-09-29T14:52:19.473820+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Box addresses need different delivery handling from street addresses; misclassifying either breaks carrier selection and deduplication.","repair":"Include the three-token spelled-out prefix.","root_cause":"The prefix list lacks POST OFFICE BOX.","sha256":"4f85ba2aaece46ed44f5c1ed437cce55ecf693bd9c9347892b2270ef3959da0c","title":"Post office box canonicalizer: the spelled-out prefix is missing · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":39.602,"exit_code":1,"observations":[{"actual":{"kind":"pobox","line":"PO BOX 101"},"check":"dotted prefix","expected":{"kind":"pobox","line":"PO BOX 101"},"passed":true},{"actual":{"kind":"pobox","line":"PO BOX 101"},"check":"dotted prefix without spaces","expected":{"kind":"pobox","line":"PO BOX 101"},"passed":true},{"actual":{"kind":"invalid","line":"POST OFFICE BOX 101"},"check":"spelled-out prefix","expected":{"kind":"pobox","line":"PO BOX 101"},"passed":false},{"actual":{"kind":"pobox","line":"PO BOX 101"},"check":"short prefix","expected":{"kind":"pobox","line":"PO BOX 101"},"passed":true},{"actual":{"kind":"pobox","line":"PO BOX 1A"},"check":"bare box with letter suffix","expected":{"kind":"pobox","line":"PO BOX 1A"},"passed":true},{"actual":{"kind":"pobox","line":"PO BOX A1"},"check":"box identifier starting with a letter","expected":{"kind":"pobox","line":"PO BOX A1"},"passed":true},{"actual":{"kind":"invalid","line":"PO BOX 101 FAKETOWN"},"check":"trailing town after the box","expected":{"kind":"invalid","line":"PO BOX 101 FAKETOWN"},"passed":true},{"actual":{"kind":"invalid","line":"PO BOX"},"check":"prefix without number","expected":{"kind":"invalid","line":"PO BOX"},"passed":true},{"actual":{"kind":"pobox","line":"PO BOX BOX"},"check":"spelled prefix without number","expected":{"kind":"invalid","line":"POST OFFICE BOX"},"passed":false},{"actual":{"kind":"street","line":"BOXWOOD LANE"},"check":"street starting with BOX letters","expected":{"kind":"street","line":"BOXWOOD LANE"},"passed":true},{"actual":{"kind":"street","line":"1 FAKE RD"},"check":"street spacing collapsed","expected":{"kind":"street","line":"1 FAKE RD"},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"dotted prefix\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"passed\": true}, {\"check\": \"dotted prefix without spaces\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"passed\": true}, {\"check\": \"spelled-out prefix\", \"actual\": {\"kind\": \"invalid\", \"line\": \"POST OFFICE BOX 101\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"passed\": false}, {\"check\": \"short prefix\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"passed\": true}, {\"check\": \"bare box with letter suffix\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX 1A\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX 1A\"}, \"passed\": true}, {\"check\": \"box identifier starting with a letter\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX A1\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX A1\"}, \"passed\": true}, {\"check\": \"trailing town after the box\", \"actual\": {\"kind\": \"invalid\", \"line\": \"PO BOX 101 FAKETOWN\"}, \"expected\": {\"kind\": \"invalid\", \"line\": \"PO BOX 101 FAKETOWN\"}, \"passed\": true}, {\"check\": \"prefix without number\", \"actual\": {\"kind\": \"invalid\", \"line\": \"PO BOX\"}, \"expected\": {\"kind\": \"invalid\", \"line\": \"PO BOX\"}, \"passed\": true}, {\"check\": \"spelled prefix without number\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX BOX\"}, \"expected\": {\"kind\": \"invalid\", \"line\": \"POST OFFICE BOX\"}, \"passed\": false}, {\"check\": \"street starting with BOX letters\", \"actual\": {\"kind\": \"street\", \"line\": \"BOXWOOD LANE\"}, \"expected\": {\"kind\": \"street\", \"line\": \"BOXWOOD LANE\"}, \"passed\": true}, {\"check\": \"street spacing collapsed\", \"actual\": {\"kind\": \"street\", \"line\": \"1 FAKE RD\"}, \"expected\": {\"kind\": \"street\", \"line\": \"1 FAKE RD\"}, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":40.075,"exit_code":1,"observations":[{"actual":{"kind":"pobox","line":"PO BOX 101"},"check":"dotted prefix","expected":{"kind":"pobox","line":"PO BOX 101"},"passed":true},{"actual":{"kind":"pobox","line":"PO BOX 101"},"check":"dotted prefix without spaces","expected":{"kind":"pobox","line":"PO BOX 101"},"passed":true},{"actual":{"kind":"street","line":"POST OFFICE BOX 101"},"check":"spelled-out prefix","expected":{"kind":"pobox","line":"PO BOX 101"},"passed":false},{"actual":{"kind":"pobox","line":"PO BOX 101"},"check":"short prefix","expected":{"kind":"pobox","line":"PO BOX 101"},"passed":true},{"actual":{"kind":"pobox","line":"PO BOX 1A"},"check":"bare box with letter suffix","expected":{"kind":"pobox","line":"PO BOX 1A"},"passed":true},{"actual":{"kind":"pobox","line":"PO BOX A1"},"check":"box identifier starting with a letter","expected":{"kind":"pobox","line":"PO BOX A1"},"passed":true},{"actual":{"kind":"invalid","line":"PO BOX 101 FAKETOWN"},"check":"trailing town after the box","expected":{"kind":"invalid","line":"PO BOX 101 FAKETOWN"},"passed":true},{"actual":{"kind":"invalid","line":"PO BOX"},"check":"prefix without number","expected":{"kind":"invalid","line":"PO BOX"},"passed":true},{"actual":{"kind":"street","line":"POST OFFICE BOX"},"check":"spelled prefix without number","expected":{"kind":"invalid","line":"POST OFFICE BOX"},"passed":false},{"actual":{"kind":"street","line":"BOXWOOD LANE"},"check":"street starting with BOX letters","expected":{"kind":"street","line":"BOXWOOD LANE"},"passed":true},{"actual":{"kind":"street","line":"1 FAKE RD"},"check":"street spacing collapsed","expected":{"kind":"street","line":"1 FAKE RD"},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"dotted prefix\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"passed\": true}, {\"check\": \"dotted prefix without spaces\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"passed\": true}, {\"check\": \"spelled-out prefix\", \"actual\": {\"kind\": \"street\", \"line\": \"POST OFFICE BOX 101\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"passed\": false}, {\"check\": \"short prefix\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"passed\": true}, {\"check\": \"bare box with letter suffix\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX 1A\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX 1A\"}, \"passed\": true}, {\"check\": \"box identifier starting with a letter\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX A1\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX A1\"}, \"passed\": true}, {\"check\": \"trailing town after the box\", \"actual\": {\"kind\": \"invalid\", \"line\": \"PO BOX 101 FAKETOWN\"}, \"expected\": {\"kind\": \"invalid\", \"line\": \"PO BOX 101 FAKETOWN\"}, \"passed\": true}, {\"check\": \"prefix without number\", \"actual\": {\"kind\": \"invalid\", \"line\": \"PO BOX\"}, \"expected\": {\"kind\": \"invalid\", \"line\": \"PO BOX\"}, \"passed\": true}, {\"check\": \"spelled prefix without number\", \"actual\": {\"kind\": \"street\", \"line\": \"POST OFFICE BOX\"}, \"expected\": {\"kind\": \"invalid\", \"line\": \"POST OFFICE BOX\"}, \"passed\": false}, {\"check\": \"street starting with BOX letters\", \"actual\": {\"kind\": \"street\", \"line\": \"BOXWOOD LANE\"}, \"expected\": {\"kind\": \"street\", \"line\": \"BOXWOOD LANE\"}, \"passed\": true}, {\"check\": \"street spacing collapsed\", \"actual\": {\"kind\": \"street\", \"line\": \"1 FAKE RD\"}, \"expected\": {\"kind\": \"street\", \"line\": \"1 FAKE RD\"}, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":41.209,"exit_code":0,"observations":[{"actual":{"kind":"pobox","line":"PO BOX 101"},"check":"dotted prefix","expected":{"kind":"pobox","line":"PO BOX 101"},"passed":true},{"actual":{"kind":"pobox","line":"PO BOX 101"},"check":"dotted prefix without spaces","expected":{"kind":"pobox","line":"PO BOX 101"},"passed":true},{"actual":{"kind":"pobox","line":"PO BOX 101"},"check":"spelled-out prefix","expected":{"kind":"pobox","line":"PO BOX 101"},"passed":true},{"actual":{"kind":"pobox","line":"PO BOX 101"},"check":"short prefix","expected":{"kind":"pobox","line":"PO BOX 101"},"passed":true},{"actual":{"kind":"pobox","line":"PO BOX 1A"},"check":"bare box with letter suffix","expected":{"kind":"pobox","line":"PO BOX 1A"},"passed":true},{"actual":{"kind":"pobox","line":"PO BOX A1"},"check":"box identifier starting with a letter","expected":{"kind":"pobox","line":"PO BOX A1"},"passed":true},{"actual":{"kind":"invalid","line":"PO BOX 101 FAKETOWN"},"check":"trailing town after the box","expected":{"kind":"invalid","line":"PO BOX 101 FAKETOWN"},"passed":true},{"actual":{"kind":"invalid","line":"PO BOX"},"check":"prefix without number","expected":{"kind":"invalid","line":"PO BOX"},"passed":true},{"actual":{"kind":"invalid","line":"POST OFFICE BOX"},"check":"spelled prefix without number","expected":{"kind":"invalid","line":"POST OFFICE BOX"},"passed":true},{"actual":{"kind":"street","line":"BOXWOOD LANE"},"check":"street starting with BOX letters","expected":{"kind":"street","line":"BOXWOOD LANE"},"passed":true},{"actual":{"kind":"street","line":"1 FAKE RD"},"check":"street spacing collapsed","expected":{"kind":"street","line":"1 FAKE RD"},"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"dotted prefix\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"passed\": true}, {\"check\": \"dotted prefix without spaces\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"passed\": true}, {\"check\": \"spelled-out prefix\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"passed\": true}, {\"check\": \"short prefix\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX 101\"}, \"passed\": true}, {\"check\": \"bare box with letter suffix\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX 1A\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX 1A\"}, \"passed\": true}, {\"check\": \"box identifier starting with a letter\", \"actual\": {\"kind\": \"pobox\", \"line\": \"PO BOX A1\"}, \"expected\": {\"kind\": \"pobox\", \"line\": \"PO BOX A1\"}, \"passed\": true}, {\"check\": \"trailing town after the box\", \"actual\": {\"kind\": \"invalid\", \"line\": \"PO BOX 101 FAKETOWN\"}, \"expected\": {\"kind\": \"invalid\", \"line\": \"PO BOX 101 FAKETOWN\"}, \"passed\": true}, {\"check\": \"prefix without number\", \"actual\": {\"kind\": \"invalid\", \"line\": \"PO BOX\"}, \"expected\": {\"kind\": \"invalid\", \"line\": \"PO BOX\"}, \"passed\": true}, {\"check\": \"spelled prefix without number\", \"actual\": {\"kind\": \"invalid\", \"line\": \"POST OFFICE BOX\"}, \"expected\": {\"kind\": \"invalid\", \"line\": \"POST OFFICE BOX\"}, \"passed\": true}, {\"check\": \"street starting with BOX letters\", \"actual\": {\"kind\": \"street\", \"line\": \"BOXWOOD LANE\"}, \"expected\": {\"kind\": \"street\", \"line\": \"BOXWOOD LANE\"}, \"passed\": true}, {\"check\": \"street spacing collapsed\", \"actual\": {\"kind\": \"street\", \"line\": \"1 FAKE RD\"}, \"expected\": {\"kind\": \"street\", \"line\": \"1 FAKE RD\"}, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}