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
Popover outside-interaction handling: Interactions with portaled panel descendants dismiss it · case 01
Interactions with portaled panel descendants dismiss it.
Popover outside-interaction handling: Interactions with portaled panel descendants dismiss it · case 02
Interactions with portaled panel descendants dismiss it.
Popover outside-interaction handling: Interactions with portaled panel descendants dismiss it · case 03
Interactions with portaled panel descendants dismiss it.
Popover outside-interaction handling: Interactions with portaled panel descendants dismiss it · case 04
Interactions with portaled panel descendants dismiss it.
Popover outside-interaction handling: Interactions with portaled panel descendants dismiss it · case 05
Interactions with portaled panel descendants dismiss it.
Drag-and-drop list reordering: Cancelling a drag removes the entire list · case 01
Cancelling a drag removes the entire list.
Drag-and-drop list reordering: Cancelling a drag removes the entire list · case 02
Cancelling a drag removes the entire list.
Drag-and-drop list reordering: Cancelling a drag removes the entire list · case 03
Cancelling a drag removes the entire list.
Drag-and-drop list reordering: Cancelling a drag removes the entire list · case 04
Cancelling a drag removes the entire list.
Drag-and-drop list reordering: Cancelling a drag removes the entire list · case 05
Cancelling a drag removes the entire list.
Drag-and-drop list reordering: Dropping against a removed target clears the list · case 01
Dropping against a removed target clears the list.
Drag-and-drop list reordering: Dropping against a removed target clears the list · case 02
Dropping against a removed target clears the list.
Drag-and-drop list reordering: Dropping against a removed target clears the list · case 03
Dropping against a removed target clears the list.
Drag-and-drop list reordering: Dropping against a removed target clears the list · case 04
Dropping against a removed target clears the list.
Drag-and-drop list reordering: Dropping against a removed target clears the list · case 05
Dropping against a removed target clears the list.
Drag-and-drop list reordering: Dropping an item onto itself destroys the list · case 01
Dropping an item onto itself destroys the list.
Drag-and-drop list reordering: Dropping an item onto itself destroys the list · case 02
Dropping an item onto itself destroys the list.
Drag-and-drop list reordering: Dropping an item onto itself destroys the list · case 03
Dropping an item onto itself destroys the list.
Drag-and-drop list reordering: Dropping an item onto itself destroys the list · case 04
Dropping an item onto itself destroys the list.
Drag-and-drop list reordering: Dropping an item onto itself destroys the list · case 05
Dropping an item onto itself destroys the list.
Drag-and-drop list reordering: Reordering duplicates the dragged item instead of moving it · case 01
Reordering duplicates the dragged item instead of moving it.
Drag-and-drop list reordering: Reordering duplicates the dragged item instead of moving it · case 02
Reordering duplicates the dragged item instead of moving it.
Drag-and-drop list reordering: Reordering duplicates the dragged item instead of moving it · case 03
Reordering duplicates the dragged item instead of moving it.
Drag-and-drop list reordering: Reordering duplicates the dragged item instead of moving it · case 04
Reordering duplicates the dragged item instead of moving it.
Drag-and-drop list reordering: Reordering duplicates the dragged item instead of moving it · case 05
Reordering duplicates the dragged item instead of moving it.
Drag-and-drop list reordering: Drop-after inserts before the target · case 01
Drop-after inserts before the target.
Drag-and-drop list reordering: Drop-after inserts before the target · case 02
Drop-after inserts before the target.
Drag-and-drop list reordering: Drop-after inserts before the target · case 03
Drop-after inserts before the target.
Drag-and-drop list reordering: Drop-after inserts before the target · case 04
Drop-after inserts before the target.
Drag-and-drop list reordering: Drop-after inserts before the target · case 05
Drop-after inserts before the target.
Pointer-capture ownership: A second touch steals an active drag · case 01
A second touch steals an active drag.
Pointer-capture ownership: A second touch steals an active drag · case 02
A second touch steals an active drag.
Pointer-capture ownership: A second touch steals an active drag · case 03
A second touch steals an active drag.
Pointer-capture ownership: A second touch steals an active drag · case 04
A second touch steals an active drag.
Pointer-capture ownership: A second touch steals an active drag · case 05
A second touch steals an active drag.
Pointer-capture ownership: Uncaptured pointer movement drags the control · case 01
Uncaptured pointer movement drags the control.
Pointer-capture ownership: Uncaptured pointer movement drags the control · case 02
Uncaptured pointer movement drags the control.
Pointer-capture ownership: Uncaptured pointer movement drags the control · case 03
Uncaptured pointer movement drags the control.
Pointer-capture ownership: Uncaptured pointer movement drags the control · case 04
Uncaptured pointer movement drags the control.
Pointer-capture ownership: Uncaptured pointer movement drags the control · case 05
Uncaptured pointer movement drags the control.
Pointer-capture ownership: A different pointer release ends the active drag · case 01
A different pointer release ends the active drag.
Pointer-capture ownership: A different pointer release ends the active drag · case 02
A different pointer release ends the active drag.
Pointer-capture ownership: A different pointer release ends the active drag · case 03
A different pointer release ends the active drag.
Pointer-capture ownership: A different pointer release ends the active drag · case 04
A different pointer release ends the active drag.
Pointer-capture ownership: A different pointer release ends the active drag · case 05
A different pointer release ends the active drag.
Pointer-capture ownership: Cancelled pointer capture remains active · case 01
Cancelled pointer capture remains active.
Pointer-capture ownership: Cancelled pointer capture remains active · case 02
Cancelled pointer capture remains active.
Pointer-capture ownership: Cancelled pointer capture remains active · case 03
Cancelled pointer capture remains active.
Pointer-capture ownership: Cancelled pointer capture remains active · case 04
Cancelled pointer capture remains active.
Pointer-capture ownership: Cancelled pointer capture remains active · case 05
Cancelled pointer capture remains active.
Pointer-capture ownership: Lost capture leaves the UI in dragging state · case 01
Lost capture leaves the UI in dragging state.
Pointer-capture ownership: Lost capture leaves the UI in dragging state · case 02
Lost capture leaves the UI in dragging state.
Pointer-capture ownership: Lost capture leaves the UI in dragging state · case 03
Lost capture leaves the UI in dragging state.
Pointer-capture ownership: Lost capture leaves the UI in dragging state · case 04
Lost capture leaves the UI in dragging state.
Pointer-capture ownership: Lost capture leaves the UI in dragging state · case 05
Lost capture leaves the UI in dragging state.
Drop-target acceptance: Disabled drop zones accept dragged content · case 01
Disabled drop zones accept dragged content.
Drop-target acceptance: Disabled drop zones accept dragged content · case 02
Disabled drop zones accept dragged content.
Drop-target acceptance: Disabled drop zones accept dragged content · case 03
Disabled drop zones accept dragged content.
Drop-target acceptance: Disabled drop zones accept dragged content · case 04
Disabled drop zones accept dragged content.
Drop-target acceptance: Disabled drop zones accept dragged content · case 05
Disabled drop zones accept dragged content.
Drop-target acceptance: Targets accept incompatible payload types · case 01
Targets accept incompatible payload types.
Drop-target acceptance: Targets accept incompatible payload types · case 02
Targets accept incompatible payload types.
Drop-target acceptance: Targets accept incompatible payload types · case 03
Targets accept incompatible payload types.
Drop-target acceptance: Targets accept incompatible payload types · case 04
Targets accept incompatible payload types.
Drop-target acceptance: Targets accept incompatible payload types · case 05
Targets accept incompatible payload types.
Drop-target acceptance: An item can be dropped into itself · case 01
An item can be dropped into itself.
Drop-target acceptance: An item can be dropped into itself · case 02
An item can be dropped into itself.
Drop-target acceptance: An item can be dropped into itself · case 03
An item can be dropped into itself.
Drop-target acceptance: An item can be dropped into itself · case 04
An item can be dropped into itself.
Drop-target acceptance: An item can be dropped into itself · case 05
An item can be dropped into itself.
Drop-target acceptance: Dragging a parent into its descendant creates a cycle · case 01
Dragging a parent into its descendant creates a cycle.
Drop-target acceptance: Dragging a parent into its descendant creates a cycle · case 02
Dragging a parent into its descendant creates a cycle.
Drop-target acceptance: Dragging a parent into its descendant creates a cycle · case 03
Dragging a parent into its descendant creates a cycle.
Drop-target acceptance: Dragging a parent into its descendant creates a cycle · case 04
Dragging a parent into its descendant creates a cycle.
Drop-target acceptance: Dragging a parent into its descendant creates a cycle · case 05
Dragging a parent into its descendant creates a cycle.
Drop-target acceptance: Unsupported drop effects reach the mutation handler · case 01
Unsupported drop effects reach the mutation handler.
Drop-target acceptance: Unsupported drop effects reach the mutation handler · case 02
Unsupported drop effects reach the mutation handler.
Drop-target acceptance: Unsupported drop effects reach the mutation handler · case 03
Unsupported drop effects reach the mutation handler.
Drop-target acceptance: Unsupported drop effects reach the mutation handler · case 04
Unsupported drop effects reach the mutation handler.
Drop-target acceptance: Unsupported drop effects reach the mutation handler · case 05
Unsupported drop effects reach the mutation handler.
Nearest-edge scroll reveal: An oversized item reveals its end instead of its leading edge · case 01
An oversized item reveals its end instead of its leading edge.
Nearest-edge scroll reveal: An oversized item reveals its end instead of its leading edge · case 02
An oversized item reveals its end instead of its leading edge.
Nearest-edge scroll reveal: An oversized item reveals its end instead of its leading edge · case 03
An oversized item reveals its end instead of its leading edge.
Nearest-edge scroll reveal: An oversized item reveals its end instead of its leading edge · case 04
An oversized item reveals its end instead of its leading edge.
Nearest-edge scroll reveal: An oversized item reveals its end instead of its leading edge · case 05
An oversized item reveals its end instead of its leading edge.
Nearest-edge scroll reveal: Revealing an above-viewport item scrolls past its beginning · case 01
Revealing an above-viewport item scrolls past its beginning.
Nearest-edge scroll reveal: Revealing an above-viewport item scrolls past its beginning · case 02
Revealing an above-viewport item scrolls past its beginning.
Nearest-edge scroll reveal: Revealing an above-viewport item scrolls past its beginning · case 03
Revealing an above-viewport item scrolls past its beginning.
Nearest-edge scroll reveal: Revealing an above-viewport item scrolls past its beginning · case 04
Revealing an above-viewport item scrolls past its beginning.
Nearest-edge scroll reveal: Revealing an above-viewport item scrolls past its beginning · case 05
Revealing an above-viewport item scrolls past its beginning.
Nearest-edge scroll reveal: Revealing a lower item scrolls it above the viewport · case 01
Revealing a lower item scrolls it above the viewport.
Nearest-edge scroll reveal: Revealing a lower item scrolls it above the viewport · case 02
Revealing a lower item scrolls it above the viewport.
Nearest-edge scroll reveal: Revealing a lower item scrolls it above the viewport · case 03
Revealing a lower item scrolls it above the viewport.
Nearest-edge scroll reveal: Revealing a lower item scrolls it above the viewport · case 04
Revealing a lower item scrolls it above the viewport.
Nearest-edge scroll reveal: Revealing a lower item scrolls it above the viewport · case 05
Revealing a lower item scrolls it above the viewport.
Nearest-edge scroll reveal: Visible targets unnecessarily change the scroll position · case 01
Visible targets unnecessarily change the scroll position.
Nearest-edge scroll reveal: Visible targets unnecessarily change the scroll position · case 02
Visible targets unnecessarily change the scroll position.
Nearest-edge scroll reveal: Visible targets unnecessarily change the scroll position · case 03
Visible targets unnecessarily change the scroll position.
Nearest-edge scroll reveal: Visible targets unnecessarily change the scroll position · case 04
Visible targets unnecessarily change the scroll position.
Nearest-edge scroll reveal: Visible targets unnecessarily change the scroll position · case 05
Visible targets unnecessarily change the scroll position.
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 ↗