mesh-delivery-watchman says what stopped moving, and the view shows it (design 47 R2b) #3

Merged
mesh-tools merged 8 commits from feat/delivery-watch into main 2026-10-18 23:34:10 +00:00
Member

Milestone R2b of design 47 (ADR 0429 release 2, made buildable by ADR 0433; ADRs 0431, 0434): mesh-delivery-watchman, and mesh-delivery-view reading what it says. One delivery group with mesh-controller's feat/delivery-watch (key-ttl, the checks-running mirror, the stuck probe and silent check, issues 1154-1157).

  • Issue 1135, the watchman (module mesh-delivery-watchman, new): it keeps presence from the bus's connect and disconnect events and its connections request (ADR 0431), one key per node-engine and per mesh-delivery part; it mirrors every running check and every presence gone offline as a pulse with a time to live, renewed by the check's heartbeat (ADR 0434); when the server expires a pulse it writes the stuck key, and writes it moved when the key moves again. No timer anywhere; at start it rebuilds every pulse from the current keys.
  • Issue 1168: the view and its command show every node and part offline and every stuck key not moved (its bucket, key, what it waited for, since when); a value of an unknown version shows as unreadable, naming the key. The view's SDK is pinned at the watchman's.

Tests: 1135/AC1-AC8 (AC8 integration: the program whole against an embedded bus with the system account's exports), 1168/AC1-AC5 (AC5 integration: the view whole). Try build-1792364226045652944 passed in 1 m 14 s at 954728b3.
Delivery: mesh-delivery-watchman and mesh-delivery-view are both first builds of this repository's modules, asked by this merge on your Approve (issue 1146); assigned once built: the view to shanks, where the operator looks; the watchman to novox, the control-node, which stays reachable.

Reviewed-by: reviewer-r12@shanks at 954728b390

Milestone R2b of design 47 (ADR 0429 release 2, made buildable by ADR 0433; ADRs 0431, 0434): mesh-delivery-watchman, and mesh-delivery-view reading what it says. One delivery group with mesh-controller's feat/delivery-watch (key-ttl, the checks-running mirror, the stuck probe and silent check, issues 1154-1157). - Issue 1135, the watchman (module mesh-delivery-watchman, new): it keeps presence from the bus's connect and disconnect events and its connections request (ADR 0431), one key per node-engine and per mesh-delivery part; it mirrors every running check and every presence gone offline as a pulse with a time to live, renewed by the check's heartbeat (ADR 0434); when the server expires a pulse it writes the stuck key, and writes it moved when the key moves again. No timer anywhere; at start it rebuilds every pulse from the current keys. - Issue 1168: the view and its command show every node and part offline and every stuck key not moved (its bucket, key, what it waited for, since when); a value of an unknown version shows as unreadable, naming the key. The view's SDK is pinned at the watchman's. Tests: 1135/AC1-AC8 (AC8 integration: the program whole against an embedded bus with the system account's exports), 1168/AC1-AC5 (AC5 integration: the view whole). Try build-1792364226045652944 passed in 1 m 14 s at 954728b3. Delivery: mesh-delivery-watchman and mesh-delivery-view are both first builds of this repository's modules, asked by this merge on your Approve (issue 1146); assigned once built: the view to shanks, where the operator looks; the watchman to novox, the control-node, which stays reachable. Reviewed-by: reviewer-r12@shanks at 954728b39042271bb8b4db1a2ea9742a555ae2ca
mesh-tools added 8 commits 2026-10-18 23:23:25 +00:00
Author
Member

Delivery novox/mesh-delivery@954728b39042 — delivered since 2026-10-18T23:34:23Z

Delivery plan — builds new: modules/mesh-delivery-view, modules/mesh-delivery-watchman, sent nowhere; no bus step

Group feat/delivery-watch: novox/mesh-controller@ac79e29319, novox/mesh-delivery@954728b390

  • composed together: pass — every machine composes with the change as it did without (4 of 4 compose)

Transitions

  • 2026-10-18 23:23 (new) → proposed (announced): novox/mesh-delivery#3's head announced
  • 2026-10-18 23:25 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
  • 2026-10-18 23:25 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
  • 2026-10-18 23:34 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
  • 2026-10-18 23:34 published → delivered (done): nothing for a walk to move

The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.

<!-- mesh-delivery:view --> **Delivery** `novox/mesh-delivery@954728b39042` — **delivered** since 2026-10-18T23:34:23Z **Delivery plan** — builds new: modules/mesh-delivery-view, modules/mesh-delivery-watchman, sent nowhere; no bus step **Group** `feat/delivery-watch`: novox/mesh-controller@ac79e29319ee, novox/mesh-delivery@954728b39042 - composed together: pass — every machine composes with the change as it did without (4 of 4 compose) **Transitions** - 2026-10-18 23:23 (new) → proposed (announced): novox/mesh-delivery#3's head announced - 2026-10-18 23:25 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit - 2026-10-18 23:25 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail - 2026-10-18 23:34 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move - 2026-10-18 23:34 published → delivered (done): nothing for a walk to move The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
mesh-tools merged commit 253f464a81 into main 2026-10-18 23:34:10 +00:00
mesh-tools deleted branch feat/delivery-watch 2026-10-18 23:34:10 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-delivery#3