Understand the failure.
Verify the repair.
Small, reproducible software failures. The broken implementation, the fix that didn’t work, and the one that passed—preserved together.
Explore the cases ↓How results are verified ↗WHAT THE ARCHIVE CONTAINS
100840 executable cases. 20168 are open.
Every case records the implementation that fails, the fix that did not work, and the repair that passed its checks—with recorded outputs and source hashes. This release adds 100840 cases across 20168 failure mechanisms and 254 domains.
The open tier gives you the failure and the unsuccessful fix for one case in every mechanism. The remaining 80672 cases, 5 variants per mechanism, are member-only: the verified repair, its recorded checks, and the full fixture suite are held in the member archive. Read the methodology ↗
A RECORD OF WHAT WENT WRONG
Browse the archive / 100840
Monthly ordinal BYDAY such as 2TU or -1FR: negative ordinal base · case 01
BYDAY=-1FR lands a week before the last Friday.
Monthly ordinal BYDAY such as 2TU or -1FR: negative ordinal base · case 02
BYDAY=-1FR lands a week before the last Friday.
Monthly ordinal BYDAY such as 2TU or -1FR: negative ordinal base · case 03
BYDAY=-1FR lands a week before the last Friday.
Monthly ordinal BYDAY such as 2TU or -1FR: negative ordinal base · case 04
BYDAY=-1FR lands a week before the last Friday.
Monthly ordinal BYDAY such as 2TU or -1FR: negative ordinal base · case 05
BYDAY=-1FR lands a week before the last Friday.
Monthly ordinal BYDAY such as 2TU or -1FR: missing occurrence · case 01
A 5th-Monday series reports the 4th Monday in months without a fifth one.
Monthly ordinal BYDAY such as 2TU or -1FR: missing occurrence · case 02
A 5th-Monday series reports the 4th Monday in months without a fifth one.
Monthly ordinal BYDAY such as 2TU or -1FR: missing occurrence · case 03
A 5th-Monday series reports the 4th Monday in months without a fifth one.
Monthly ordinal BYDAY such as 2TU or -1FR: missing occurrence · case 04
A 5th-Monday series reports the 4th Monday in months without a fifth one.
Monthly ordinal BYDAY such as 2TU or -1FR: missing occurrence · case 05
A 5th-Monday series reports the 4th Monday in months without a fifth one.
Monthly ordinal BYDAY such as 2TU or -1FR: count basis · case 01
A 5th-weekday series returns fewer than COUNT instances because skipped months are counted.
Monthly ordinal BYDAY such as 2TU or -1FR: count basis · case 02
A 5th-weekday series returns fewer than COUNT instances because skipped months are counted.
Monthly ordinal BYDAY such as 2TU or -1FR: count basis · case 03
A 5th-weekday series returns fewer than COUNT instances because skipped months are counted.
Monthly ordinal BYDAY such as 2TU or -1FR: count basis · case 04
A 5th-weekday series returns fewer than COUNT instances because skipped months are counted.
Monthly ordinal BYDAY such as 2TU or -1FR: count basis · case 05
A 5th-weekday series returns fewer than COUNT instances because skipped months are counted.
Monthly BYSETPOS selection from a weekday set: setpos before filter · case 01
In the first month BYSETPOS=1 picks the first weekday after dtstart instead of the first of the month.
Monthly BYSETPOS selection from a weekday set: setpos before filter · case 02
In the first month BYSETPOS=1 picks the first weekday after dtstart instead of the first of the month.
Monthly BYSETPOS selection from a weekday set: setpos before filter · case 03
In the first month BYSETPOS=1 picks the first weekday after dtstart instead of the first of the month.
Monthly BYSETPOS selection from a weekday set: setpos before filter · case 04
In the first month BYSETPOS=1 picks the first weekday after dtstart instead of the first of the month.
Monthly BYSETPOS selection from a weekday set: setpos before filter · case 05
In the first month BYSETPOS=1 picks the first weekday after dtstart instead of the first of the month.
Monthly BYSETPOS selection from a weekday set: position index · case 01
BYSETPOS=1 selects the second weekday of the month.
Monthly BYSETPOS selection from a weekday set: position index · case 02
BYSETPOS=1 selects the second weekday of the month.
Monthly BYSETPOS selection from a weekday set: position index · case 03
BYSETPOS=1 selects the second weekday of the month.
Monthly BYSETPOS selection from a weekday set: position index · case 04
BYSETPOS=1 selects the second weekday of the month.
Monthly BYSETPOS selection from a weekday set: position index · case 05
BYSETPOS=1 selects the second weekday of the month.
Monthly BYSETPOS selection from a weekday set: position range · case 01
BYSETPOS=-7 in a month with five candidates selects a day through Python negative indexing.
Monthly BYSETPOS selection from a weekday set: position range · case 02
BYSETPOS=-7 in a month with five candidates selects a day through Python negative indexing.
Monthly BYSETPOS selection from a weekday set: position range · case 03
BYSETPOS=-7 in a month with five candidates selects a day through Python negative indexing.
Monthly BYSETPOS selection from a weekday set: position range · case 04
BYSETPOS=-7 in a month with five candidates selects a day through Python negative indexing.
Monthly BYSETPOS selection from a weekday set: position range · case 05
BYSETPOS=-7 in a month with five candidates selects a day through Python negative indexing.
Monthly BYSETPOS selection from a weekday set: dup guard · case 01
BYSETPOS=1,-5 in a month with five candidates emits the same day twice.
Monthly BYSETPOS selection from a weekday set: dup guard · case 02
BYSETPOS=1,-5 in a month with five candidates emits the same day twice.
Monthly BYSETPOS selection from a weekday set: dup guard · case 03
BYSETPOS=1,-5 in a month with five candidates emits the same day twice.
Monthly BYSETPOS selection from a weekday set: dup guard · case 04
BYSETPOS=1,-5 in a month with five candidates emits the same day twice.
Monthly BYSETPOS selection from a weekday set: dup guard · case 05
BYSETPOS=1,-5 in a month with five candidates emits the same day twice.
Monthly BYSETPOS selection from a weekday set: emit order · case 01
BYSETPOS=-1,1 emits the last day before the first, and COUNT keeps the wrong instance.
Monthly BYSETPOS selection from a weekday set: emit order · case 02
BYSETPOS=-1,1 emits the last day before the first, and COUNT keeps the wrong instance.
Monthly BYSETPOS selection from a weekday set: emit order · case 03
BYSETPOS=-1,1 emits the last day before the first, and COUNT keeps the wrong instance.
Monthly BYSETPOS selection from a weekday set: emit order · case 04
BYSETPOS=-1,1 emits the last day before the first, and COUNT keeps the wrong instance.
Monthly BYSETPOS selection from a weekday set: emit order · case 05
BYSETPOS=-1,1 emits the last day before the first, and COUNT keeps the wrong instance.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: leap rule · case 01
A February 29 series reports an instance in 2100.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: leap rule · case 02
A February 29 series reports an instance in 2100.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: leap rule · case 03
A February 29 series reports an instance in 2100.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: leap rule · case 04
A February 29 series reports an instance in 2100.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: leap rule · case 05
A February 29 series reports an instance in 2100.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: interval anchor · case 01
An every-other-year series whose first-year date precedes dtstart runs in the wrong year parity.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: interval anchor · case 02
An every-other-year series whose first-year date precedes dtstart runs in the wrong year parity.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: interval anchor · case 03
An every-other-year series whose first-year date precedes dtstart runs in the wrong year parity.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: interval anchor · case 04
An every-other-year series whose first-year date precedes dtstart runs in the wrong year parity.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: interval anchor · case 05
An every-other-year series whose first-year date precedes dtstart runs in the wrong year parity.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: invalid year · case 01
A leap-day series reports February 28 in common years.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: invalid year · case 02
A leap-day series reports February 28 in common years.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: invalid year · case 03
A leap-day series reports February 28 in common years.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: invalid year · case 04
A leap-day series reports February 28 in common years.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: invalid year · case 05
A leap-day series reports February 28 in common years.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: dtstart date compare · case 01
A series starting after the anniversary returns no instances at all.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: dtstart date compare · case 02
A series starting after the anniversary returns no instances at all.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: dtstart date compare · case 03
A series starting after the anniversary returns no instances at all.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: dtstart date compare · case 04
A series starting after the anniversary returns no instances at all.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: dtstart date compare · case 05
A series starting after the anniversary returns no instances at all.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: until inclusive · case 01
An instance falling exactly on UNTIL is missing.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: until inclusive · case 02
An instance falling exactly on UNTIL is missing.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: until inclusive · case 03
An instance falling exactly on UNTIL is missing.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: until inclusive · case 04
An instance falling exactly on UNTIL is missing.
Yearly BYMONTH/BYMONTHDAY with leap-day skipping: until inclusive · case 05
An instance falling exactly on UNTIL is missing.
Merging RRULE instances with RDATE and EXDATE: exdate time normalization · case 01
An EXDATE written with a time component does not remove the all-day instance.
Merging RRULE instances with RDATE and EXDATE: exdate time normalization · case 02
An EXDATE written with a time component does not remove the all-day instance.
Merging RRULE instances with RDATE and EXDATE: exdate time normalization · case 03
An EXDATE written with a time component does not remove the all-day instance.
Merging RRULE instances with RDATE and EXDATE: exdate time normalization · case 04
An EXDATE written with a time component does not remove the all-day instance.
Merging RRULE instances with RDATE and EXDATE: exdate time normalization · case 05
An EXDATE written with a time component does not remove the all-day instance.
Merging RRULE instances with RDATE and EXDATE: count vs exdate · case 01
Excluding one instance of a COUNT=5 series pushes a sixth instance onto the calendar.
Merging RRULE instances with RDATE and EXDATE: count vs exdate · case 02
Excluding one instance of a COUNT=5 series pushes a sixth instance onto the calendar.
Merging RRULE instances with RDATE and EXDATE: count vs exdate · case 03
Excluding one instance of a COUNT=5 series pushes a sixth instance onto the calendar.
Merging RRULE instances with RDATE and EXDATE: count vs exdate · case 04
Excluding one instance of a COUNT=5 series pushes a sixth instance onto the calendar.
Merging RRULE instances with RDATE and EXDATE: count vs exdate · case 05
Excluding one instance of a COUNT=5 series pushes a sixth instance onto the calendar.
Merging RRULE instances with RDATE and EXDATE: rdate count · case 01
Adding an RDATE removes the last rule instance.
Merging RRULE instances with RDATE and EXDATE: rdate count · case 02
Adding an RDATE removes the last rule instance.
Merging RRULE instances with RDATE and EXDATE: rdate count · case 03
Adding an RDATE removes the last rule instance.
Merging RRULE instances with RDATE and EXDATE: rdate count · case 04
Adding an RDATE removes the last rule instance.
Merging RRULE instances with RDATE and EXDATE: rdate count · case 05
Adding an RDATE removes the last rule instance.
Merging RRULE instances with RDATE and EXDATE: exdate scope · case 01
An EXDATE matching an RDATE leaves the RDATE on the calendar.
Merging RRULE instances with RDATE and EXDATE: exdate scope · case 02
An EXDATE matching an RDATE leaves the RDATE on the calendar.
Merging RRULE instances with RDATE and EXDATE: exdate scope · case 03
An EXDATE matching an RDATE leaves the RDATE on the calendar.
Merging RRULE instances with RDATE and EXDATE: exdate scope · case 04
An EXDATE matching an RDATE leaves the RDATE on the calendar.
Merging RRULE instances with RDATE and EXDATE: exdate scope · case 05
An EXDATE matching an RDATE leaves the RDATE on the calendar.
Merging RRULE instances with RDATE and EXDATE: dedupe merge · case 01
An RDATE equal to a rule instance appears twice.
Merging RRULE instances with RDATE and EXDATE: dedupe merge · case 02
An RDATE equal to a rule instance appears twice.
Merging RRULE instances with RDATE and EXDATE: dedupe merge · case 03
An RDATE equal to a rule instance appears twice.
Merging RRULE instances with RDATE and EXDATE: dedupe merge · case 04
An RDATE equal to a rule instance appears twice.
Merging RRULE instances with RDATE and EXDATE: dedupe merge · case 05
An RDATE equal to a rule instance appears twice.
Applying moved and cancelled instance overrides in a window query: override order · case 01
Of two overrides for the same instance, the earlier edit wins.
Applying moved and cancelled instance overrides in a window query: override order · case 02
Of two overrides for the same instance, the earlier edit wins.
Applying moved and cancelled instance overrides in a window query: override order · case 03
Of two overrides for the same instance, the earlier edit wins.
Applying moved and cancelled instance overrides in a window query: override order · case 04
Of two overrides for the same instance, the earlier edit wins.
Applying moved and cancelled instance overrides in a window query: override order · case 05
Of two overrides for the same instance, the earlier edit wins.
Applying moved and cancelled instance overrides in a window query: orphan guard · case 01
An override for a date that is not an instance adds a phantom occurrence.
Applying moved and cancelled instance overrides in a window query: orphan guard · case 02
An override for a date that is not an instance adds a phantom occurrence.
Applying moved and cancelled instance overrides in a window query: orphan guard · case 03
An override for a date that is not an instance adds a phantom occurrence.
Applying moved and cancelled instance overrides in a window query: orphan guard · case 04
An override for a date that is not an instance adds a phantom occurrence.
Applying moved and cancelled instance overrides in a window query: orphan guard · case 05
An override for a date that is not an instance adds a phantom occurrence.
INSPECTABLE BY DESIGN
Every result has a runnable source.
Runnable implementations with recorded outputs, source hashes, and explicit contracts. Related variants share a failure mechanism and belong together in evaluation splits.
Read the methodology ↗