FA-74920 / CRDT convergence / Member archive
LWW element set with add bias: merge overwrites newer timestamps with older ones · case 05
Merging an older replica state resurrects or hides elements depending on delivery order.
Case contract
Each replica keeps add and remove timestamp maps. ["add"|"rem", r, e, t] records t when it exceeds the stored timestamp. ["merge", s, d] folds both maps of s into d by maximum. An element is a member when it has an add timestamp that is greater than or equal to its remove timestamp (ties favour add). Return sorted members per replica.
Why this case matters
LWW element sets resolve add/remove races by timestamp and need a deterministic tie bias.
One recorded failure
Sample boundary fixtureThis sample comes from the broken implementation of a controlled reproducer.
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| older merged add does not lower the timestamp | [[], []] | [["z"], []] | 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 ↗