A first-view reader counts no superseded revision as a gap and catches up a lost last change from the owner's mark #181

Merged
mesh-tools merged 1 commits from fix/1966-views-loss into main 2026-11-09 21:16:17 +00:00
1 Commits
Author SHA1 Message Date
jschoubben 04b323868f Keep a views reader's copy equal to its owner's: no false gaps, a lost last change caught up (issue 1966)
mesh/check being carried to 04b323868fc7 on c2b4178a8009 | from 4b9bac9c73a9
mesh/delivery merged: source.main moved to novox/mesh-sdk@c2b4178a8009
The owner's watch of a state keeping one value per key is never handed a
revision that a later write of the same key replaced first, so every such
skip read as "changes missed" and the reader asked its first view again,
over and over in a burst. Each event now names the revision said before it
(prev), and a reader takes it when its picture holds that one.

A change whose event never reached a reader was only noticed at a later
change, and a lost last one never. The owner now says its mark as an event
each time it writes it; a reader short of it asks its first view at once
and holds what it read, never the event's body.

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-09 21:15:55 +01:00