FAILURE MAP
← Case archive

FA-76301 / Chat ordering and read receipts / Open access

Count unread mentions and choose the jump target: everyone suppression · case 01

Rooms that suppress @everyone still count it as a personal mention.

Verified by executionVariant 1 · 6 checks per implementationDownload source bundle ↓JSON ↗

ROOT CAUSE

The everyone suppression decision evaluates `'@everyone' in mentions` where the contract requires `('@everyone' in mentions and not suppress_everyone)`.

THE FAILURE

The everyone suppression decision evaluates `'@everyone' in mentions` where the contract requires `('@everyone' in mentions and not suppress_everyone)`.

Unsuccessful approach: Comparing the mention flag with the suppression flag counts ordinary messages in suppressed rooms. The attempted `(('@everyone' in mentions) != suppress_everyone)` still disagrees with a fixture.

Case contract

messages are [seq, author, mentions]. A message after the marker, not written by me, counts when it mentions me directly or mentions "@everyone" while the room does not suppress @everyone. Messages are evaluated in seq order and the jump target is the earliest counted seq. Result {count, jump}.

Why this case matters

Mention counters and "jump to mention" buttons need the same filter as the unread state.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(messages, me, marker, suppress_everyone):
    hits = []
    for seq, author, mentions in sorted(messages):
        if seq <= marker or author == me:
            continue
        if me in mentions or '@everyone' in mentions:
            hits.append(seq)
    return {'count': len(hits), 'jump': hits[0] if hits else None}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
_CASES = {1: [('suppressed everyone', ([[6, 'bo', ['@everyone']], [7, 'bo', ['me']], [8, 'cy', []]], 'me', 0, True), {'count': 1, 'jump': 7}), ('own everyone ping', ([[3, 'me', ['@everyone']], [4, 'bo', []]], 'me', 1, False), {'count': 0, 'jump': None}), ('out of order arrival', ([[10, 'bo', ['me']], [4, 'cy', ['me']]], 'me', 2, False), {'count': 2, 'jump': 4}), ('everyone allowed', ([[2, 'bo', ['@everyone']]], 'me', 1, False), {'count': 1, 'jump': 2}), ('already read', ([[1, 'bo', ['me']]], 'me', 2, False), {'count': 0, 'jump': None}), ('direct mention when suppressed', ([[7, 'bo', ['me', '@everyone']]], 'me', 3, True), {'count': 1, 'jump': 7})], 2: [('suppressed everyone', ([[7, 'bo', ['@everyone']], [8, 'bo', ['me']], [9, 'cy', []]], 'me', 0, True), {'count': 1, 'jump': 8}), ('own everyone ping', ([[3, 'me', ['@everyone']], [4, 'bo', []]], 'me', 1, False), {'count': 0, 'jump': None}), ('out of order arrival', ([[11, 'bo', ['me']], [4, 'cy', ['me']]], 'me', 2, False), {'count': 2, 'jump': 4}), ('everyone allowed', ([[2, 'bo', ['@everyone']]], 'me', 1, False), {'count': 1, 'jump': 2}), ('already read', ([[1, 'bo', ['me']]], 'me', 3, False), {'count': 0, 'jump': None}), ('direct mention when suppressed', ([[7, 'bo', ['me', '@everyone']]], 'me', 3, True), {'count': 1, 'jump': 7})], 3: [('suppressed everyone', ([[8, 'bo', ['@everyone']], [9, 'bo', ['me']], [10, 'cy', []]], 'me', 0, True), {'count': 1, 'jump': 9}), ('own everyone ping', ([[3, 'me', ['@everyone']], [4, 'bo', []]], 'me', 1, False), {'count': 0, 'jump': None}), ('out of order arrival', ([[12, 'bo', ['me']], [4, 'cy', ['me']]], 'me', 2, False), {'count': 2, 'jump': 4}), ('everyone allowed', ([[2, 'bo', ['@everyone']]], 'me', 1, False), {'count': 1, 'jump': 2}), ('already read', ([[1, 'bo', ['me']]], 'me', 4, False), {'count': 0, 'jump': None}), ('direct mention when suppressed', ([[7, 'bo', ['me', '@everyone']]], 'me', 3, True), {'count': 1, 'jump': 7})], 4: [('suppressed everyone', ([[9, 'bo', ['@everyone']], [10, 'bo', ['me']], [11, 'cy', []]], 'me', 0, True), {'count': 1, 'jump': 10}), ('own everyone ping', ([[3, 'me', ['@everyone']], [4, 'bo', []]], 'me', 1, False), {'count': 0, 'jump': None}), ('out of order arrival', ([[13, 'bo', ['me']], [4, 'cy', ['me']]], 'me', 2, False), {'count': 2, 'jump': 4}), ('everyone allowed', ([[2, 'bo', ['@everyone']]], 'me', 1, False), {'count': 1, 'jump': 2}), ('already read', ([[1, 'bo', ['me']]], 'me', 5, False), {'count': 0, 'jump': None}), ('direct mention when suppressed', ([[7, 'bo', ['me', '@everyone']]], 'me', 3, True), {'count': 1, 'jump': 7})], 5: [('suppressed everyone', ([[10, 'bo', ['@everyone']], [11, 'bo', ['me']], [12, 'cy', []]], 'me', 0, True), {'count': 1, 'jump': 11}), ('own everyone ping', ([[3, 'me', ['@everyone']], [4, 'bo', []]], 'me', 1, False), {'count': 0, 'jump': None}), ('out of order arrival', ([[14, 'bo', ['me']], [4, 'cy', ['me']]], 'me', 2, False), {'count': 2, 'jump': 4}), ('everyone allowed', ([[2, 'bo', ['@everyone']]], 'me', 1, False), {'count': 1, 'jump': 2}), ('already read', ([[1, 'bo', ['me']]], 'me', 6, False), {'count': 0, 'jump': None}), ('direct mention when suppressed', ([[7, 'bo', ['me', '@everyone']]], 'me', 3, True), {'count': 1, 'jump': 7})]}
for _label, _args, _expected in _CASES[N]:
    check(_label, solve(*_args), _expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
suppressed everyone{'count': 2, 'jump': 6}{'count': 1, 'jump': 7}Failed
own everyone ping{'count': 0, 'jump': None}{'count': 0, 'jump': None}Passed
out of order arrival{'count': 2, 'jump': 4}{'count': 2, 'jump': 4}Passed
everyone allowed{'count': 1, 'jump': 2}{'count': 1, 'jump': 2}Passed
already read{'count': 0, 'jump': None}{'count': 0, 'jump': None}Passed
direct mention when suppressed{'count': 1, 'jump': 7}{'count': 1, 'jump': 7}Passed

SHA-256 / 8f2d42e35c6d534df51f418774fd760247b4d6e625f664315359287b2c50e264

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(messages, me, marker, suppress_everyone):
    hits = []
    for seq, author, mentions in sorted(messages):
        if seq <= marker or author == me:
            continue
        if me in mentions or (('@everyone' in mentions) != suppress_everyone):
            hits.append(seq)
    return {'count': len(hits), 'jump': hits[0] if hits else None}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
_CASES = {1: [('suppressed everyone', ([[6, 'bo', ['@everyone']], [7, 'bo', ['me']], [8, 'cy', []]], 'me', 0, True), {'count': 1, 'jump': 7}), ('own everyone ping', ([[3, 'me', ['@everyone']], [4, 'bo', []]], 'me', 1, False), {'count': 0, 'jump': None}), ('out of order arrival', ([[10, 'bo', ['me']], [4, 'cy', ['me']]], 'me', 2, False), {'count': 2, 'jump': 4}), ('everyone allowed', ([[2, 'bo', ['@everyone']]], 'me', 1, False), {'count': 1, 'jump': 2}), ('already read', ([[1, 'bo', ['me']]], 'me', 2, False), {'count': 0, 'jump': None}), ('direct mention when suppressed', ([[7, 'bo', ['me', '@everyone']]], 'me', 3, True), {'count': 1, 'jump': 7})], 2: [('suppressed everyone', ([[7, 'bo', ['@everyone']], [8, 'bo', ['me']], [9, 'cy', []]], 'me', 0, True), {'count': 1, 'jump': 8}), ('own everyone ping', ([[3, 'me', ['@everyone']], [4, 'bo', []]], 'me', 1, False), {'count': 0, 'jump': None}), ('out of order arrival', ([[11, 'bo', ['me']], [4, 'cy', ['me']]], 'me', 2, False), {'count': 2, 'jump': 4}), ('everyone allowed', ([[2, 'bo', ['@everyone']]], 'me', 1, False), {'count': 1, 'jump': 2}), ('already read', ([[1, 'bo', ['me']]], 'me', 3, False), {'count': 0, 'jump': None}), ('direct mention when suppressed', ([[7, 'bo', ['me', '@everyone']]], 'me', 3, True), {'count': 1, 'jump': 7})], 3: [('suppressed everyone', ([[8, 'bo', ['@everyone']], [9, 'bo', ['me']], [10, 'cy', []]], 'me', 0, True), {'count': 1, 'jump': 9}), ('own everyone ping', ([[3, 'me', ['@everyone']], [4, 'bo', []]], 'me', 1, False), {'count': 0, 'jump': None}), ('out of order arrival', ([[12, 'bo', ['me']], [4, 'cy', ['me']]], 'me', 2, False), {'count': 2, 'jump': 4}), ('everyone allowed', ([[2, 'bo', ['@everyone']]], 'me', 1, False), {'count': 1, 'jump': 2}), ('already read', ([[1, 'bo', ['me']]], 'me', 4, False), {'count': 0, 'jump': None}), ('direct mention when suppressed', ([[7, 'bo', ['me', '@everyone']]], 'me', 3, True), {'count': 1, 'jump': 7})], 4: [('suppressed everyone', ([[9, 'bo', ['@everyone']], [10, 'bo', ['me']], [11, 'cy', []]], 'me', 0, True), {'count': 1, 'jump': 10}), ('own everyone ping', ([[3, 'me', ['@everyone']], [4, 'bo', []]], 'me', 1, False), {'count': 0, 'jump': None}), ('out of order arrival', ([[13, 'bo', ['me']], [4, 'cy', ['me']]], 'me', 2, False), {'count': 2, 'jump': 4}), ('everyone allowed', ([[2, 'bo', ['@everyone']]], 'me', 1, False), {'count': 1, 'jump': 2}), ('already read', ([[1, 'bo', ['me']]], 'me', 5, False), {'count': 0, 'jump': None}), ('direct mention when suppressed', ([[7, 'bo', ['me', '@everyone']]], 'me', 3, True), {'count': 1, 'jump': 7})], 5: [('suppressed everyone', ([[10, 'bo', ['@everyone']], [11, 'bo', ['me']], [12, 'cy', []]], 'me', 0, True), {'count': 1, 'jump': 11}), ('own everyone ping', ([[3, 'me', ['@everyone']], [4, 'bo', []]], 'me', 1, False), {'count': 0, 'jump': None}), ('out of order arrival', ([[14, 'bo', ['me']], [4, 'cy', ['me']]], 'me', 2, False), {'count': 2, 'jump': 4}), ('everyone allowed', ([[2, 'bo', ['@everyone']]], 'me', 1, False), {'count': 1, 'jump': 2}), ('already read', ([[1, 'bo', ['me']]], 'me', 6, False), {'count': 0, 'jump': None}), ('direct mention when suppressed', ([[7, 'bo', ['me', '@everyone']]], 'me', 3, True), {'count': 1, 'jump': 7})]}
for _label, _args, _expected in _CASES[N]:
    check(_label, solve(*_args), _expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
suppressed everyone{'count': 2, 'jump': 7}{'count': 1, 'jump': 7}Failed
own everyone ping{'count': 0, 'jump': None}{'count': 0, 'jump': None}Passed
out of order arrival{'count': 2, 'jump': 4}{'count': 2, 'jump': 4}Passed
everyone allowed{'count': 1, 'jump': 2}{'count': 1, 'jump': 2}Passed
already read{'count': 0, 'jump': None}{'count': 0, 'jump': None}Passed
direct mention when suppressed{'count': 1, 'jump': 7}{'count': 1, 'jump': 7}Passed

SHA-256 / 87ecdf644e91ba1e96a788affdcfb46142eb4f0b193f4564e08c080aec542ce1

HELD IN THE MEMBER ARCHIVE

The verified repair and its recorded checks are member-only.

This mechanism has 6 recorded checks per implementation. The open-access tier publishes the failure and the unsuccessful fix; the repaired source that passes every check, and the observations that prove it, are available to members.

Every case sharing this mechanism uses the same contract and the same repair, so this one record is held back for all of them.

Member access is invitation-based. Sign in with your invited account to inspect the repair.

Sign in to the archive ↗

Verification & scope

Stipulated offline chat model; not a complete messaging protocol, client or server implementation. 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.

Observations recorded using Python 3.12.14 at 2026-09-29T14:49:15.211701+00:00.

Case digest / 2aa8156ed506cc609d71c16b39289b86c59f9f029285fe0b45bbcab7715913d1