{"abstract":"A weekly rule is rendered as \"every 1 weeks\".","category":"Calendar recurrence rules","checks":7,"contract":"House style: \"every <unit>\" for interval 1, else \"every <n> <unit>s\"; weekday lists are in Monday-first order without duplicates and joined as \"A, B and C\"; the exact set MO..FR renders as \"on weekdays\"; an ordinal renders \"on the 2nd Tuesday\", -1 as \"on the last Friday\" and -n (n>1) as \"on the 2nd to last Friday\"; count renders \", once\" for 1 and \", <n> times\" otherwise.","evaluation_group":"w2-calendar-recurrence-rules-rule-description-text","failed_approach":"The partial repair `'every ' + unit if interval == 1 else 'every %d %s' % (interval, unit)` special-cases interval 1 but drops the plural for larger intervals.","family":"w2-calendar-recurrence-rules-rule-description-text-interval-phrase","id":"FA-77241","implementations":{"attempt":{"sha256":"a66ef82d47535f0e9dac88c2f0d14a4f59b982c12ea6aee41f244e73dfa0402a","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(freq, interval, byday, ordinal, count):\n    unit = {'DAILY': 'day', 'WEEKLY': 'week', 'MONTHLY': 'month', 'YEARLY': 'year'}[freq]\n    text = 'every ' + unit if interval == 1 else 'every %d %s' % (interval, unit)\n    names = {'MO': 'Monday', 'TU': 'Tuesday', 'WE': 'Wednesday', 'TH': 'Thursday', 'FR': 'Friday', 'SA': 'Saturday', 'SU': 'Sunday'}\n    order = ['MO', 'TU', 'WE', 'TH', 'FR', 'SA', 'SU']\n    def nth(n):\n        return str(n) + {1: 'st', 2: 'nd', 3: 'rd'}.get(n, 'th')\n    if ordinal:\n        word = ('last' if ordinal == -1 else nth(-ordinal) + ' to last') if ordinal < 0 else nth(ordinal)\n        text += ' on the ' + word + ' ' + names[byday[0]]\n    elif byday:\n        if set(byday) == {'MO', 'TU', 'WE', 'TH', 'FR'}:\n            text += ' on weekdays'\n        else:\n            words = [names[d] for d in sorted(set(byday), key=order.index)]\n            text += ' on ' + (words[0] if len(words) == 1 else ', '.join(words[:-1]) + ' and ' + words[-1])\n    if count:\n        text += ', ' + ('once' if count == 1 else '%d times' % count)\n    return text\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: weekly three days',\n   ['WEEKLY', 1, ['MO', 'WE', 'FR'], 0, 0],\n   'every week on Monday, Wednesday and Friday'),\n  ('biweekly single day once', ['WEEKLY', 2, ['TU'], 0, 1], 'every 2 weeks on Tuesday, once'),\n  ('last friday monthly', ['MONTHLY', 1, ['FR'], -1, 6], 'every month on the last Friday, 6 times'),\n  ('second to last sunday', ['MONTHLY', 3, ['SU'], -2, 0], 'every 3 months on the 2nd to last Sunday'),\n  ('second tuesday', ['MONTHLY', 1, ['TU'], 2, 10], 'every month on the 2nd Tuesday, 10 times'),\n  ('weekdays exact', ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'FR'], 0, 0], 'every week on weekdays'),\n  ('weekdays reordered',\n   ['WEEKLY', 1, ['FR', 'MO', 'TU', 'WE', 'TH'], 0, 3],\n   'every week on weekdays, 3 times')],\n [('last friday monthly', ['MONTHLY', 1, ['FR'], -1, 6], 'every month on the last Friday, 6 times'),\n  ('second to last sunday', ['MONTHLY', 3, ['SU'], -2, 0], 'every 3 months on the 2nd to last Sunday'),\n  ('second tuesday', ['MONTHLY', 1, ['TU'], 2, 10], 'every month on the 2nd Tuesday, 10 times'),\n  ('weekdays exact', ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'FR'], 0, 0], 'every week on weekdays'),\n  ('weekdays reordered',\n   ['WEEKLY', 1, ['FR', 'MO', 'TU', 'WE', 'TH'], 0, 3],\n   'every week on weekdays, 3 times'),\n  ('five days with saturday',\n   ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'SA'], 0, 0],\n   'every week on Monday, Tuesday, Wednesday, Thursday and Saturday'),\n  ('duplicate days', ['WEEKLY', 3, ['SU', 'MO', 'SU'], 0, 2], 'every 3 weeks on Monday and Sunday, 2 times')],\n [('second tuesday', ['MONTHLY', 1, ['TU'], 2, 10], 'every month on the 2nd Tuesday, 10 times'),\n  ('weekdays exact', ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'FR'], 0, 0], 'every week on weekdays'),\n  ('weekdays reordered',\n   ['WEEKLY', 1, ['FR', 'MO', 'TU', 'WE', 'TH'], 0, 3],\n   'every week on weekdays, 3 times'),\n  ('five days with saturday',\n   ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'SA'], 0, 0],\n   'every week on Monday, Tuesday, Wednesday, Thursday and Saturday'),\n  ('duplicate days', ['WEEKLY', 3, ['SU', 'MO', 'SU'], 0, 2], 'every 3 weeks on Monday and Sunday, 2 times'),\n  ('daily with count one', ['DAILY', 1, [], 0, 1], 'every day, once'),\n  ('yearly interval', ['YEARLY', 4, [], 0, 0], 'every 4 years')],\n [('weekdays reordered',\n   ['WEEKLY', 1, ['FR', 'MO', 'TU', 'WE', 'TH'], 0, 3],\n   'every week on weekdays, 3 times'),\n  ('five days with saturday',\n   ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'SA'], 0, 0],\n   'every week on Monday, Tuesday, Wednesday, Thursday and Saturday'),\n  ('duplicate days', ['WEEKLY', 3, ['SU', 'MO', 'SU'], 0, 2], 'every 3 weeks on Monday and Sunday, 2 times'),\n  ('daily with count one', ['DAILY', 1, [], 0, 1], 'every day, once'),\n  ('yearly interval', ['YEARLY', 4, [], 0, 0], 'every 4 years'),\n  ('two days unordered', ['WEEKLY', 1, ['TH', 'TU'], 0, 1], 'every week on Tuesday and Thursday, once'),\n  ('regression: weekly three days',\n   ['WEEKLY', 1, ['MO', 'WE', 'FR'], 0, 0],\n   'every week on Monday, Wednesday and Friday')],\n [('duplicate days', ['WEEKLY', 3, ['SU', 'MO', 'SU'], 0, 2], 'every 3 weeks on Monday and Sunday, 2 times'),\n  ('daily with count one', ['DAILY', 1, [], 0, 1], 'every day, once'),\n  ('yearly interval', ['YEARLY', 4, [], 0, 0], 'every 4 years'),\n  ('two days unordered', ['WEEKLY', 1, ['TH', 'TU'], 0, 1], 'every week on Tuesday and Thursday, once'),\n  ('regression: weekly three days',\n   ['WEEKLY', 1, ['MO', 'WE', 'FR'], 0, 0],\n   'every week on Monday, Wednesday and Friday'),\n  ('biweekly single day once', ['WEEKLY', 2, ['TU'], 0, 1], 'every 2 weeks on Tuesday, once'),\n  ('last friday monthly', ['MONTHLY', 1, ['FR'], -1, 6], 'every month on the last Friday, 6 times')]]\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":"6602aec4c9a972844bf4f6088379d4b436c3649cb1f889da4c05722fd4990aa6","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(freq, interval, byday, ordinal, count):\n    unit = {'DAILY': 'day', 'WEEKLY': 'week', 'MONTHLY': 'month', 'YEARLY': 'year'}[freq]\n    text = 'every %d %ss' % (interval, unit)\n    names = {'MO': 'Monday', 'TU': 'Tuesday', 'WE': 'Wednesday', 'TH': 'Thursday', 'FR': 'Friday', 'SA': 'Saturday', 'SU': 'Sunday'}\n    order = ['MO', 'TU', 'WE', 'TH', 'FR', 'SA', 'SU']\n    def nth(n):\n        return str(n) + {1: 'st', 2: 'nd', 3: 'rd'}.get(n, 'th')\n    if ordinal:\n        word = ('last' if ordinal == -1 else nth(-ordinal) + ' to last') if ordinal < 0 else nth(ordinal)\n        text += ' on the ' + word + ' ' + names[byday[0]]\n    elif byday:\n        if set(byday) == {'MO', 'TU', 'WE', 'TH', 'FR'}:\n            text += ' on weekdays'\n        else:\n            words = [names[d] for d in sorted(set(byday), key=order.index)]\n            text += ' on ' + (words[0] if len(words) == 1 else ', '.join(words[:-1]) + ' and ' + words[-1])\n    if count:\n        text += ', ' + ('once' if count == 1 else '%d times' % count)\n    return text\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: weekly three days',\n   ['WEEKLY', 1, ['MO', 'WE', 'FR'], 0, 0],\n   'every week on Monday, Wednesday and Friday'),\n  ('biweekly single day once', ['WEEKLY', 2, ['TU'], 0, 1], 'every 2 weeks on Tuesday, once'),\n  ('last friday monthly', ['MONTHLY', 1, ['FR'], -1, 6], 'every month on the last Friday, 6 times'),\n  ('second to last sunday', ['MONTHLY', 3, ['SU'], -2, 0], 'every 3 months on the 2nd to last Sunday'),\n  ('second tuesday', ['MONTHLY', 1, ['TU'], 2, 10], 'every month on the 2nd Tuesday, 10 times'),\n  ('weekdays exact', ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'FR'], 0, 0], 'every week on weekdays'),\n  ('weekdays reordered',\n   ['WEEKLY', 1, ['FR', 'MO', 'TU', 'WE', 'TH'], 0, 3],\n   'every week on weekdays, 3 times')],\n [('last friday monthly', ['MONTHLY', 1, ['FR'], -1, 6], 'every month on the last Friday, 6 times'),\n  ('second to last sunday', ['MONTHLY', 3, ['SU'], -2, 0], 'every 3 months on the 2nd to last Sunday'),\n  ('second tuesday', ['MONTHLY', 1, ['TU'], 2, 10], 'every month on the 2nd Tuesday, 10 times'),\n  ('weekdays exact', ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'FR'], 0, 0], 'every week on weekdays'),\n  ('weekdays reordered',\n   ['WEEKLY', 1, ['FR', 'MO', 'TU', 'WE', 'TH'], 0, 3],\n   'every week on weekdays, 3 times'),\n  ('five days with saturday',\n   ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'SA'], 0, 0],\n   'every week on Monday, Tuesday, Wednesday, Thursday and Saturday'),\n  ('duplicate days', ['WEEKLY', 3, ['SU', 'MO', 'SU'], 0, 2], 'every 3 weeks on Monday and Sunday, 2 times')],\n [('second tuesday', ['MONTHLY', 1, ['TU'], 2, 10], 'every month on the 2nd Tuesday, 10 times'),\n  ('weekdays exact', ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'FR'], 0, 0], 'every week on weekdays'),\n  ('weekdays reordered',\n   ['WEEKLY', 1, ['FR', 'MO', 'TU', 'WE', 'TH'], 0, 3],\n   'every week on weekdays, 3 times'),\n  ('five days with saturday',\n   ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'SA'], 0, 0],\n   'every week on Monday, Tuesday, Wednesday, Thursday and Saturday'),\n  ('duplicate days', ['WEEKLY', 3, ['SU', 'MO', 'SU'], 0, 2], 'every 3 weeks on Monday and Sunday, 2 times'),\n  ('daily with count one', ['DAILY', 1, [], 0, 1], 'every day, once'),\n  ('yearly interval', ['YEARLY', 4, [], 0, 0], 'every 4 years')],\n [('weekdays reordered',\n   ['WEEKLY', 1, ['FR', 'MO', 'TU', 'WE', 'TH'], 0, 3],\n   'every week on weekdays, 3 times'),\n  ('five days with saturday',\n   ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'SA'], 0, 0],\n   'every week on Monday, Tuesday, Wednesday, Thursday and Saturday'),\n  ('duplicate days', ['WEEKLY', 3, ['SU', 'MO', 'SU'], 0, 2], 'every 3 weeks on Monday and Sunday, 2 times'),\n  ('daily with count one', ['DAILY', 1, [], 0, 1], 'every day, once'),\n  ('yearly interval', ['YEARLY', 4, [], 0, 0], 'every 4 years'),\n  ('two days unordered', ['WEEKLY', 1, ['TH', 'TU'], 0, 1], 'every week on Tuesday and Thursday, once'),\n  ('regression: weekly three days',\n   ['WEEKLY', 1, ['MO', 'WE', 'FR'], 0, 0],\n   'every week on Monday, Wednesday and Friday')],\n [('duplicate days', ['WEEKLY', 3, ['SU', 'MO', 'SU'], 0, 2], 'every 3 weeks on Monday and Sunday, 2 times'),\n  ('daily with count one', ['DAILY', 1, [], 0, 1], 'every day, once'),\n  ('yearly interval', ['YEARLY', 4, [], 0, 0], 'every 4 years'),\n  ('two days unordered', ['WEEKLY', 1, ['TH', 'TU'], 0, 1], 'every week on Tuesday and Thursday, once'),\n  ('regression: weekly three days',\n   ['WEEKLY', 1, ['MO', 'WE', 'FR'], 0, 0],\n   'every week on Monday, Wednesday and Friday'),\n  ('biweekly single day once', ['WEEKLY', 2, ['TU'], 0, 1], 'every 2 weeks on Tuesday, once'),\n  ('last friday monthly', ['MONTHLY', 1, ['FR'], -1, 6], 'every month on the last Friday, 6 times')]]\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":"64df6a7306166a13bcb466feb59aeb6e1d7536af31108edaeca9ba0e8c81729a","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(freq, interval, byday, ordinal, count):\n    unit = {'DAILY': 'day', 'WEEKLY': 'week', 'MONTHLY': 'month', 'YEARLY': 'year'}[freq]\n    text = 'every ' + unit if interval == 1 else 'every %d %ss' % (interval, unit)\n    names = {'MO': 'Monday', 'TU': 'Tuesday', 'WE': 'Wednesday', 'TH': 'Thursday', 'FR': 'Friday', 'SA': 'Saturday', 'SU': 'Sunday'}\n    order = ['MO', 'TU', 'WE', 'TH', 'FR', 'SA', 'SU']\n    def nth(n):\n        return str(n) + {1: 'st', 2: 'nd', 3: 'rd'}.get(n, 'th')\n    if ordinal:\n        word = ('last' if ordinal == -1 else nth(-ordinal) + ' to last') if ordinal < 0 else nth(ordinal)\n        text += ' on the ' + word + ' ' + names[byday[0]]\n    elif byday:\n        if set(byday) == {'MO', 'TU', 'WE', 'TH', 'FR'}:\n            text += ' on weekdays'\n        else:\n            words = [names[d] for d in sorted(set(byday), key=order.index)]\n            text += ' on ' + (words[0] if len(words) == 1 else ', '.join(words[:-1]) + ' and ' + words[-1])\n    if count:\n        text += ', ' + ('once' if count == 1 else '%d times' % count)\n    return text\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: weekly three days',\n   ['WEEKLY', 1, ['MO', 'WE', 'FR'], 0, 0],\n   'every week on Monday, Wednesday and Friday'),\n  ('biweekly single day once', ['WEEKLY', 2, ['TU'], 0, 1], 'every 2 weeks on Tuesday, once'),\n  ('last friday monthly', ['MONTHLY', 1, ['FR'], -1, 6], 'every month on the last Friday, 6 times'),\n  ('second to last sunday', ['MONTHLY', 3, ['SU'], -2, 0], 'every 3 months on the 2nd to last Sunday'),\n  ('second tuesday', ['MONTHLY', 1, ['TU'], 2, 10], 'every month on the 2nd Tuesday, 10 times'),\n  ('weekdays exact', ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'FR'], 0, 0], 'every week on weekdays'),\n  ('weekdays reordered',\n   ['WEEKLY', 1, ['FR', 'MO', 'TU', 'WE', 'TH'], 0, 3],\n   'every week on weekdays, 3 times')],\n [('last friday monthly', ['MONTHLY', 1, ['FR'], -1, 6], 'every month on the last Friday, 6 times'),\n  ('second to last sunday', ['MONTHLY', 3, ['SU'], -2, 0], 'every 3 months on the 2nd to last Sunday'),\n  ('second tuesday', ['MONTHLY', 1, ['TU'], 2, 10], 'every month on the 2nd Tuesday, 10 times'),\n  ('weekdays exact', ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'FR'], 0, 0], 'every week on weekdays'),\n  ('weekdays reordered',\n   ['WEEKLY', 1, ['FR', 'MO', 'TU', 'WE', 'TH'], 0, 3],\n   'every week on weekdays, 3 times'),\n  ('five days with saturday',\n   ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'SA'], 0, 0],\n   'every week on Monday, Tuesday, Wednesday, Thursday and Saturday'),\n  ('duplicate days', ['WEEKLY', 3, ['SU', 'MO', 'SU'], 0, 2], 'every 3 weeks on Monday and Sunday, 2 times')],\n [('second tuesday', ['MONTHLY', 1, ['TU'], 2, 10], 'every month on the 2nd Tuesday, 10 times'),\n  ('weekdays exact', ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'FR'], 0, 0], 'every week on weekdays'),\n  ('weekdays reordered',\n   ['WEEKLY', 1, ['FR', 'MO', 'TU', 'WE', 'TH'], 0, 3],\n   'every week on weekdays, 3 times'),\n  ('five days with saturday',\n   ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'SA'], 0, 0],\n   'every week on Monday, Tuesday, Wednesday, Thursday and Saturday'),\n  ('duplicate days', ['WEEKLY', 3, ['SU', 'MO', 'SU'], 0, 2], 'every 3 weeks on Monday and Sunday, 2 times'),\n  ('daily with count one', ['DAILY', 1, [], 0, 1], 'every day, once'),\n  ('yearly interval', ['YEARLY', 4, [], 0, 0], 'every 4 years')],\n [('weekdays reordered',\n   ['WEEKLY', 1, ['FR', 'MO', 'TU', 'WE', 'TH'], 0, 3],\n   'every week on weekdays, 3 times'),\n  ('five days with saturday',\n   ['WEEKLY', 1, ['MO', 'TU', 'WE', 'TH', 'SA'], 0, 0],\n   'every week on Monday, Tuesday, Wednesday, Thursday and Saturday'),\n  ('duplicate days', ['WEEKLY', 3, ['SU', 'MO', 'SU'], 0, 2], 'every 3 weeks on Monday and Sunday, 2 times'),\n  ('daily with count one', ['DAILY', 1, [], 0, 1], 'every day, once'),\n  ('yearly interval', ['YEARLY', 4, [], 0, 0], 'every 4 years'),\n  ('two days unordered', ['WEEKLY', 1, ['TH', 'TU'], 0, 1], 'every week on Tuesday and Thursday, once'),\n  ('regression: weekly three days',\n   ['WEEKLY', 1, ['MO', 'WE', 'FR'], 0, 0],\n   'every week on Monday, Wednesday and Friday')],\n [('duplicate days', ['WEEKLY', 3, ['SU', 'MO', 'SU'], 0, 2], 'every 3 weeks on Monday and Sunday, 2 times'),\n  ('daily with count one', ['DAILY', 1, [], 0, 1], 'every day, once'),\n  ('yearly interval', ['YEARLY', 4, [], 0, 0], 'every 4 years'),\n  ('two days unordered', ['WEEKLY', 1, ['TH', 'TU'], 0, 1], 'every week on Tuesday and Thursday, once'),\n  ('regression: weekly three days',\n   ['WEEKLY', 1, ['MO', 'WE', 'FR'], 0, 0],\n   'every week on Monday, Wednesday and Friday'),\n  ('biweekly single day once', ['WEEKLY', 2, ['TU'], 0, 1], 'every 2 weeks on Tuesday, once'),\n  ('last friday monthly', ['MONTHLY', 1, ['FR'], -1, 6], 'every month on the last Friday, 6 times')]]\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":"Stipulated, bounded recurrence-expansion model evaluated offline on explicit fixtures; it is not a complete iCalendar implementation and makes no claim of standards conformance. 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-calendar-recurrence-rules-rule-description-text-interval-phrase","generated_at":"2026-09-29T14:49:23.790159+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Recurring calendar series are expanded into concrete instances for display, reminders and conflict checks.","repair":"At the interval phrase decision use `'every ' + unit if interval == 1 else 'every %d %ss' % (interval, unit)`, leaving the other decision sites of the model unchanged.","root_cause":"The interval is always rendered numerically with a plural unit.","sha256":"04e7f64ead204829a28e811166ac6178dec223431dd7631519e78c67015da85e","title":"Rendering a recurrence rule as a human-readable sentence: interval phrase · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":39.958,"exit_code":1,"observations":[{"actual":"every week on Monday, Wednesday and Friday","check":"regression: weekly three days","expected":"every week on Monday, Wednesday and Friday","passed":true},{"actual":"every 2 week on Tuesday, once","check":"biweekly single day once","expected":"every 2 weeks on Tuesday, once","passed":false},{"actual":"every month on the last Friday, 6 times","check":"last friday monthly","expected":"every month on the last Friday, 6 times","passed":true},{"actual":"every 3 month on the 2nd to last Sunday","check":"second to last sunday","expected":"every 3 months on the 2nd to last Sunday","passed":false},{"actual":"every month on the 2nd Tuesday, 10 times","check":"second tuesday","expected":"every month on the 2nd Tuesday, 10 times","passed":true},{"actual":"every week on weekdays","check":"weekdays exact","expected":"every week on weekdays","passed":true},{"actual":"every week on weekdays, 3 times","check":"weekdays reordered","expected":"every week on weekdays, 3 times","passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: weekly three days\", \"actual\": \"every week on Monday, Wednesday and Friday\", \"expected\": \"every week on Monday, Wednesday and Friday\", \"passed\": true}, {\"check\": \"biweekly single day once\", \"actual\": \"every 2 week on Tuesday, once\", \"expected\": \"every 2 weeks on Tuesday, once\", \"passed\": false}, {\"check\": \"last friday monthly\", \"actual\": \"every month on the last Friday, 6 times\", \"expected\": \"every month on the last Friday, 6 times\", \"passed\": true}, {\"check\": \"second to last sunday\", \"actual\": \"every 3 month on the 2nd to last Sunday\", \"expected\": \"every 3 months on the 2nd to last Sunday\", \"passed\": false}, {\"check\": \"second tuesday\", \"actual\": \"every month on the 2nd Tuesday, 10 times\", \"expected\": \"every month on the 2nd Tuesday, 10 times\", \"passed\": true}, {\"check\": \"weekdays exact\", \"actual\": \"every week on weekdays\", \"expected\": \"every week on weekdays\", \"passed\": true}, {\"check\": \"weekdays reordered\", \"actual\": \"every week on weekdays, 3 times\", \"expected\": \"every week on weekdays, 3 times\", \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":38.713,"exit_code":1,"observations":[{"actual":"every 1 weeks on Monday, Wednesday and Friday","check":"regression: weekly three days","expected":"every week on Monday, Wednesday and Friday","passed":false},{"actual":"every 2 weeks on Tuesday, once","check":"biweekly single day once","expected":"every 2 weeks on Tuesday, once","passed":true},{"actual":"every 1 months on the last Friday, 6 times","check":"last friday monthly","expected":"every month on the last Friday, 6 times","passed":false},{"actual":"every 3 months on the 2nd to last Sunday","check":"second to last sunday","expected":"every 3 months on the 2nd to last Sunday","passed":true},{"actual":"every 1 months on the 2nd Tuesday, 10 times","check":"second tuesday","expected":"every month on the 2nd Tuesday, 10 times","passed":false},{"actual":"every 1 weeks on weekdays","check":"weekdays exact","expected":"every week on weekdays","passed":false},{"actual":"every 1 weeks on weekdays, 3 times","check":"weekdays reordered","expected":"every week on weekdays, 3 times","passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: weekly three days\", \"actual\": \"every 1 weeks on Monday, Wednesday and Friday\", \"expected\": \"every week on Monday, Wednesday and Friday\", \"passed\": false}, {\"check\": \"biweekly single day once\", \"actual\": \"every 2 weeks on Tuesday, once\", \"expected\": \"every 2 weeks on Tuesday, once\", \"passed\": true}, {\"check\": \"last friday monthly\", \"actual\": \"every 1 months on the last Friday, 6 times\", \"expected\": \"every month on the last Friday, 6 times\", \"passed\": false}, {\"check\": \"second to last sunday\", \"actual\": \"every 3 months on the 2nd to last Sunday\", \"expected\": \"every 3 months on the 2nd to last Sunday\", \"passed\": true}, {\"check\": \"second tuesday\", \"actual\": \"every 1 months on the 2nd Tuesday, 10 times\", \"expected\": \"every month on the 2nd Tuesday, 10 times\", \"passed\": false}, {\"check\": \"weekdays exact\", \"actual\": \"every 1 weeks on weekdays\", \"expected\": \"every week on weekdays\", \"passed\": false}, {\"check\": \"weekdays reordered\", \"actual\": \"every 1 weeks on weekdays, 3 times\", \"expected\": \"every week on weekdays, 3 times\", \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":38.391,"exit_code":0,"observations":[{"actual":"every week on Monday, Wednesday and Friday","check":"regression: weekly three days","expected":"every week on Monday, Wednesday and Friday","passed":true},{"actual":"every 2 weeks on Tuesday, once","check":"biweekly single day once","expected":"every 2 weeks on Tuesday, once","passed":true},{"actual":"every month on the last Friday, 6 times","check":"last friday monthly","expected":"every month on the last Friday, 6 times","passed":true},{"actual":"every 3 months on the 2nd to last Sunday","check":"second to last sunday","expected":"every 3 months on the 2nd to last Sunday","passed":true},{"actual":"every month on the 2nd Tuesday, 10 times","check":"second tuesday","expected":"every month on the 2nd Tuesday, 10 times","passed":true},{"actual":"every week on weekdays","check":"weekdays exact","expected":"every week on weekdays","passed":true},{"actual":"every week on weekdays, 3 times","check":"weekdays reordered","expected":"every week on weekdays, 3 times","passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: weekly three days\", \"actual\": \"every week on Monday, Wednesday and Friday\", \"expected\": \"every week on Monday, Wednesday and Friday\", \"passed\": true}, {\"check\": \"biweekly single day once\", \"actual\": \"every 2 weeks on Tuesday, once\", \"expected\": \"every 2 weeks on Tuesday, once\", \"passed\": true}, {\"check\": \"last friday monthly\", \"actual\": \"every month on the last Friday, 6 times\", \"expected\": \"every month on the last Friday, 6 times\", \"passed\": true}, {\"check\": \"second to last sunday\", \"actual\": \"every 3 months on the 2nd to last Sunday\", \"expected\": \"every 3 months on the 2nd to last Sunday\", \"passed\": true}, {\"check\": \"second tuesday\", \"actual\": \"every month on the 2nd Tuesday, 10 times\", \"expected\": \"every month on the 2nd Tuesday, 10 times\", \"passed\": true}, {\"check\": \"weekdays exact\", \"actual\": \"every week on weekdays\", \"expected\": \"every week on weekdays\", \"passed\": true}, {\"check\": \"weekdays reordered\", \"actual\": \"every week on weekdays, 3 times\", \"expected\": \"every week on weekdays, 3 times\", \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}