Expand description
Payload diff (issue #63): what changed between two consecutive values of one key.
For a keyspace-v2 state key this is the question — state is a LWW
document, so “what moved” is what a reader actually wants, and re-reading
two pretty-printed payloads side by side to find it is the thing explorers
are supposed to save you from.
Two levels, and which one ran is never hidden:
diffover two structural values (crate::model::decode::structural_value) — named fields, added/removed/changed;byte_diffwhen either side has no structural form (plain text, a protobuf frame, an opaque blob) — the honest fallback, reporting how much of the two byte strings is common rather than pretending to name fields.
Deliberately no notion of Put vs Delete: a tombstone is not a value and
diffing it against one would be a category error. SampleView::kind is
exact, and the frontend words the retirement.