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
Count unread messages for a conversation badge: thread visibility · case 01
Thread replies are counted or ignored without honoring both the "also send to channel" flag and followed threads.
Count unread messages for a conversation badge: thread visibility · case 02
Thread replies are counted or ignored without honoring both the "also send to channel" flag and followed threads.
Count unread messages for a conversation badge: thread visibility · case 03
Thread replies are counted or ignored without honoring both the "also send to channel" flag and followed threads.
Count unread messages for a conversation badge: thread visibility · case 04
Thread replies are counted or ignored without honoring both the "also send to channel" flag and followed threads.
Count unread messages for a conversation badge: thread visibility · case 05
Thread replies are counted or ignored without honoring both the "also send to channel" flag and followed threads.
Count unread messages for a conversation badge: thread root zero · case 01
Replies to the very first message of a channel (root seq 0) are treated as top-level messages.
Count unread messages for a conversation badge: thread root zero · case 02
Replies to the very first message of a channel (root seq 0) are treated as top-level messages.
Count unread messages for a conversation badge: thread root zero · case 03
Replies to the very first message of a channel (root seq 0) are treated as top-level messages.
Count unread messages for a conversation badge: thread root zero · case 04
Replies to the very first message of a channel (root seq 0) are treated as top-level messages.
Count unread messages for a conversation badge: thread root zero · case 05
Replies to the very first message of a channel (root seq 0) are treated as top-level messages.
Count unread messages for a conversation badge: badge cap · case 01
The badge switches to 99+ one message early or one message late.
Count unread messages for a conversation badge: badge cap · case 02
The badge switches to 99+ one message early or one message late.
Count unread messages for a conversation badge: badge cap · case 03
The badge switches to 99+ one message early or one message late.
Count unread messages for a conversation badge: badge cap · case 04
The badge switches to 99+ one message early or one message late.
Count unread messages for a conversation badge: badge cap · case 05
The badge switches to 99+ one message early or one message late.
Summarize group delivery and read receipts for one message: late joiner exclusion · case 01
A member who joined after a message was sent can never read it, so the message stays "delivered" forever.
Summarize group delivery and read receipts for one message: late joiner exclusion · case 02
A member who joined after a message was sent can never read it, so the message stays "delivered" forever.
Summarize group delivery and read receipts for one message: late joiner exclusion · case 03
A member who joined after a message was sent can never read it, so the message stays "delivered" forever.
Summarize group delivery and read receipts for one message: late joiner exclusion · case 04
A member who joined after a message was sent can never read it, so the message stays "delivered" forever.
Summarize group delivery and read receipts for one message: late joiner exclusion · case 05
A member who joined after a message was sent can never read it, so the message stays "delivered" forever.
Summarize group delivery and read receipts for one message: read threshold · case 01
A recipient whose read marker sits exactly on, or beyond, the message is not counted as having read it.
Summarize group delivery and read receipts for one message: read threshold · case 02
A recipient whose read marker sits exactly on, or beyond, the message is not counted as having read it.
Summarize group delivery and read receipts for one message: read threshold · case 03
A recipient whose read marker sits exactly on, or beyond, the message is not counted as having read it.
Summarize group delivery and read receipts for one message: read threshold · case 04
A recipient whose read marker sits exactly on, or beyond, the message is not counted as having read it.
Summarize group delivery and read receipts for one message: read threshold · case 05
A recipient whose read marker sits exactly on, or beyond, the message is not counted as having read it.
Summarize group delivery and read receipts for one message: read implies delivered · case 01
A recipient who read the message before the delivery acknowledgement arrived keeps the message at "sent".
Summarize group delivery and read receipts for one message: read implies delivered · case 02
A recipient who read the message before the delivery acknowledgement arrived keeps the message at "sent".
Summarize group delivery and read receipts for one message: read implies delivered · case 03
A recipient who read the message before the delivery acknowledgement arrived keeps the message at "sent".
Summarize group delivery and read receipts for one message: read implies delivered · case 04
A recipient who read the message before the delivery acknowledgement arrived keeps the message at "sent".
Summarize group delivery and read receipts for one message: read implies delivered · case 05
A recipient who read the message before the delivery acknowledgement arrived keeps the message at "sent".
Summarize group delivery and read receipts for one message: status precedence · case 01
Fully read messages are shown with delivered ticks because the delivered test runs first.
Summarize group delivery and read receipts for one message: status precedence · case 02
Fully read messages are shown with delivered ticks because the delivered test runs first.
Summarize group delivery and read receipts for one message: status precedence · case 03
Fully read messages are shown with delivered ticks because the delivered test runs first.
Summarize group delivery and read receipts for one message: status precedence · case 04
Fully read messages are shown with delivered ticks because the delivered test runs first.
Summarize group delivery and read receipts for one message: status precedence · case 05
Fully read messages are shown with delivered ticks because the delivered test runs first.
Summarize group delivery and read receipts for one message: empty recipient list · case 01
A message in a conversation with no other eligible recipients is shown as read by everyone.
Summarize group delivery and read receipts for one message: empty recipient list · case 02
A message in a conversation with no other eligible recipients is shown as read by everyone.
Summarize group delivery and read receipts for one message: empty recipient list · case 03
A message in a conversation with no other eligible recipients is shown as read by everyone.
Summarize group delivery and read receipts for one message: empty recipient list · case 04
A message in a conversation with no other eligible recipients is shown as read by everyone.
Summarize group delivery and read receipts for one message: empty recipient list · case 05
A message in a conversation with no other eligible recipients is shown as read by everyone.
Fold out-of-order delivery events into a recipient status: event order · case 01
Events processed in arrival order let a late "sent" or "failed" overwrite later evidence.
Fold out-of-order delivery events into a recipient status: event order · case 02
Events processed in arrival order let a late "sent" or "failed" overwrite later evidence.
Fold out-of-order delivery events into a recipient status: event order · case 03
Events processed in arrival order let a late "sent" or "failed" overwrite later evidence.
Fold out-of-order delivery events into a recipient status: event order · case 04
Events processed in arrival order let a late "sent" or "failed" overwrite later evidence.
Fold out-of-order delivery events into a recipient status: event order · case 05
Events processed in arrival order let a late "sent" or "failed" overwrite later evidence.
Fold out-of-order delivery events into a recipient status: failure window · case 01
A transport failure reported after delivery marks a delivered message as failed.
Fold out-of-order delivery events into a recipient status: failure window · case 02
A transport failure reported after delivery marks a delivered message as failed.
Fold out-of-order delivery events into a recipient status: failure window · case 03
A transport failure reported after delivery marks a delivered message as failed.
Fold out-of-order delivery events into a recipient status: failure window · case 04
A transport failure reported after delivery marks a delivered message as failed.
Fold out-of-order delivery events into a recipient status: failure window · case 05
A transport failure reported after delivery marks a delivered message as failed.
Fold out-of-order delivery events into a recipient status: retry source · case 01
A retry signal resets a delivered message back to queued.
Fold out-of-order delivery events into a recipient status: retry source · case 02
A retry signal resets a delivered message back to queued.
Fold out-of-order delivery events into a recipient status: retry source · case 03
A retry signal resets a delivered message back to queued.
Fold out-of-order delivery events into a recipient status: retry source · case 04
A retry signal resets a delivered message back to queued.
Fold out-of-order delivery events into a recipient status: retry source · case 05
A retry signal resets a delivered message back to queued.
Fold out-of-order delivery events into a recipient status: recovery evidence · case 01
Delivery evidence arriving after a spurious failure is ignored, or a stale sent revives the message.
Fold out-of-order delivery events into a recipient status: recovery evidence · case 02
Delivery evidence arriving after a spurious failure is ignored, or a stale sent revives the message.
Fold out-of-order delivery events into a recipient status: recovery evidence · case 03
Delivery evidence arriving after a spurious failure is ignored, or a stale sent revives the message.
Fold out-of-order delivery events into a recipient status: recovery evidence · case 04
Delivery evidence arriving after a spurious failure is ignored, or a stale sent revives the message.
Fold out-of-order delivery events into a recipient status: recovery evidence · case 05
Delivery evidence arriving after a spurious failure is ignored, or a stale sent revives the message.
Fold out-of-order delivery events into a recipient status: no regression · case 01
A late "sent" event downgrades a message that was already read.
Fold out-of-order delivery events into a recipient status: no regression · case 02
A late "sent" event downgrades a message that was already read.
Fold out-of-order delivery events into a recipient status: no regression · case 03
A late "sent" event downgrades a message that was already read.
Fold out-of-order delivery events into a recipient status: no regression · case 04
A late "sent" event downgrades a message that was already read.
Fold out-of-order delivery events into a recipient status: no regression · case 05
A late "sent" event downgrades a message that was already read.
Filter read receipts by privacy settings and chat kind: default enabled · case 01
Users who never touched the privacy setting are treated as having disabled read receipts.
Filter read receipts by privacy settings and chat kind: default enabled · case 02
Users who never touched the privacy setting are treated as having disabled read receipts.
Filter read receipts by privacy settings and chat kind: default enabled · case 03
Users who never touched the privacy setting are treated as having disabled read receipts.
Filter read receipts by privacy settings and chat kind: default enabled · case 04
Users who never touched the privacy setting are treated as having disabled read receipts.
Filter read receipts by privacy settings and chat kind: default enabled · case 05
Users who never touched the privacy setting are treated as having disabled read receipts.
Filter read receipts by privacy settings and chat kind: direct reciprocity · case 01
A viewer who disabled their own receipts can still see other people's receipts in direct chats.
Filter read receipts by privacy settings and chat kind: direct reciprocity · case 02
A viewer who disabled their own receipts can still see other people's receipts in direct chats.
Filter read receipts by privacy settings and chat kind: direct reciprocity · case 03
A viewer who disabled their own receipts can still see other people's receipts in direct chats.
Filter read receipts by privacy settings and chat kind: direct reciprocity · case 04
A viewer who disabled their own receipts can still see other people's receipts in direct chats.
Filter read receipts by privacy settings and chat kind: direct reciprocity · case 05
A viewer who disabled their own receipts can still see other people's receipts in direct chats.
Filter read receipts by privacy settings and chat kind: group no reciprocity · case 01
Group receipts vanish for viewers who disabled their own receipts although reciprocity only applies to direct chats.
Filter read receipts by privacy settings and chat kind: group no reciprocity · case 02
Group receipts vanish for viewers who disabled their own receipts although reciprocity only applies to direct chats.
Filter read receipts by privacy settings and chat kind: group no reciprocity · case 03
Group receipts vanish for viewers who disabled their own receipts although reciprocity only applies to direct chats.
Filter read receipts by privacy settings and chat kind: group no reciprocity · case 04
Group receipts vanish for viewers who disabled their own receipts although reciprocity only applies to direct chats.
Filter read receipts by privacy settings and chat kind: group no reciprocity · case 05
Group receipts vanish for viewers who disabled their own receipts although reciprocity only applies to direct chats.
Filter read receipts by privacy settings and chat kind: channel admin override · case 01
Channel admins lose receipts of members who disabled them, or non-admins see channel receipts.
Filter read receipts by privacy settings and chat kind: channel admin override · case 02
Channel admins lose receipts of members who disabled them, or non-admins see channel receipts.
Filter read receipts by privacy settings and chat kind: channel admin override · case 03
Channel admins lose receipts of members who disabled them, or non-admins see channel receipts.
Filter read receipts by privacy settings and chat kind: channel admin override · case 04
Channel admins lose receipts of members who disabled them, or non-admins see channel receipts.
Filter read receipts by privacy settings and chat kind: channel admin override · case 05
Channel admins lose receipts of members who disabled them, or non-admins see channel receipts.
Filter read receipts by privacy settings and chat kind: self exclusion · case 01
The viewer appears in their own "seen by" list in group or channel conversations.
Filter read receipts by privacy settings and chat kind: self exclusion · case 02
The viewer appears in their own "seen by" list in group or channel conversations.
Filter read receipts by privacy settings and chat kind: self exclusion · case 03
The viewer appears in their own "seen by" list in group or channel conversations.
Filter read receipts by privacy settings and chat kind: self exclusion · case 04
The viewer appears in their own "seen by" list in group or channel conversations.
Filter read receipts by privacy settings and chat kind: self exclusion · case 05
The viewer appears in their own "seen by" list in group or channel conversations.
Place the "new messages" divider in a loaded window: send implies read · case 01
After the user replies in the middle of new messages, the divider still sits above messages they answered.
Place the "new messages" divider in a loaded window: send implies read · case 02
After the user replies in the middle of new messages, the divider still sits above messages they answered.
Place the "new messages" divider in a loaded window: send implies read · case 03
After the user replies in the middle of new messages, the divider still sits above messages they answered.
Place the "new messages" divider in a loaded window: send implies read · case 04
After the user replies in the middle of new messages, the divider still sits above messages they answered.
Place the "new messages" divider in a loaded window: send implies read · case 05
After the user replies in the middle of new messages, the divider still sits above messages they answered.
Place the "new messages" divider in a loaded window: older unread boundary · case 01
The "older unread messages" banner appears when the window begins right after the marker, or misses a single unloaded unread.
Place the "new messages" divider in a loaded window: older unread boundary · case 02
The "older unread messages" banner appears when the window begins right after the marker, or misses a single unloaded unread.
Place the "new messages" divider in a loaded window: older unread boundary · case 03
The "older unread messages" banner appears when the window begins right after the marker, or misses a single unloaded unread.
Place the "new messages" divider in a loaded window: older unread boundary · case 04
The "older unread messages" banner appears when the window begins right after the marker, or misses a single unloaded unread.
Place the "new messages" divider in a loaded window: older unread boundary · case 05
The "older unread messages" banner appears when the window begins right after the marker, or misses a single unloaded unread.
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 ↗