FA-75858 / Chat ordering and read receipts / Member archive
Merge server-sequenced messages with local pending sends: pending order · case 03
Unsent messages typed in quick succession appear in random nonce order instead of the order they were written.
Case contract
confirmed holds server messages {id, seq, ts, optional nonce}; the server seq is the only authority for order and a redelivered copy (same seq, possibly another gateway ts) is shown once (first copy kept). pending holds local unsent messages {nonce, created}; a pending message whose nonce was echoed back by any confirmed message is dropped. Result: confirmed ids in seq order, then local:<nonce> for the remaining pending sends ordered by (created, nonce).
Why this case matters
Chat clients render optimistic local sends next to server-ordered history; ordering or echo mistakes show duplicated or jumping bubbles.
One recorded failure
Sample boundary fixtureThis sample comes from the broken implementation of a controlled reproducer.
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| pending within one second | ["local:aa", "local:mm", "local:zz"] | ["local:zz", "local:mm", "local:aa"] | Failed |
MEMBER ARCHIVE
The complete case is available to members.
This record includes three runnable implementations, regression fixtures, execution results, and source hashes.
Member access is invitation-based. Sign in with your invited account to inspect the sources.
Sign in to the archive ↗