{"abstract":"Brackets around numbers in RTL text are not resolved as RTL.","category":"Bidirectional text layout","checks":8,"contract":"Input [classes, bracket pairs, embedding level, sos]. Process pairs in opener order. Strong types inside (EN/AN count as R) matching the embedding direction set both brackets to it; if only the opposite direction is inside, use the first strong type before the opener (checking already-updated brackets; sos if none); with no strong type inside leave them. Return classes.","contract_signature":"x","evaluation_group":"w2-bidirectional-text-layout-bracket-resolution","failed_approach":"Counting AN but not EN still ignores European digits.","family":"w2-bidirectional-text-layout-bracket-resolution-numbers-inside-brackets","id":"FA-80601","implementations":{"attempt":{"sha256":"dd149e25470307c0cb54e3fa8dbc56a7ed07b597955305376d90f31392765fc5","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    types, pairs, level, sos = x\n    t = list(types)\n    e = 'L' if level % 2 == 0 else 'R'\n    def dirof(c):\n        if c == 'L':\n            return 'L'\n        if c in ('R', 'AN'):\n            return 'R'\n        return None\n    for o, c in sorted(pairs):\n        inside = [dirof(t[k]) for k in range(o + 1, c)]\n        inside = [d for d in inside if d]\n        if not inside:\n            continue\n        if e in inside:\n            new = e\n        else:\n            ctx = sos\n            for k in range(o - 1, -1, -1):\n                d = dirof(t[k])\n                if d:\n                    ctx = d\n                    break\n            new = ctx\n        t[o] = new\n        t[c] = new\n    return t\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('number inside brackets in RTL context', [['R', 'ON', 'EN', 'ON'], [[1, 3]], 0, 'L'], ['R', 'R', 'EN', 'R']), ('regression: numbers inside brackets', [['ON', 'ON', 'ON', 'AN', 'ON', 'ON', 'ON', 'L'], [[1, 6], [2, 5]], 1, 'R'], ['ON', 'R', 'R', 'AN', 'ON', 'R', 'R', 'L']), ('regression: numbers inside brackets', [['L', 'L', 'ON', 'ON', 'ON', 'ON', 'EN', 'ON', 'R', 'R', 'ON', 'ON'], [[2, 4], [5, 7], [10, 11]], 1, 'L'], ['L', 'L', 'ON', 'ON', 'ON', 'R', 'EN', 'R', 'R', 'R', 'ON', 'ON']), ('regression: numbers inside brackets', [['AN', 'R', 'EN', 'ON', 'EN', 'ON', 'EN', 'ON', 'ON', 'ON', 'R'], [[5, 7]], 1, 'R'], ['AN', 'R', 'EN', 'ON', 'EN', 'R', 'EN', 'R', 'ON', 'ON', 'R']), ('nested pair uses updated outer bracket', [['R', 'ON', 'ON', 'R', 'ON', 'L', 'ON'], [[1, 6], [2, 4]], 0, 'L'], ['R', 'L', 'L', 'R', 'L', 'L', 'L']), ('nested pair in RTL embedding', [['L', 'ON', 'ON', 'L', 'ON', 'R', 'ON'], [[1, 6], [2, 4]], 1, 'R'], ['L', 'R', 'R', 'L', 'R', 'R', 'R']), ('control layout', [['ON', 'L', 'R', 'L'], [], 2, 'R'], ['ON', 'L', 'R', 'L']), ('control layout', [['EN', 'L', 'AN', 'ON', 'ON', 'AN'], [], 0, 'L'], ['EN', 'L', 'AN', 'ON', 'ON', 'AN'])], [('regression: numbers inside brackets', [['EN', 'ON', 'ON', 'AN', 'ON', 'ON', 'L', 'ON'], [[1, 7], [2, 5]], 1, 'L'], ['EN', 'R', 'R', 'AN', 'ON', 'R', 'L', 'R']), ('regression: numbers inside brackets', [['EN', 'ON', 'ON', 'ON', 'AN', 'ON', 'ON', 'L', 'L'], [[1, 6], [2, 5]], 2, 'L'], ['EN', 'R', 'R', 'ON', 'AN', 'R', 'R', 'L', 'L']), ('regression: numbers inside brackets', [['L', 'ON', 'ON', 'ON', 'ON', 'EN', 'ON', 'EN'], [[2, 3], [4, 6]], 0, 'L'], ['L', 'ON', 'ON', 'ON', 'L', 'EN', 'L', 'EN']), ('regression: numbers inside brackets', [['L', 'ON', 'ON', 'L', 'ON', 'EN', 'ON', 'R', 'L'], [[1, 6], [2, 4]], 1, 'R'], ['L', 'R', 'R', 'L', 'R', 'EN', 'R', 'R', 'L']), ('nested pair uses updated outer bracket', [['R', 'ON', 'ON', 'R', 'ON', 'L', 'ON'], [[1, 6], [2, 4]], 0, 'L'], ['R', 'L', 'L', 'R', 'L', 'L', 'L']), ('number inside brackets in RTL context', [['R', 'ON', 'EN', 'ON'], [[1, 3]], 0, 'L'], ['R', 'R', 'EN', 'R']), ('control layout', [['EN', 'L', 'EN', 'EN', 'L', 'R'], [], 2, 'L'], ['EN', 'L', 'EN', 'EN', 'L', 'R']), ('control layout', [['AN', 'ON', 'ON', 'ON', 'L', 'EN', 'L', 'R', 'R', 'R', 'R', 'ON', 'R'], [[2, 3]], 2, 'R'], ['AN', 'ON', 'ON', 'ON', 'L', 'EN', 'L', 'R', 'R', 'R', 'R', 'ON', 'R'])], [('regression: numbers inside brackets', [['EN', 'ON', 'ON', 'ON', 'ON', 'R', 'ON'], [[1, 6], [2, 4]], 2, 'L'], ['EN', 'R', 'ON', 'ON', 'ON', 'R', 'R']), ('regression: numbers inside brackets', [['L', 'ON', 'ON', 'L', 'AN', 'ON', 'ON'], [[1, 6], [2, 5]], 1, 'L'], ['L', 'R', 'R', 'L', 'AN', 'R', 'R']), ('regression: numbers inside brackets', [['EN', 'ON', 'ON', 'AN', 'ON', 'ON', 'ON', 'ON', 'L', 'R'], [[1, 7], [2, 5]], 0, 'L'], ['EN', 'R', 'R', 'AN', 'ON', 'R', 'ON', 'R', 'L', 'R']), ('regression: numbers inside brackets', [['L', 'ON', 'EN', 'ON', 'R', 'L', 'AN', 'R', 'ON', 'AN', 'ON', 'L', 'ON'], [[1, 3]], 2, 'L'], ['L', 'L', 'EN', 'L', 'R', 'L', 'AN', 'R', 'ON', 'AN', 'ON', 'L', 'ON']), ('nested pair in RTL embedding', [['L', 'ON', 'ON', 'L', 'ON', 'R', 'ON'], [[1, 6], [2, 4]], 1, 'R'], ['L', 'R', 'R', 'L', 'R', 'R', 'R']), ('nested pair uses updated outer bracket', [['R', 'ON', 'ON', 'R', 'ON', 'L', 'ON'], [[1, 6], [2, 4]], 0, 'L'], ['R', 'L', 'L', 'R', 'L', 'L', 'L']), ('control layout', [['L', 'AN', 'ON', 'ON', 'ON', 'L', 'ON', 'L', 'EN', 'ON', 'AN', 'L'], [], 1, 'R'], ['L', 'AN', 'ON', 'ON', 'ON', 'L', 'ON', 'L', 'EN', 'ON', 'AN', 'L']), ('control layout', [['R', 'ON', 'ON', 'AN', 'R', 'ON', 'ON', 'L', 'R'], [[1, 6], [2, 5]], 0, 'L'], ['R', 'R', 'R', 'AN', 'R', 'R', 'R', 'L', 'R'])], [('regression: numbers inside brackets', [['L', 'ON', 'ON', 'L', 'AN', 'ON', 'ON'], [[1, 6], [2, 5]], 1, 'L'], ['L', 'R', 'R', 'L', 'AN', 'R', 'R']), ('regression: numbers inside brackets', [['R', 'ON', 'ON', 'AN', 'ON', 'ON'], [[1, 5], [2, 4]], 2, 'R'], ['R', 'R', 'R', 'AN', 'R', 'R']), ('regression: numbers inside brackets', [['EN', 'ON', 'ON', 'ON', 'ON', 'L', 'L', 'ON'], [[1, 7], [2, 4]], 1, 'L'], ['EN', 'R', 'ON', 'ON', 'ON', 'L', 'L', 'R']), ('regression: numbers inside brackets', [['L', 'ON', 'EN', 'ON', 'R', 'L', 'AN', 'R', 'ON', 'AN', 'ON', 'L', 'ON'], [[1, 3]], 2, 'L'], ['L', 'L', 'EN', 'L', 'R', 'L', 'AN', 'R', 'ON', 'AN', 'ON', 'L', 'ON']), ('nested pair in RTL embedding', [['L', 'ON', 'ON', 'L', 'ON', 'R', 'ON'], [[1, 6], [2, 4]], 1, 'R'], ['L', 'R', 'R', 'L', 'R', 'R', 'R']), ('nested pair uses updated outer bracket', [['R', 'ON', 'ON', 'R', 'ON', 'L', 'ON'], [[1, 6], [2, 4]], 0, 'L'], ['R', 'L', 'L', 'R', 'L', 'L', 'L']), ('control layout', [['R', 'ON', 'ON', 'R', 'R', 'ON', 'L', 'L', 'ON', 'L'], [[1, 8], [2, 5]], 2, 'R'], ['R', 'L', 'L', 'R', 'R', 'L', 'L', 'L', 'L', 'L']), ('control layout', [['ON', 'ON', 'ON', 'AN', 'R', 'ON', 'ON', 'ON', 'R', 'L'], [[1, 7], [2, 5]], 0, 'L'], ['ON', 'L', 'L', 'AN', 'R', 'L', 'ON', 'L', 'R', 'L'])], [('regression: numbers inside brackets', [['EN', 'ON', 'R', 'ON', 'ON', 'ON', 'AN', 'EN', 'L', 'R', 'R'], [[1, 3]], 2, 'L'], ['EN', 'R', 'R', 'R', 'ON', 'ON', 'AN', 'EN', 'L', 'R', 'R']), ('regression: numbers inside brackets', [['ON', 'ON', 'ON', 'AN', 'ON', 'ON', 'ON', 'ON', 'R'], [[1, 7], [2, 4]], 0, 'L'], ['ON', 'L', 'L', 'AN', 'L', 'ON', 'ON', 'L', 'R']), ('regression: numbers inside brackets', [['EN', 'ON', 'ON', 'ON', 'ON', 'EN', 'ON'], [[1, 6], [2, 4]], 2, 'L'], ['EN', 'R', 'ON', 'ON', 'ON', 'EN', 'R']), ('regression: numbers inside brackets', [['ON', 'EN', 'ON', 'R', 'ON', 'EN', 'ON', 'ON', 'R'], [[4, 6]], 2, 'L'], ['ON', 'EN', 'ON', 'R', 'R', 'EN', 'R', 'ON', 'R']), ('nested pair uses updated outer bracket', [['R', 'ON', 'ON', 'R', 'ON', 'L', 'ON'], [[1, 6], [2, 4]], 0, 'L'], ['R', 'L', 'L', 'R', 'L', 'L', 'L']), ('number inside brackets in RTL context', [['R', 'ON', 'EN', 'ON'], [[1, 3]], 0, 'L'], ['R', 'R', 'EN', 'R']), ('control layout', [['EN', 'ON', 'ON', 'R', 'L', 'ON', 'ON', 'ON', 'ON', 'L', 'L'], [[1, 8], [2, 5]], 0, 'R'], ['EN', 'L', 'L', 'R', 'L', 'L', 'ON', 'ON', 'L', 'L', 'L']), ('control layout', [['R', 'ON', 'R', 'ON', 'ON', 'L', 'EN', 'ON', 'AN'], [], 0, 'L'], ['R', 'ON', 'R', 'ON', 'ON', 'L', 'EN', 'ON', 'AN'])]]\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":"b0f7557f410b43ff69d19a8964c7a65bc62045accf8292749d3fc45e94132e50","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    types, pairs, level, sos = x\n    t = list(types)\n    e = 'L' if level % 2 == 0 else 'R'\n    def dirof(c):\n        if c == 'L':\n            return 'L'\n        if c in ('R',):\n            return 'R'\n        return None\n    for o, c in sorted(pairs):\n        inside = [dirof(t[k]) for k in range(o + 1, c)]\n        inside = [d for d in inside if d]\n        if not inside:\n            continue\n        if e in inside:\n            new = e\n        else:\n            ctx = sos\n            for k in range(o - 1, -1, -1):\n                d = dirof(t[k])\n                if d:\n                    ctx = d\n                    break\n            new = ctx\n        t[o] = new\n        t[c] = new\n    return t\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('number inside brackets in RTL context', [['R', 'ON', 'EN', 'ON'], [[1, 3]], 0, 'L'], ['R', 'R', 'EN', 'R']), ('regression: numbers inside brackets', [['ON', 'ON', 'ON', 'AN', 'ON', 'ON', 'ON', 'L'], [[1, 6], [2, 5]], 1, 'R'], ['ON', 'R', 'R', 'AN', 'ON', 'R', 'R', 'L']), ('regression: numbers inside brackets', [['L', 'L', 'ON', 'ON', 'ON', 'ON', 'EN', 'ON', 'R', 'R', 'ON', 'ON'], [[2, 4], [5, 7], [10, 11]], 1, 'L'], ['L', 'L', 'ON', 'ON', 'ON', 'R', 'EN', 'R', 'R', 'R', 'ON', 'ON']), ('regression: numbers inside brackets', [['AN', 'R', 'EN', 'ON', 'EN', 'ON', 'EN', 'ON', 'ON', 'ON', 'R'], [[5, 7]], 1, 'R'], ['AN', 'R', 'EN', 'ON', 'EN', 'R', 'EN', 'R', 'ON', 'ON', 'R']), ('nested pair uses updated outer bracket', [['R', 'ON', 'ON', 'R', 'ON', 'L', 'ON'], [[1, 6], [2, 4]], 0, 'L'], ['R', 'L', 'L', 'R', 'L', 'L', 'L']), ('nested pair in RTL embedding', [['L', 'ON', 'ON', 'L', 'ON', 'R', 'ON'], [[1, 6], [2, 4]], 1, 'R'], ['L', 'R', 'R', 'L', 'R', 'R', 'R']), ('control layout', [['ON', 'L', 'R', 'L'], [], 2, 'R'], ['ON', 'L', 'R', 'L']), ('control layout', [['EN', 'L', 'AN', 'ON', 'ON', 'AN'], [], 0, 'L'], ['EN', 'L', 'AN', 'ON', 'ON', 'AN'])], [('regression: numbers inside brackets', [['EN', 'ON', 'ON', 'AN', 'ON', 'ON', 'L', 'ON'], [[1, 7], [2, 5]], 1, 'L'], ['EN', 'R', 'R', 'AN', 'ON', 'R', 'L', 'R']), ('regression: numbers inside brackets', [['EN', 'ON', 'ON', 'ON', 'AN', 'ON', 'ON', 'L', 'L'], [[1, 6], [2, 5]], 2, 'L'], ['EN', 'R', 'R', 'ON', 'AN', 'R', 'R', 'L', 'L']), ('regression: numbers inside brackets', [['L', 'ON', 'ON', 'ON', 'ON', 'EN', 'ON', 'EN'], [[2, 3], [4, 6]], 0, 'L'], ['L', 'ON', 'ON', 'ON', 'L', 'EN', 'L', 'EN']), ('regression: numbers inside brackets', [['L', 'ON', 'ON', 'L', 'ON', 'EN', 'ON', 'R', 'L'], [[1, 6], [2, 4]], 1, 'R'], ['L', 'R', 'R', 'L', 'R', 'EN', 'R', 'R', 'L']), ('nested pair uses updated outer bracket', [['R', 'ON', 'ON', 'R', 'ON', 'L', 'ON'], [[1, 6], [2, 4]], 0, 'L'], ['R', 'L', 'L', 'R', 'L', 'L', 'L']), ('number inside brackets in RTL context', [['R', 'ON', 'EN', 'ON'], [[1, 3]], 0, 'L'], ['R', 'R', 'EN', 'R']), ('control layout', [['EN', 'L', 'EN', 'EN', 'L', 'R'], [], 2, 'L'], ['EN', 'L', 'EN', 'EN', 'L', 'R']), ('control layout', [['AN', 'ON', 'ON', 'ON', 'L', 'EN', 'L', 'R', 'R', 'R', 'R', 'ON', 'R'], [[2, 3]], 2, 'R'], ['AN', 'ON', 'ON', 'ON', 'L', 'EN', 'L', 'R', 'R', 'R', 'R', 'ON', 'R'])], [('regression: numbers inside brackets', [['EN', 'ON', 'ON', 'ON', 'ON', 'R', 'ON'], [[1, 6], [2, 4]], 2, 'L'], ['EN', 'R', 'ON', 'ON', 'ON', 'R', 'R']), ('regression: numbers inside brackets', [['L', 'ON', 'ON', 'L', 'AN', 'ON', 'ON'], [[1, 6], [2, 5]], 1, 'L'], ['L', 'R', 'R', 'L', 'AN', 'R', 'R']), ('regression: numbers inside brackets', [['EN', 'ON', 'ON', 'AN', 'ON', 'ON', 'ON', 'ON', 'L', 'R'], [[1, 7], [2, 5]], 0, 'L'], ['EN', 'R', 'R', 'AN', 'ON', 'R', 'ON', 'R', 'L', 'R']), ('regression: numbers inside brackets', [['L', 'ON', 'EN', 'ON', 'R', 'L', 'AN', 'R', 'ON', 'AN', 'ON', 'L', 'ON'], [[1, 3]], 2, 'L'], ['L', 'L', 'EN', 'L', 'R', 'L', 'AN', 'R', 'ON', 'AN', 'ON', 'L', 'ON']), ('nested pair in RTL embedding', [['L', 'ON', 'ON', 'L', 'ON', 'R', 'ON'], [[1, 6], [2, 4]], 1, 'R'], ['L', 'R', 'R', 'L', 'R', 'R', 'R']), ('nested pair uses updated outer bracket', [['R', 'ON', 'ON', 'R', 'ON', 'L', 'ON'], [[1, 6], [2, 4]], 0, 'L'], ['R', 'L', 'L', 'R', 'L', 'L', 'L']), ('control layout', [['L', 'AN', 'ON', 'ON', 'ON', 'L', 'ON', 'L', 'EN', 'ON', 'AN', 'L'], [], 1, 'R'], ['L', 'AN', 'ON', 'ON', 'ON', 'L', 'ON', 'L', 'EN', 'ON', 'AN', 'L']), ('control layout', [['R', 'ON', 'ON', 'AN', 'R', 'ON', 'ON', 'L', 'R'], [[1, 6], [2, 5]], 0, 'L'], ['R', 'R', 'R', 'AN', 'R', 'R', 'R', 'L', 'R'])], [('regression: numbers inside brackets', [['L', 'ON', 'ON', 'L', 'AN', 'ON', 'ON'], [[1, 6], [2, 5]], 1, 'L'], ['L', 'R', 'R', 'L', 'AN', 'R', 'R']), ('regression: numbers inside brackets', [['R', 'ON', 'ON', 'AN', 'ON', 'ON'], [[1, 5], [2, 4]], 2, 'R'], ['R', 'R', 'R', 'AN', 'R', 'R']), ('regression: numbers inside brackets', [['EN', 'ON', 'ON', 'ON', 'ON', 'L', 'L', 'ON'], [[1, 7], [2, 4]], 1, 'L'], ['EN', 'R', 'ON', 'ON', 'ON', 'L', 'L', 'R']), ('regression: numbers inside brackets', [['L', 'ON', 'EN', 'ON', 'R', 'L', 'AN', 'R', 'ON', 'AN', 'ON', 'L', 'ON'], [[1, 3]], 2, 'L'], ['L', 'L', 'EN', 'L', 'R', 'L', 'AN', 'R', 'ON', 'AN', 'ON', 'L', 'ON']), ('nested pair in RTL embedding', [['L', 'ON', 'ON', 'L', 'ON', 'R', 'ON'], [[1, 6], [2, 4]], 1, 'R'], ['L', 'R', 'R', 'L', 'R', 'R', 'R']), ('nested pair uses updated outer bracket', [['R', 'ON', 'ON', 'R', 'ON', 'L', 'ON'], [[1, 6], [2, 4]], 0, 'L'], ['R', 'L', 'L', 'R', 'L', 'L', 'L']), ('control layout', [['R', 'ON', 'ON', 'R', 'R', 'ON', 'L', 'L', 'ON', 'L'], [[1, 8], [2, 5]], 2, 'R'], ['R', 'L', 'L', 'R', 'R', 'L', 'L', 'L', 'L', 'L']), ('control layout', [['ON', 'ON', 'ON', 'AN', 'R', 'ON', 'ON', 'ON', 'R', 'L'], [[1, 7], [2, 5]], 0, 'L'], ['ON', 'L', 'L', 'AN', 'R', 'L', 'ON', 'L', 'R', 'L'])], [('regression: numbers inside brackets', [['EN', 'ON', 'R', 'ON', 'ON', 'ON', 'AN', 'EN', 'L', 'R', 'R'], [[1, 3]], 2, 'L'], ['EN', 'R', 'R', 'R', 'ON', 'ON', 'AN', 'EN', 'L', 'R', 'R']), ('regression: numbers inside brackets', [['ON', 'ON', 'ON', 'AN', 'ON', 'ON', 'ON', 'ON', 'R'], [[1, 7], [2, 4]], 0, 'L'], ['ON', 'L', 'L', 'AN', 'L', 'ON', 'ON', 'L', 'R']), ('regression: numbers inside brackets', [['EN', 'ON', 'ON', 'ON', 'ON', 'EN', 'ON'], [[1, 6], [2, 4]], 2, 'L'], ['EN', 'R', 'ON', 'ON', 'ON', 'EN', 'R']), ('regression: numbers inside brackets', [['ON', 'EN', 'ON', 'R', 'ON', 'EN', 'ON', 'ON', 'R'], [[4, 6]], 2, 'L'], ['ON', 'EN', 'ON', 'R', 'R', 'EN', 'R', 'ON', 'R']), ('nested pair uses updated outer bracket', [['R', 'ON', 'ON', 'R', 'ON', 'L', 'ON'], [[1, 6], [2, 4]], 0, 'L'], ['R', 'L', 'L', 'R', 'L', 'L', 'L']), ('number inside brackets in RTL context', [['R', 'ON', 'EN', 'ON'], [[1, 3]], 0, 'L'], ['R', 'R', 'EN', 'R']), ('control layout', [['EN', 'ON', 'ON', 'R', 'L', 'ON', 'ON', 'ON', 'ON', 'L', 'L'], [[1, 8], [2, 5]], 0, 'R'], ['EN', 'L', 'L', 'R', 'L', 'L', 'ON', 'ON', 'L', 'L', 'L']), ('control layout', [['R', 'ON', 'R', 'ON', 'ON', 'L', 'EN', 'ON', 'AN'], [], 0, 'L'], ['R', 'ON', 'R', 'ON', 'ON', 'L', 'EN', 'ON', 'AN'])]]\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 toy bidi model over stipulated class labels and integer levels; it is inspired by, but does not claim conformance to, any published algorithm. 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-bidirectional-text-layout-bracket-resolution-numbers-inside-brackets","generated_at":"2026-09-29T14:49:55.471735+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Mixed right-to-left and left-to-right text must resolve levels and visual order exactly, or words, numbers and carets land in the wrong place.","root_cause":"Only R counts as a right-to-left strong type inside the pair.","sha256":"ef791b807baabf35c40f651d3d631f5f199d70a2be9b71e45114cb7b413d4ec6","title":"Paired bracket direction: numbers inside brackets · 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.508,"exit_code":1,"observations":[{"actual":["R","ON","EN","ON"],"check":"number inside brackets in RTL context","expected":["R","R","EN","R"],"passed":false},{"actual":["ON","R","R","AN","ON","R","R","L"],"check":"regression: numbers inside brackets","expected":["ON","R","R","AN","ON","R","R","L"],"passed":true},{"actual":["L","L","ON","ON","ON","ON","EN","ON","R","R","ON","ON"],"check":"regression: numbers inside brackets","expected":["L","L","ON","ON","ON","R","EN","R","R","R","ON","ON"],"passed":false},{"actual":["AN","R","EN","ON","EN","ON","EN","ON","ON","ON","R"],"check":"regression: numbers inside brackets","expected":["AN","R","EN","ON","EN","R","EN","R","ON","ON","R"],"passed":false},{"actual":["R","L","L","R","L","L","L"],"check":"nested pair uses updated outer bracket","expected":["R","L","L","R","L","L","L"],"passed":true},{"actual":["L","R","R","L","R","R","R"],"check":"nested pair in RTL embedding","expected":["L","R","R","L","R","R","R"],"passed":true},{"actual":["ON","L","R","L"],"check":"control layout","expected":["ON","L","R","L"],"passed":true},{"actual":["EN","L","AN","ON","ON","AN"],"check":"control layout","expected":["EN","L","AN","ON","ON","AN"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"number inside brackets in RTL context\", \"actual\": [\"R\", \"ON\", \"EN\", \"ON\"], \"expected\": [\"R\", \"R\", \"EN\", \"R\"], \"passed\": false}, {\"check\": \"regression: numbers inside brackets\", \"actual\": [\"ON\", \"R\", \"R\", \"AN\", \"ON\", \"R\", \"R\", \"L\"], \"expected\": [\"ON\", \"R\", \"R\", \"AN\", \"ON\", \"R\", \"R\", \"L\"], \"passed\": true}, {\"check\": \"regression: numbers inside brackets\", \"actual\": [\"L\", \"L\", \"ON\", \"ON\", \"ON\", \"ON\", \"EN\", \"ON\", \"R\", \"R\", \"ON\", \"ON\"], \"expected\": [\"L\", \"L\", \"ON\", \"ON\", \"ON\", \"R\", \"EN\", \"R\", \"R\", \"R\", \"ON\", \"ON\"], \"passed\": false}, {\"check\": \"regression: numbers inside brackets\", \"actual\": [\"AN\", \"R\", \"EN\", \"ON\", \"EN\", \"ON\", \"EN\", \"ON\", \"ON\", \"ON\", \"R\"], \"expected\": [\"AN\", \"R\", \"EN\", \"ON\", \"EN\", \"R\", \"EN\", \"R\", \"ON\", \"ON\", \"R\"], \"passed\": false}, {\"check\": \"nested pair uses updated outer bracket\", \"actual\": [\"R\", \"L\", \"L\", \"R\", \"L\", \"L\", \"L\"], \"expected\": [\"R\", \"L\", \"L\", \"R\", \"L\", \"L\", \"L\"], \"passed\": true}, {\"check\": \"nested pair in RTL embedding\", \"actual\": [\"L\", \"R\", \"R\", \"L\", \"R\", \"R\", \"R\"], \"expected\": [\"L\", \"R\", \"R\", \"L\", \"R\", \"R\", \"R\"], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [\"ON\", \"L\", \"R\", \"L\"], \"expected\": [\"ON\", \"L\", \"R\", \"L\"], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [\"EN\", \"L\", \"AN\", \"ON\", \"ON\", \"AN\"], \"expected\": [\"EN\", \"L\", \"AN\", \"ON\", \"ON\", \"AN\"], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":40.43,"exit_code":1,"observations":[{"actual":["R","ON","EN","ON"],"check":"number inside brackets in RTL context","expected":["R","R","EN","R"],"passed":false},{"actual":["ON","ON","ON","AN","ON","ON","ON","L"],"check":"regression: numbers inside brackets","expected":["ON","R","R","AN","ON","R","R","L"],"passed":false},{"actual":["L","L","ON","ON","ON","ON","EN","ON","R","R","ON","ON"],"check":"regression: numbers inside brackets","expected":["L","L","ON","ON","ON","R","EN","R","R","R","ON","ON"],"passed":false},{"actual":["AN","R","EN","ON","EN","ON","EN","ON","ON","ON","R"],"check":"regression: numbers inside brackets","expected":["AN","R","EN","ON","EN","R","EN","R","ON","ON","R"],"passed":false},{"actual":["R","L","L","R","L","L","L"],"check":"nested pair uses updated outer bracket","expected":["R","L","L","R","L","L","L"],"passed":true},{"actual":["L","R","R","L","R","R","R"],"check":"nested pair in RTL embedding","expected":["L","R","R","L","R","R","R"],"passed":true},{"actual":["ON","L","R","L"],"check":"control layout","expected":["ON","L","R","L"],"passed":true},{"actual":["EN","L","AN","ON","ON","AN"],"check":"control layout","expected":["EN","L","AN","ON","ON","AN"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"number inside brackets in RTL context\", \"actual\": [\"R\", \"ON\", \"EN\", \"ON\"], \"expected\": [\"R\", \"R\", \"EN\", \"R\"], \"passed\": false}, {\"check\": \"regression: numbers inside brackets\", \"actual\": [\"ON\", \"ON\", \"ON\", \"AN\", \"ON\", \"ON\", \"ON\", \"L\"], \"expected\": [\"ON\", \"R\", \"R\", \"AN\", \"ON\", \"R\", \"R\", \"L\"], \"passed\": false}, {\"check\": \"regression: numbers inside brackets\", \"actual\": [\"L\", \"L\", \"ON\", \"ON\", \"ON\", \"ON\", \"EN\", \"ON\", \"R\", \"R\", \"ON\", \"ON\"], \"expected\": [\"L\", \"L\", \"ON\", \"ON\", \"ON\", \"R\", \"EN\", \"R\", \"R\", \"R\", \"ON\", \"ON\"], \"passed\": false}, {\"check\": \"regression: numbers inside brackets\", \"actual\": [\"AN\", \"R\", \"EN\", \"ON\", \"EN\", \"ON\", \"EN\", \"ON\", \"ON\", \"ON\", \"R\"], \"expected\": [\"AN\", \"R\", \"EN\", \"ON\", \"EN\", \"R\", \"EN\", \"R\", \"ON\", \"ON\", \"R\"], \"passed\": false}, {\"check\": \"nested pair uses updated outer bracket\", \"actual\": [\"R\", \"L\", \"L\", \"R\", \"L\", \"L\", \"L\"], \"expected\": [\"R\", \"L\", \"L\", \"R\", \"L\", \"L\", \"L\"], \"passed\": true}, {\"check\": \"nested pair in RTL embedding\", \"actual\": [\"L\", \"R\", \"R\", \"L\", \"R\", \"R\", \"R\"], \"expected\": [\"L\", \"R\", \"R\", \"L\", \"R\", \"R\", \"R\"], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [\"ON\", \"L\", \"R\", \"L\"], \"expected\": [\"ON\", \"L\", \"R\", \"L\"], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [\"EN\", \"L\", \"AN\", \"ON\", \"ON\", \"AN\"], \"expected\": [\"EN\", \"L\", \"AN\", \"ON\", \"ON\", \"AN\"], \"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."}}