R4g+R5 (mesh-delivery): builder and checker put asks, the assigner and its composition check, the view's wants and backlog (design 47) #27

Merged
jschoubben merged 58 commits from feat/r4g into main 2026-10-23 17:49:02 +00:00
Member

Design 47's last milestone, R4g+R5, one delivery group on feat/r4g.

  • Builder and checker put asks on the build seats' streams; the hold, node choice and capacity deleted; the check's own repository placed beside it; mesh-lab judged; a check keeps what an earlier check of the same heads passed (issue 1887, issue 1685, issue 1917; ADR 0525, 0529).
  • New module mesh-delivery-assigner: wants by six rules, differences, the composition check the checker reads, hold asks (issue 1297; ADR 0528, 0537).
  • The view's wants page, backlog of asks, answers in the view; the teller reads them; the watchman pulses running steps (issues 1908, 1909).
  • Fixes folded in: issue 1910, issue 1912; indexer issue 1900 travels with this delivery.
  • merge-check.sh gone (issue 1295).
  • The node-engine's tests have the controller beside them: with mesh-host's merge-check.sh gone the checker judges mesh-host, whose genesis tests read the controller's manifest (issue 1295).

Reviewed-by: review-r4g-2@shanks at b2c545c40a
Pushed-by: lead-47@shanks

Design 47's last milestone, R4g+R5, one delivery group on feat/r4g. - Builder and checker put asks on the build seats' streams; the hold, node choice and capacity deleted; the check's own repository placed beside it; mesh-lab judged; a check keeps what an earlier check of the same heads passed (issue 1887, issue 1685, issue 1917; ADR 0525, 0529). - New module mesh-delivery-assigner: wants by six rules, differences, the composition check the checker reads, hold asks (issue 1297; ADR 0528, 0537). - The view's wants page, backlog of asks, answers in the view; the teller reads them; the watchman pulses running steps (issues 1908, 1909). - Fixes folded in: issue 1910, issue 1912; indexer issue 1900 travels with this delivery. - merge-check.sh gone (issue 1295). - The node-engine's tests have the controller beside them: with mesh-host's merge-check.sh gone the checker judges mesh-host, whose genesis tests read the controller's manifest (issue 1295). Reviewed-by: review-r4g-2@shanks at b2c545c40aecac8199d4df884ad1257d6698d153 Pushed-by: lead-47@shanks
mesh-tools added 55 commits 2026-10-23 15:00:50 +00:00
go.sum gains its lines from go mod tidy once mesh-sdk feat/r4g is pushed.
# Conflicts:
#	modules/mesh-delivery-checker/cmd/mesh-delivery-checker/judge.go
#	modules/mesh-delivery-checker/manifest_test.go
#	modules/mesh-delivery-checker/module.json
go.sum gains its lines from go mod tidy once mesh-sdk feat/r4g is pushed.
# Conflicts:
#	modules/mesh-delivery-builder/internal/build/run_test.go
Read an ask's stream at take-over by its name, as the broker grants it, and wait for the ask when that read fails rather than fail a key whose build may still finish (issue 1910)
mesh/delivery-group group feat/r4g rejected: a member's own check failed
mesh/delivery superseded: a newer head of the same pull request
mesh/check failed: novox: novox/mesh-catalog#464: checks/health/go.mod names mesh-sdk a9560890ee26, which is neither on mesh-sdk's trunk nor the group…
b83af04f0c
Author
Member

Delivery novox/mesh-delivery@b2c545c40aec — failed since 2026-10-23T17:59:26Z

Covered: covered after its failure: a later walk that contains it was delivered: plan-1792777718506798022 (novox/mesh-delivery at fae4d48e into main, done, contains its merge fae4d48e)

Delivery plan — builds mesh-delivery-builder, mesh-delivery-checker, mesh-delivery-indexer, mesh-delivery-teller, mesh-delivery-view, mesh-delivery-watchman, new: modules/mesh-delivery-assigner → novox, shanks; no bus step

  • tier 0: mesh-delivery-builder, mesh-delivery-checker, mesh-delivery-indexer, mesh-delivery-teller, mesh-delivery-view, mesh-delivery-watchman
  • novox: receives mesh-delivery-checker, mesh-delivery-indexer, mesh-delivery-teller, mesh-delivery-watchman
  • shanks: receives mesh-delivery-view
  • grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before mesh-delivery-view is judged on its first machine

Group feat/r4g: novox/hq@e8bd9171cd, novox/mesh-catalog@454fb8a918, novox/mesh-controller@c9a7102bc5, novox/mesh-delivery@b2c545c40a, novox/mesh-host@4b4bb09a05, novox/mesh-lab@4653b17e18, novox/mesh-media-catalog@f4f0bbcfe5, novox/mesh-sdk@a2c813a6b4, novox/mesh-tools-go@5023de36fd, novox/mesh-tools@860043fd7f, novox/okioki@e67d21e8b4

Machines

  • claude-code on every machine running it: sent
  • mesh-controller on every machine running it: sent
  • mesh-delivery-indexer on every machine running it: sent
  • mesh-sdk on every machine running it: sent
  • node-tools on every machine running it: sent
  • mesh-build-go on every machine running it: sent
  • mesh-build-image on every machine running it: sent
  • mesh-build-node on every machine running it: sent
  • mesh-delivery-builder on every machine running it: sent
  • mesh-delivery-checker on every machine running it: sent
  • mesh-delivery-gate on every machine running it: sent
  • mesh-delivery-teller on every machine running it: sent
  • mesh-delivery-view on every machine running it: sent
  • mesh-delivery-watchman on every machine running it: sent
  • mesh-issues on every machine running it: sent
  • audit-logger on every machine running it: sent
  • bazarr on every machine running it: sent
  • bookshelf on every machine running it: sent
  • confluence on every machine running it: sent
  • gitea on every machine running it: sent
  • gitlab on every machine running it: sent
  • grafana on every machine running it: sent
  • home-assistant on every machine running it: sent
  • icecast on every machine running it: sent
  • influxdb on every machine running it: sent
  • jira on every machine running it: sent
  • lidarr on every machine running it: sent
  • mesh-catalog on every machine running it: sent
  • model-usage on every machine running it: sent
  • mosquitto on every machine running it: sent
  • netcheck on every machine running it: sent
  • nextcloud on every machine running it: sent
  • nodered on every machine running it: sent
  • ombi on every machine running it: sent
  • openai-consumer on every machine running it: sent
  • radarr on every machine running it: sent
  • redis on every machine running it: sent
  • route-adapter on every machine running it: sent
  • showcase on every machine running it: sent
  • sonarr on every machine running it: sent
  • tautulli on every machine running it: sent
  • umami on every machine running it: sent

Transitions

  • 2026-10-23 16:38 (new) → proposed (announced): novox/mesh-delivery#27's head announced
  • 2026-10-23 16:46 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
  • 2026-10-23 16:46 checked → rejected (refused): the gate failed or could not run, or the repository's own check failed
  • 2026-10-23 17:49 rejected → held (merged-unchecked): merged without a passing check — a verdict known with it is taken first: only a person decides that it goes on
  • 2026-10-23 17:55 held → delivering (go): its walk started on a word that was not this owner's: the controller's own path, which waits for nobody, or a person's plans go
  • 2026-10-23 17:59 delivering → failed (failed): its walk failed, carrying its own commit: a gate on a first machine (what it carried put back), a build, a machine

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

<!-- mesh-delivery:view --> **Delivery** `novox/mesh-delivery@b2c545c40aec` — **failed** since 2026-10-23T17:59:26Z **Covered**: covered after its failure: a later walk that contains it was delivered: plan-1792777718506798022 (novox/mesh-delivery at fae4d48e into main, done, contains its merge fae4d48e) **Delivery plan** — builds mesh-delivery-builder, mesh-delivery-checker, mesh-delivery-indexer, mesh-delivery-teller, mesh-delivery-view, mesh-delivery-watchman, new: modules/mesh-delivery-assigner → novox, shanks; no bus step - tier 0: mesh-delivery-builder, mesh-delivery-checker, mesh-delivery-indexer, mesh-delivery-teller, mesh-delivery-view, mesh-delivery-watchman - novox: receives mesh-delivery-checker, mesh-delivery-indexer, mesh-delivery-teller, mesh-delivery-watchman - shanks: receives mesh-delivery-view - grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before mesh-delivery-view is judged on its first machine **Group** `feat/r4g`: novox/hq@e8bd9171cdbc, novox/mesh-catalog@454fb8a918ad, novox/mesh-controller@c9a7102bc53b, novox/mesh-delivery@b2c545c40aec, novox/mesh-host@4b4bb09a05a0, novox/mesh-lab@4653b17e18a7, novox/mesh-media-catalog@f4f0bbcfe59c, novox/mesh-sdk@a2c813a6b468, novox/mesh-tools-go@5023de36fded, novox/mesh-tools@860043fd7fa0, novox/okioki@e67d21e8b448 **Machines** - claude-code on every machine running it: sent - mesh-controller on every machine running it: sent - mesh-delivery-indexer on every machine running it: sent - mesh-sdk on every machine running it: sent - node-tools on every machine running it: sent - mesh-build-go on every machine running it: sent - mesh-build-image on every machine running it: sent - mesh-build-node on every machine running it: sent - mesh-delivery-builder on every machine running it: sent - mesh-delivery-checker on every machine running it: sent - mesh-delivery-gate on every machine running it: sent - mesh-delivery-teller on every machine running it: sent - mesh-delivery-view on every machine running it: sent - mesh-delivery-watchman on every machine running it: sent - mesh-issues on every machine running it: sent - audit-logger on every machine running it: sent - bazarr on every machine running it: sent - bookshelf on every machine running it: sent - confluence on every machine running it: sent - gitea on every machine running it: sent - gitlab on every machine running it: sent - grafana on every machine running it: sent - home-assistant on every machine running it: sent - icecast on every machine running it: sent - influxdb on every machine running it: sent - jira on every machine running it: sent - lidarr on every machine running it: sent - mesh-catalog on every machine running it: sent - model-usage on every machine running it: sent - mosquitto on every machine running it: sent - netcheck on every machine running it: sent - nextcloud on every machine running it: sent - nodered on every machine running it: sent - ombi on every machine running it: sent - openai-consumer on every machine running it: sent - radarr on every machine running it: sent - redis on every machine running it: sent - route-adapter on every machine running it: sent - showcase on every machine running it: sent - sonarr on every machine running it: sent - tautulli on every machine running it: sent - umami on every machine running it: sent **Transitions** - 2026-10-23 16:38 (new) → proposed (announced): novox/mesh-delivery#27's head announced - 2026-10-23 16:46 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit - 2026-10-23 16:46 checked → rejected (refused): the gate failed or could not run, or the repository's own check failed - 2026-10-23 17:49 rejected → held (merged-unchecked): merged without a passing check — a verdict known with it is taken first: only a person decides that it goes on - 2026-10-23 17:55 held → delivering (go): its walk started on a word that was not this owner's: the controller's own path, which waits for nobody, or a person's `plans go` - 2026-10-23 17:59 delivering → failed (failed): its walk failed, carrying its own commit: a gate on a first machine (what it carried put back), a build, a machine The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
jschoubben added 1 commit 2026-10-23 15:06:11 +00:00
Pin mesh-sdk at feat/r4g's head a2c813a6, its test fixture fix, with go.sum tidied
mesh/delivery superseded: a newer head of the same pull request
mesh/check failed: unit: git.novox.be/novox/mesh-catalog/checks/config.TestTheUnmovedListHoldsNoModuleTheTrunksDoesNot: realtree_test.go:14: mesh-cata…
fad96ae67b
jschoubben added 1 commit 2026-10-23 15:18:39 +00:00
Prove that a second check of the same heads keeps every package the first passed, the digest being taken inside the check ask as the build module answers it (issue 1917)
mesh/delivery superseded: a newer head of the same pull request
mesh/check failed: unit: github.com/novox/mesh-host/internal/apply.TestJudgeDirectoriesSaysWhatTheWalkWouldRefuseAndChangesNothing: judge_directories_…
ad26670996
jschoubben added 1 commit 2026-10-23 16:37:58 +00:00
Place mesh-controller beside the node-engine's tests, which read its manifest (issue 1295, R4g)
mesh/delivery-group group feat/r4g failed: a member failed
mesh/delivery covered after its failure: a later walk that contains it was delivered: plan-1792777718506798022 (novox/mesh-delivery at fae4d48e into main…
mesh/check checking b2c545c40aec on 85aca46348a0 | novox/mesh-delivery#27 in group feat/r4g
b2c545c40a
jschoubben merged commit fae4d48e09 into main 2026-10-23 17:49:02 +00:00
jschoubben deleted branch feat/r4g 2026-10-23 17:49:02 +00:00
Sign in to join this conversation.
No Reviewers
No labels
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-delivery#27