{"abstract":"Batter 80% deeper gives no overflow warning.","category":"Recipe scaling and nutrition","checks":8,"contract":"Pans: [\"round\", diameter], [\"square\", side], [\"rect\", w, l] in inches; other -> \"error: pan\". If scale_to_fill, return factor round(area_new/area_old, 2), same minutes, warning None. Otherwise the same batter goes into the new pan: depth ratio = area_old/area_new, minutes = bake_min*(1+(ratio-1)/2) rounded half-up to a multiple of 5, factor 1.0, warning \"overflow risk\" when ratio > 1.5 else None.","evaluation_group":"w2-recipe_scaling_and_nutrition-pan-substitution","failed_approach":"Using >= warns at exactly 1.5, which the contract allows.","family":"w2-recipe_scaling_and_nutrition-pan-substitution-overflow-warning-threshold","id":"FA-97056","implementations":{"attempt":{"sha256":"92fc1d9cf7aa470cd772ddb222a5b8d07eb9d06db619867b86fba96c44f2a926","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nfrom fractions import Fraction\nN = 1\nobservations = []\ndef solve(old_pan, new_pan, bake_min, scale_to_fill):\n    def area(p):\n        if p[0] == 'round':\n            return math.pi * (p[1] / 2) ** 2\n        if p[0] == 'square':\n            return p[1] * p[1]\n        if p[0] == 'rect':\n            return p[1] * p[2]\n        return None\n    a0, a1 = area(old_pan), area(new_pan)\n    if not a0 or not a1:\n        return 'error: pan'\n    if scale_to_fill:\n        return {'factor': round(a1 / a0, 2), 'minutes': bake_min, 'warning': None}\n    depth = a0 / a1\n    minutes = 5 * math.floor(bake_min * (1 + (depth - 1) / 2) / 5 + 0.5)\n    return {'factor': 1.0, 'minutes': minutes, 'warning': 'overflow risk' if depth >= 1.5 else None}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['same pan', [['square', 8], ['square', 8], 30, False], {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['ratio exactly 1.5', [['square', 12], ['rect', 8, 12], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['round to square fill', [['round', 9], ['square', 9], 30, True],\n   {'factor': 1.27, 'minutes': 30, 'warning': None}],\n  ['regression: overflow warning threshold', [['rect', 8, 12], ['round', 9], 20, False],\n   {'factor': 1.0, 'minutes': 25, 'warning': 'overflow risk'}],\n  ['repair check: overflow warning threshold', [['rect', 8, 12], ['square', 8], 45, False],\n   {'factor': 1.0, 'minutes': 55, 'warning': None}],\n  ['generated control 1', [['rect', 9, 12], ['round', 6], 45, True],\n   {'factor': 0.26, 'minutes': 45, 'warning': None}],\n  ['generated control 2', [['square', 6], ['round', 12], 45, True],\n   {'factor': 3.14, 'minutes': 45, 'warning': None}],\n  ['generated control 3', [['square', 6], ['square', 9], 30, False],\n   {'factor': 1.0, 'minutes': 20, 'warning': None}]],\n [['ratio exactly 1.5', [['square', 12], ['rect', 8, 12], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['round to square fill', [['round', 9], ['square', 9], 30, True],\n   {'factor': 1.27, 'minutes': 30, 'warning': None}],\n  ['bad pan', [['bundt', 10], ['square', 8], 30, True], 'error: pan'],\n  ['regression: overflow warning threshold', [['rect', 8, 15], ['round', 10], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': 'overflow risk'}],\n  ['repair check: overflow warning threshold', [['square', 12], ['rect', 8, 12], 25, False],\n   {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['generated control 1', [['round', 12], ['rect', 9, 12], 30, True],\n   {'factor': 0.95, 'minutes': 30, 'warning': None}],\n  ['generated control 2', [['square', 6], ['round', 9], 45, False],\n   {'factor': 1.0, 'minutes': 35, 'warning': None}],\n  ['generated control 3', [['square', 12], ['square', 8], 30, True],\n   {'factor': 0.44, 'minutes': 30, 'warning': None}]],\n [['round to square fill', [['round', 9], ['square', 9], 30, True],\n   {'factor': 1.27, 'minutes': 30, 'warning': None}],\n  ['bad pan', [['bundt', 10], ['square', 8], 30, True], 'error: pan'],\n  ['same pan', [['square', 8], ['square', 8], 30, False], {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['regression: overflow warning threshold', [['rect', 9, 15], ['square', 9], 35, False],\n   {'factor': 1.0, 'minutes': 45, 'warning': 'overflow risk'}],\n  ['repair check: overflow warning threshold', [['square', 12], ['rect', 8, 12], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['generated control 1', [['square', 12], ['rect', 9, 15], 35, True],\n   {'factor': 0.94, 'minutes': 35, 'warning': None}],\n  ['generated control 2', [['round', 8], ['round', 9], 45, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['generated control 3', [['round', 9], ['rect', 11, 12], 30, False],\n   {'factor': 1.0, 'minutes': 20, 'warning': None}]],\n [['bad pan', [['bundt', 10], ['square', 8], 30, True], 'error: pan'],\n  ['same pan', [['square', 8], ['square', 8], 30, False], {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['ratio exactly 1.5', [['square', 12], ['rect', 8, 12], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['regression: overflow warning threshold', [['rect', 8, 13], ['square', 8], 20, False],\n   {'factor': 1.0, 'minutes': 25, 'warning': 'overflow risk'}],\n  ['repair check: overflow warning threshold', [['square', 12], ['rect', 8, 12], 20, False],\n   {'factor': 1.0, 'minutes': 25, 'warning': None}],\n  ['generated control 1', [['rect', 9, 15], ['rect', 8, 15], 30, False],\n   {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['generated control 2', [['rect', 8, 12], ['round', 10], 25, True],\n   {'factor': 0.82, 'minutes': 25, 'warning': None}],\n  ['generated control 3', [['round', 9], ['round', 9], 45, True],\n   {'factor': 1.0, 'minutes': 45, 'warning': None}]],\n [['same pan', [['square', 8], ['square', 8], 30, False], {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['ratio exactly 1.5', [['square', 12], ['rect', 8, 12], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['round to square fill', [['round', 9], ['square', 9], 30, True],\n   {'factor': 1.27, 'minutes': 30, 'warning': None}],\n  ['regression: overflow warning threshold', [['rect', 9, 13], ['round', 9], 20, False],\n   {'factor': 1.0, 'minutes': 30, 'warning': 'overflow risk'}],\n  ['repair check: overflow warning threshold', [['square', 12], ['rect', 8, 12], 20, False],\n   {'factor': 1.0, 'minutes': 25, 'warning': None}],\n  ['generated control 1', [['round', 8], ['rect', 8, 15], 20, False],\n   {'factor': 1.0, 'minutes': 15, 'warning': None}],\n  ['generated control 2', [['square', 8], ['square', 9], 30, False],\n   {'factor': 1.0, 'minutes': 25, 'warning': None}],\n  ['generated control 3', [['round', 9], ['rect', 11, 12], 45, False],\n   {'factor': 1.0, 'minutes': 35, 'warning': None}]]]\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":"d054da50db61be77c1742b7d6d4ccc6f10526b3e296893e9a5b581ab4e023f24","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nfrom fractions import Fraction\nN = 1\nobservations = []\ndef solve(old_pan, new_pan, bake_min, scale_to_fill):\n    def area(p):\n        if p[0] == 'round':\n            return math.pi * (p[1] / 2) ** 2\n        if p[0] == 'square':\n            return p[1] * p[1]\n        if p[0] == 'rect':\n            return p[1] * p[2]\n        return None\n    a0, a1 = area(old_pan), area(new_pan)\n    if not a0 or not a1:\n        return 'error: pan'\n    if scale_to_fill:\n        return {'factor': round(a1 / a0, 2), 'minutes': bake_min, 'warning': None}\n    depth = a0 / a1\n    minutes = 5 * math.floor(bake_min * (1 + (depth - 1) / 2) / 5 + 0.5)\n    return {'factor': 1.0, 'minutes': minutes, 'warning': 'overflow risk' if depth > 2 else None}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['same pan', [['square', 8], ['square', 8], 30, False], {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['ratio exactly 1.5', [['square', 12], ['rect', 8, 12], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['round to square fill', [['round', 9], ['square', 9], 30, True],\n   {'factor': 1.27, 'minutes': 30, 'warning': None}],\n  ['regression: overflow warning threshold', [['rect', 8, 12], ['round', 9], 20, False],\n   {'factor': 1.0, 'minutes': 25, 'warning': 'overflow risk'}],\n  ['repair check: overflow warning threshold', [['rect', 8, 12], ['square', 8], 45, False],\n   {'factor': 1.0, 'minutes': 55, 'warning': None}],\n  ['generated control 1', [['rect', 9, 12], ['round', 6], 45, True],\n   {'factor': 0.26, 'minutes': 45, 'warning': None}],\n  ['generated control 2', [['square', 6], ['round', 12], 45, True],\n   {'factor': 3.14, 'minutes': 45, 'warning': None}],\n  ['generated control 3', [['square', 6], ['square', 9], 30, False],\n   {'factor': 1.0, 'minutes': 20, 'warning': None}]],\n [['ratio exactly 1.5', [['square', 12], ['rect', 8, 12], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['round to square fill', [['round', 9], ['square', 9], 30, True],\n   {'factor': 1.27, 'minutes': 30, 'warning': None}],\n  ['bad pan', [['bundt', 10], ['square', 8], 30, True], 'error: pan'],\n  ['regression: overflow warning threshold', [['rect', 8, 15], ['round', 10], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': 'overflow risk'}],\n  ['repair check: overflow warning threshold', [['square', 12], ['rect', 8, 12], 25, False],\n   {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['generated control 1', [['round', 12], ['rect', 9, 12], 30, True],\n   {'factor': 0.95, 'minutes': 30, 'warning': None}],\n  ['generated control 2', [['square', 6], ['round', 9], 45, False],\n   {'factor': 1.0, 'minutes': 35, 'warning': None}],\n  ['generated control 3', [['square', 12], ['square', 8], 30, True],\n   {'factor': 0.44, 'minutes': 30, 'warning': None}]],\n [['round to square fill', [['round', 9], ['square', 9], 30, True],\n   {'factor': 1.27, 'minutes': 30, 'warning': None}],\n  ['bad pan', [['bundt', 10], ['square', 8], 30, True], 'error: pan'],\n  ['same pan', [['square', 8], ['square', 8], 30, False], {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['regression: overflow warning threshold', [['rect', 9, 15], ['square', 9], 35, False],\n   {'factor': 1.0, 'minutes': 45, 'warning': 'overflow risk'}],\n  ['repair check: overflow warning threshold', [['square', 12], ['rect', 8, 12], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['generated control 1', [['square', 12], ['rect', 9, 15], 35, True],\n   {'factor': 0.94, 'minutes': 35, 'warning': None}],\n  ['generated control 2', [['round', 8], ['round', 9], 45, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['generated control 3', [['round', 9], ['rect', 11, 12], 30, False],\n   {'factor': 1.0, 'minutes': 20, 'warning': None}]],\n [['bad pan', [['bundt', 10], ['square', 8], 30, True], 'error: pan'],\n  ['same pan', [['square', 8], ['square', 8], 30, False], {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['ratio exactly 1.5', [['square', 12], ['rect', 8, 12], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['regression: overflow warning threshold', [['rect', 8, 13], ['square', 8], 20, False],\n   {'factor': 1.0, 'minutes': 25, 'warning': 'overflow risk'}],\n  ['repair check: overflow warning threshold', [['square', 12], ['rect', 8, 12], 20, False],\n   {'factor': 1.0, 'minutes': 25, 'warning': None}],\n  ['generated control 1', [['rect', 9, 15], ['rect', 8, 15], 30, False],\n   {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['generated control 2', [['rect', 8, 12], ['round', 10], 25, True],\n   {'factor': 0.82, 'minutes': 25, 'warning': None}],\n  ['generated control 3', [['round', 9], ['round', 9], 45, True],\n   {'factor': 1.0, 'minutes': 45, 'warning': None}]],\n [['same pan', [['square', 8], ['square', 8], 30, False], {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['ratio exactly 1.5', [['square', 12], ['rect', 8, 12], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['round to square fill', [['round', 9], ['square', 9], 30, True],\n   {'factor': 1.27, 'minutes': 30, 'warning': None}],\n  ['regression: overflow warning threshold', [['rect', 9, 13], ['round', 9], 20, False],\n   {'factor': 1.0, 'minutes': 30, 'warning': 'overflow risk'}],\n  ['repair check: overflow warning threshold', [['square', 12], ['rect', 8, 12], 20, False],\n   {'factor': 1.0, 'minutes': 25, 'warning': None}],\n  ['generated control 1', [['round', 8], ['rect', 8, 15], 20, False],\n   {'factor': 1.0, 'minutes': 15, 'warning': None}],\n  ['generated control 2', [['square', 8], ['square', 9], 30, False],\n   {'factor': 1.0, 'minutes': 25, 'warning': None}],\n  ['generated control 3', [['round', 9], ['rect', 11, 12], 45, False],\n   {'factor': 1.0, 'minutes': 35, 'warning': None}]]]\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":"4224ce4b078a4fcba56a37c6b41be0fee5d141c478767bd965e0159e7eaf49ab","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nfrom fractions import Fraction\nN = 1\nobservations = []\ndef solve(old_pan, new_pan, bake_min, scale_to_fill):\n    def area(p):\n        if p[0] == 'round':\n            return math.pi * (p[1] / 2) ** 2\n        if p[0] == 'square':\n            return p[1] * p[1]\n        if p[0] == 'rect':\n            return p[1] * p[2]\n        return None\n    a0, a1 = area(old_pan), area(new_pan)\n    if not a0 or not a1:\n        return 'error: pan'\n    if scale_to_fill:\n        return {'factor': round(a1 / a0, 2), 'minutes': bake_min, 'warning': None}\n    depth = a0 / a1\n    minutes = 5 * math.floor(bake_min * (1 + (depth - 1) / 2) / 5 + 0.5)\n    return {'factor': 1.0, 'minutes': minutes, 'warning': 'overflow risk' if depth > 1.5 else None}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['same pan', [['square', 8], ['square', 8], 30, False], {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['ratio exactly 1.5', [['square', 12], ['rect', 8, 12], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['round to square fill', [['round', 9], ['square', 9], 30, True],\n   {'factor': 1.27, 'minutes': 30, 'warning': None}],\n  ['regression: overflow warning threshold', [['rect', 8, 12], ['round', 9], 20, False],\n   {'factor': 1.0, 'minutes': 25, 'warning': 'overflow risk'}],\n  ['repair check: overflow warning threshold', [['rect', 8, 12], ['square', 8], 45, False],\n   {'factor': 1.0, 'minutes': 55, 'warning': None}],\n  ['generated control 1', [['rect', 9, 12], ['round', 6], 45, True],\n   {'factor': 0.26, 'minutes': 45, 'warning': None}],\n  ['generated control 2', [['square', 6], ['round', 12], 45, True],\n   {'factor': 3.14, 'minutes': 45, 'warning': None}],\n  ['generated control 3', [['square', 6], ['square', 9], 30, False],\n   {'factor': 1.0, 'minutes': 20, 'warning': None}]],\n [['ratio exactly 1.5', [['square', 12], ['rect', 8, 12], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['round to square fill', [['round', 9], ['square', 9], 30, True],\n   {'factor': 1.27, 'minutes': 30, 'warning': None}],\n  ['bad pan', [['bundt', 10], ['square', 8], 30, True], 'error: pan'],\n  ['regression: overflow warning threshold', [['rect', 8, 15], ['round', 10], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': 'overflow risk'}],\n  ['repair check: overflow warning threshold', [['square', 12], ['rect', 8, 12], 25, False],\n   {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['generated control 1', [['round', 12], ['rect', 9, 12], 30, True],\n   {'factor': 0.95, 'minutes': 30, 'warning': None}],\n  ['generated control 2', [['square', 6], ['round', 9], 45, False],\n   {'factor': 1.0, 'minutes': 35, 'warning': None}],\n  ['generated control 3', [['square', 12], ['square', 8], 30, True],\n   {'factor': 0.44, 'minutes': 30, 'warning': None}]],\n [['round to square fill', [['round', 9], ['square', 9], 30, True],\n   {'factor': 1.27, 'minutes': 30, 'warning': None}],\n  ['bad pan', [['bundt', 10], ['square', 8], 30, True], 'error: pan'],\n  ['same pan', [['square', 8], ['square', 8], 30, False], {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['regression: overflow warning threshold', [['rect', 9, 15], ['square', 9], 35, False],\n   {'factor': 1.0, 'minutes': 45, 'warning': 'overflow risk'}],\n  ['repair check: overflow warning threshold', [['square', 12], ['rect', 8, 12], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['generated control 1', [['square', 12], ['rect', 9, 15], 35, True],\n   {'factor': 0.94, 'minutes': 35, 'warning': None}],\n  ['generated control 2', [['round', 8], ['round', 9], 45, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['generated control 3', [['round', 9], ['rect', 11, 12], 30, False],\n   {'factor': 1.0, 'minutes': 20, 'warning': None}]],\n [['bad pan', [['bundt', 10], ['square', 8], 30, True], 'error: pan'],\n  ['same pan', [['square', 8], ['square', 8], 30, False], {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['ratio exactly 1.5', [['square', 12], ['rect', 8, 12], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['regression: overflow warning threshold', [['rect', 8, 13], ['square', 8], 20, False],\n   {'factor': 1.0, 'minutes': 25, 'warning': 'overflow risk'}],\n  ['repair check: overflow warning threshold', [['square', 12], ['rect', 8, 12], 20, False],\n   {'factor': 1.0, 'minutes': 25, 'warning': None}],\n  ['generated control 1', [['rect', 9, 15], ['rect', 8, 15], 30, False],\n   {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['generated control 2', [['rect', 8, 12], ['round', 10], 25, True],\n   {'factor': 0.82, 'minutes': 25, 'warning': None}],\n  ['generated control 3', [['round', 9], ['round', 9], 45, True],\n   {'factor': 1.0, 'minutes': 45, 'warning': None}]],\n [['same pan', [['square', 8], ['square', 8], 30, False], {'factor': 1.0, 'minutes': 30, 'warning': None}],\n  ['ratio exactly 1.5', [['square', 12], ['rect', 8, 12], 30, False],\n   {'factor': 1.0, 'minutes': 40, 'warning': None}],\n  ['round to square fill', [['round', 9], ['square', 9], 30, True],\n   {'factor': 1.27, 'minutes': 30, 'warning': None}],\n  ['regression: overflow warning threshold', [['rect', 9, 13], ['round', 9], 20, False],\n   {'factor': 1.0, 'minutes': 30, 'warning': 'overflow risk'}],\n  ['repair check: overflow warning threshold', [['square', 12], ['rect', 8, 12], 20, False],\n   {'factor': 1.0, 'minutes': 25, 'warning': None}],\n  ['generated control 1', [['round', 8], ['rect', 8, 15], 20, False],\n   {'factor': 1.0, 'minutes': 15, 'warning': None}],\n  ['generated control 2', [['square', 8], ['square', 9], 30, False],\n   {'factor': 1.0, 'minutes': 25, 'warning': None}],\n  ['generated control 3', [['round', 9], ['rect', 11, 12], 45, False],\n   {'factor': 1.0, 'minutes': 35, 'warning': None}]]]\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 contract stated in full here; it is a bounded teaching model, not an authoritative reference or standards implementation. 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-recipe_scaling_and_nutrition-pan-substitution-overflow-warning-threshold","generated_at":"2026-09-29T14:52:28.409631+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Bakers swap pan shapes and must scale the batter or adjust bake time for batter depth.","repair":"Warn when the depth ratio exceeds 1.5.","root_cause":"The warning waits for double depth instead of 1.5 times.","sha256":"9f9fed374122dd1c7f7dad78998ec962f9614b55dd97a55145acfd4a1fa3006e","title":"Baking pan substitution: overflow warning threshold · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":42.723,"exit_code":1,"observations":[{"actual":{"factor":1.0,"minutes":30,"warning":null},"check":"same pan","expected":{"factor":1.0,"minutes":30,"warning":null},"passed":true},{"actual":{"factor":1.0,"minutes":40,"warning":"overflow risk"},"check":"ratio exactly 1.5","expected":{"factor":1.0,"minutes":40,"warning":null},"passed":false},{"actual":{"factor":1.27,"minutes":30,"warning":null},"check":"round to square fill","expected":{"factor":1.27,"minutes":30,"warning":null},"passed":true},{"actual":{"factor":1.0,"minutes":25,"warning":"overflow risk"},"check":"regression: overflow warning threshold","expected":{"factor":1.0,"minutes":25,"warning":"overflow risk"},"passed":true},{"actual":{"factor":1.0,"minutes":55,"warning":"overflow risk"},"check":"repair check: overflow warning threshold","expected":{"factor":1.0,"minutes":55,"warning":null},"passed":false},{"actual":{"factor":0.26,"minutes":45,"warning":null},"check":"generated control 1","expected":{"factor":0.26,"minutes":45,"warning":null},"passed":true},{"actual":{"factor":3.14,"minutes":45,"warning":null},"check":"generated control 2","expected":{"factor":3.14,"minutes":45,"warning":null},"passed":true},{"actual":{"factor":1.0,"minutes":20,"warning":null},"check":"generated control 3","expected":{"factor":1.0,"minutes":20,"warning":null},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"same pan\", \"actual\": {\"factor\": 1.0, \"minutes\": 30, \"warning\": null}, \"expected\": {\"factor\": 1.0, \"minutes\": 30, \"warning\": null}, \"passed\": true}, {\"check\": \"ratio exactly 1.5\", \"actual\": {\"factor\": 1.0, \"minutes\": 40, \"warning\": \"overflow risk\"}, \"expected\": {\"factor\": 1.0, \"minutes\": 40, \"warning\": null}, \"passed\": false}, {\"check\": \"round to square fill\", \"actual\": {\"factor\": 1.27, \"minutes\": 30, \"warning\": null}, \"expected\": {\"factor\": 1.27, \"minutes\": 30, \"warning\": null}, \"passed\": true}, {\"check\": \"regression: overflow warning threshold\", \"actual\": {\"factor\": 1.0, \"minutes\": 25, \"warning\": \"overflow risk\"}, \"expected\": {\"factor\": 1.0, \"minutes\": 25, \"warning\": \"overflow risk\"}, \"passed\": true}, {\"check\": \"repair check: overflow warning threshold\", \"actual\": {\"factor\": 1.0, \"minutes\": 55, \"warning\": \"overflow risk\"}, \"expected\": {\"factor\": 1.0, \"minutes\": 55, \"warning\": null}, \"passed\": false}, {\"check\": \"generated control 1\", \"actual\": {\"factor\": 0.26, \"minutes\": 45, \"warning\": null}, \"expected\": {\"factor\": 0.26, \"minutes\": 45, \"warning\": null}, \"passed\": true}, {\"check\": \"generated control 2\", \"actual\": {\"factor\": 3.14, \"minutes\": 45, \"warning\": null}, \"expected\": {\"factor\": 3.14, \"minutes\": 45, \"warning\": null}, \"passed\": true}, {\"check\": \"generated control 3\", \"actual\": {\"factor\": 1.0, \"minutes\": 20, \"warning\": null}, \"expected\": {\"factor\": 1.0, \"minutes\": 20, \"warning\": null}, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.968,"exit_code":1,"observations":[{"actual":{"factor":1.0,"minutes":30,"warning":null},"check":"same pan","expected":{"factor":1.0,"minutes":30,"warning":null},"passed":true},{"actual":{"factor":1.0,"minutes":40,"warning":null},"check":"ratio exactly 1.5","expected":{"factor":1.0,"minutes":40,"warning":null},"passed":true},{"actual":{"factor":1.27,"minutes":30,"warning":null},"check":"round to square fill","expected":{"factor":1.27,"minutes":30,"warning":null},"passed":true},{"actual":{"factor":1.0,"minutes":25,"warning":null},"check":"regression: overflow warning threshold","expected":{"factor":1.0,"minutes":25,"warning":"overflow risk"},"passed":false},{"actual":{"factor":1.0,"minutes":55,"warning":null},"check":"repair check: overflow warning threshold","expected":{"factor":1.0,"minutes":55,"warning":null},"passed":true},{"actual":{"factor":0.26,"minutes":45,"warning":null},"check":"generated control 1","expected":{"factor":0.26,"minutes":45,"warning":null},"passed":true},{"actual":{"factor":3.14,"minutes":45,"warning":null},"check":"generated control 2","expected":{"factor":3.14,"minutes":45,"warning":null},"passed":true},{"actual":{"factor":1.0,"minutes":20,"warning":null},"check":"generated control 3","expected":{"factor":1.0,"minutes":20,"warning":null},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"same pan\", \"actual\": {\"factor\": 1.0, \"minutes\": 30, \"warning\": null}, \"expected\": {\"factor\": 1.0, \"minutes\": 30, \"warning\": null}, \"passed\": true}, {\"check\": \"ratio exactly 1.5\", \"actual\": {\"factor\": 1.0, \"minutes\": 40, \"warning\": null}, \"expected\": {\"factor\": 1.0, \"minutes\": 40, \"warning\": null}, \"passed\": true}, {\"check\": \"round to square fill\", \"actual\": {\"factor\": 1.27, \"minutes\": 30, \"warning\": null}, \"expected\": {\"factor\": 1.27, \"minutes\": 30, \"warning\": null}, \"passed\": true}, {\"check\": \"regression: overflow warning threshold\", \"actual\": {\"factor\": 1.0, \"minutes\": 25, \"warning\": null}, \"expected\": {\"factor\": 1.0, \"minutes\": 25, \"warning\": \"overflow risk\"}, \"passed\": false}, {\"check\": \"repair check: overflow warning threshold\", \"actual\": {\"factor\": 1.0, \"minutes\": 55, \"warning\": null}, \"expected\": {\"factor\": 1.0, \"minutes\": 55, \"warning\": null}, \"passed\": true}, {\"check\": \"generated control 1\", \"actual\": {\"factor\": 0.26, \"minutes\": 45, \"warning\": null}, \"expected\": {\"factor\": 0.26, \"minutes\": 45, \"warning\": null}, \"passed\": true}, {\"check\": \"generated control 2\", \"actual\": {\"factor\": 3.14, \"minutes\": 45, \"warning\": null}, \"expected\": {\"factor\": 3.14, \"minutes\": 45, \"warning\": null}, \"passed\": true}, {\"check\": \"generated control 3\", \"actual\": {\"factor\": 1.0, \"minutes\": 20, \"warning\": null}, \"expected\": {\"factor\": 1.0, \"minutes\": 20, \"warning\": null}, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":42.898,"exit_code":0,"observations":[{"actual":{"factor":1.0,"minutes":30,"warning":null},"check":"same pan","expected":{"factor":1.0,"minutes":30,"warning":null},"passed":true},{"actual":{"factor":1.0,"minutes":40,"warning":null},"check":"ratio exactly 1.5","expected":{"factor":1.0,"minutes":40,"warning":null},"passed":true},{"actual":{"factor":1.27,"minutes":30,"warning":null},"check":"round to square fill","expected":{"factor":1.27,"minutes":30,"warning":null},"passed":true},{"actual":{"factor":1.0,"minutes":25,"warning":"overflow risk"},"check":"regression: overflow warning threshold","expected":{"factor":1.0,"minutes":25,"warning":"overflow risk"},"passed":true},{"actual":{"factor":1.0,"minutes":55,"warning":null},"check":"repair check: overflow warning threshold","expected":{"factor":1.0,"minutes":55,"warning":null},"passed":true},{"actual":{"factor":0.26,"minutes":45,"warning":null},"check":"generated control 1","expected":{"factor":0.26,"minutes":45,"warning":null},"passed":true},{"actual":{"factor":3.14,"minutes":45,"warning":null},"check":"generated control 2","expected":{"factor":3.14,"minutes":45,"warning":null},"passed":true},{"actual":{"factor":1.0,"minutes":20,"warning":null},"check":"generated control 3","expected":{"factor":1.0,"minutes":20,"warning":null},"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"same pan\", \"actual\": {\"factor\": 1.0, \"minutes\": 30, \"warning\": null}, \"expected\": {\"factor\": 1.0, \"minutes\": 30, \"warning\": null}, \"passed\": true}, {\"check\": \"ratio exactly 1.5\", \"actual\": {\"factor\": 1.0, \"minutes\": 40, \"warning\": null}, \"expected\": {\"factor\": 1.0, \"minutes\": 40, \"warning\": null}, \"passed\": true}, {\"check\": \"round to square fill\", \"actual\": {\"factor\": 1.27, \"minutes\": 30, \"warning\": null}, \"expected\": {\"factor\": 1.27, \"minutes\": 30, \"warning\": null}, \"passed\": true}, {\"check\": \"regression: overflow warning threshold\", \"actual\": {\"factor\": 1.0, \"minutes\": 25, \"warning\": \"overflow risk\"}, \"expected\": {\"factor\": 1.0, \"minutes\": 25, \"warning\": \"overflow risk\"}, \"passed\": true}, {\"check\": \"repair check: overflow warning threshold\", \"actual\": {\"factor\": 1.0, \"minutes\": 55, \"warning\": null}, \"expected\": {\"factor\": 1.0, \"minutes\": 55, \"warning\": null}, \"passed\": true}, {\"check\": \"generated control 1\", \"actual\": {\"factor\": 0.26, \"minutes\": 45, \"warning\": null}, \"expected\": {\"factor\": 0.26, \"minutes\": 45, \"warning\": null}, \"passed\": true}, {\"check\": \"generated control 2\", \"actual\": {\"factor\": 3.14, \"minutes\": 45, \"warning\": null}, \"expected\": {\"factor\": 3.14, \"minutes\": 45, \"warning\": null}, \"passed\": true}, {\"check\": \"generated control 3\", \"actual\": {\"factor\": 1.0, \"minutes\": 20, \"warning\": null}, \"expected\": {\"factor\": 1.0, \"minutes\": 20, \"warning\": null}, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}