{"abstract":"Paragraphs starting with digits or punctuation are forced LTR.","category":"Bidirectional text layout","checks":8,"contract":"Input [text, default level]. Paragraph separators (\\n, \\r, U+2029; \\r\\n counts once) end a paragraph and stay with it. A trailing non-empty remainder is a paragraph. Each paragraph takes level 1 if its first letter is uppercase (stand-in for RTL), 0 if lowercase, else the default. Return [[paragraph, level]].","evaluation_group":"w2-bidirectional-text-layout-paragraph-split","failed_approach":"Accepting any non-space character lets punctuation decide.","family":"w2-bidirectional-text-layout-paragraph-split-strong-character-test","id":"FA-80836","implementations":{"attempt":{"sha256":"8310ebf18b8c10d93bd47d562ecc7a201d011776f0053c7a2e13df2d73507b88","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    text, default = x\n    paras = []\n    cur = ''\n    i = 0\n    while i < len(text):\n        ch = text[i]\n        if ch == '\\r' and text[i + 1:i + 2] == '\\n':\n            cur += '\\r\\n'\n            paras.append(cur)\n            cur = ''\n            i += 2\n            continue\n        cur += ch\n        if ch in '\\n\\r\\u2029':\n            paras.append(cur)\n            cur = ''\n        i += 1\n    if cur:\n        paras.append(cur)\n    out = []\n    for p in paras:\n        level = default\n        for ch in p:\n            if not ch.isspace():\n                level = 1 if ch.isupper() else 0\n                break\n        out.append([p, level])\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('digits then letter', ['12 X\\n', 0], [['12 X\\n', 1]]), ('regression: strong character test', [' ,.1ZaYZ,,2ca1', 1], [[' ,.1ZaYZ,,2ca1', 1]]), ('regression: strong character test', ['b  \\r\\nc2,\\u202911\\na,', 1], [['b  \\r\\n', 0], ['c2,\\u2029', 0], ['11\\n', 1], ['a,', 0]]), ('partial-repair probe', ['\\ncZ2.\\na..X!\\n!Z,.', 0], [['\\n', 0], ['cZ2.\\n', 0], ['a..X!\\n', 0], ['!Z,.', 1]]), ('CRLF is one separator', ['ab\\r\\nXY', 0], [['ab\\r\\n', 0], ['XY', 1]]), ('separator only paragraph', ['a\\n\\nZ', 1], [['a\\n', 0], ['\\n', 1], ['Z', 1]]), ('control layout', ['YX\\na\\r\\n \\naZa', 0], [['YX\\n', 1], ['a\\r\\n', 0], [' \\n', 0], ['aZa', 0]]), ('control layout', ['\\n\\r\\nb\\n', 1], [['\\n', 1], ['\\r\\n', 1], ['b\\n', 0]])], [('regression: strong character test', ['\\r\\n1,X1 \\r\\n.b,', 1], [['\\r\\n', 1], ['1,X1 \\r\\n', 1], ['.b,', 0]]), ('regression: strong character test', ['2\\nX\\r\\n\\naX\\r\\nb\\nY', 1], [['2\\n', 1], ['X\\r\\n', 1], ['\\n', 1], ['aX\\r\\n', 0], ['b\\n', 0], ['Y', 1]]), ('partial-repair probe', ['Xac!\\nZ2\\u2029aYa.\\r,Z!', 0], [['Xac!\\n', 1], ['Z2\\u2029', 1], ['aYa.\\r', 0], [',Z!', 1]]), ('regression: strong character test', ['1!X\\r\\n', 1], [['1!X\\r\\n', 1]]), ('CRLF is one separator', ['ab\\r\\nXY', 0], [['ab\\r\\n', 0], ['XY', 1]]), ('digits then letter', ['12 X\\n', 0], [['12 X\\n', 1]]), ('control layout', ['\\n.! 1!b!,21Z\\n1', 0], [['\\n', 0], ['.! 1!b!,21Z\\n', 0], ['1', 0]]), ('control layout', ['a\\r\\n\\nY1X111,2Z', 1], [['a\\r\\n', 0], ['\\n', 1], ['Y1X111,2Z', 1]])], [('regression: strong character test', ['2X1aXb 2!Z2,\\rX', 1], [['2X1aXb 2!Z2,\\r', 1], ['X', 1]]), ('regression: strong character test', ['12. \\r\\n', 1], [['12. \\r\\n', 1]]), ('partial-repair probe', ['\\r,cb\\r\\u2029a\\n.Z\\r', 1], [['\\r', 1], [',cb\\r', 0], ['\\u2029', 1], ['a\\n', 0], ['.Z\\r', 1]]), ('regression: strong character test', ['!c\\r\\n2bb\\n22', 1], [['!c\\r\\n', 0], ['2bb\\n', 0], ['22', 1]]), ('separator only paragraph', ['a\\n\\nZ', 1], [['a\\n', 0], ['\\n', 1], ['Z', 1]]), ('digits then letter', ['12 X\\n', 0], [['12 X\\n', 1]]), ('control layout', ['Z.1bYYb!ZYXZ\\rZ', 1], [['Z.1bYYb!ZYXZ\\r', 1], ['Z', 1]]), ('control layout', ['cZ!', 0], [['cZ!', 0]])], [('regression: strong character test', ['1XZ. ', 0], [['1XZ. ', 1]]), ('regression: strong character test', ['a \\n\\n,\\n,1\\r\\n\\ncXccZX', 1], [['a \\n', 0], ['\\n', 1], [',\\n', 1], [',1\\r\\n', 1], ['\\n', 1], ['cXccZX', 0]]), ('partial-repair probe', ['\\r\\nc2\\r.\\nXY!Z\\u2029Xa', 1], [['\\r\\n', 1], ['c2\\r', 0], ['.\\n', 1], ['XY!Z\\u2029', 1], ['Xa', 1]]), ('regression: strong character test', ['2\\r\\n\\r\\n!,!Y\\u2029', 1], [['2\\r\\n', 1], ['\\r\\n', 1], ['!,!Y\\u2029', 1]]), ('separator only paragraph', ['a\\n\\nZ', 1], [['a\\n', 0], ['\\n', 1], ['Z', 1]]), ('CRLF is one separator', ['ab\\r\\nXY', 0], [['ab\\r\\n', 0], ['XY', 1]]), ('control layout', ['aXb\\u2029 b\\na1b\\n', 0], [['aXb\\u2029', 0], [' b\\n', 0], ['a1b\\n', 0]]), ('control layout', ['aXXa,\\n\\r\\n\\n\\n ,', 0], [['aXXa,\\n', 0], ['\\r\\n', 0], ['\\n', 0], ['\\n', 0], [' ,', 0]])], [('regression: strong character test', ['Z.,\\n\\n2Y\\r!b,', 1], [['Z.,\\n', 1], ['\\n', 1], ['2Y\\r', 1], ['!b,', 0]]), ('regression: strong character test', ['Y\\n c\\u20291 ', 1], [['Y\\n', 1], [' c\\u2029', 0], ['1 ', 1]]), ('regression: strong character test', ['XX\\r\\nc!,,1\\n.1,Y', 0], [['XX\\r\\n', 1], ['c!,,1\\n', 0], ['.1,Y', 1]]), ('regression: strong character test', ['.\\r! \\n22,\\n.XYb', 1], [['.\\r', 1], ['! \\n', 1], ['22,\\n', 1], ['.XYb', 1]]), ('separator only paragraph', ['a\\n\\nZ', 1], [['a\\n', 0], ['\\n', 1], ['Z', 1]]), ('CRLF is one separator', ['ab\\r\\nXY', 0], [['ab\\r\\n', 0], ['XY', 1]]), ('control layout', ['ZZc!,Z ', 1], [['ZZc!,Z ', 1]]), ('control layout', ['!\\r,', 0], [['!\\r', 0], [',', 0]])]]\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":"52e8c3d31a023df3e1ca48169ddad23ebbdb1d225176297a68f00f2240a43d0c","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    text, default = x\n    paras = []\n    cur = ''\n    i = 0\n    while i < len(text):\n        ch = text[i]\n        if ch == '\\r' and text[i + 1:i + 2] == '\\n':\n            cur += '\\r\\n'\n            paras.append(cur)\n            cur = ''\n            i += 2\n            continue\n        cur += ch\n        if ch in '\\n\\r\\u2029':\n            paras.append(cur)\n            cur = ''\n        i += 1\n    if cur:\n        paras.append(cur)\n    out = []\n    for p in paras:\n        level = default\n        for ch in p:\n            if ch.isalnum():\n                level = 1 if ch.isupper() else 0\n                break\n        out.append([p, level])\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('digits then letter', ['12 X\\n', 0], [['12 X\\n', 1]]), ('regression: strong character test', [' ,.1ZaYZ,,2ca1', 1], [[' ,.1ZaYZ,,2ca1', 1]]), ('regression: strong character test', ['b  \\r\\nc2,\\u202911\\na,', 1], [['b  \\r\\n', 0], ['c2,\\u2029', 0], ['11\\n', 1], ['a,', 0]]), ('partial-repair probe', ['\\ncZ2.\\na..X!\\n!Z,.', 0], [['\\n', 0], ['cZ2.\\n', 0], ['a..X!\\n', 0], ['!Z,.', 1]]), ('CRLF is one separator', ['ab\\r\\nXY', 0], [['ab\\r\\n', 0], ['XY', 1]]), ('separator only paragraph', ['a\\n\\nZ', 1], [['a\\n', 0], ['\\n', 1], ['Z', 1]]), ('control layout', ['YX\\na\\r\\n \\naZa', 0], [['YX\\n', 1], ['a\\r\\n', 0], [' \\n', 0], ['aZa', 0]]), ('control layout', ['\\n\\r\\nb\\n', 1], [['\\n', 1], ['\\r\\n', 1], ['b\\n', 0]])], [('regression: strong character test', ['\\r\\n1,X1 \\r\\n.b,', 1], [['\\r\\n', 1], ['1,X1 \\r\\n', 1], ['.b,', 0]]), ('regression: strong character test', ['2\\nX\\r\\n\\naX\\r\\nb\\nY', 1], [['2\\n', 1], ['X\\r\\n', 1], ['\\n', 1], ['aX\\r\\n', 0], ['b\\n', 0], ['Y', 1]]), ('partial-repair probe', ['Xac!\\nZ2\\u2029aYa.\\r,Z!', 0], [['Xac!\\n', 1], ['Z2\\u2029', 1], ['aYa.\\r', 0], [',Z!', 1]]), ('regression: strong character test', ['1!X\\r\\n', 1], [['1!X\\r\\n', 1]]), ('CRLF is one separator', ['ab\\r\\nXY', 0], [['ab\\r\\n', 0], ['XY', 1]]), ('digits then letter', ['12 X\\n', 0], [['12 X\\n', 1]]), ('control layout', ['\\n.! 1!b!,21Z\\n1', 0], [['\\n', 0], ['.! 1!b!,21Z\\n', 0], ['1', 0]]), ('control layout', ['a\\r\\n\\nY1X111,2Z', 1], [['a\\r\\n', 0], ['\\n', 1], ['Y1X111,2Z', 1]])], [('regression: strong character test', ['2X1aXb 2!Z2,\\rX', 1], [['2X1aXb 2!Z2,\\r', 1], ['X', 1]]), ('regression: strong character test', ['12. \\r\\n', 1], [['12. \\r\\n', 1]]), ('partial-repair probe', ['\\r,cb\\r\\u2029a\\n.Z\\r', 1], [['\\r', 1], [',cb\\r', 0], ['\\u2029', 1], ['a\\n', 0], ['.Z\\r', 1]]), ('regression: strong character test', ['!c\\r\\n2bb\\n22', 1], [['!c\\r\\n', 0], ['2bb\\n', 0], ['22', 1]]), ('separator only paragraph', ['a\\n\\nZ', 1], [['a\\n', 0], ['\\n', 1], ['Z', 1]]), ('digits then letter', ['12 X\\n', 0], [['12 X\\n', 1]]), ('control layout', ['Z.1bYYb!ZYXZ\\rZ', 1], [['Z.1bYYb!ZYXZ\\r', 1], ['Z', 1]]), ('control layout', ['cZ!', 0], [['cZ!', 0]])], [('regression: strong character test', ['1XZ. ', 0], [['1XZ. ', 1]]), ('regression: strong character test', ['a \\n\\n,\\n,1\\r\\n\\ncXccZX', 1], [['a \\n', 0], ['\\n', 1], [',\\n', 1], [',1\\r\\n', 1], ['\\n', 1], ['cXccZX', 0]]), ('partial-repair probe', ['\\r\\nc2\\r.\\nXY!Z\\u2029Xa', 1], [['\\r\\n', 1], ['c2\\r', 0], ['.\\n', 1], ['XY!Z\\u2029', 1], ['Xa', 1]]), ('regression: strong character test', ['2\\r\\n\\r\\n!,!Y\\u2029', 1], [['2\\r\\n', 1], ['\\r\\n', 1], ['!,!Y\\u2029', 1]]), ('separator only paragraph', ['a\\n\\nZ', 1], [['a\\n', 0], ['\\n', 1], ['Z', 1]]), ('CRLF is one separator', ['ab\\r\\nXY', 0], [['ab\\r\\n', 0], ['XY', 1]]), ('control layout', ['aXb\\u2029 b\\na1b\\n', 0], [['aXb\\u2029', 0], [' b\\n', 0], ['a1b\\n', 0]]), ('control layout', ['aXXa,\\n\\r\\n\\n\\n ,', 0], [['aXXa,\\n', 0], ['\\r\\n', 0], ['\\n', 0], ['\\n', 0], [' ,', 0]])], [('regression: strong character test', ['Z.,\\n\\n2Y\\r!b,', 1], [['Z.,\\n', 1], ['\\n', 1], ['2Y\\r', 1], ['!b,', 0]]), ('regression: strong character test', ['Y\\n c\\u20291 ', 1], [['Y\\n', 1], [' c\\u2029', 0], ['1 ', 1]]), ('regression: strong character test', ['XX\\r\\nc!,,1\\n.1,Y', 0], [['XX\\r\\n', 1], ['c!,,1\\n', 0], ['.1,Y', 1]]), ('regression: strong character test', ['.\\r! \\n22,\\n.XYb', 1], [['.\\r', 1], ['! \\n', 1], ['22,\\n', 1], ['.XYb', 1]]), ('separator only paragraph', ['a\\n\\nZ', 1], [['a\\n', 0], ['\\n', 1], ['Z', 1]]), ('CRLF is one separator', ['ab\\r\\nXY', 0], [['ab\\r\\n', 0], ['XY', 1]]), ('control layout', ['ZZc!,Z ', 1], [['ZZc!,Z ', 1]]), ('control layout', ['!\\r,', 0], [['!\\r', 0], [',', 0]])]]\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"},"fixed":{"sha256":"4069f4bc92c8b4bd8d181f6780dd2148e871688f7d223cc7052d2f1d1981ed13","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    text, default = x\n    paras = []\n    cur = ''\n    i = 0\n    while i < len(text):\n        ch = text[i]\n        if ch == '\\r' and text[i + 1:i + 2] == '\\n':\n            cur += '\\r\\n'\n            paras.append(cur)\n            cur = ''\n            i += 2\n            continue\n        cur += ch\n        if ch in '\\n\\r\\u2029':\n            paras.append(cur)\n            cur = ''\n        i += 1\n    if cur:\n        paras.append(cur)\n    out = []\n    for p in paras:\n        level = default\n        for ch in p:\n            if ch.isalpha():\n                level = 1 if ch.isupper() else 0\n                break\n        out.append([p, level])\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('digits then letter', ['12 X\\n', 0], [['12 X\\n', 1]]), ('regression: strong character test', [' ,.1ZaYZ,,2ca1', 1], [[' ,.1ZaYZ,,2ca1', 1]]), ('regression: strong character test', ['b  \\r\\nc2,\\u202911\\na,', 1], [['b  \\r\\n', 0], ['c2,\\u2029', 0], ['11\\n', 1], ['a,', 0]]), ('partial-repair probe', ['\\ncZ2.\\na..X!\\n!Z,.', 0], [['\\n', 0], ['cZ2.\\n', 0], ['a..X!\\n', 0], ['!Z,.', 1]]), ('CRLF is one separator', ['ab\\r\\nXY', 0], [['ab\\r\\n', 0], ['XY', 1]]), ('separator only paragraph', ['a\\n\\nZ', 1], [['a\\n', 0], ['\\n', 1], ['Z', 1]]), ('control layout', ['YX\\na\\r\\n \\naZa', 0], [['YX\\n', 1], ['a\\r\\n', 0], [' \\n', 0], ['aZa', 0]]), ('control layout', ['\\n\\r\\nb\\n', 1], [['\\n', 1], ['\\r\\n', 1], ['b\\n', 0]])], [('regression: strong character test', ['\\r\\n1,X1 \\r\\n.b,', 1], [['\\r\\n', 1], ['1,X1 \\r\\n', 1], ['.b,', 0]]), ('regression: strong character test', ['2\\nX\\r\\n\\naX\\r\\nb\\nY', 1], [['2\\n', 1], ['X\\r\\n', 1], ['\\n', 1], ['aX\\r\\n', 0], ['b\\n', 0], ['Y', 1]]), ('partial-repair probe', ['Xac!\\nZ2\\u2029aYa.\\r,Z!', 0], [['Xac!\\n', 1], ['Z2\\u2029', 1], ['aYa.\\r', 0], [',Z!', 1]]), ('regression: strong character test', ['1!X\\r\\n', 1], [['1!X\\r\\n', 1]]), ('CRLF is one separator', ['ab\\r\\nXY', 0], [['ab\\r\\n', 0], ['XY', 1]]), ('digits then letter', ['12 X\\n', 0], [['12 X\\n', 1]]), ('control layout', ['\\n.! 1!b!,21Z\\n1', 0], [['\\n', 0], ['.! 1!b!,21Z\\n', 0], ['1', 0]]), ('control layout', ['a\\r\\n\\nY1X111,2Z', 1], [['a\\r\\n', 0], ['\\n', 1], ['Y1X111,2Z', 1]])], [('regression: strong character test', ['2X1aXb 2!Z2,\\rX', 1], [['2X1aXb 2!Z2,\\r', 1], ['X', 1]]), ('regression: strong character test', ['12. \\r\\n', 1], [['12. \\r\\n', 1]]), ('partial-repair probe', ['\\r,cb\\r\\u2029a\\n.Z\\r', 1], [['\\r', 1], [',cb\\r', 0], ['\\u2029', 1], ['a\\n', 0], ['.Z\\r', 1]]), ('regression: strong character test', ['!c\\r\\n2bb\\n22', 1], [['!c\\r\\n', 0], ['2bb\\n', 0], ['22', 1]]), ('separator only paragraph', ['a\\n\\nZ', 1], [['a\\n', 0], ['\\n', 1], ['Z', 1]]), ('digits then letter', ['12 X\\n', 0], [['12 X\\n', 1]]), ('control layout', ['Z.1bYYb!ZYXZ\\rZ', 1], [['Z.1bYYb!ZYXZ\\r', 1], ['Z', 1]]), ('control layout', ['cZ!', 0], [['cZ!', 0]])], [('regression: strong character test', ['1XZ. ', 0], [['1XZ. ', 1]]), ('regression: strong character test', ['a \\n\\n,\\n,1\\r\\n\\ncXccZX', 1], [['a \\n', 0], ['\\n', 1], [',\\n', 1], [',1\\r\\n', 1], ['\\n', 1], ['cXccZX', 0]]), ('partial-repair probe', ['\\r\\nc2\\r.\\nXY!Z\\u2029Xa', 1], [['\\r\\n', 1], ['c2\\r', 0], ['.\\n', 1], ['XY!Z\\u2029', 1], ['Xa', 1]]), ('regression: strong character test', ['2\\r\\n\\r\\n!,!Y\\u2029', 1], [['2\\r\\n', 1], ['\\r\\n', 1], ['!,!Y\\u2029', 1]]), ('separator only paragraph', ['a\\n\\nZ', 1], [['a\\n', 0], ['\\n', 1], ['Z', 1]]), ('CRLF is one separator', ['ab\\r\\nXY', 0], [['ab\\r\\n', 0], ['XY', 1]]), ('control layout', ['aXb\\u2029 b\\na1b\\n', 0], [['aXb\\u2029', 0], [' b\\n', 0], ['a1b\\n', 0]]), ('control layout', ['aXXa,\\n\\r\\n\\n\\n ,', 0], [['aXXa,\\n', 0], ['\\r\\n', 0], ['\\n', 0], ['\\n', 0], [' ,', 0]])], [('regression: strong character test', ['Z.,\\n\\n2Y\\r!b,', 1], [['Z.,\\n', 1], ['\\n', 1], ['2Y\\r', 1], ['!b,', 0]]), ('regression: strong character test', ['Y\\n c\\u20291 ', 1], [['Y\\n', 1], [' c\\u2029', 0], ['1 ', 1]]), ('regression: strong character test', ['XX\\r\\nc!,,1\\n.1,Y', 0], [['XX\\r\\n', 1], ['c!,,1\\n', 0], ['.1,Y', 1]]), ('regression: strong character test', ['.\\r! \\n22,\\n.XYb', 1], [['.\\r', 1], ['! \\n', 1], ['22,\\n', 1], ['.XYb', 1]]), ('separator only paragraph', ['a\\n\\nZ', 1], [['a\\n', 0], ['\\n', 1], ['Z', 1]]), ('CRLF is one separator', ['ab\\r\\nXY', 0], [['ab\\r\\n', 0], ['XY', 1]]), ('control layout', ['ZZc!,Z ', 1], [['ZZc!,Z ', 1]]), ('control layout', ['!\\r,', 0], [['!\\r', 0], [',', 0]])]]\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-paragraph-split-strong-character-test","generated_at":"2026-09-29T14:49:57.434385+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.","repair":"Only letters decide the paragraph level.","root_cause":"Digits are accepted as strong characters.","sha256":"647f44932a89cc482a6db8101f8acda967492d6f2827a5f153fd048667cdba8c","title":"Paragraph separation and direction: strong character test · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":40.677,"exit_code":1,"observations":[{"actual":[["12 X\n",0]],"check":"digits then letter","expected":[["12 X\n",1]],"passed":false},{"actual":[[" ,.1ZaYZ,,2ca1",0]],"check":"regression: strong character test","expected":[[" ,.1ZaYZ,,2ca1",1]],"passed":false},{"actual":[["b  \r\n",0],["c2, ",0],["11\n",0],["a,",0]],"check":"regression: strong character test","expected":[["b  \r\n",0],["c2, ",0],["11\n",1],["a,",0]],"passed":false},{"actual":[["\n",0],["cZ2.\n",0],["a..X!\n",0],["!Z,.",0]],"check":"partial-repair probe","expected":[["\n",0],["cZ2.\n",0],["a..X!\n",0],["!Z,.",1]],"passed":false},{"actual":[["ab\r\n",0],["XY",1]],"check":"CRLF is one separator","expected":[["ab\r\n",0],["XY",1]],"passed":true},{"actual":[["a\n",0],["\n",1],["Z",1]],"check":"separator only paragraph","expected":[["a\n",0],["\n",1],["Z",1]],"passed":true},{"actual":[["YX\n",1],["a\r\n",0],[" \n",0],["aZa",0]],"check":"control layout","expected":[["YX\n",1],["a\r\n",0],[" \n",0],["aZa",0]],"passed":true},{"actual":[["\n",1],["\r\n",1],["b\n",0]],"check":"control layout","expected":[["\n",1],["\r\n",1],["b\n",0]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"digits then letter\", \"actual\": [[\"12 X\\n\", 0]], \"expected\": [[\"12 X\\n\", 1]], \"passed\": false}, {\"check\": \"regression: strong character test\", \"actual\": [[\" ,.1ZaYZ,,2ca1\", 0]], \"expected\": [[\" ,.1ZaYZ,,2ca1\", 1]], \"passed\": false}, {\"check\": \"regression: strong character test\", \"actual\": [[\"b  \\r\\n\", 0], [\"c2, \", 0], [\"11\\n\", 0], [\"a,\", 0]], \"expected\": [[\"b  \\r\\n\", 0], [\"c2, \", 0], [\"11\\n\", 1], [\"a,\", 0]], \"passed\": false}, {\"check\": \"partial-repair probe\", \"actual\": [[\"\\n\", 0], [\"cZ2.\\n\", 0], [\"a..X!\\n\", 0], [\"!Z,.\", 0]], \"expected\": [[\"\\n\", 0], [\"cZ2.\\n\", 0], [\"a..X!\\n\", 0], [\"!Z,.\", 1]], \"passed\": false}, {\"check\": \"CRLF is one separator\", \"actual\": [[\"ab\\r\\n\", 0], [\"XY\", 1]], \"expected\": [[\"ab\\r\\n\", 0], [\"XY\", 1]], \"passed\": true}, {\"check\": \"separator only paragraph\", \"actual\": [[\"a\\n\", 0], [\"\\n\", 1], [\"Z\", 1]], \"expected\": [[\"a\\n\", 0], [\"\\n\", 1], [\"Z\", 1]], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [[\"YX\\n\", 1], [\"a\\r\\n\", 0], [\" \\n\", 0], [\"aZa\", 0]], \"expected\": [[\"YX\\n\", 1], [\"a\\r\\n\", 0], [\" \\n\", 0], [\"aZa\", 0]], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [[\"\\n\", 1], [\"\\r\\n\", 1], [\"b\\n\", 0]], \"expected\": [[\"\\n\", 1], [\"\\r\\n\", 1], [\"b\\n\", 0]], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":39.479,"exit_code":1,"observations":[{"actual":[["12 X\n",0]],"check":"digits then letter","expected":[["12 X\n",1]],"passed":false},{"actual":[[" ,.1ZaYZ,,2ca1",0]],"check":"regression: strong character test","expected":[[" ,.1ZaYZ,,2ca1",1]],"passed":false},{"actual":[["b  \r\n",0],["c2, ",0],["11\n",0],["a,",0]],"check":"regression: strong character test","expected":[["b  \r\n",0],["c2, ",0],["11\n",1],["a,",0]],"passed":false},{"actual":[["\n",0],["cZ2.\n",0],["a..X!\n",0],["!Z,.",1]],"check":"partial-repair probe","expected":[["\n",0],["cZ2.\n",0],["a..X!\n",0],["!Z,.",1]],"passed":true},{"actual":[["ab\r\n",0],["XY",1]],"check":"CRLF is one separator","expected":[["ab\r\n",0],["XY",1]],"passed":true},{"actual":[["a\n",0],["\n",1],["Z",1]],"check":"separator only paragraph","expected":[["a\n",0],["\n",1],["Z",1]],"passed":true},{"actual":[["YX\n",1],["a\r\n",0],[" \n",0],["aZa",0]],"check":"control layout","expected":[["YX\n",1],["a\r\n",0],[" \n",0],["aZa",0]],"passed":true},{"actual":[["\n",1],["\r\n",1],["b\n",0]],"check":"control layout","expected":[["\n",1],["\r\n",1],["b\n",0]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"digits then letter\", \"actual\": [[\"12 X\\n\", 0]], \"expected\": [[\"12 X\\n\", 1]], \"passed\": false}, {\"check\": \"regression: strong character test\", \"actual\": [[\" ,.1ZaYZ,,2ca1\", 0]], \"expected\": [[\" ,.1ZaYZ,,2ca1\", 1]], \"passed\": false}, {\"check\": \"regression: strong character test\", \"actual\": [[\"b  \\r\\n\", 0], [\"c2, \", 0], [\"11\\n\", 0], [\"a,\", 0]], \"expected\": [[\"b  \\r\\n\", 0], [\"c2, \", 0], [\"11\\n\", 1], [\"a,\", 0]], \"passed\": false}, {\"check\": \"partial-repair probe\", \"actual\": [[\"\\n\", 0], [\"cZ2.\\n\", 0], [\"a..X!\\n\", 0], [\"!Z,.\", 1]], \"expected\": [[\"\\n\", 0], [\"cZ2.\\n\", 0], [\"a..X!\\n\", 0], [\"!Z,.\", 1]], \"passed\": true}, {\"check\": \"CRLF is one separator\", \"actual\": [[\"ab\\r\\n\", 0], [\"XY\", 1]], \"expected\": [[\"ab\\r\\n\", 0], [\"XY\", 1]], \"passed\": true}, {\"check\": \"separator only paragraph\", \"actual\": [[\"a\\n\", 0], [\"\\n\", 1], [\"Z\", 1]], \"expected\": [[\"a\\n\", 0], [\"\\n\", 1], [\"Z\", 1]], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [[\"YX\\n\", 1], [\"a\\r\\n\", 0], [\" \\n\", 0], [\"aZa\", 0]], \"expected\": [[\"YX\\n\", 1], [\"a\\r\\n\", 0], [\" \\n\", 0], [\"aZa\", 0]], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [[\"\\n\", 1], [\"\\r\\n\", 1], [\"b\\n\", 0]], \"expected\": [[\"\\n\", 1], [\"\\r\\n\", 1], [\"b\\n\", 0]], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":40.163,"exit_code":0,"observations":[{"actual":[["12 X\n",1]],"check":"digits then letter","expected":[["12 X\n",1]],"passed":true},{"actual":[[" ,.1ZaYZ,,2ca1",1]],"check":"regression: strong character test","expected":[[" ,.1ZaYZ,,2ca1",1]],"passed":true},{"actual":[["b  \r\n",0],["c2, ",0],["11\n",1],["a,",0]],"check":"regression: strong character test","expected":[["b  \r\n",0],["c2, ",0],["11\n",1],["a,",0]],"passed":true},{"actual":[["\n",0],["cZ2.\n",0],["a..X!\n",0],["!Z,.",1]],"check":"partial-repair probe","expected":[["\n",0],["cZ2.\n",0],["a..X!\n",0],["!Z,.",1]],"passed":true},{"actual":[["ab\r\n",0],["XY",1]],"check":"CRLF is one separator","expected":[["ab\r\n",0],["XY",1]],"passed":true},{"actual":[["a\n",0],["\n",1],["Z",1]],"check":"separator only paragraph","expected":[["a\n",0],["\n",1],["Z",1]],"passed":true},{"actual":[["YX\n",1],["a\r\n",0],[" \n",0],["aZa",0]],"check":"control layout","expected":[["YX\n",1],["a\r\n",0],[" \n",0],["aZa",0]],"passed":true},{"actual":[["\n",1],["\r\n",1],["b\n",0]],"check":"control layout","expected":[["\n",1],["\r\n",1],["b\n",0]],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"digits then letter\", \"actual\": [[\"12 X\\n\", 1]], \"expected\": [[\"12 X\\n\", 1]], \"passed\": true}, {\"check\": \"regression: strong character test\", \"actual\": [[\" ,.1ZaYZ,,2ca1\", 1]], \"expected\": [[\" ,.1ZaYZ,,2ca1\", 1]], \"passed\": true}, {\"check\": \"regression: strong character test\", \"actual\": [[\"b  \\r\\n\", 0], [\"c2, \", 0], [\"11\\n\", 1], [\"a,\", 0]], \"expected\": [[\"b  \\r\\n\", 0], [\"c2, \", 0], [\"11\\n\", 1], [\"a,\", 0]], \"passed\": true}, {\"check\": \"partial-repair probe\", \"actual\": [[\"\\n\", 0], [\"cZ2.\\n\", 0], [\"a..X!\\n\", 0], [\"!Z,.\", 1]], \"expected\": [[\"\\n\", 0], [\"cZ2.\\n\", 0], [\"a..X!\\n\", 0], [\"!Z,.\", 1]], \"passed\": true}, {\"check\": \"CRLF is one separator\", \"actual\": [[\"ab\\r\\n\", 0], [\"XY\", 1]], \"expected\": [[\"ab\\r\\n\", 0], [\"XY\", 1]], \"passed\": true}, {\"check\": \"separator only paragraph\", \"actual\": [[\"a\\n\", 0], [\"\\n\", 1], [\"Z\", 1]], \"expected\": [[\"a\\n\", 0], [\"\\n\", 1], [\"Z\", 1]], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [[\"YX\\n\", 1], [\"a\\r\\n\", 0], [\" \\n\", 0], [\"aZa\", 0]], \"expected\": [[\"YX\\n\", 1], [\"a\\r\\n\", 0], [\" \\n\", 0], [\"aZa\", 0]], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [[\"\\n\", 1], [\"\\r\\n\", 1], [\"b\\n\", 0]], \"expected\": [[\"\\n\", 1], [\"\\r\\n\", 1], [\"b\\n\", 0]], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}