{"abstract":"Heights between whole tide hours jump by a whole twelfth-step early.","category":"Tide and marine navigation tables","checks":7,"contract":"Input [t1,h1,t2,h2,t] in hours/metres for consecutive turning points t1<t2 (rise or fall). The interval is split into six equal tide hours with cumulative twelfths 0,1,3,6,9,11,12 and linear interpolation inside a tide hour. Return height rounded to 4 decimals, or None when t2<=t1 or t lies outside [t1,t2].","evaluation_group":"w2-tide_and_marine_navigation_tables-twelfths","failed_approach":"Clamping the floor to segment 4 extrapolates the fifth-hour slope through the final tide hour.","family":"w2-tide_and_marine_navigation_tables-twelfths-tide-hour-index","id":"FA-68846","implementations":{"attempt":{"sha256":"12ff1f8196e7a04fdaa38c03d08c8e59eb1a1ffba7365efb44fe0e0cce0c3cc5","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(x):\n    t1,h1,t2,h2,t=x\n    if t2<=t1: return None\n    if t<t1 or t>t2: return None\n    u=(t-t1)*6/(t2-t1)\n    k=min(int(u),4)\n    cum=[0,1,3,6,9,11,12]\n    c=cum[k]+(cum[k+1]-cum[k])*(u-k)\n    return round(h1+(h2-h1)*c/12,4)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('rule of twelfths [0, 0.5, 6, 4.1, 1.5]', [0, 0.5, 6, 4.1, 1.5], 1.1), ('rule of twelfths [0, 0.5, 6, 4.1, 6]', [0, 0.5, 6, 4.1, 6], 4.1), ('rule of twelfths [0, 0.5, 6, 4.1, 0]', [0, 0.5, 6, 4.1, 0], 0.5), ('rule of twelfths [0, 0.5, 6, 4.1, 1]', [0, 0.5, 6, 4.1, 1], 0.8), ('rule of twelfths [0, 0.5, 6, 4.1, 2]', [0, 0.5, 6, 4.1, 2], 1.4), ('rule of twelfths [0, 0.5, 6, 4.1, 3]', [0, 0.5, 6, 4.1, 3], 2.3), ('rule of twelfths [0, 0.5, 6, 4.1, 4.5]', [0, 0.5, 6, 4.1, 4.5], 3.5)], [('rule of twelfths [2, 5.2, 8.5, 0.8, 4]', [2, 5.2, 8.5, 0.8, 4], 4.2128), ('rule of twelfths [2, 5.2, 8.5, 0.8, 8.5]', [2, 5.2, 8.5, 0.8, 8.5], 0.8), ('rule of twelfths [0, 0.5, 6, 4.1, 2]', [0, 0.5, 6, 4.1, 2], 1.4), ('rule of twelfths [0, 0.5, 6, 4.1, 3]', [0, 0.5, 6, 4.1, 3], 2.3), ('rule of twelfths [0, 0.5, 6, 4.1, 4.5]', [0, 0.5, 6, 4.1, 4.5], 3.5), ('rule of twelfths [0, 0.5, 6, 4.1, 5]', [0, 0.5, 6, 4.1, 5], 3.8), ('rule of twelfths [0, 0.5, 6, 4.1, 6]', [0, 0.5, 6, 4.1, 6], 4.1)], [('rule of twelfths [2, 5.2, 8.5, 0.8, 7]', [2, 5.2, 8.5, 0.8, 7], 1.4487), ('rule of twelfths [0, 0.5, 6, 4.1, 6]', [0, 0.5, 6, 4.1, 6], 4.1), ('rule of twelfths [0, 0.5, 6, 4.1, 5]', [0, 0.5, 6, 4.1, 5], 3.8), ('rule of twelfths [0, 0.5, 6, 4.1, 6.5]', [0, 0.5, 6, 4.1, 6.5], None), ('rule of twelfths [0, 0.5, 6, 4.1, 7.25]', [0, 0.5, 6, 4.1, 7.25], None), ('rule of twelfths [2, 5.2, 8.5, 0.8, 2]', [2, 5.2, 8.5, 0.8, 2], 5.2), ('rule of twelfths [2, 5.2, 8.5, 0.8, 3.1]', [2, 5.2, 8.5, 0.8, 3.1], 4.8221)], [('rule of twelfths [0, 0.0, 6, 6.0, 0.6]', [0, 0.0, 6, 6.0, 0.6], 0.3), ('rule of twelfths [2, 5.2, 8.5, 0.8, 8.5]', [2, 5.2, 8.5, 0.8, 8.5], 0.8), ('rule of twelfths [0, 0.5, 6, 4.1, 7.25]', [0, 0.5, 6, 4.1, 7.25], None), ('rule of twelfths [2, 5.2, 8.5, 0.8, 2]', [2, 5.2, 8.5, 0.8, 2], 5.2), ('rule of twelfths [2, 5.2, 8.5, 0.8, 3.1]', [2, 5.2, 8.5, 0.8, 3.1], 4.8221), ('rule of twelfths [2, 5.2, 8.5, 0.8, 4]', [2, 5.2, 8.5, 0.8, 4], 4.2128), ('rule of twelfths [2, 5.2, 8.5, 0.8, 5.25]', [2, 5.2, 8.5, 0.8, 5.25], 3.0)], [('rule of twelfths [0, 0.5, 6, 4.1, 1.5]', [0, 0.5, 6, 4.1, 1.5], 1.1), ('rule of twelfths [0, 0.5, 6, 4.1, 6]', [0, 0.5, 6, 4.1, 6], 4.1), ('rule of twelfths [2, 5.2, 8.5, 0.8, 4]', [2, 5.2, 8.5, 0.8, 4], 4.2128), ('rule of twelfths [2, 5.2, 8.5, 0.8, 5.25]', [2, 5.2, 8.5, 0.8, 5.25], 3.0), ('rule of twelfths [2, 5.2, 8.5, 0.8, 7]', [2, 5.2, 8.5, 0.8, 7], 1.4487), ('rule of twelfths [2, 5.2, 8.5, 0.8, 8.5]', [2, 5.2, 8.5, 0.8, 8.5], 0.8), ('rule of twelfths [2, 5.2, 8.5, 0.8, 9]', [2, 5.2, 8.5, 0.8, 9], 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":"c9343a34f58b7454319cc1bbe3e41d5fcd2977a02e83b3a1f9a97b851fdd4c7d","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(x):\n    t1,h1,t2,h2,t=x\n    if t2<=t1: return None\n    if t<t1 or t>t2: return None\n    u=(t-t1)*6/(t2-t1)\n    k=min(round(u),5)\n    cum=[0,1,3,6,9,11,12]\n    c=cum[k]+(cum[k+1]-cum[k])*(u-k)\n    return round(h1+(h2-h1)*c/12,4)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('rule of twelfths [0, 0.5, 6, 4.1, 1.5]', [0, 0.5, 6, 4.1, 1.5], 1.1), ('rule of twelfths [0, 0.5, 6, 4.1, 6]', [0, 0.5, 6, 4.1, 6], 4.1), ('rule of twelfths [0, 0.5, 6, 4.1, 0]', [0, 0.5, 6, 4.1, 0], 0.5), ('rule of twelfths [0, 0.5, 6, 4.1, 1]', [0, 0.5, 6, 4.1, 1], 0.8), ('rule of twelfths [0, 0.5, 6, 4.1, 2]', [0, 0.5, 6, 4.1, 2], 1.4), ('rule of twelfths [0, 0.5, 6, 4.1, 3]', [0, 0.5, 6, 4.1, 3], 2.3), ('rule of twelfths [0, 0.5, 6, 4.1, 4.5]', [0, 0.5, 6, 4.1, 4.5], 3.5)], [('rule of twelfths [2, 5.2, 8.5, 0.8, 4]', [2, 5.2, 8.5, 0.8, 4], 4.2128), ('rule of twelfths [2, 5.2, 8.5, 0.8, 8.5]', [2, 5.2, 8.5, 0.8, 8.5], 0.8), ('rule of twelfths [0, 0.5, 6, 4.1, 2]', [0, 0.5, 6, 4.1, 2], 1.4), ('rule of twelfths [0, 0.5, 6, 4.1, 3]', [0, 0.5, 6, 4.1, 3], 2.3), ('rule of twelfths [0, 0.5, 6, 4.1, 4.5]', [0, 0.5, 6, 4.1, 4.5], 3.5), ('rule of twelfths [0, 0.5, 6, 4.1, 5]', [0, 0.5, 6, 4.1, 5], 3.8), ('rule of twelfths [0, 0.5, 6, 4.1, 6]', [0, 0.5, 6, 4.1, 6], 4.1)], [('rule of twelfths [2, 5.2, 8.5, 0.8, 7]', [2, 5.2, 8.5, 0.8, 7], 1.4487), ('rule of twelfths [0, 0.5, 6, 4.1, 6]', [0, 0.5, 6, 4.1, 6], 4.1), ('rule of twelfths [0, 0.5, 6, 4.1, 5]', [0, 0.5, 6, 4.1, 5], 3.8), ('rule of twelfths [0, 0.5, 6, 4.1, 6.5]', [0, 0.5, 6, 4.1, 6.5], None), ('rule of twelfths [0, 0.5, 6, 4.1, 7.25]', [0, 0.5, 6, 4.1, 7.25], None), ('rule of twelfths [2, 5.2, 8.5, 0.8, 2]', [2, 5.2, 8.5, 0.8, 2], 5.2), ('rule of twelfths [2, 5.2, 8.5, 0.8, 3.1]', [2, 5.2, 8.5, 0.8, 3.1], 4.8221)], [('rule of twelfths [0, 0.0, 6, 6.0, 0.6]', [0, 0.0, 6, 6.0, 0.6], 0.3), ('rule of twelfths [2, 5.2, 8.5, 0.8, 8.5]', [2, 5.2, 8.5, 0.8, 8.5], 0.8), ('rule of twelfths [0, 0.5, 6, 4.1, 7.25]', [0, 0.5, 6, 4.1, 7.25], None), ('rule of twelfths [2, 5.2, 8.5, 0.8, 2]', [2, 5.2, 8.5, 0.8, 2], 5.2), ('rule of twelfths [2, 5.2, 8.5, 0.8, 3.1]', [2, 5.2, 8.5, 0.8, 3.1], 4.8221), ('rule of twelfths [2, 5.2, 8.5, 0.8, 4]', [2, 5.2, 8.5, 0.8, 4], 4.2128), ('rule of twelfths [2, 5.2, 8.5, 0.8, 5.25]', [2, 5.2, 8.5, 0.8, 5.25], 3.0)], [('rule of twelfths [0, 0.5, 6, 4.1, 1.5]', [0, 0.5, 6, 4.1, 1.5], 1.1), ('rule of twelfths [0, 0.5, 6, 4.1, 6]', [0, 0.5, 6, 4.1, 6], 4.1), ('rule of twelfths [2, 5.2, 8.5, 0.8, 4]', [2, 5.2, 8.5, 0.8, 4], 4.2128), ('rule of twelfths [2, 5.2, 8.5, 0.8, 5.25]', [2, 5.2, 8.5, 0.8, 5.25], 3.0), ('rule of twelfths [2, 5.2, 8.5, 0.8, 7]', [2, 5.2, 8.5, 0.8, 7], 1.4487), ('rule of twelfths [2, 5.2, 8.5, 0.8, 8.5]', [2, 5.2, 8.5, 0.8, 8.5], 0.8), ('rule of twelfths [2, 5.2, 8.5, 0.8, 9]', [2, 5.2, 8.5, 0.8, 9], 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":"af4ee2abb9048a3a41a895bb8f6cb347f3b7da2207a3b95f754a68a8c7b7ad74","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(x):\n    t1,h1,t2,h2,t=x\n    if t2<=t1: return None\n    if t<t1 or t>t2: return None\n    u=(t-t1)*6/(t2-t1)\n    k=min(int(u),5)\n    cum=[0,1,3,6,9,11,12]\n    c=cum[k]+(cum[k+1]-cum[k])*(u-k)\n    return round(h1+(h2-h1)*c/12,4)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('rule of twelfths [0, 0.5, 6, 4.1, 1.5]', [0, 0.5, 6, 4.1, 1.5], 1.1), ('rule of twelfths [0, 0.5, 6, 4.1, 6]', [0, 0.5, 6, 4.1, 6], 4.1), ('rule of twelfths [0, 0.5, 6, 4.1, 0]', [0, 0.5, 6, 4.1, 0], 0.5), ('rule of twelfths [0, 0.5, 6, 4.1, 1]', [0, 0.5, 6, 4.1, 1], 0.8), ('rule of twelfths [0, 0.5, 6, 4.1, 2]', [0, 0.5, 6, 4.1, 2], 1.4), ('rule of twelfths [0, 0.5, 6, 4.1, 3]', [0, 0.5, 6, 4.1, 3], 2.3), ('rule of twelfths [0, 0.5, 6, 4.1, 4.5]', [0, 0.5, 6, 4.1, 4.5], 3.5)], [('rule of twelfths [2, 5.2, 8.5, 0.8, 4]', [2, 5.2, 8.5, 0.8, 4], 4.2128), ('rule of twelfths [2, 5.2, 8.5, 0.8, 8.5]', [2, 5.2, 8.5, 0.8, 8.5], 0.8), ('rule of twelfths [0, 0.5, 6, 4.1, 2]', [0, 0.5, 6, 4.1, 2], 1.4), ('rule of twelfths [0, 0.5, 6, 4.1, 3]', [0, 0.5, 6, 4.1, 3], 2.3), ('rule of twelfths [0, 0.5, 6, 4.1, 4.5]', [0, 0.5, 6, 4.1, 4.5], 3.5), ('rule of twelfths [0, 0.5, 6, 4.1, 5]', [0, 0.5, 6, 4.1, 5], 3.8), ('rule of twelfths [0, 0.5, 6, 4.1, 6]', [0, 0.5, 6, 4.1, 6], 4.1)], [('rule of twelfths [2, 5.2, 8.5, 0.8, 7]', [2, 5.2, 8.5, 0.8, 7], 1.4487), ('rule of twelfths [0, 0.5, 6, 4.1, 6]', [0, 0.5, 6, 4.1, 6], 4.1), ('rule of twelfths [0, 0.5, 6, 4.1, 5]', [0, 0.5, 6, 4.1, 5], 3.8), ('rule of twelfths [0, 0.5, 6, 4.1, 6.5]', [0, 0.5, 6, 4.1, 6.5], None), ('rule of twelfths [0, 0.5, 6, 4.1, 7.25]', [0, 0.5, 6, 4.1, 7.25], None), ('rule of twelfths [2, 5.2, 8.5, 0.8, 2]', [2, 5.2, 8.5, 0.8, 2], 5.2), ('rule of twelfths [2, 5.2, 8.5, 0.8, 3.1]', [2, 5.2, 8.5, 0.8, 3.1], 4.8221)], [('rule of twelfths [0, 0.0, 6, 6.0, 0.6]', [0, 0.0, 6, 6.0, 0.6], 0.3), ('rule of twelfths [2, 5.2, 8.5, 0.8, 8.5]', [2, 5.2, 8.5, 0.8, 8.5], 0.8), ('rule of twelfths [0, 0.5, 6, 4.1, 7.25]', [0, 0.5, 6, 4.1, 7.25], None), ('rule of twelfths [2, 5.2, 8.5, 0.8, 2]', [2, 5.2, 8.5, 0.8, 2], 5.2), ('rule of twelfths [2, 5.2, 8.5, 0.8, 3.1]', [2, 5.2, 8.5, 0.8, 3.1], 4.8221), ('rule of twelfths [2, 5.2, 8.5, 0.8, 4]', [2, 5.2, 8.5, 0.8, 4], 4.2128), ('rule of twelfths [2, 5.2, 8.5, 0.8, 5.25]', [2, 5.2, 8.5, 0.8, 5.25], 3.0)], [('rule of twelfths [0, 0.5, 6, 4.1, 1.5]', [0, 0.5, 6, 4.1, 1.5], 1.1), ('rule of twelfths [0, 0.5, 6, 4.1, 6]', [0, 0.5, 6, 4.1, 6], 4.1), ('rule of twelfths [2, 5.2, 8.5, 0.8, 4]', [2, 5.2, 8.5, 0.8, 4], 4.2128), ('rule of twelfths [2, 5.2, 8.5, 0.8, 5.25]', [2, 5.2, 8.5, 0.8, 5.25], 3.0), ('rule of twelfths [2, 5.2, 8.5, 0.8, 7]', [2, 5.2, 8.5, 0.8, 7], 1.4487), ('rule of twelfths [2, 5.2, 8.5, 0.8, 8.5]', [2, 5.2, 8.5, 0.8, 8.5], 0.8), ('rule of twelfths [2, 5.2, 8.5, 0.8, 9]', [2, 5.2, 8.5, 0.8, 9], 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 model with stipulated rules and constants; not certified hydrographic software or a substitute for official tide tables. 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-tide_and_marine_navigation_tables-twelfths-tide-hour-index","generated_at":"2026-09-29T14:48:06.094329+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Tide tables and passage plans turn published predictions into go/no-go decisions about depth, clearance and timing.","repair":"Take the floor of the tide-hour position and clamp to the last segment.","root_cause":"The current tide hour is chosen with round(u) instead of floor, so the second half of each hour uses the next segment.","sha256":"447ea6b9b021f8a57b1dbf321740828167fb2c9fe9ad4cee2777a4918cb7e34a","title":"Rule of twelfths: Tide hour index rounds to the nearest hour · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":40.223,"exit_code":1,"observations":[{"actual":1.1,"check":"rule of twelfths [0, 0.5, 6, 4.1, 1.5]","expected":1.1,"passed":true},{"actual":4.4,"check":"rule of twelfths [0, 0.5, 6, 4.1, 6]","expected":4.1,"passed":false},{"actual":0.5,"check":"rule of twelfths [0, 0.5, 6, 4.1, 0]","expected":0.5,"passed":true},{"actual":0.8,"check":"rule of twelfths [0, 0.5, 6, 4.1, 1]","expected":0.8,"passed":true},{"actual":1.4,"check":"rule of twelfths [0, 0.5, 6, 4.1, 2]","expected":1.4,"passed":true},{"actual":2.3,"check":"rule of twelfths [0, 0.5, 6, 4.1, 3]","expected":2.3,"passed":true},{"actual":3.5,"check":"rule of twelfths [0, 0.5, 6, 4.1, 4.5]","expected":3.5,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 1.5]\", \"actual\": 1.1, \"expected\": 1.1, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 6]\", \"actual\": 4.4, \"expected\": 4.1, \"passed\": false}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 0]\", \"actual\": 0.5, \"expected\": 0.5, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 1]\", \"actual\": 0.8, \"expected\": 0.8, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 2]\", \"actual\": 1.4, \"expected\": 1.4, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 3]\", \"actual\": 2.3, \"expected\": 2.3, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 4.5]\", \"actual\": 3.5, \"expected\": 3.5, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":39.018,"exit_code":1,"observations":[{"actual":0.95,"check":"rule of twelfths [0, 0.5, 6, 4.1, 1.5]","expected":1.1,"passed":false},{"actual":4.1,"check":"rule of twelfths [0, 0.5, 6, 4.1, 6]","expected":4.1,"passed":true},{"actual":0.5,"check":"rule of twelfths [0, 0.5, 6, 4.1, 0]","expected":0.5,"passed":true},{"actual":0.8,"check":"rule of twelfths [0, 0.5, 6, 4.1, 1]","expected":0.8,"passed":true},{"actual":1.4,"check":"rule of twelfths [0, 0.5, 6, 4.1, 2]","expected":1.4,"passed":true},{"actual":2.3,"check":"rule of twelfths [0, 0.5, 6, 4.1, 3]","expected":2.3,"passed":true},{"actual":3.5,"check":"rule of twelfths [0, 0.5, 6, 4.1, 4.5]","expected":3.5,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 1.5]\", \"actual\": 0.95, \"expected\": 1.1, \"passed\": false}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 6]\", \"actual\": 4.1, \"expected\": 4.1, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 0]\", \"actual\": 0.5, \"expected\": 0.5, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 1]\", \"actual\": 0.8, \"expected\": 0.8, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 2]\", \"actual\": 1.4, \"expected\": 1.4, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 3]\", \"actual\": 2.3, \"expected\": 2.3, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 4.5]\", \"actual\": 3.5, \"expected\": 3.5, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":38.495,"exit_code":0,"observations":[{"actual":1.1,"check":"rule of twelfths [0, 0.5, 6, 4.1, 1.5]","expected":1.1,"passed":true},{"actual":4.1,"check":"rule of twelfths [0, 0.5, 6, 4.1, 6]","expected":4.1,"passed":true},{"actual":0.5,"check":"rule of twelfths [0, 0.5, 6, 4.1, 0]","expected":0.5,"passed":true},{"actual":0.8,"check":"rule of twelfths [0, 0.5, 6, 4.1, 1]","expected":0.8,"passed":true},{"actual":1.4,"check":"rule of twelfths [0, 0.5, 6, 4.1, 2]","expected":1.4,"passed":true},{"actual":2.3,"check":"rule of twelfths [0, 0.5, 6, 4.1, 3]","expected":2.3,"passed":true},{"actual":3.5,"check":"rule of twelfths [0, 0.5, 6, 4.1, 4.5]","expected":3.5,"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 1.5]\", \"actual\": 1.1, \"expected\": 1.1, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 6]\", \"actual\": 4.1, \"expected\": 4.1, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 0]\", \"actual\": 0.5, \"expected\": 0.5, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 1]\", \"actual\": 0.8, \"expected\": 0.8, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 2]\", \"actual\": 1.4, \"expected\": 1.4, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 3]\", \"actual\": 2.3, \"expected\": 2.3, \"passed\": true}, {\"check\": \"rule of twelfths [0, 0.5, 6, 4.1, 4.5]\", \"actual\": 3.5, \"expected\": 3.5, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}