{"abstract":"Accrued interest follows an actual/actual pattern instead of the 365-day basis.","category":"Bond day-count conventions","checks":8,"contract":"Inputs prev and next coupon dates, settlement in [prev, next) and annual rate (semi-annual coupons). c = 100*rate, days = days(prev, settle). If days >= 183 accrued = c/2 - c*days(settle, next)/365, else accrued = c*days/365. Round to 6 decimals.","evaluation_group":"w2-bond_day_count_conventions-canadian-accrued","failed_approach":"Using 366 in leap years is still not the fixed 365-day basis.","family":"w2-bond_day_count_conventions-canadian-accrued-forward-accrual-basis","id":"FA-61196","implementations":{"attempt":{"sha256":"ab43774304bec9f02db69ff0ee295fa19a664fb1e25a8fa31b63d6a5472aec0f","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport datetime\nN = 1\nobservations = []\ndef solve(prev, nxt, settle, rate):\n    P = datetime.date(*prev)\n    Q = datetime.date(*nxt)\n    S = datetime.date(*settle)\n    days = (S - P).days\n    c = 100 * rate\n    if days >= 183:\n        acc = c / 2 - c * (Q - S).days / 365\n    else:\n        acc = c * days / (366 if P.year % 4 == 0 else 365)\n    return round(acc, 6)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression forward accrual basis 1', [[2027, 9, 8], [2028, 3, 8], [2028, 3, 7], 0.0825], 4.091096], ['regression forward accrual basis 2', [[2029, 9, 13], [2030, 3, 13], [2030, 3, 12], 0.05], 2.465753], ['partial repair probe 1', [[2032, 10, 3], [2033, 4, 3], [2032, 10, 16], 0.0825], 0.293836], ['partial repair probe 2', [[2016, 8, 27], [2017, 2, 27], [2016, 11, 15], 0.025], 0.547945], ['boundary control 1', [[2024, 1, 1], [2024, 7, 1], [2024, 1, 1], 0.05], 0.0], ['normal control 1', [[2027, 7, 31], [2028, 1, 31], [2028, 1, 30], 0.05], 2.486301], ['normal control 2', [[2015, 7, 7], [2016, 1, 7], [2016, 1, 6], 0.025], 1.243151], ['normal control 3', [[2019, 3, 22], [2019, 9, 22], [2019, 9, 21], 0.05], 2.486301]], [['regression forward accrual basis 1', [[2022, 1, 16], [2022, 7, 16], [2022, 7, 15], 0.025], 1.232877], ['regression forward accrual basis 2', [[2038, 9, 30], [2039, 3, 30], [2039, 3, 29], 0.025], 1.232877], ['partial repair probe 1', [[2032, 7, 4], [2033, 1, 4], [2032, 8, 12], 0.025], 0.267123], ['partial repair probe 2', [[2040, 5, 31], [2040, 11, 30], [2040, 11, 29], 0.0125], 0.623288], ['boundary control 1', [[2024, 1, 1], [2024, 7, 1], [2024, 1, 1], 0.05], 0.0], ['normal control 1', [[2018, 5, 18], [2018, 11, 18], [2018, 11, 17], 0.0125], 0.621575], ['normal control 2', [[2027, 3, 9], [2027, 9, 9], [2027, 9, 8], 0.025], 1.243151], ['normal control 3', [[2035, 5, 1], [2035, 11, 1], [2035, 10, 31], 0.025], 1.243151]], [['regression forward accrual basis 1', [[2020, 2, 28], [2020, 8, 28], [2020, 8, 26], 0.0125], 0.616438], ['regression forward accrual basis 2', [[2015, 8, 30], [2016, 2, 29], [2016, 2, 28], 0.0375], 1.869863], ['partial repair probe 1', [[2036, 6, 30], [2036, 12, 30], [2036, 12, 29], 0.0825], 4.113699], ['partial repair probe 2', [[2040, 4, 25], [2040, 10, 25], [2040, 10, 23], 0.0825], 4.091096], ['boundary control 1', [[2024, 1, 1], [2024, 7, 1], [2024, 1, 1], 0.05], 0.0], ['normal control 1', [[2034, 5, 18], [2034, 11, 18], [2034, 11, 17], 0.025], 1.243151], ['normal control 2', [[2017, 8, 12], [2018, 2, 12], [2018, 2, 11], 0.05], 2.486301], ['normal control 3', [[2015, 8, 25], [2016, 2, 25], [2016, 2, 24], 0.0825], 4.102397]], [['regression forward accrual basis 1', [[2018, 4, 11], [2018, 10, 11], [2018, 10, 10], 0.0375], 1.869863], ['regression forward accrual basis 2', [[2021, 6, 30], [2021, 12, 30], [2021, 12, 29], 0.0125], 0.623288], ['partial repair probe 1', [[2028, 2, 28], [2028, 8, 28], [2028, 8, 27], 0.0125], 0.619863], ['partial repair probe 2', [[2016, 9, 30], [2017, 3, 30], [2016, 10, 31], 0.025], 0.212329], ['boundary control 1', [[2024, 1, 1], [2024, 7, 1], [2024, 1, 1], 0.05], 0.0], ['normal control 1', [[2015, 7, 11], [2016, 1, 11], [2016, 1, 10], 0.0125], 0.621575], ['normal control 2', [[2020, 3, 18], [2020, 9, 18], [2020, 9, 17], 0.05], 2.486301], ['normal control 3', [[2038, 8, 4], [2039, 2, 4], [2039, 2, 3], 0.05], 2.486301]], [['regression forward accrual basis 1', [[2019, 11, 1], [2020, 5, 1], [2020, 4, 27], 0.0825], 4.023288], ['regression forward accrual basis 2', [[2040, 2, 28], [2040, 8, 28], [2040, 8, 25], 0.0125], 0.613014], ['partial repair probe 1', [[2016, 8, 20], [2017, 2, 20], [2016, 8, 31], 0.05], 0.150685], ['partial repair probe 2', [[2028, 4, 2], [2028, 10, 2], [2028, 10, 1], 0.0125], 0.623288], ['boundary control 1', [[2024, 1, 1], [2024, 7, 1], [2024, 1, 1], 0.05], 0.0], ['normal control 1', [[2021, 5, 9], [2021, 11, 9], [2021, 11, 8], 0.025], 1.243151], ['normal control 2', [[2037, 5, 1], [2037, 11, 1], [2037, 10, 31], 0.025], 1.243151], ['normal control 3', [[2027, 5, 5], [2027, 11, 5], [2027, 11, 4], 0.025], 1.243151]]]\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":"fad35280c46a674af068c7f31f3ba20037dc9129fdeaaf3c3140c74c8f80dd49","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport datetime\nN = 1\nobservations = []\ndef solve(prev, nxt, settle, rate):\n    P = datetime.date(*prev)\n    Q = datetime.date(*nxt)\n    S = datetime.date(*settle)\n    days = (S - P).days\n    c = 100 * rate\n    if days >= 183:\n        acc = c / 2 - c * (Q - S).days / 365\n    else:\n        acc = c / 2 * days / (Q - P).days\n    return round(acc, 6)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression forward accrual basis 1', [[2027, 9, 8], [2028, 3, 8], [2028, 3, 7], 0.0825], 4.091096], ['regression forward accrual basis 2', [[2029, 9, 13], [2030, 3, 13], [2030, 3, 12], 0.05], 2.465753], ['partial repair probe 1', [[2032, 10, 3], [2033, 4, 3], [2032, 10, 16], 0.0825], 0.293836], ['partial repair probe 2', [[2016, 8, 27], [2017, 2, 27], [2016, 11, 15], 0.025], 0.547945], ['boundary control 1', [[2024, 1, 1], [2024, 7, 1], [2024, 1, 1], 0.05], 0.0], ['normal control 1', [[2027, 7, 31], [2028, 1, 31], [2028, 1, 30], 0.05], 2.486301], ['normal control 2', [[2015, 7, 7], [2016, 1, 7], [2016, 1, 6], 0.025], 1.243151], ['normal control 3', [[2019, 3, 22], [2019, 9, 22], [2019, 9, 21], 0.05], 2.486301]], [['regression forward accrual basis 1', [[2022, 1, 16], [2022, 7, 16], [2022, 7, 15], 0.025], 1.232877], ['regression forward accrual basis 2', [[2038, 9, 30], [2039, 3, 30], [2039, 3, 29], 0.025], 1.232877], ['partial repair probe 1', [[2032, 7, 4], [2033, 1, 4], [2032, 8, 12], 0.025], 0.267123], ['partial repair probe 2', [[2040, 5, 31], [2040, 11, 30], [2040, 11, 29], 0.0125], 0.623288], ['boundary control 1', [[2024, 1, 1], [2024, 7, 1], [2024, 1, 1], 0.05], 0.0], ['normal control 1', [[2018, 5, 18], [2018, 11, 18], [2018, 11, 17], 0.0125], 0.621575], ['normal control 2', [[2027, 3, 9], [2027, 9, 9], [2027, 9, 8], 0.025], 1.243151], ['normal control 3', [[2035, 5, 1], [2035, 11, 1], [2035, 10, 31], 0.025], 1.243151]], [['regression forward accrual basis 1', [[2020, 2, 28], [2020, 8, 28], [2020, 8, 26], 0.0125], 0.616438], ['regression forward accrual basis 2', [[2015, 8, 30], [2016, 2, 29], [2016, 2, 28], 0.0375], 1.869863], ['partial repair probe 1', [[2036, 6, 30], [2036, 12, 30], [2036, 12, 29], 0.0825], 4.113699], ['partial repair probe 2', [[2040, 4, 25], [2040, 10, 25], [2040, 10, 23], 0.0825], 4.091096], ['boundary control 1', [[2024, 1, 1], [2024, 7, 1], [2024, 1, 1], 0.05], 0.0], ['normal control 1', [[2034, 5, 18], [2034, 11, 18], [2034, 11, 17], 0.025], 1.243151], ['normal control 2', [[2017, 8, 12], [2018, 2, 12], [2018, 2, 11], 0.05], 2.486301], ['normal control 3', [[2015, 8, 25], [2016, 2, 25], [2016, 2, 24], 0.0825], 4.102397]], [['regression forward accrual basis 1', [[2018, 4, 11], [2018, 10, 11], [2018, 10, 10], 0.0375], 1.869863], ['regression forward accrual basis 2', [[2021, 6, 30], [2021, 12, 30], [2021, 12, 29], 0.0125], 0.623288], ['partial repair probe 1', [[2028, 2, 28], [2028, 8, 28], [2028, 8, 27], 0.0125], 0.619863], ['partial repair probe 2', [[2016, 9, 30], [2017, 3, 30], [2016, 10, 31], 0.025], 0.212329], ['boundary control 1', [[2024, 1, 1], [2024, 7, 1], [2024, 1, 1], 0.05], 0.0], ['normal control 1', [[2015, 7, 11], [2016, 1, 11], [2016, 1, 10], 0.0125], 0.621575], ['normal control 2', [[2020, 3, 18], [2020, 9, 18], [2020, 9, 17], 0.05], 2.486301], ['normal control 3', [[2038, 8, 4], [2039, 2, 4], [2039, 2, 3], 0.05], 2.486301]], [['regression forward accrual basis 1', [[2019, 11, 1], [2020, 5, 1], [2020, 4, 27], 0.0825], 4.023288], ['regression forward accrual basis 2', [[2040, 2, 28], [2040, 8, 28], [2040, 8, 25], 0.0125], 0.613014], ['partial repair probe 1', [[2016, 8, 20], [2017, 2, 20], [2016, 8, 31], 0.05], 0.150685], ['partial repair probe 2', [[2028, 4, 2], [2028, 10, 2], [2028, 10, 1], 0.0125], 0.623288], ['boundary control 1', [[2024, 1, 1], [2024, 7, 1], [2024, 1, 1], 0.05], 0.0], ['normal control 1', [[2021, 5, 9], [2021, 11, 9], [2021, 11, 8], 0.025], 1.243151], ['normal control 2', [[2037, 5, 1], [2037, 11, 1], [2037, 10, 31], 0.025], 1.243151], ['normal control 3', [[2027, 5, 5], [2027, 11, 5], [2027, 11, 4], 0.025], 1.243151]]]\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":"a0bf2f05b1e711e5db5ebda6e236d5aa1e7ef44217eec091adac8fe3c66fc6f2","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport datetime\nN = 1\nobservations = []\ndef solve(prev, nxt, settle, rate):\n    P = datetime.date(*prev)\n    Q = datetime.date(*nxt)\n    S = datetime.date(*settle)\n    days = (S - P).days\n    c = 100 * rate\n    if days >= 183:\n        acc = c / 2 - c * (Q - S).days / 365\n    else:\n        acc = c * days / 365\n    return round(acc, 6)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression forward accrual basis 1', [[2027, 9, 8], [2028, 3, 8], [2028, 3, 7], 0.0825], 4.091096], ['regression forward accrual basis 2', [[2029, 9, 13], [2030, 3, 13], [2030, 3, 12], 0.05], 2.465753], ['partial repair probe 1', [[2032, 10, 3], [2033, 4, 3], [2032, 10, 16], 0.0825], 0.293836], ['partial repair probe 2', [[2016, 8, 27], [2017, 2, 27], [2016, 11, 15], 0.025], 0.547945], ['boundary control 1', [[2024, 1, 1], [2024, 7, 1], [2024, 1, 1], 0.05], 0.0], ['normal control 1', [[2027, 7, 31], [2028, 1, 31], [2028, 1, 30], 0.05], 2.486301], ['normal control 2', [[2015, 7, 7], [2016, 1, 7], [2016, 1, 6], 0.025], 1.243151], ['normal control 3', [[2019, 3, 22], [2019, 9, 22], [2019, 9, 21], 0.05], 2.486301]], [['regression forward accrual basis 1', [[2022, 1, 16], [2022, 7, 16], [2022, 7, 15], 0.025], 1.232877], ['regression forward accrual basis 2', [[2038, 9, 30], [2039, 3, 30], [2039, 3, 29], 0.025], 1.232877], ['partial repair probe 1', [[2032, 7, 4], [2033, 1, 4], [2032, 8, 12], 0.025], 0.267123], ['partial repair probe 2', [[2040, 5, 31], [2040, 11, 30], [2040, 11, 29], 0.0125], 0.623288], ['boundary control 1', [[2024, 1, 1], [2024, 7, 1], [2024, 1, 1], 0.05], 0.0], ['normal control 1', [[2018, 5, 18], [2018, 11, 18], [2018, 11, 17], 0.0125], 0.621575], ['normal control 2', [[2027, 3, 9], [2027, 9, 9], [2027, 9, 8], 0.025], 1.243151], ['normal control 3', [[2035, 5, 1], [2035, 11, 1], [2035, 10, 31], 0.025], 1.243151]], [['regression forward accrual basis 1', [[2020, 2, 28], [2020, 8, 28], [2020, 8, 26], 0.0125], 0.616438], ['regression forward accrual basis 2', [[2015, 8, 30], [2016, 2, 29], [2016, 2, 28], 0.0375], 1.869863], ['partial repair probe 1', [[2036, 6, 30], [2036, 12, 30], [2036, 12, 29], 0.0825], 4.113699], ['partial repair probe 2', [[2040, 4, 25], [2040, 10, 25], [2040, 10, 23], 0.0825], 4.091096], ['boundary control 1', [[2024, 1, 1], [2024, 7, 1], [2024, 1, 1], 0.05], 0.0], ['normal control 1', [[2034, 5, 18], [2034, 11, 18], [2034, 11, 17], 0.025], 1.243151], ['normal control 2', [[2017, 8, 12], [2018, 2, 12], [2018, 2, 11], 0.05], 2.486301], ['normal control 3', [[2015, 8, 25], [2016, 2, 25], [2016, 2, 24], 0.0825], 4.102397]], [['regression forward accrual basis 1', [[2018, 4, 11], [2018, 10, 11], [2018, 10, 10], 0.0375], 1.869863], ['regression forward accrual basis 2', [[2021, 6, 30], [2021, 12, 30], [2021, 12, 29], 0.0125], 0.623288], ['partial repair probe 1', [[2028, 2, 28], [2028, 8, 28], [2028, 8, 27], 0.0125], 0.619863], ['partial repair probe 2', [[2016, 9, 30], [2017, 3, 30], [2016, 10, 31], 0.025], 0.212329], ['boundary control 1', [[2024, 1, 1], [2024, 7, 1], [2024, 1, 1], 0.05], 0.0], ['normal control 1', [[2015, 7, 11], [2016, 1, 11], [2016, 1, 10], 0.0125], 0.621575], ['normal control 2', [[2020, 3, 18], [2020, 9, 18], [2020, 9, 17], 0.05], 2.486301], ['normal control 3', [[2038, 8, 4], [2039, 2, 4], [2039, 2, 3], 0.05], 2.486301]], [['regression forward accrual basis 1', [[2019, 11, 1], [2020, 5, 1], [2020, 4, 27], 0.0825], 4.023288], ['regression forward accrual basis 2', [[2040, 2, 28], [2040, 8, 28], [2040, 8, 25], 0.0125], 0.613014], ['partial repair probe 1', [[2016, 8, 20], [2017, 2, 20], [2016, 8, 31], 0.05], 0.150685], ['partial repair probe 2', [[2028, 4, 2], [2028, 10, 2], [2028, 10, 1], 0.0125], 0.623288], ['boundary control 1', [[2024, 1, 1], [2024, 7, 1], [2024, 1, 1], 0.05], 0.0], ['normal control 1', [[2021, 5, 9], [2021, 11, 9], [2021, 11, 8], 0.025], 1.243151], ['normal control 2', [[2037, 5, 1], [2037, 11, 1], [2037, 10, 31], 0.025], 1.243151], ['normal control 3', [[2027, 5, 5], [2027, 11, 5], [2027, 11, 4], 0.025], 1.243151]]]\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 explicitly in the contract field; no claim of conformance to any published convention text. 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-bond_day_count_conventions-canadian-accrued-forward-accrual-basis","generated_at":"2026-09-29T14:46:52.860856+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Bond accrual and pricing systems depend on exact day-count arithmetic; a single-day error changes settlement cash.","repair":"Accrue c*days/365 in the early part of the period.","root_cause":"The early branch divides by the coupon period days and pays half a coupon per period.","sha256":"b3b05db8a0629d8abde3a84a7dd5a7be1c09b33b8ee0cdd158f76bde432679a8","title":"Canadian-style semi-annual accrued interest: early-period accrual uses the actual period length · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":41.23,"exit_code":1,"observations":[{"actual":4.091096,"check":"regression forward accrual basis 1","expected":4.091096,"passed":true},{"actual":2.465753,"check":"regression forward accrual basis 2","expected":2.465753,"passed":true},{"actual":0.293033,"check":"partial repair probe 1","expected":0.293836,"passed":false},{"actual":0.546448,"check":"partial repair probe 2","expected":0.547945,"passed":false},{"actual":0.0,"check":"boundary control 1","expected":0.0,"passed":true},{"actual":2.486301,"check":"normal control 1","expected":2.486301,"passed":true},{"actual":1.243151,"check":"normal control 2","expected":1.243151,"passed":true},{"actual":2.486301,"check":"normal control 3","expected":2.486301,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression forward accrual basis 1\", \"actual\": 4.091096, \"expected\": 4.091096, \"passed\": true}, {\"check\": \"regression forward accrual basis 2\", \"actual\": 2.465753, \"expected\": 2.465753, \"passed\": true}, {\"check\": \"partial repair probe 1\", \"actual\": 0.293033, \"expected\": 0.293836, \"passed\": false}, {\"check\": \"partial repair probe 2\", \"actual\": 0.546448, \"expected\": 0.547945, \"passed\": false}, {\"check\": \"boundary control 1\", \"actual\": 0.0, \"expected\": 0.0, \"passed\": true}, {\"check\": \"normal control 1\", \"actual\": 2.486301, \"expected\": 2.486301, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": 1.243151, \"expected\": 1.243151, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": 2.486301, \"expected\": 2.486301, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.957,"exit_code":1,"observations":[{"actual":4.102335,"check":"regression forward accrual basis 1","expected":4.091096,"passed":false},{"actual":2.486188,"check":"regression forward accrual basis 2","expected":2.465753,"passed":false},{"actual":0.294643,"check":"partial repair probe 1","expected":0.293836,"passed":false},{"actual":0.543478,"check":"partial repair probe 2","expected":0.547945,"passed":false},{"actual":0.0,"check":"boundary control 1","expected":0.0,"passed":true},{"actual":2.486301,"check":"normal control 1","expected":2.486301,"passed":true},{"actual":1.243151,"check":"normal control 2","expected":1.243151,"passed":true},{"actual":2.486301,"check":"normal control 3","expected":2.486301,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression forward accrual basis 1\", \"actual\": 4.102335, \"expected\": 4.091096, \"passed\": false}, {\"check\": \"regression forward accrual basis 2\", \"actual\": 2.486188, \"expected\": 2.465753, \"passed\": false}, {\"check\": \"partial repair probe 1\", \"actual\": 0.294643, \"expected\": 0.293836, \"passed\": false}, {\"check\": \"partial repair probe 2\", \"actual\": 0.543478, \"expected\": 0.547945, \"passed\": false}, {\"check\": \"boundary control 1\", \"actual\": 0.0, \"expected\": 0.0, \"passed\": true}, {\"check\": \"normal control 1\", \"actual\": 2.486301, \"expected\": 2.486301, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": 1.243151, \"expected\": 1.243151, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": 2.486301, \"expected\": 2.486301, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":42.181,"exit_code":0,"observations":[{"actual":4.091096,"check":"regression forward accrual basis 1","expected":4.091096,"passed":true},{"actual":2.465753,"check":"regression forward accrual basis 2","expected":2.465753,"passed":true},{"actual":0.293836,"check":"partial repair probe 1","expected":0.293836,"passed":true},{"actual":0.547945,"check":"partial repair probe 2","expected":0.547945,"passed":true},{"actual":0.0,"check":"boundary control 1","expected":0.0,"passed":true},{"actual":2.486301,"check":"normal control 1","expected":2.486301,"passed":true},{"actual":1.243151,"check":"normal control 2","expected":1.243151,"passed":true},{"actual":2.486301,"check":"normal control 3","expected":2.486301,"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression forward accrual basis 1\", \"actual\": 4.091096, \"expected\": 4.091096, \"passed\": true}, {\"check\": \"regression forward accrual basis 2\", \"actual\": 2.465753, \"expected\": 2.465753, \"passed\": true}, {\"check\": \"partial repair probe 1\", \"actual\": 0.293836, \"expected\": 0.293836, \"passed\": true}, {\"check\": \"partial repair probe 2\", \"actual\": 0.547945, \"expected\": 0.547945, \"passed\": true}, {\"check\": \"boundary control 1\", \"actual\": 0.0, \"expected\": 0.0, \"passed\": true}, {\"check\": \"normal control 1\", \"actual\": 2.486301, \"expected\": 2.486301, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": 1.243151, \"expected\": 1.243151, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": 2.486301, \"expected\": 2.486301, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}