{"abstract":"After a short month, renewals stay on the 28th or 30th for the rest of the subscription.","category":"Subscription proration billing","checks":8,"contract":"Input {anchor [y,m,d], n, interval months}. Renewal i (1..n) falls interval*i months after the anchor month, on the anchor day clamped to that month's length (so a 31st anchor returns to the 31st whenever possible). Return the list of [y, m, d].","evaluation_group":"w2-subscription-proration-month-end-anniversary","failed_approach":"The attempt snaps every late-month anchor to month end, moving a 29th or 30th anchor to the 31st.","family":"w2-subscription-proration-month-end-anniversary-anchor-day-drift","id":"FA-59381","implementations":{"attempt":{"sha256":"9397c9a3483fc50f83b7f8db2a0533bae49837051d010e43883a0ec7e270001e","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport datetime\nimport calendar\nN = 1\nobservations = []\ndef solve(x):\n    y, m, d = x['anchor']\n    out = []\n    for i in range(1, x['n'] + 1):\n        total = (m - 1) + i * x['interval']\n        ny, nm = y + total // 12, total % 12 + 1\n        dim = calendar.monthrange(ny, nm)[1]\n        out.append([ny, nm, min(d, dim) if d <= 28 else dim])\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression', {'anchor': [2025, 1, 29], 'n': 8, 'interval': 1}, [[2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29]]), ('regression', {'anchor': [2025, 5, 31], 'n': 10, 'interval': 2}, [[2025, 7, 31], [2025, 9, 30], [2025, 11, 30], [2026, 1, 31], [2026, 3, 31], [2026, 5, 31], [2026, 7, 31], [2026, 9, 30], [2026, 11, 30], [2027, 1, 31]]), ('partial-repair probe', {'anchor': [2024, 7, 30], 'n': 7, 'interval': 3}, [[2024, 10, 30], [2025, 1, 30], [2025, 4, 30], [2025, 7, 30], [2025, 10, 30], [2026, 1, 30], [2026, 4, 30]]), ('partial-repair probe', {'anchor': [2019, 5, 29], 'n': 11, 'interval': 2}, [[2019, 7, 29], [2019, 9, 29], [2019, 11, 29], [2020, 1, 29], [2020, 3, 29], [2020, 5, 29], [2020, 7, 29], [2020, 9, 29], [2020, 11, 29], [2021, 1, 29], [2021, 3, 29]]), ('normal control', {'anchor': [2023, 3, 28], 'n': 14, 'interval': 3}, [[2023, 6, 28], [2023, 9, 28], [2023, 12, 28], [2024, 3, 28], [2024, 6, 28], [2024, 9, 28], [2024, 12, 28], [2025, 3, 28], [2025, 6, 28], [2025, 9, 28], [2025, 12, 28], [2026, 3, 28], [2026, 6, 28], [2026, 9, 28]]), ('normal control', {'anchor': [2025, 8, 28], 'n': 1, 'interval': 1}, [[2025, 9, 28]]), ('normal control', {'anchor': [2025, 4, 28], 'n': 8, 'interval': 12}, [[2026, 4, 28], [2027, 4, 28], [2028, 4, 28], [2029, 4, 28], [2030, 4, 28], [2031, 4, 28], [2032, 4, 28], [2033, 4, 28]]), ('normal control', {'anchor': [2025, 3, 31], 'n': 7, 'interval': 12}, [[2026, 3, 31], [2027, 3, 31], [2028, 3, 31], [2029, 3, 31], [2030, 3, 31], [2031, 3, 31], [2032, 3, 31]])], [('regression', {'anchor': [2024, 12, 29], 'n': 10, 'interval': 1}, [[2025, 1, 29], [2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29], [2025, 10, 29]]), ('regression', {'anchor': [2023, 12, 31], 'n': 7, 'interval': 1}, [[2024, 1, 31], [2024, 2, 29], [2024, 3, 31], [2024, 4, 30], [2024, 5, 31], [2024, 6, 30], [2024, 7, 31]]), ('partial-repair probe', {'anchor': [2024, 2, 29], 'n': 6, 'interval': 2}, [[2024, 4, 29], [2024, 6, 29], [2024, 8, 29], [2024, 10, 29], [2024, 12, 29], [2025, 2, 28]]), ('partial-repair probe', {'anchor': [2025, 1, 29], 'n': 8, 'interval': 1}, [[2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29]]), ('normal control', {'anchor': [2025, 5, 16], 'n': 3, 'interval': 12}, [[2026, 5, 16], [2027, 5, 16], [2028, 5, 16]]), ('normal control', {'anchor': [2023, 3, 28], 'n': 12, 'interval': 1}, [[2023, 4, 28], [2023, 5, 28], [2023, 6, 28], [2023, 7, 28], [2023, 8, 28], [2023, 9, 28], [2023, 10, 28], [2023, 11, 28], [2023, 12, 28], [2024, 1, 28], [2024, 2, 28], [2024, 3, 28]]), ('normal control', {'anchor': [2023, 11, 17], 'n': 7, 'interval': 1}, [[2023, 12, 17], [2024, 1, 17], [2024, 2, 17], [2024, 3, 17], [2024, 4, 17], [2024, 5, 17], [2024, 6, 17]]), ('normal control', {'anchor': [2025, 4, 28], 'n': 7, 'interval': 1}, [[2025, 5, 28], [2025, 6, 28], [2025, 7, 28], [2025, 8, 28], [2025, 9, 28], [2025, 10, 28], [2025, 11, 28]])], [('regression', {'anchor': [2019, 1, 30], 'n': 2, 'interval': 1}, [[2019, 2, 28], [2019, 3, 30]]), ('regression', {'anchor': [2025, 1, 29], 'n': 8, 'interval': 1}, [[2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29]]), ('partial-repair probe', {'anchor': [2024, 12, 29], 'n': 10, 'interval': 1}, [[2025, 1, 29], [2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29], [2025, 10, 29]]), ('partial-repair probe', {'anchor': [2019, 12, 29], 'n': 7, 'interval': 1}, [[2020, 1, 29], [2020, 2, 29], [2020, 3, 29], [2020, 4, 29], [2020, 5, 29], [2020, 6, 29], [2020, 7, 29]]), ('normal control', {'anchor': [2019, 7, 22], 'n': 2, 'interval': 2}, [[2019, 9, 22], [2019, 11, 22]]), ('normal control', {'anchor': [2023, 8, 28], 'n': 7, 'interval': 2}, [[2023, 10, 28], [2023, 12, 28], [2024, 2, 28], [2024, 4, 28], [2024, 6, 28], [2024, 8, 28], [2024, 10, 28]]), ('normal control', {'anchor': [2025, 10, 10], 'n': 8, 'interval': 3}, [[2026, 1, 10], [2026, 4, 10], [2026, 7, 10], [2026, 10, 10], [2027, 1, 10], [2027, 4, 10], [2027, 7, 10], [2027, 10, 10]]), ('normal control', {'anchor': [2023, 8, 24], 'n': 9, 'interval': 1}, [[2023, 9, 24], [2023, 10, 24], [2023, 11, 24], [2023, 12, 24], [2024, 1, 24], [2024, 2, 24], [2024, 3, 24], [2024, 4, 24], [2024, 5, 24]])], [('regression', {'anchor': [2025, 9, 30], 'n': 9, 'interval': 1}, [[2025, 10, 30], [2025, 11, 30], [2025, 12, 30], [2026, 1, 30], [2026, 2, 28], [2026, 3, 30], [2026, 4, 30], [2026, 5, 30], [2026, 6, 30]]), ('regression', {'anchor': [2024, 12, 29], 'n': 10, 'interval': 1}, [[2025, 1, 29], [2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29], [2025, 10, 29]]), ('partial-repair probe', {'anchor': [2019, 1, 30], 'n': 2, 'interval': 1}, [[2019, 2, 28], [2019, 3, 30]]), ('partial-repair probe', {'anchor': [2019, 10, 29], 'n': 10, 'interval': 1}, [[2019, 11, 29], [2019, 12, 29], [2020, 1, 29], [2020, 2, 29], [2020, 3, 29], [2020, 4, 29], [2020, 5, 29], [2020, 6, 29], [2020, 7, 29], [2020, 8, 29]]), ('normal control', {'anchor': [2024, 10, 28], 'n': 10, 'interval': 12}, [[2025, 10, 28], [2026, 10, 28], [2027, 10, 28], [2028, 10, 28], [2029, 10, 28], [2030, 10, 28], [2031, 10, 28], [2032, 10, 28], [2033, 10, 28], [2034, 10, 28]]), ('normal control', {'anchor': [2025, 8, 31], 'n': 3, 'interval': 2}, [[2025, 10, 31], [2025, 12, 31], [2026, 2, 28]]), ('normal control', {'anchor': [2025, 1, 31], 'n': 12, 'interval': 12}, [[2026, 1, 31], [2027, 1, 31], [2028, 1, 31], [2029, 1, 31], [2030, 1, 31], [2031, 1, 31], [2032, 1, 31], [2033, 1, 31], [2034, 1, 31], [2035, 1, 31], [2036, 1, 31], [2037, 1, 31]]), ('normal control', {'anchor': [2024, 5, 28], 'n': 10, 'interval': 1}, [[2024, 6, 28], [2024, 7, 28], [2024, 8, 28], [2024, 9, 28], [2024, 10, 28], [2024, 11, 28], [2024, 12, 28], [2025, 1, 28], [2025, 2, 28], [2025, 3, 28]])], [('regression', {'anchor': [2024, 7, 30], 'n': 9, 'interval': 1}, [[2024, 8, 30], [2024, 9, 30], [2024, 10, 30], [2024, 11, 30], [2024, 12, 30], [2025, 1, 30], [2025, 2, 28], [2025, 3, 30], [2025, 4, 30]]), ('regression', {'anchor': [2025, 1, 31], 'n': 9, 'interval': 1}, [[2025, 2, 28], [2025, 3, 31], [2025, 4, 30], [2025, 5, 31], [2025, 6, 30], [2025, 7, 31], [2025, 8, 31], [2025, 9, 30], [2025, 10, 31]]), ('partial-repair probe', {'anchor': [2019, 9, 29], 'n': 6, 'interval': 2}, [[2019, 11, 29], [2020, 1, 29], [2020, 3, 29], [2020, 5, 29], [2020, 7, 29], [2020, 9, 29]]), ('partial-repair probe', {'anchor': [2025, 9, 30], 'n': 9, 'interval': 1}, [[2025, 10, 30], [2025, 11, 30], [2025, 12, 30], [2026, 1, 30], [2026, 2, 28], [2026, 3, 30], [2026, 4, 30], [2026, 5, 30], [2026, 6, 30]]), ('normal control', {'anchor': [2023, 11, 28], 'n': 14, 'interval': 12}, [[2024, 11, 28], [2025, 11, 28], [2026, 11, 28], [2027, 11, 28], [2028, 11, 28], [2029, 11, 28], [2030, 11, 28], [2031, 11, 28], [2032, 11, 28], [2033, 11, 28], [2034, 11, 28], [2035, 11, 28], [2036, 11, 28], [2037, 11, 28]]), ('normal control', {'anchor': [2025, 7, 31], 'n': 8, 'interval': 6}, [[2026, 1, 31], [2026, 7, 31], [2027, 1, 31], [2027, 7, 31], [2028, 1, 31], [2028, 7, 31], [2029, 1, 31], [2029, 7, 31]]), ('normal control', {'anchor': [2023, 2, 19], 'n': 7, 'interval': 3}, [[2023, 5, 19], [2023, 8, 19], [2023, 11, 19], [2024, 2, 19], [2024, 5, 19], [2024, 8, 19], [2024, 11, 19]]), ('normal control', {'anchor': [2019, 8, 15], 'n': 8, 'interval': 6}, [[2020, 2, 15], [2020, 8, 15], [2021, 2, 15], [2021, 8, 15], [2022, 2, 15], [2022, 8, 15], [2023, 2, 15], [2023, 8, 15]])]]\nfor i, (label, args, expected) in enumerate(fixtures[N-1]):\n    check(\"%s %d\" % (label, i), 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":"f602ddcae9abbd1bc08756db64e81dc170fd35d93405ee073e81e852b1e87b3d","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport datetime\nimport calendar\nN = 1\nobservations = []\ndef solve(x):\n    y, m, d = x['anchor']\n    out = []\n    for i in range(1, x['n'] + 1):\n        total = (m - 1) + i * x['interval']\n        ny, nm = y + total // 12, total % 12 + 1\n        dim = calendar.monthrange(ny, nm)[1]\n        out.append([ny, nm, min(out[-1][2] if out else d, dim)])\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression', {'anchor': [2025, 1, 29], 'n': 8, 'interval': 1}, [[2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29]]), ('regression', {'anchor': [2025, 5, 31], 'n': 10, 'interval': 2}, [[2025, 7, 31], [2025, 9, 30], [2025, 11, 30], [2026, 1, 31], [2026, 3, 31], [2026, 5, 31], [2026, 7, 31], [2026, 9, 30], [2026, 11, 30], [2027, 1, 31]]), ('partial-repair probe', {'anchor': [2024, 7, 30], 'n': 7, 'interval': 3}, [[2024, 10, 30], [2025, 1, 30], [2025, 4, 30], [2025, 7, 30], [2025, 10, 30], [2026, 1, 30], [2026, 4, 30]]), ('partial-repair probe', {'anchor': [2019, 5, 29], 'n': 11, 'interval': 2}, [[2019, 7, 29], [2019, 9, 29], [2019, 11, 29], [2020, 1, 29], [2020, 3, 29], [2020, 5, 29], [2020, 7, 29], [2020, 9, 29], [2020, 11, 29], [2021, 1, 29], [2021, 3, 29]]), ('normal control', {'anchor': [2023, 3, 28], 'n': 14, 'interval': 3}, [[2023, 6, 28], [2023, 9, 28], [2023, 12, 28], [2024, 3, 28], [2024, 6, 28], [2024, 9, 28], [2024, 12, 28], [2025, 3, 28], [2025, 6, 28], [2025, 9, 28], [2025, 12, 28], [2026, 3, 28], [2026, 6, 28], [2026, 9, 28]]), ('normal control', {'anchor': [2025, 8, 28], 'n': 1, 'interval': 1}, [[2025, 9, 28]]), ('normal control', {'anchor': [2025, 4, 28], 'n': 8, 'interval': 12}, [[2026, 4, 28], [2027, 4, 28], [2028, 4, 28], [2029, 4, 28], [2030, 4, 28], [2031, 4, 28], [2032, 4, 28], [2033, 4, 28]]), ('normal control', {'anchor': [2025, 3, 31], 'n': 7, 'interval': 12}, [[2026, 3, 31], [2027, 3, 31], [2028, 3, 31], [2029, 3, 31], [2030, 3, 31], [2031, 3, 31], [2032, 3, 31]])], [('regression', {'anchor': [2024, 12, 29], 'n': 10, 'interval': 1}, [[2025, 1, 29], [2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29], [2025, 10, 29]]), ('regression', {'anchor': [2023, 12, 31], 'n': 7, 'interval': 1}, [[2024, 1, 31], [2024, 2, 29], [2024, 3, 31], [2024, 4, 30], [2024, 5, 31], [2024, 6, 30], [2024, 7, 31]]), ('partial-repair probe', {'anchor': [2024, 2, 29], 'n': 6, 'interval': 2}, [[2024, 4, 29], [2024, 6, 29], [2024, 8, 29], [2024, 10, 29], [2024, 12, 29], [2025, 2, 28]]), ('partial-repair probe', {'anchor': [2025, 1, 29], 'n': 8, 'interval': 1}, [[2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29]]), ('normal control', {'anchor': [2025, 5, 16], 'n': 3, 'interval': 12}, [[2026, 5, 16], [2027, 5, 16], [2028, 5, 16]]), ('normal control', {'anchor': [2023, 3, 28], 'n': 12, 'interval': 1}, [[2023, 4, 28], [2023, 5, 28], [2023, 6, 28], [2023, 7, 28], [2023, 8, 28], [2023, 9, 28], [2023, 10, 28], [2023, 11, 28], [2023, 12, 28], [2024, 1, 28], [2024, 2, 28], [2024, 3, 28]]), ('normal control', {'anchor': [2023, 11, 17], 'n': 7, 'interval': 1}, [[2023, 12, 17], [2024, 1, 17], [2024, 2, 17], [2024, 3, 17], [2024, 4, 17], [2024, 5, 17], [2024, 6, 17]]), ('normal control', {'anchor': [2025, 4, 28], 'n': 7, 'interval': 1}, [[2025, 5, 28], [2025, 6, 28], [2025, 7, 28], [2025, 8, 28], [2025, 9, 28], [2025, 10, 28], [2025, 11, 28]])], [('regression', {'anchor': [2019, 1, 30], 'n': 2, 'interval': 1}, [[2019, 2, 28], [2019, 3, 30]]), ('regression', {'anchor': [2025, 1, 29], 'n': 8, 'interval': 1}, [[2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29]]), ('partial-repair probe', {'anchor': [2024, 12, 29], 'n': 10, 'interval': 1}, [[2025, 1, 29], [2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29], [2025, 10, 29]]), ('partial-repair probe', {'anchor': [2019, 12, 29], 'n': 7, 'interval': 1}, [[2020, 1, 29], [2020, 2, 29], [2020, 3, 29], [2020, 4, 29], [2020, 5, 29], [2020, 6, 29], [2020, 7, 29]]), ('normal control', {'anchor': [2019, 7, 22], 'n': 2, 'interval': 2}, [[2019, 9, 22], [2019, 11, 22]]), ('normal control', {'anchor': [2023, 8, 28], 'n': 7, 'interval': 2}, [[2023, 10, 28], [2023, 12, 28], [2024, 2, 28], [2024, 4, 28], [2024, 6, 28], [2024, 8, 28], [2024, 10, 28]]), ('normal control', {'anchor': [2025, 10, 10], 'n': 8, 'interval': 3}, [[2026, 1, 10], [2026, 4, 10], [2026, 7, 10], [2026, 10, 10], [2027, 1, 10], [2027, 4, 10], [2027, 7, 10], [2027, 10, 10]]), ('normal control', {'anchor': [2023, 8, 24], 'n': 9, 'interval': 1}, [[2023, 9, 24], [2023, 10, 24], [2023, 11, 24], [2023, 12, 24], [2024, 1, 24], [2024, 2, 24], [2024, 3, 24], [2024, 4, 24], [2024, 5, 24]])], [('regression', {'anchor': [2025, 9, 30], 'n': 9, 'interval': 1}, [[2025, 10, 30], [2025, 11, 30], [2025, 12, 30], [2026, 1, 30], [2026, 2, 28], [2026, 3, 30], [2026, 4, 30], [2026, 5, 30], [2026, 6, 30]]), ('regression', {'anchor': [2024, 12, 29], 'n': 10, 'interval': 1}, [[2025, 1, 29], [2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29], [2025, 10, 29]]), ('partial-repair probe', {'anchor': [2019, 1, 30], 'n': 2, 'interval': 1}, [[2019, 2, 28], [2019, 3, 30]]), ('partial-repair probe', {'anchor': [2019, 10, 29], 'n': 10, 'interval': 1}, [[2019, 11, 29], [2019, 12, 29], [2020, 1, 29], [2020, 2, 29], [2020, 3, 29], [2020, 4, 29], [2020, 5, 29], [2020, 6, 29], [2020, 7, 29], [2020, 8, 29]]), ('normal control', {'anchor': [2024, 10, 28], 'n': 10, 'interval': 12}, [[2025, 10, 28], [2026, 10, 28], [2027, 10, 28], [2028, 10, 28], [2029, 10, 28], [2030, 10, 28], [2031, 10, 28], [2032, 10, 28], [2033, 10, 28], [2034, 10, 28]]), ('normal control', {'anchor': [2025, 8, 31], 'n': 3, 'interval': 2}, [[2025, 10, 31], [2025, 12, 31], [2026, 2, 28]]), ('normal control', {'anchor': [2025, 1, 31], 'n': 12, 'interval': 12}, [[2026, 1, 31], [2027, 1, 31], [2028, 1, 31], [2029, 1, 31], [2030, 1, 31], [2031, 1, 31], [2032, 1, 31], [2033, 1, 31], [2034, 1, 31], [2035, 1, 31], [2036, 1, 31], [2037, 1, 31]]), ('normal control', {'anchor': [2024, 5, 28], 'n': 10, 'interval': 1}, [[2024, 6, 28], [2024, 7, 28], [2024, 8, 28], [2024, 9, 28], [2024, 10, 28], [2024, 11, 28], [2024, 12, 28], [2025, 1, 28], [2025, 2, 28], [2025, 3, 28]])], [('regression', {'anchor': [2024, 7, 30], 'n': 9, 'interval': 1}, [[2024, 8, 30], [2024, 9, 30], [2024, 10, 30], [2024, 11, 30], [2024, 12, 30], [2025, 1, 30], [2025, 2, 28], [2025, 3, 30], [2025, 4, 30]]), ('regression', {'anchor': [2025, 1, 31], 'n': 9, 'interval': 1}, [[2025, 2, 28], [2025, 3, 31], [2025, 4, 30], [2025, 5, 31], [2025, 6, 30], [2025, 7, 31], [2025, 8, 31], [2025, 9, 30], [2025, 10, 31]]), ('partial-repair probe', {'anchor': [2019, 9, 29], 'n': 6, 'interval': 2}, [[2019, 11, 29], [2020, 1, 29], [2020, 3, 29], [2020, 5, 29], [2020, 7, 29], [2020, 9, 29]]), ('partial-repair probe', {'anchor': [2025, 9, 30], 'n': 9, 'interval': 1}, [[2025, 10, 30], [2025, 11, 30], [2025, 12, 30], [2026, 1, 30], [2026, 2, 28], [2026, 3, 30], [2026, 4, 30], [2026, 5, 30], [2026, 6, 30]]), ('normal control', {'anchor': [2023, 11, 28], 'n': 14, 'interval': 12}, [[2024, 11, 28], [2025, 11, 28], [2026, 11, 28], [2027, 11, 28], [2028, 11, 28], [2029, 11, 28], [2030, 11, 28], [2031, 11, 28], [2032, 11, 28], [2033, 11, 28], [2034, 11, 28], [2035, 11, 28], [2036, 11, 28], [2037, 11, 28]]), ('normal control', {'anchor': [2025, 7, 31], 'n': 8, 'interval': 6}, [[2026, 1, 31], [2026, 7, 31], [2027, 1, 31], [2027, 7, 31], [2028, 1, 31], [2028, 7, 31], [2029, 1, 31], [2029, 7, 31]]), ('normal control', {'anchor': [2023, 2, 19], 'n': 7, 'interval': 3}, [[2023, 5, 19], [2023, 8, 19], [2023, 11, 19], [2024, 2, 19], [2024, 5, 19], [2024, 8, 19], [2024, 11, 19]]), ('normal control', {'anchor': [2019, 8, 15], 'n': 8, 'interval': 6}, [[2020, 2, 15], [2020, 8, 15], [2021, 2, 15], [2021, 8, 15], [2022, 2, 15], [2022, 8, 15], [2023, 2, 15], [2023, 8, 15]])]]\nfor i, (label, args, expected) in enumerate(fixtures[N-1]):\n    check(\"%s %d\" % (label, i), 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":"c836611b808231cb5104499a13cc53bdc4f6eff7a6efc0229deb7d3eb5b39ea8","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport datetime\nimport calendar\nN = 1\nobservations = []\ndef solve(x):\n    y, m, d = x['anchor']\n    out = []\n    for i in range(1, x['n'] + 1):\n        total = (m - 1) + i * x['interval']\n        ny, nm = y + total // 12, total % 12 + 1\n        dim = calendar.monthrange(ny, nm)[1]\n        out.append([ny, nm, min(d, dim)])\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression', {'anchor': [2025, 1, 29], 'n': 8, 'interval': 1}, [[2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29]]), ('regression', {'anchor': [2025, 5, 31], 'n': 10, 'interval': 2}, [[2025, 7, 31], [2025, 9, 30], [2025, 11, 30], [2026, 1, 31], [2026, 3, 31], [2026, 5, 31], [2026, 7, 31], [2026, 9, 30], [2026, 11, 30], [2027, 1, 31]]), ('partial-repair probe', {'anchor': [2024, 7, 30], 'n': 7, 'interval': 3}, [[2024, 10, 30], [2025, 1, 30], [2025, 4, 30], [2025, 7, 30], [2025, 10, 30], [2026, 1, 30], [2026, 4, 30]]), ('partial-repair probe', {'anchor': [2019, 5, 29], 'n': 11, 'interval': 2}, [[2019, 7, 29], [2019, 9, 29], [2019, 11, 29], [2020, 1, 29], [2020, 3, 29], [2020, 5, 29], [2020, 7, 29], [2020, 9, 29], [2020, 11, 29], [2021, 1, 29], [2021, 3, 29]]), ('normal control', {'anchor': [2023, 3, 28], 'n': 14, 'interval': 3}, [[2023, 6, 28], [2023, 9, 28], [2023, 12, 28], [2024, 3, 28], [2024, 6, 28], [2024, 9, 28], [2024, 12, 28], [2025, 3, 28], [2025, 6, 28], [2025, 9, 28], [2025, 12, 28], [2026, 3, 28], [2026, 6, 28], [2026, 9, 28]]), ('normal control', {'anchor': [2025, 8, 28], 'n': 1, 'interval': 1}, [[2025, 9, 28]]), ('normal control', {'anchor': [2025, 4, 28], 'n': 8, 'interval': 12}, [[2026, 4, 28], [2027, 4, 28], [2028, 4, 28], [2029, 4, 28], [2030, 4, 28], [2031, 4, 28], [2032, 4, 28], [2033, 4, 28]]), ('normal control', {'anchor': [2025, 3, 31], 'n': 7, 'interval': 12}, [[2026, 3, 31], [2027, 3, 31], [2028, 3, 31], [2029, 3, 31], [2030, 3, 31], [2031, 3, 31], [2032, 3, 31]])], [('regression', {'anchor': [2024, 12, 29], 'n': 10, 'interval': 1}, [[2025, 1, 29], [2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29], [2025, 10, 29]]), ('regression', {'anchor': [2023, 12, 31], 'n': 7, 'interval': 1}, [[2024, 1, 31], [2024, 2, 29], [2024, 3, 31], [2024, 4, 30], [2024, 5, 31], [2024, 6, 30], [2024, 7, 31]]), ('partial-repair probe', {'anchor': [2024, 2, 29], 'n': 6, 'interval': 2}, [[2024, 4, 29], [2024, 6, 29], [2024, 8, 29], [2024, 10, 29], [2024, 12, 29], [2025, 2, 28]]), ('partial-repair probe', {'anchor': [2025, 1, 29], 'n': 8, 'interval': 1}, [[2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29]]), ('normal control', {'anchor': [2025, 5, 16], 'n': 3, 'interval': 12}, [[2026, 5, 16], [2027, 5, 16], [2028, 5, 16]]), ('normal control', {'anchor': [2023, 3, 28], 'n': 12, 'interval': 1}, [[2023, 4, 28], [2023, 5, 28], [2023, 6, 28], [2023, 7, 28], [2023, 8, 28], [2023, 9, 28], [2023, 10, 28], [2023, 11, 28], [2023, 12, 28], [2024, 1, 28], [2024, 2, 28], [2024, 3, 28]]), ('normal control', {'anchor': [2023, 11, 17], 'n': 7, 'interval': 1}, [[2023, 12, 17], [2024, 1, 17], [2024, 2, 17], [2024, 3, 17], [2024, 4, 17], [2024, 5, 17], [2024, 6, 17]]), ('normal control', {'anchor': [2025, 4, 28], 'n': 7, 'interval': 1}, [[2025, 5, 28], [2025, 6, 28], [2025, 7, 28], [2025, 8, 28], [2025, 9, 28], [2025, 10, 28], [2025, 11, 28]])], [('regression', {'anchor': [2019, 1, 30], 'n': 2, 'interval': 1}, [[2019, 2, 28], [2019, 3, 30]]), ('regression', {'anchor': [2025, 1, 29], 'n': 8, 'interval': 1}, [[2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29]]), ('partial-repair probe', {'anchor': [2024, 12, 29], 'n': 10, 'interval': 1}, [[2025, 1, 29], [2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29], [2025, 10, 29]]), ('partial-repair probe', {'anchor': [2019, 12, 29], 'n': 7, 'interval': 1}, [[2020, 1, 29], [2020, 2, 29], [2020, 3, 29], [2020, 4, 29], [2020, 5, 29], [2020, 6, 29], [2020, 7, 29]]), ('normal control', {'anchor': [2019, 7, 22], 'n': 2, 'interval': 2}, [[2019, 9, 22], [2019, 11, 22]]), ('normal control', {'anchor': [2023, 8, 28], 'n': 7, 'interval': 2}, [[2023, 10, 28], [2023, 12, 28], [2024, 2, 28], [2024, 4, 28], [2024, 6, 28], [2024, 8, 28], [2024, 10, 28]]), ('normal control', {'anchor': [2025, 10, 10], 'n': 8, 'interval': 3}, [[2026, 1, 10], [2026, 4, 10], [2026, 7, 10], [2026, 10, 10], [2027, 1, 10], [2027, 4, 10], [2027, 7, 10], [2027, 10, 10]]), ('normal control', {'anchor': [2023, 8, 24], 'n': 9, 'interval': 1}, [[2023, 9, 24], [2023, 10, 24], [2023, 11, 24], [2023, 12, 24], [2024, 1, 24], [2024, 2, 24], [2024, 3, 24], [2024, 4, 24], [2024, 5, 24]])], [('regression', {'anchor': [2025, 9, 30], 'n': 9, 'interval': 1}, [[2025, 10, 30], [2025, 11, 30], [2025, 12, 30], [2026, 1, 30], [2026, 2, 28], [2026, 3, 30], [2026, 4, 30], [2026, 5, 30], [2026, 6, 30]]), ('regression', {'anchor': [2024, 12, 29], 'n': 10, 'interval': 1}, [[2025, 1, 29], [2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29], [2025, 10, 29]]), ('partial-repair probe', {'anchor': [2019, 1, 30], 'n': 2, 'interval': 1}, [[2019, 2, 28], [2019, 3, 30]]), ('partial-repair probe', {'anchor': [2019, 10, 29], 'n': 10, 'interval': 1}, [[2019, 11, 29], [2019, 12, 29], [2020, 1, 29], [2020, 2, 29], [2020, 3, 29], [2020, 4, 29], [2020, 5, 29], [2020, 6, 29], [2020, 7, 29], [2020, 8, 29]]), ('normal control', {'anchor': [2024, 10, 28], 'n': 10, 'interval': 12}, [[2025, 10, 28], [2026, 10, 28], [2027, 10, 28], [2028, 10, 28], [2029, 10, 28], [2030, 10, 28], [2031, 10, 28], [2032, 10, 28], [2033, 10, 28], [2034, 10, 28]]), ('normal control', {'anchor': [2025, 8, 31], 'n': 3, 'interval': 2}, [[2025, 10, 31], [2025, 12, 31], [2026, 2, 28]]), ('normal control', {'anchor': [2025, 1, 31], 'n': 12, 'interval': 12}, [[2026, 1, 31], [2027, 1, 31], [2028, 1, 31], [2029, 1, 31], [2030, 1, 31], [2031, 1, 31], [2032, 1, 31], [2033, 1, 31], [2034, 1, 31], [2035, 1, 31], [2036, 1, 31], [2037, 1, 31]]), ('normal control', {'anchor': [2024, 5, 28], 'n': 10, 'interval': 1}, [[2024, 6, 28], [2024, 7, 28], [2024, 8, 28], [2024, 9, 28], [2024, 10, 28], [2024, 11, 28], [2024, 12, 28], [2025, 1, 28], [2025, 2, 28], [2025, 3, 28]])], [('regression', {'anchor': [2024, 7, 30], 'n': 9, 'interval': 1}, [[2024, 8, 30], [2024, 9, 30], [2024, 10, 30], [2024, 11, 30], [2024, 12, 30], [2025, 1, 30], [2025, 2, 28], [2025, 3, 30], [2025, 4, 30]]), ('regression', {'anchor': [2025, 1, 31], 'n': 9, 'interval': 1}, [[2025, 2, 28], [2025, 3, 31], [2025, 4, 30], [2025, 5, 31], [2025, 6, 30], [2025, 7, 31], [2025, 8, 31], [2025, 9, 30], [2025, 10, 31]]), ('partial-repair probe', {'anchor': [2019, 9, 29], 'n': 6, 'interval': 2}, [[2019, 11, 29], [2020, 1, 29], [2020, 3, 29], [2020, 5, 29], [2020, 7, 29], [2020, 9, 29]]), ('partial-repair probe', {'anchor': [2025, 9, 30], 'n': 9, 'interval': 1}, [[2025, 10, 30], [2025, 11, 30], [2025, 12, 30], [2026, 1, 30], [2026, 2, 28], [2026, 3, 30], [2026, 4, 30], [2026, 5, 30], [2026, 6, 30]]), ('normal control', {'anchor': [2023, 11, 28], 'n': 14, 'interval': 12}, [[2024, 11, 28], [2025, 11, 28], [2026, 11, 28], [2027, 11, 28], [2028, 11, 28], [2029, 11, 28], [2030, 11, 28], [2031, 11, 28], [2032, 11, 28], [2033, 11, 28], [2034, 11, 28], [2035, 11, 28], [2036, 11, 28], [2037, 11, 28]]), ('normal control', {'anchor': [2025, 7, 31], 'n': 8, 'interval': 6}, [[2026, 1, 31], [2026, 7, 31], [2027, 1, 31], [2027, 7, 31], [2028, 1, 31], [2028, 7, 31], [2029, 1, 31], [2029, 7, 31]]), ('normal control', {'anchor': [2023, 2, 19], 'n': 7, 'interval': 3}, [[2023, 5, 19], [2023, 8, 19], [2023, 11, 19], [2024, 2, 19], [2024, 5, 19], [2024, 8, 19], [2024, 11, 19]]), ('normal control', {'anchor': [2019, 8, 15], 'n': 8, 'interval': 6}, [[2020, 2, 15], [2020, 8, 15], [2021, 2, 15], [2021, 8, 15], [2022, 2, 15], [2022, 8, 15], [2023, 2, 15], [2023, 8, 15]])]]\nfor i, (label, args, expected) in enumerate(fixtures[N-1]):\n    check(\"%s %d\" % (label, i), 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 teaching model of a stipulated billing rule. It makes no claim to reproduce any billing provider's exact behaviour and is not billing software. 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-subscription-proration-month-end-anniversary-anchor-day-drift","generated_at":"2026-09-29T14:46:35.720880+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Month-end anchors must not drift to the 28th after February, and leap years change the clamp.","repair":"Restore the contract rule at the anchor day drift step: use `out.append([ny, nm, min(d, dim)])`.","root_cause":"Each renewal clamps the previous renewal's day instead of the original anchor day.","sha256":"69ecaad3f2006886ef91e46dc4130c7560830c60aa2d2de8dc3020a145e1d0dc","title":"Month-end anchored renewal dates: anchor day drift · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":50.36,"exit_code":1,"observations":[{"actual":[[2025,2,28],[2025,3,31],[2025,4,30],[2025,5,31],[2025,6,30],[2025,7,31],[2025,8,31],[2025,9,30]],"check":"regression 0","expected":[[2025,2,28],[2025,3,29],[2025,4,29],[2025,5,29],[2025,6,29],[2025,7,29],[2025,8,29],[2025,9,29]],"passed":false},{"actual":[[2025,7,31],[2025,9,30],[2025,11,30],[2026,1,31],[2026,3,31],[2026,5,31],[2026,7,31],[2026,9,30],[2026,11,30],[2027,1,31]],"check":"regression 1","expected":[[2025,7,31],[2025,9,30],[2025,11,30],[2026,1,31],[2026,3,31],[2026,5,31],[2026,7,31],[2026,9,30],[2026,11,30],[2027,1,31]],"passed":true},{"actual":[[2024,10,31],[2025,1,31],[2025,4,30],[2025,7,31],[2025,10,31],[2026,1,31],[2026,4,30]],"check":"partial-repair probe 2","expected":[[2024,10,30],[2025,1,30],[2025,4,30],[2025,7,30],[2025,10,30],[2026,1,30],[2026,4,30]],"passed":false},{"actual":[[2019,7,31],[2019,9,30],[2019,11,30],[2020,1,31],[2020,3,31],[2020,5,31],[2020,7,31],[2020,9,30],[2020,11,30],[2021,1,31],[2021,3,31]],"check":"partial-repair probe 3","expected":[[2019,7,29],[2019,9,29],[2019,11,29],[2020,1,29],[2020,3,29],[2020,5,29],[2020,7,29],[2020,9,29],[2020,11,29],[2021,1,29],[2021,3,29]],"passed":false},{"actual":[[2023,6,28],[2023,9,28],[2023,12,28],[2024,3,28],[2024,6,28],[2024,9,28],[2024,12,28],[2025,3,28],[2025,6,28],[2025,9,28],[2025,12,28],[2026,3,28],[2026,6,28],[2026,9,28]],"check":"normal control 4","expected":[[2023,6,28],[2023,9,28],[2023,12,28],[2024,3,28],[2024,6,28],[2024,9,28],[2024,12,28],[2025,3,28],[2025,6,28],[2025,9,28],[2025,12,28],[2026,3,28],[2026,6,28],[2026,9,28]],"passed":true},{"actual":[[2025,9,28]],"check":"normal control 5","expected":[[2025,9,28]],"passed":true},{"actual":[[2026,4,28],[2027,4,28],[2028,4,28],[2029,4,28],[2030,4,28],[2031,4,28],[2032,4,28],[2033,4,28]],"check":"normal control 6","expected":[[2026,4,28],[2027,4,28],[2028,4,28],[2029,4,28],[2030,4,28],[2031,4,28],[2032,4,28],[2033,4,28]],"passed":true},{"actual":[[2026,3,31],[2027,3,31],[2028,3,31],[2029,3,31],[2030,3,31],[2031,3,31],[2032,3,31]],"check":"normal control 7","expected":[[2026,3,31],[2027,3,31],[2028,3,31],[2029,3,31],[2030,3,31],[2031,3,31],[2032,3,31]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression 0\", \"actual\": [[2025, 2, 28], [2025, 3, 31], [2025, 4, 30], [2025, 5, 31], [2025, 6, 30], [2025, 7, 31], [2025, 8, 31], [2025, 9, 30]], \"expected\": [[2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29]], \"passed\": false}, {\"check\": \"regression 1\", \"actual\": [[2025, 7, 31], [2025, 9, 30], [2025, 11, 30], [2026, 1, 31], [2026, 3, 31], [2026, 5, 31], [2026, 7, 31], [2026, 9, 30], [2026, 11, 30], [2027, 1, 31]], \"expected\": [[2025, 7, 31], [2025, 9, 30], [2025, 11, 30], [2026, 1, 31], [2026, 3, 31], [2026, 5, 31], [2026, 7, 31], [2026, 9, 30], [2026, 11, 30], [2027, 1, 31]], \"passed\": true}, {\"check\": \"partial-repair probe 2\", \"actual\": [[2024, 10, 31], [2025, 1, 31], [2025, 4, 30], [2025, 7, 31], [2025, 10, 31], [2026, 1, 31], [2026, 4, 30]], \"expected\": [[2024, 10, 30], [2025, 1, 30], [2025, 4, 30], [2025, 7, 30], [2025, 10, 30], [2026, 1, 30], [2026, 4, 30]], \"passed\": false}, {\"check\": \"partial-repair probe 3\", \"actual\": [[2019, 7, 31], [2019, 9, 30], [2019, 11, 30], [2020, 1, 31], [2020, 3, 31], [2020, 5, 31], [2020, 7, 31], [2020, 9, 30], [2020, 11, 30], [2021, 1, 31], [2021, 3, 31]], \"expected\": [[2019, 7, 29], [2019, 9, 29], [2019, 11, 29], [2020, 1, 29], [2020, 3, 29], [2020, 5, 29], [2020, 7, 29], [2020, 9, 29], [2020, 11, 29], [2021, 1, 29], [2021, 3, 29]], \"passed\": false}, {\"check\": \"normal control 4\", \"actual\": [[2023, 6, 28], [2023, 9, 28], [2023, 12, 28], [2024, 3, 28], [2024, 6, 28], [2024, 9, 28], [2024, 12, 28], [2025, 3, 28], [2025, 6, 28], [2025, 9, 28], [2025, 12, 28], [2026, 3, 28], [2026, 6, 28], [2026, 9, 28]], \"expected\": [[2023, 6, 28], [2023, 9, 28], [2023, 12, 28], [2024, 3, 28], [2024, 6, 28], [2024, 9, 28], [2024, 12, 28], [2025, 3, 28], [2025, 6, 28], [2025, 9, 28], [2025, 12, 28], [2026, 3, 28], [2026, 6, 28], [2026, 9, 28]], \"passed\": true}, {\"check\": \"normal control 5\", \"actual\": [[2025, 9, 28]], \"expected\": [[2025, 9, 28]], \"passed\": true}, {\"check\": \"normal control 6\", \"actual\": [[2026, 4, 28], [2027, 4, 28], [2028, 4, 28], [2029, 4, 28], [2030, 4, 28], [2031, 4, 28], [2032, 4, 28], [2033, 4, 28]], \"expected\": [[2026, 4, 28], [2027, 4, 28], [2028, 4, 28], [2029, 4, 28], [2030, 4, 28], [2031, 4, 28], [2032, 4, 28], [2033, 4, 28]], \"passed\": true}, {\"check\": \"normal control 7\", \"actual\": [[2026, 3, 31], [2027, 3, 31], [2028, 3, 31], [2029, 3, 31], [2030, 3, 31], [2031, 3, 31], [2032, 3, 31]], \"expected\": [[2026, 3, 31], [2027, 3, 31], [2028, 3, 31], [2029, 3, 31], [2030, 3, 31], [2031, 3, 31], [2032, 3, 31]], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":46.357,"exit_code":1,"observations":[{"actual":[[2025,2,28],[2025,3,28],[2025,4,28],[2025,5,28],[2025,6,28],[2025,7,28],[2025,8,28],[2025,9,28]],"check":"regression 0","expected":[[2025,2,28],[2025,3,29],[2025,4,29],[2025,5,29],[2025,6,29],[2025,7,29],[2025,8,29],[2025,9,29]],"passed":false},{"actual":[[2025,7,31],[2025,9,30],[2025,11,30],[2026,1,30],[2026,3,30],[2026,5,30],[2026,7,30],[2026,9,30],[2026,11,30],[2027,1,30]],"check":"regression 1","expected":[[2025,7,31],[2025,9,30],[2025,11,30],[2026,1,31],[2026,3,31],[2026,5,31],[2026,7,31],[2026,9,30],[2026,11,30],[2027,1,31]],"passed":false},{"actual":[[2024,10,30],[2025,1,30],[2025,4,30],[2025,7,30],[2025,10,30],[2026,1,30],[2026,4,30]],"check":"partial-repair probe 2","expected":[[2024,10,30],[2025,1,30],[2025,4,30],[2025,7,30],[2025,10,30],[2026,1,30],[2026,4,30]],"passed":true},{"actual":[[2019,7,29],[2019,9,29],[2019,11,29],[2020,1,29],[2020,3,29],[2020,5,29],[2020,7,29],[2020,9,29],[2020,11,29],[2021,1,29],[2021,3,29]],"check":"partial-repair probe 3","expected":[[2019,7,29],[2019,9,29],[2019,11,29],[2020,1,29],[2020,3,29],[2020,5,29],[2020,7,29],[2020,9,29],[2020,11,29],[2021,1,29],[2021,3,29]],"passed":true},{"actual":[[2023,6,28],[2023,9,28],[2023,12,28],[2024,3,28],[2024,6,28],[2024,9,28],[2024,12,28],[2025,3,28],[2025,6,28],[2025,9,28],[2025,12,28],[2026,3,28],[2026,6,28],[2026,9,28]],"check":"normal control 4","expected":[[2023,6,28],[2023,9,28],[2023,12,28],[2024,3,28],[2024,6,28],[2024,9,28],[2024,12,28],[2025,3,28],[2025,6,28],[2025,9,28],[2025,12,28],[2026,3,28],[2026,6,28],[2026,9,28]],"passed":true},{"actual":[[2025,9,28]],"check":"normal control 5","expected":[[2025,9,28]],"passed":true},{"actual":[[2026,4,28],[2027,4,28],[2028,4,28],[2029,4,28],[2030,4,28],[2031,4,28],[2032,4,28],[2033,4,28]],"check":"normal control 6","expected":[[2026,4,28],[2027,4,28],[2028,4,28],[2029,4,28],[2030,4,28],[2031,4,28],[2032,4,28],[2033,4,28]],"passed":true},{"actual":[[2026,3,31],[2027,3,31],[2028,3,31],[2029,3,31],[2030,3,31],[2031,3,31],[2032,3,31]],"check":"normal control 7","expected":[[2026,3,31],[2027,3,31],[2028,3,31],[2029,3,31],[2030,3,31],[2031,3,31],[2032,3,31]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression 0\", \"actual\": [[2025, 2, 28], [2025, 3, 28], [2025, 4, 28], [2025, 5, 28], [2025, 6, 28], [2025, 7, 28], [2025, 8, 28], [2025, 9, 28]], \"expected\": [[2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29]], \"passed\": false}, {\"check\": \"regression 1\", \"actual\": [[2025, 7, 31], [2025, 9, 30], [2025, 11, 30], [2026, 1, 30], [2026, 3, 30], [2026, 5, 30], [2026, 7, 30], [2026, 9, 30], [2026, 11, 30], [2027, 1, 30]], \"expected\": [[2025, 7, 31], [2025, 9, 30], [2025, 11, 30], [2026, 1, 31], [2026, 3, 31], [2026, 5, 31], [2026, 7, 31], [2026, 9, 30], [2026, 11, 30], [2027, 1, 31]], \"passed\": false}, {\"check\": \"partial-repair probe 2\", \"actual\": [[2024, 10, 30], [2025, 1, 30], [2025, 4, 30], [2025, 7, 30], [2025, 10, 30], [2026, 1, 30], [2026, 4, 30]], \"expected\": [[2024, 10, 30], [2025, 1, 30], [2025, 4, 30], [2025, 7, 30], [2025, 10, 30], [2026, 1, 30], [2026, 4, 30]], \"passed\": true}, {\"check\": \"partial-repair probe 3\", \"actual\": [[2019, 7, 29], [2019, 9, 29], [2019, 11, 29], [2020, 1, 29], [2020, 3, 29], [2020, 5, 29], [2020, 7, 29], [2020, 9, 29], [2020, 11, 29], [2021, 1, 29], [2021, 3, 29]], \"expected\": [[2019, 7, 29], [2019, 9, 29], [2019, 11, 29], [2020, 1, 29], [2020, 3, 29], [2020, 5, 29], [2020, 7, 29], [2020, 9, 29], [2020, 11, 29], [2021, 1, 29], [2021, 3, 29]], \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": [[2023, 6, 28], [2023, 9, 28], [2023, 12, 28], [2024, 3, 28], [2024, 6, 28], [2024, 9, 28], [2024, 12, 28], [2025, 3, 28], [2025, 6, 28], [2025, 9, 28], [2025, 12, 28], [2026, 3, 28], [2026, 6, 28], [2026, 9, 28]], \"expected\": [[2023, 6, 28], [2023, 9, 28], [2023, 12, 28], [2024, 3, 28], [2024, 6, 28], [2024, 9, 28], [2024, 12, 28], [2025, 3, 28], [2025, 6, 28], [2025, 9, 28], [2025, 12, 28], [2026, 3, 28], [2026, 6, 28], [2026, 9, 28]], \"passed\": true}, {\"check\": \"normal control 5\", \"actual\": [[2025, 9, 28]], \"expected\": [[2025, 9, 28]], \"passed\": true}, {\"check\": \"normal control 6\", \"actual\": [[2026, 4, 28], [2027, 4, 28], [2028, 4, 28], [2029, 4, 28], [2030, 4, 28], [2031, 4, 28], [2032, 4, 28], [2033, 4, 28]], \"expected\": [[2026, 4, 28], [2027, 4, 28], [2028, 4, 28], [2029, 4, 28], [2030, 4, 28], [2031, 4, 28], [2032, 4, 28], [2033, 4, 28]], \"passed\": true}, {\"check\": \"normal control 7\", \"actual\": [[2026, 3, 31], [2027, 3, 31], [2028, 3, 31], [2029, 3, 31], [2030, 3, 31], [2031, 3, 31], [2032, 3, 31]], \"expected\": [[2026, 3, 31], [2027, 3, 31], [2028, 3, 31], [2029, 3, 31], [2030, 3, 31], [2031, 3, 31], [2032, 3, 31]], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":46.534,"exit_code":0,"observations":[{"actual":[[2025,2,28],[2025,3,29],[2025,4,29],[2025,5,29],[2025,6,29],[2025,7,29],[2025,8,29],[2025,9,29]],"check":"regression 0","expected":[[2025,2,28],[2025,3,29],[2025,4,29],[2025,5,29],[2025,6,29],[2025,7,29],[2025,8,29],[2025,9,29]],"passed":true},{"actual":[[2025,7,31],[2025,9,30],[2025,11,30],[2026,1,31],[2026,3,31],[2026,5,31],[2026,7,31],[2026,9,30],[2026,11,30],[2027,1,31]],"check":"regression 1","expected":[[2025,7,31],[2025,9,30],[2025,11,30],[2026,1,31],[2026,3,31],[2026,5,31],[2026,7,31],[2026,9,30],[2026,11,30],[2027,1,31]],"passed":true},{"actual":[[2024,10,30],[2025,1,30],[2025,4,30],[2025,7,30],[2025,10,30],[2026,1,30],[2026,4,30]],"check":"partial-repair probe 2","expected":[[2024,10,30],[2025,1,30],[2025,4,30],[2025,7,30],[2025,10,30],[2026,1,30],[2026,4,30]],"passed":true},{"actual":[[2019,7,29],[2019,9,29],[2019,11,29],[2020,1,29],[2020,3,29],[2020,5,29],[2020,7,29],[2020,9,29],[2020,11,29],[2021,1,29],[2021,3,29]],"check":"partial-repair probe 3","expected":[[2019,7,29],[2019,9,29],[2019,11,29],[2020,1,29],[2020,3,29],[2020,5,29],[2020,7,29],[2020,9,29],[2020,11,29],[2021,1,29],[2021,3,29]],"passed":true},{"actual":[[2023,6,28],[2023,9,28],[2023,12,28],[2024,3,28],[2024,6,28],[2024,9,28],[2024,12,28],[2025,3,28],[2025,6,28],[2025,9,28],[2025,12,28],[2026,3,28],[2026,6,28],[2026,9,28]],"check":"normal control 4","expected":[[2023,6,28],[2023,9,28],[2023,12,28],[2024,3,28],[2024,6,28],[2024,9,28],[2024,12,28],[2025,3,28],[2025,6,28],[2025,9,28],[2025,12,28],[2026,3,28],[2026,6,28],[2026,9,28]],"passed":true},{"actual":[[2025,9,28]],"check":"normal control 5","expected":[[2025,9,28]],"passed":true},{"actual":[[2026,4,28],[2027,4,28],[2028,4,28],[2029,4,28],[2030,4,28],[2031,4,28],[2032,4,28],[2033,4,28]],"check":"normal control 6","expected":[[2026,4,28],[2027,4,28],[2028,4,28],[2029,4,28],[2030,4,28],[2031,4,28],[2032,4,28],[2033,4,28]],"passed":true},{"actual":[[2026,3,31],[2027,3,31],[2028,3,31],[2029,3,31],[2030,3,31],[2031,3,31],[2032,3,31]],"check":"normal control 7","expected":[[2026,3,31],[2027,3,31],[2028,3,31],[2029,3,31],[2030,3,31],[2031,3,31],[2032,3,31]],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression 0\", \"actual\": [[2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29]], \"expected\": [[2025, 2, 28], [2025, 3, 29], [2025, 4, 29], [2025, 5, 29], [2025, 6, 29], [2025, 7, 29], [2025, 8, 29], [2025, 9, 29]], \"passed\": true}, {\"check\": \"regression 1\", \"actual\": [[2025, 7, 31], [2025, 9, 30], [2025, 11, 30], [2026, 1, 31], [2026, 3, 31], [2026, 5, 31], [2026, 7, 31], [2026, 9, 30], [2026, 11, 30], [2027, 1, 31]], \"expected\": [[2025, 7, 31], [2025, 9, 30], [2025, 11, 30], [2026, 1, 31], [2026, 3, 31], [2026, 5, 31], [2026, 7, 31], [2026, 9, 30], [2026, 11, 30], [2027, 1, 31]], \"passed\": true}, {\"check\": \"partial-repair probe 2\", \"actual\": [[2024, 10, 30], [2025, 1, 30], [2025, 4, 30], [2025, 7, 30], [2025, 10, 30], [2026, 1, 30], [2026, 4, 30]], \"expected\": [[2024, 10, 30], [2025, 1, 30], [2025, 4, 30], [2025, 7, 30], [2025, 10, 30], [2026, 1, 30], [2026, 4, 30]], \"passed\": true}, {\"check\": \"partial-repair probe 3\", \"actual\": [[2019, 7, 29], [2019, 9, 29], [2019, 11, 29], [2020, 1, 29], [2020, 3, 29], [2020, 5, 29], [2020, 7, 29], [2020, 9, 29], [2020, 11, 29], [2021, 1, 29], [2021, 3, 29]], \"expected\": [[2019, 7, 29], [2019, 9, 29], [2019, 11, 29], [2020, 1, 29], [2020, 3, 29], [2020, 5, 29], [2020, 7, 29], [2020, 9, 29], [2020, 11, 29], [2021, 1, 29], [2021, 3, 29]], \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": [[2023, 6, 28], [2023, 9, 28], [2023, 12, 28], [2024, 3, 28], [2024, 6, 28], [2024, 9, 28], [2024, 12, 28], [2025, 3, 28], [2025, 6, 28], [2025, 9, 28], [2025, 12, 28], [2026, 3, 28], [2026, 6, 28], [2026, 9, 28]], \"expected\": [[2023, 6, 28], [2023, 9, 28], [2023, 12, 28], [2024, 3, 28], [2024, 6, 28], [2024, 9, 28], [2024, 12, 28], [2025, 3, 28], [2025, 6, 28], [2025, 9, 28], [2025, 12, 28], [2026, 3, 28], [2026, 6, 28], [2026, 9, 28]], \"passed\": true}, {\"check\": \"normal control 5\", \"actual\": [[2025, 9, 28]], \"expected\": [[2025, 9, 28]], \"passed\": true}, {\"check\": \"normal control 6\", \"actual\": [[2026, 4, 28], [2027, 4, 28], [2028, 4, 28], [2029, 4, 28], [2030, 4, 28], [2031, 4, 28], [2032, 4, 28], [2033, 4, 28]], \"expected\": [[2026, 4, 28], [2027, 4, 28], [2028, 4, 28], [2029, 4, 28], [2030, 4, 28], [2031, 4, 28], [2032, 4, 28], [2033, 4, 28]], \"passed\": true}, {\"check\": \"normal control 7\", \"actual\": [[2026, 3, 31], [2027, 3, 31], [2028, 3, 31], [2029, 3, 31], [2030, 3, 31], [2031, 3, 31], [2032, 3, 31]], \"expected\": [[2026, 3, 31], [2027, 3, 31], [2028, 3, 31], [2029, 3, 31], [2030, 3, 31], [2031, 3, 31], [2032, 3, 31]], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}