10 lines
607 B
Markdown
10 lines
607 B
Markdown
# Loop prevention keys on (origin device ID, sequence), not content hash
|
|||
|
|
|
||
|
|
The original protocol draft used `content_hash` recent-history dedup as the
|
||
|
|
loop breaker. That is wrong for many-to-many: two different devices pasting
|
||
|
|
the same text are falsely dropped as echoes, and the hash is optional so the
|
||
|
|
gate is bypassable. The loop breaker is now the immutable origin device ID plus
|
||
|
|
a per-peer monotonic sequence: ignore updates whose `(origin, sequence)` is not
|
||
|
|
newer than the last-seen pair, and drop any update whose origin is the local
|
||
|
|
device. `content_hash` is retained only for integrity/diagnostics.
|