{"abstract":"Last lines of exactly the minimum length are still rebalanced.","category":"Typography line breaking","checks":8,"contract":"Input [words, width, minimum last-line length]. Greedy fill (unit spaces; overwide word alone). Then while there are at least two lines and the last line string is shorter than the minimum, move the last word of the previous line down if that line keeps at least one word and the new last line fits. Return lines.","evaluation_group":"w2-typography-line-breaking-runt-last-line","failed_approach":"Using min - 1 leaves genuine runts.","family":"w2-typography-line-breaking-runt-last-line-runt-length-threshold","id":"FA-80126","implementations":{"attempt":{"sha256":"cab48823b7fbb04a26e4db3eb73ae215887b1ae902bee9a26b7bd8236f234a7b","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    words, width, min_last = x\n    lines = []\n    cur = ''\n    for w in words:\n        cand = w if not cur else cur + ' ' + w\n        if len(cand) <= width or not cur:\n            cur = cand\n        else:\n            lines.append(cur)\n            cur = w\n    lines.append(cur)\n    while len(lines) >= 2 and len(lines[-1]) < min_last - 1:\n        prev = lines[-2].split(' ')\n        if len(prev) < 2:\n            break\n        moved = prev[-1] + ' ' + lines[-1]\n        if len(moved) > width:\n            break\n        lines[-2] = ' '.join(prev[:-1])\n        lines[-1] = moved\n    return lines\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: runt length threshold', [['the', 'is', 'grid', 'at', 'at', 'a', 'is'], 18, 7], ['the is grid at', 'at a is']), ('regression: runt length threshold', [['kerning', 'a', 'a', 'ink', 'x', 'is', 'on', 'type', 'grid', 'of', 'x'], 11, 4], ['kerning a a', 'ink x is on', 'type grid', 'of x']), ('partial-repair probe', [['of', 'measure', 'at', 'x', 'baseline', 'serif', 'the', 'of', 'the'], 13, 7], ['of measure at', 'x baseline', 'serif', 'the of the']), ('partial-repair probe', [['a', 'of', 'is', 'a', 'at', 'on', 'at', 'baseline', 'at', 'on'], 13, 3], ['a of is a at', 'on at', 'baseline', 'at on']), ('one-word runt pulled down', [['the', 'type', 'grid', 'is', 'a'], 12, 5], ['the type', 'grid is a']), ('runt limited by width', [['kerning', 'baseline', 'x'], 10, 4], ['kerning', 'baseline x']), ('control layout', [['measure', 'kerning', 'is', 'a', 'is', 'of', 'at', 'of', 'a', 'of'], 7, 4], ['measure', 'kerning', 'is a is', 'of at', 'of a of']), ('control layout', [['type', 'the', 'baseline', 'a', 'grid', 'x', 'ink', 'of'], 20, 9], ['type the baseline a', 'grid x ink of'])], [('regression: runt length threshold', [['a', 'at', 'is', 'on', 'baseline'], 17, 8], ['a at is on', 'baseline']), ('regression: runt length threshold', [['serif', 'baseline', 'x', 'ink', 'at', 'on', 'on', 'a', 'at'], 16, 4], ['serif baseline x', 'ink at on on', 'a at']), ('partial-repair probe', [['grid', 'the', 'baseline', 'at', 'the', 'is'], 16, 7], ['grid the', 'baseline', 'at the is']), ('partial-repair probe', [['type', 'type', 'grid'], 12, 5], ['type', 'type grid']), ('one-word runt pulled down', [['the', 'type', 'grid', 'is', 'a'], 12, 5], ['the type', 'grid is a']), ('runt limited by width', [['kerning', 'baseline', 'x'], 10, 4], ['kerning', 'baseline x']), ('control layout', [['is', 'ink', 'of', 'x', 'x', 'serif', 'at', 'kerning', 'type'], 15, 5], ['is ink of x x', 'serif at', 'kerning type']), ('control layout', [['the', 'measure', 'grid', 'on', 'a', 'measure', 'at'], 11, 7], ['the measure', 'grid on a', 'measure at'])], [('regression: runt length threshold', [['ink', 'the', 'kerning', 'x', 'kerning'], 18, 7], ['ink the kerning x', 'kerning']), ('regression: runt length threshold', [['grid', 'a', 'the', 'a', 'the', 'kerning', 'a', 'of', 'a', 'at', 'on'], 9, 5], ['grid a', 'the a the', 'kerning a', 'of a', 'at on']), ('partial-repair probe', [['a', 'of', 'is', 'a', 'at', 'on', 'at', 'baseline', 'at', 'on'], 13, 3], ['a of is a at', 'on at', 'baseline', 'at on']), ('partial-repair probe', [['baseline', 'kerning', 'grid', 'baseline', 'on', 'x', 'of', 'grid', 'kerning', 'a', 'of'], 19, 3], ['baseline kerning', 'grid baseline on x', 'of grid kerning', 'a of']), ('one-word runt pulled down', [['the', 'type', 'grid', 'is', 'a'], 12, 5], ['the type', 'grid is a']), ('runt limited by width', [['kerning', 'baseline', 'x'], 10, 4], ['kerning', 'baseline x']), ('control layout', [['is', 'on', 'serif', 'grid', 'serif', 'grid', 'of', 'measure', 'of', 'of'], 15, 7], ['is on serif', 'grid serif grid', 'of', 'measure of of']), ('control layout', [['ink', 'kerning', 'ink'], 8, 9], ['ink', 'kerning', 'ink'])], [('regression: runt length threshold', [['grid', 'kerning', 'a', 'measure', 'serif', 'type'], 14, 4], ['grid kerning a', 'measure serif', 'type']), ('regression: runt length threshold', [['kerning', 'a', 'a', 'ink', 'x', 'is', 'on', 'type', 'grid', 'of', 'x'], 11, 4], ['kerning a a', 'ink x is on', 'type grid', 'of x']), ('partial-repair probe', [['of', 'measure', 'at', 'x', 'baseline', 'serif', 'the', 'of', 'the'], 13, 7], ['of measure at', 'x baseline', 'serif', 'the of the']), ('partial-repair probe', [['a', 'baseline', 'grid', 'on', 'at', 'on', 'kerning', 'a', 'type', 'serif', 'on', 'ink'], 8, 4], ['a', 'baseline', 'grid on', 'at on', 'kerning', 'a type', 'serif', 'on ink']), ('runt limited by width', [['kerning', 'baseline', 'x'], 10, 4], ['kerning', 'baseline x']), ('one-word runt pulled down', [['the', 'type', 'grid', 'is', 'a'], 12, 5], ['the type', 'grid is a']), ('control layout', [['grid', 'serif', 'a', 'serif', 'is'], 11, 5], ['grid serif', 'a serif is']), ('control layout', [['grid', 'a', 'type'], 10, 6], ['grid', 'a type'])], [('regression: runt length threshold', [['a', 'kerning', 'serif', 'is', 'a'], 16, 4], ['a kerning serif', 'is a']), ('regression: runt length threshold', [['is', 'grid', 'measure', 'of', 'type'], 12, 4], ['is grid', 'measure of', 'type']), ('partial-repair probe', [['of', 'measure', 'at', 'x', 'baseline', 'serif', 'the', 'of', 'the'], 13, 7], ['of measure at', 'x baseline', 'serif', 'the of the']), ('partial-repair probe', [['x', 'on', 'is', 'the', 'is', 'is', 'ink'], 18, 7], ['x on is the', 'is is ink']), ('runt limited by width', [['kerning', 'baseline', 'x'], 10, 4], ['kerning', 'baseline x']), ('one-word runt pulled down', [['the', 'type', 'grid', 'is', 'a'], 12, 5], ['the type', 'grid is a']), ('control layout', [['kerning', 'a', 'a', 'type', 'x', 'x', 'is', 'grid', 'on'], 8, 8], ['kerning', 'a a type', 'x x is', 'grid on']), ('control layout', [['of', 'measure', 'on', 'ink'], 9, 8], ['of', 'measure', 'on ink'])]]\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":"117a0d8eafc7934289049fcfa1a40da120b8e191e0d2e3fd8f7e111e25f4ea0a","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    words, width, min_last = x\n    lines = []\n    cur = ''\n    for w in words:\n        cand = w if not cur else cur + ' ' + w\n        if len(cand) <= width or not cur:\n            cur = cand\n        else:\n            lines.append(cur)\n            cur = w\n    lines.append(cur)\n    while len(lines) >= 2 and len(lines[-1]) <= min_last:\n        prev = lines[-2].split(' ')\n        if len(prev) < 2:\n            break\n        moved = prev[-1] + ' ' + lines[-1]\n        if len(moved) > width:\n            break\n        lines[-2] = ' '.join(prev[:-1])\n        lines[-1] = moved\n    return lines\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: runt length threshold', [['the', 'is', 'grid', 'at', 'at', 'a', 'is'], 18, 7], ['the is grid at', 'at a is']), ('regression: runt length threshold', [['kerning', 'a', 'a', 'ink', 'x', 'is', 'on', 'type', 'grid', 'of', 'x'], 11, 4], ['kerning a a', 'ink x is on', 'type grid', 'of x']), ('partial-repair probe', [['of', 'measure', 'at', 'x', 'baseline', 'serif', 'the', 'of', 'the'], 13, 7], ['of measure at', 'x baseline', 'serif', 'the of the']), ('partial-repair probe', [['a', 'of', 'is', 'a', 'at', 'on', 'at', 'baseline', 'at', 'on'], 13, 3], ['a of is a at', 'on at', 'baseline', 'at on']), ('one-word runt pulled down', [['the', 'type', 'grid', 'is', 'a'], 12, 5], ['the type', 'grid is a']), ('runt limited by width', [['kerning', 'baseline', 'x'], 10, 4], ['kerning', 'baseline x']), ('control layout', [['measure', 'kerning', 'is', 'a', 'is', 'of', 'at', 'of', 'a', 'of'], 7, 4], ['measure', 'kerning', 'is a is', 'of at', 'of a of']), ('control layout', [['type', 'the', 'baseline', 'a', 'grid', 'x', 'ink', 'of'], 20, 9], ['type the baseline a', 'grid x ink of'])], [('regression: runt length threshold', [['a', 'at', 'is', 'on', 'baseline'], 17, 8], ['a at is on', 'baseline']), ('regression: runt length threshold', [['serif', 'baseline', 'x', 'ink', 'at', 'on', 'on', 'a', 'at'], 16, 4], ['serif baseline x', 'ink at on on', 'a at']), ('partial-repair probe', [['grid', 'the', 'baseline', 'at', 'the', 'is'], 16, 7], ['grid the', 'baseline', 'at the is']), ('partial-repair probe', [['type', 'type', 'grid'], 12, 5], ['type', 'type grid']), ('one-word runt pulled down', [['the', 'type', 'grid', 'is', 'a'], 12, 5], ['the type', 'grid is a']), ('runt limited by width', [['kerning', 'baseline', 'x'], 10, 4], ['kerning', 'baseline x']), ('control layout', [['is', 'ink', 'of', 'x', 'x', 'serif', 'at', 'kerning', 'type'], 15, 5], ['is ink of x x', 'serif at', 'kerning type']), ('control layout', [['the', 'measure', 'grid', 'on', 'a', 'measure', 'at'], 11, 7], ['the measure', 'grid on a', 'measure at'])], [('regression: runt length threshold', [['ink', 'the', 'kerning', 'x', 'kerning'], 18, 7], ['ink the kerning x', 'kerning']), ('regression: runt length threshold', [['grid', 'a', 'the', 'a', 'the', 'kerning', 'a', 'of', 'a', 'at', 'on'], 9, 5], ['grid a', 'the a the', 'kerning a', 'of a', 'at on']), ('partial-repair probe', [['a', 'of', 'is', 'a', 'at', 'on', 'at', 'baseline', 'at', 'on'], 13, 3], ['a of is a at', 'on at', 'baseline', 'at on']), ('partial-repair probe', [['baseline', 'kerning', 'grid', 'baseline', 'on', 'x', 'of', 'grid', 'kerning', 'a', 'of'], 19, 3], ['baseline kerning', 'grid baseline on x', 'of grid kerning', 'a of']), ('one-word runt pulled down', [['the', 'type', 'grid', 'is', 'a'], 12, 5], ['the type', 'grid is a']), ('runt limited by width', [['kerning', 'baseline', 'x'], 10, 4], ['kerning', 'baseline x']), ('control layout', [['is', 'on', 'serif', 'grid', 'serif', 'grid', 'of', 'measure', 'of', 'of'], 15, 7], ['is on serif', 'grid serif grid', 'of', 'measure of of']), ('control layout', [['ink', 'kerning', 'ink'], 8, 9], ['ink', 'kerning', 'ink'])], [('regression: runt length threshold', [['grid', 'kerning', 'a', 'measure', 'serif', 'type'], 14, 4], ['grid kerning a', 'measure serif', 'type']), ('regression: runt length threshold', [['kerning', 'a', 'a', 'ink', 'x', 'is', 'on', 'type', 'grid', 'of', 'x'], 11, 4], ['kerning a a', 'ink x is on', 'type grid', 'of x']), ('partial-repair probe', [['of', 'measure', 'at', 'x', 'baseline', 'serif', 'the', 'of', 'the'], 13, 7], ['of measure at', 'x baseline', 'serif', 'the of the']), ('partial-repair probe', [['a', 'baseline', 'grid', 'on', 'at', 'on', 'kerning', 'a', 'type', 'serif', 'on', 'ink'], 8, 4], ['a', 'baseline', 'grid on', 'at on', 'kerning', 'a type', 'serif', 'on ink']), ('runt limited by width', [['kerning', 'baseline', 'x'], 10, 4], ['kerning', 'baseline x']), ('one-word runt pulled down', [['the', 'type', 'grid', 'is', 'a'], 12, 5], ['the type', 'grid is a']), ('control layout', [['grid', 'serif', 'a', 'serif', 'is'], 11, 5], ['grid serif', 'a serif is']), ('control layout', [['grid', 'a', 'type'], 10, 6], ['grid', 'a type'])], [('regression: runt length threshold', [['a', 'kerning', 'serif', 'is', 'a'], 16, 4], ['a kerning serif', 'is a']), ('regression: runt length threshold', [['is', 'grid', 'measure', 'of', 'type'], 12, 4], ['is grid', 'measure of', 'type']), ('partial-repair probe', [['of', 'measure', 'at', 'x', 'baseline', 'serif', 'the', 'of', 'the'], 13, 7], ['of measure at', 'x baseline', 'serif', 'the of the']), ('partial-repair probe', [['x', 'on', 'is', 'the', 'is', 'is', 'ink'], 18, 7], ['x on is the', 'is is ink']), ('runt limited by width', [['kerning', 'baseline', 'x'], 10, 4], ['kerning', 'baseline x']), ('one-word runt pulled down', [['the', 'type', 'grid', 'is', 'a'], 12, 5], ['the type', 'grid is a']), ('control layout', [['kerning', 'a', 'a', 'type', 'x', 'x', 'is', 'grid', 'on'], 8, 8], ['kerning', 'a a type', 'x x is', 'grid on']), ('control layout', [['of', 'measure', 'on', 'ink'], 9, 8], ['of', 'measure', 'on ink'])]]\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":"8fb44c1795f129d7db6ab44138717878915fd26a803b5d3bd8a963e4833925c5","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    words, width, min_last = x\n    lines = []\n    cur = ''\n    for w in words:\n        cand = w if not cur else cur + ' ' + w\n        if len(cand) <= width or not cur:\n            cur = cand\n        else:\n            lines.append(cur)\n            cur = w\n    lines.append(cur)\n    while len(lines) >= 2 and len(lines[-1]) < min_last:\n        prev = lines[-2].split(' ')\n        if len(prev) < 2:\n            break\n        moved = prev[-1] + ' ' + lines[-1]\n        if len(moved) > width:\n            break\n        lines[-2] = ' '.join(prev[:-1])\n        lines[-1] = moved\n    return lines\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: runt length threshold', [['the', 'is', 'grid', 'at', 'at', 'a', 'is'], 18, 7], ['the is grid at', 'at a is']), ('regression: runt length threshold', [['kerning', 'a', 'a', 'ink', 'x', 'is', 'on', 'type', 'grid', 'of', 'x'], 11, 4], ['kerning a a', 'ink x is on', 'type grid', 'of x']), ('partial-repair probe', [['of', 'measure', 'at', 'x', 'baseline', 'serif', 'the', 'of', 'the'], 13, 7], ['of measure at', 'x baseline', 'serif', 'the of the']), ('partial-repair probe', [['a', 'of', 'is', 'a', 'at', 'on', 'at', 'baseline', 'at', 'on'], 13, 3], ['a of is a at', 'on at', 'baseline', 'at on']), ('one-word runt pulled down', [['the', 'type', 'grid', 'is', 'a'], 12, 5], ['the type', 'grid is a']), ('runt limited by width', [['kerning', 'baseline', 'x'], 10, 4], ['kerning', 'baseline x']), ('control layout', [['measure', 'kerning', 'is', 'a', 'is', 'of', 'at', 'of', 'a', 'of'], 7, 4], ['measure', 'kerning', 'is a is', 'of at', 'of a of']), ('control layout', [['type', 'the', 'baseline', 'a', 'grid', 'x', 'ink', 'of'], 20, 9], ['type the baseline a', 'grid x ink of'])], [('regression: runt length threshold', [['a', 'at', 'is', 'on', 'baseline'], 17, 8], ['a at is on', 'baseline']), ('regression: runt length threshold', [['serif', 'baseline', 'x', 'ink', 'at', 'on', 'on', 'a', 'at'], 16, 4], ['serif baseline x', 'ink at on on', 'a at']), ('partial-repair probe', [['grid', 'the', 'baseline', 'at', 'the', 'is'], 16, 7], ['grid the', 'baseline', 'at the is']), ('partial-repair probe', [['type', 'type', 'grid'], 12, 5], ['type', 'type grid']), ('one-word runt pulled down', [['the', 'type', 'grid', 'is', 'a'], 12, 5], ['the type', 'grid is a']), ('runt limited by width', [['kerning', 'baseline', 'x'], 10, 4], ['kerning', 'baseline x']), ('control layout', [['is', 'ink', 'of', 'x', 'x', 'serif', 'at', 'kerning', 'type'], 15, 5], ['is ink of x x', 'serif at', 'kerning type']), ('control layout', [['the', 'measure', 'grid', 'on', 'a', 'measure', 'at'], 11, 7], ['the measure', 'grid on a', 'measure at'])], [('regression: runt length threshold', [['ink', 'the', 'kerning', 'x', 'kerning'], 18, 7], ['ink the kerning x', 'kerning']), ('regression: runt length threshold', [['grid', 'a', 'the', 'a', 'the', 'kerning', 'a', 'of', 'a', 'at', 'on'], 9, 5], ['grid a', 'the a the', 'kerning a', 'of a', 'at on']), ('partial-repair probe', [['a', 'of', 'is', 'a', 'at', 'on', 'at', 'baseline', 'at', 'on'], 13, 3], ['a of is a at', 'on at', 'baseline', 'at on']), ('partial-repair probe', [['baseline', 'kerning', 'grid', 'baseline', 'on', 'x', 'of', 'grid', 'kerning', 'a', 'of'], 19, 3], ['baseline kerning', 'grid baseline on x', 'of grid kerning', 'a of']), ('one-word runt pulled down', [['the', 'type', 'grid', 'is', 'a'], 12, 5], ['the type', 'grid is a']), ('runt limited by width', [['kerning', 'baseline', 'x'], 10, 4], ['kerning', 'baseline x']), ('control layout', [['is', 'on', 'serif', 'grid', 'serif', 'grid', 'of', 'measure', 'of', 'of'], 15, 7], ['is on serif', 'grid serif grid', 'of', 'measure of of']), ('control layout', [['ink', 'kerning', 'ink'], 8, 9], ['ink', 'kerning', 'ink'])], [('regression: runt length threshold', [['grid', 'kerning', 'a', 'measure', 'serif', 'type'], 14, 4], ['grid kerning a', 'measure serif', 'type']), ('regression: runt length threshold', [['kerning', 'a', 'a', 'ink', 'x', 'is', 'on', 'type', 'grid', 'of', 'x'], 11, 4], ['kerning a a', 'ink x is on', 'type grid', 'of x']), ('partial-repair probe', [['of', 'measure', 'at', 'x', 'baseline', 'serif', 'the', 'of', 'the'], 13, 7], ['of measure at', 'x baseline', 'serif', 'the of the']), ('partial-repair probe', [['a', 'baseline', 'grid', 'on', 'at', 'on', 'kerning', 'a', 'type', 'serif', 'on', 'ink'], 8, 4], ['a', 'baseline', 'grid on', 'at on', 'kerning', 'a type', 'serif', 'on ink']), ('runt limited by width', [['kerning', 'baseline', 'x'], 10, 4], ['kerning', 'baseline x']), ('one-word runt pulled down', [['the', 'type', 'grid', 'is', 'a'], 12, 5], ['the type', 'grid is a']), ('control layout', [['grid', 'serif', 'a', 'serif', 'is'], 11, 5], ['grid serif', 'a serif is']), ('control layout', [['grid', 'a', 'type'], 10, 6], ['grid', 'a type'])], [('regression: runt length threshold', [['a', 'kerning', 'serif', 'is', 'a'], 16, 4], ['a kerning serif', 'is a']), ('regression: runt length threshold', [['is', 'grid', 'measure', 'of', 'type'], 12, 4], ['is grid', 'measure of', 'type']), ('partial-repair probe', [['of', 'measure', 'at', 'x', 'baseline', 'serif', 'the', 'of', 'the'], 13, 7], ['of measure at', 'x baseline', 'serif', 'the of the']), ('partial-repair probe', [['x', 'on', 'is', 'the', 'is', 'is', 'ink'], 18, 7], ['x on is the', 'is is ink']), ('runt limited by width', [['kerning', 'baseline', 'x'], 10, 4], ['kerning', 'baseline x']), ('one-word runt pulled down', [['the', 'type', 'grid', 'is', 'a'], 12, 5], ['the type', 'grid is a']), ('control layout', [['kerning', 'a', 'a', 'type', 'x', 'x', 'is', 'grid', 'on'], 8, 8], ['kerning', 'a a type', 'x x is', 'grid on']), ('control layout', [['of', 'measure', 'on', 'ink'], 9, 8], ['of', 'measure', 'on ink'])]]\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 typesetting model with integer widths and a stipulated rule set; it does not claim conformance to any engine. 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-typography-line-breaking-runt-last-line-runt-length-threshold","generated_at":"2026-09-29T14:49:50.958122+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Line breaking decides where paragraphs wrap on screen and in print; a wrong decision point shifts every following line.","repair":"Rebalance only when the last line is shorter than the minimum.","root_cause":"The runt test uses <=.","sha256":"d39c059f2638813dc00c9eb4851189bb6beffe1da8bc367ea569eeeab6d45576","title":"Runt last-line prevention: runt length threshold · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":41.515,"exit_code":1,"observations":[{"actual":["the is grid at","at a is"],"check":"regression: runt length threshold","expected":["the is grid at","at a is"],"passed":true},{"actual":["kerning a a","ink x is on","type grid","of x"],"check":"regression: runt length threshold","expected":["kerning a a","ink x is on","type grid","of x"],"passed":true},{"actual":["of measure at","x baseline","serif the","of the"],"check":"partial-repair probe","expected":["of measure at","x baseline","serif","the of the"],"passed":false},{"actual":["a of is a at","on at","baseline at","on"],"check":"partial-repair probe","expected":["a of is a at","on at","baseline","at on"],"passed":false},{"actual":["the type","grid is a"],"check":"one-word runt pulled down","expected":["the type","grid is a"],"passed":true},{"actual":["kerning","baseline x"],"check":"runt limited by width","expected":["kerning","baseline x"],"passed":true},{"actual":["measure","kerning","is a is","of at","of a of"],"check":"control layout","expected":["measure","kerning","is a is","of at","of a of"],"passed":true},{"actual":["type the baseline a","grid x ink of"],"check":"control layout","expected":["type the baseline a","grid x ink of"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: runt length threshold\", \"actual\": [\"the is grid at\", \"at a is\"], \"expected\": [\"the is grid at\", \"at a is\"], \"passed\": true}, {\"check\": \"regression: runt length threshold\", \"actual\": [\"kerning a a\", \"ink x is on\", \"type grid\", \"of x\"], \"expected\": [\"kerning a a\", \"ink x is on\", \"type grid\", \"of x\"], \"passed\": true}, {\"check\": \"partial-repair probe\", \"actual\": [\"of measure at\", \"x baseline\", \"serif the\", \"of the\"], \"expected\": [\"of measure at\", \"x baseline\", \"serif\", \"the of the\"], \"passed\": false}, {\"check\": \"partial-repair probe\", \"actual\": [\"a of is a at\", \"on at\", \"baseline at\", \"on\"], \"expected\": [\"a of is a at\", \"on at\", \"baseline\", \"at on\"], \"passed\": false}, {\"check\": \"one-word runt pulled down\", \"actual\": [\"the type\", \"grid is a\"], \"expected\": [\"the type\", \"grid is a\"], \"passed\": true}, {\"check\": \"runt limited by width\", \"actual\": [\"kerning\", \"baseline x\"], \"expected\": [\"kerning\", \"baseline x\"], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [\"measure\", \"kerning\", \"is a is\", \"of at\", \"of a of\"], \"expected\": [\"measure\", \"kerning\", \"is a is\", \"of at\", \"of a of\"], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [\"type the baseline a\", \"grid x ink of\"], \"expected\": [\"type the baseline a\", \"grid x ink of\"], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":40.428,"exit_code":1,"observations":[{"actual":["the is grid","at at a is"],"check":"regression: runt length threshold","expected":["the is grid at","at a is"],"passed":false},{"actual":["kerning a a","ink x is on","type","grid of x"],"check":"regression: runt length threshold","expected":["kerning a a","ink x is on","type grid","of x"],"passed":false},{"actual":["of measure at","x baseline","serif","the of the"],"check":"partial-repair probe","expected":["of measure at","x baseline","serif","the of the"],"passed":true},{"actual":["a of is a at","on at","baseline","at on"],"check":"partial-repair probe","expected":["a of is a at","on at","baseline","at on"],"passed":true},{"actual":["the type","grid is a"],"check":"one-word runt pulled down","expected":["the type","grid is a"],"passed":true},{"actual":["kerning","baseline x"],"check":"runt limited by width","expected":["kerning","baseline x"],"passed":true},{"actual":["measure","kerning","is a is","of at","of a of"],"check":"control layout","expected":["measure","kerning","is a is","of at","of a of"],"passed":true},{"actual":["type the baseline a","grid x ink of"],"check":"control layout","expected":["type the baseline a","grid x ink of"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: runt length threshold\", \"actual\": [\"the is grid\", \"at at a is\"], \"expected\": [\"the is grid at\", \"at a is\"], \"passed\": false}, {\"check\": \"regression: runt length threshold\", \"actual\": [\"kerning a a\", \"ink x is on\", \"type\", \"grid of x\"], \"expected\": [\"kerning a a\", \"ink x is on\", \"type grid\", \"of x\"], \"passed\": false}, {\"check\": \"partial-repair probe\", \"actual\": [\"of measure at\", \"x baseline\", \"serif\", \"the of the\"], \"expected\": [\"of measure at\", \"x baseline\", \"serif\", \"the of the\"], \"passed\": true}, {\"check\": \"partial-repair probe\", \"actual\": [\"a of is a at\", \"on at\", \"baseline\", \"at on\"], \"expected\": [\"a of is a at\", \"on at\", \"baseline\", \"at on\"], \"passed\": true}, {\"check\": \"one-word runt pulled down\", \"actual\": [\"the type\", \"grid is a\"], \"expected\": [\"the type\", \"grid is a\"], \"passed\": true}, {\"check\": \"runt limited by width\", \"actual\": [\"kerning\", \"baseline x\"], \"expected\": [\"kerning\", \"baseline x\"], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [\"measure\", \"kerning\", \"is a is\", \"of at\", \"of a of\"], \"expected\": [\"measure\", \"kerning\", \"is a is\", \"of at\", \"of a of\"], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [\"type the baseline a\", \"grid x ink of\"], \"expected\": [\"type the baseline a\", \"grid x ink of\"], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":39.435,"exit_code":0,"observations":[{"actual":["the is grid at","at a is"],"check":"regression: runt length threshold","expected":["the is grid at","at a is"],"passed":true},{"actual":["kerning a a","ink x is on","type grid","of x"],"check":"regression: runt length threshold","expected":["kerning a a","ink x is on","type grid","of x"],"passed":true},{"actual":["of measure at","x baseline","serif","the of the"],"check":"partial-repair probe","expected":["of measure at","x baseline","serif","the of the"],"passed":true},{"actual":["a of is a at","on at","baseline","at on"],"check":"partial-repair probe","expected":["a of is a at","on at","baseline","at on"],"passed":true},{"actual":["the type","grid is a"],"check":"one-word runt pulled down","expected":["the type","grid is a"],"passed":true},{"actual":["kerning","baseline x"],"check":"runt limited by width","expected":["kerning","baseline x"],"passed":true},{"actual":["measure","kerning","is a is","of at","of a of"],"check":"control layout","expected":["measure","kerning","is a is","of at","of a of"],"passed":true},{"actual":["type the baseline a","grid x ink of"],"check":"control layout","expected":["type the baseline a","grid x ink of"],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: runt length threshold\", \"actual\": [\"the is grid at\", \"at a is\"], \"expected\": [\"the is grid at\", \"at a is\"], \"passed\": true}, {\"check\": \"regression: runt length threshold\", \"actual\": [\"kerning a a\", \"ink x is on\", \"type grid\", \"of x\"], \"expected\": [\"kerning a a\", \"ink x is on\", \"type grid\", \"of x\"], \"passed\": true}, {\"check\": \"partial-repair probe\", \"actual\": [\"of measure at\", \"x baseline\", \"serif\", \"the of the\"], \"expected\": [\"of measure at\", \"x baseline\", \"serif\", \"the of the\"], \"passed\": true}, {\"check\": \"partial-repair probe\", \"actual\": [\"a of is a at\", \"on at\", \"baseline\", \"at on\"], \"expected\": [\"a of is a at\", \"on at\", \"baseline\", \"at on\"], \"passed\": true}, {\"check\": \"one-word runt pulled down\", \"actual\": [\"the type\", \"grid is a\"], \"expected\": [\"the type\", \"grid is a\"], \"passed\": true}, {\"check\": \"runt limited by width\", \"actual\": [\"kerning\", \"baseline x\"], \"expected\": [\"kerning\", \"baseline x\"], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [\"measure\", \"kerning\", \"is a is\", \"of at\", \"of a of\"], \"expected\": [\"measure\", \"kerning\", \"is a is\", \"of at\", \"of a of\"], \"passed\": true}, {\"check\": \"control layout\", \"actual\": [\"type the baseline a\", \"grid x ink of\"], \"expected\": [\"type the baseline a\", \"grid x ink of\"], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}