Issue 336: a send held for the bus's planned step raises no condition, so the operator is never asked #228

Merged
mesh-admin merged 1 commits from issues/336-a-send-held-for-the-bus-step-raises-nothing into main 2026-10-09 07:23:42 +00:00
Contributor

Registers issue 336 (status: located).

On 2026-10-08 a catalogue merge built a new bus build for the control-node. Every send to the control-node was then held for the bus's planned step (ADR 0236) for about 28 minutes, and mesh-controller.conditions named nothing; the operator found it only because a walk looked stuck.

Located in mesh-controller:

  • the refusal (errBusWaits, from sendToEach in push.go via busHeld in bus_step.go) is kept only as the walk's note in release_plan.go;
  • watchdog S3 (stalled) fires no sooner than 30 minutes, with generic words that name neither the bus nor the verb, so it never fired here;
  • probe DB reads only a running or failed bus step, so a pending one raises nothing;
  • neither the merge gate nor the delivery plan says that a change moving the bus's build needs a person's bus upgrade.

Suggested fix: a condition at the first refusal naming what waits, behind what, and mesh-controller.bus upgrade; an ask to the operator once ADR 0259's asks exist; and a line before the merge. The diagnosis also raises, as an unchecked guess, whether the whole-send refusal is still needed since issue 295's keeping of recorded builds.

Checks run locally: records.py, index.py, cycle.py, words.py (with the catalogue) all pass.

Registers issue 336 (status: located). On 2026-10-08 a catalogue merge built a new bus build for the control-node. Every send to the control-node was then held for the bus's planned step (ADR 0236) for about 28 minutes, and `mesh-controller.conditions` named nothing; the operator found it only because a walk looked stuck. Located in mesh-controller: - the refusal (`errBusWaits`, from `sendToEach` in push.go via `busHeld` in bus_step.go) is kept only as the walk's note in release_plan.go; - watchdog S3 (`stalled`) fires no sooner than 30 minutes, with generic words that name neither the bus nor the verb, so it never fired here; - probe DB reads only a running or failed bus step, so a pending one raises nothing; - neither the merge gate nor the delivery plan says that a change moving the bus's build needs a person's bus upgrade. Suggested fix: a condition at the first refusal naming what waits, behind what, and `mesh-controller.bus upgrade`; an ask to the operator once ADR 0259's asks exist; and a line before the merge. The diagnosis also raises, as an unchecked guess, whether the whole-send refusal is still needed since issue 295's keeping of recorded builds. Checks run locally: records.py, index.py, cycle.py, words.py (with the catalogue) all pass.
mesh-admin added 1 commit 2026-10-08 18:58:55 +00:00
Issue 336: a send held for the bus's planned step raises no condition, so the operator is never asked
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery delivered
e6f0e7e359
For 28 minutes on 2026-10-08 every send to the control-node waited for a bus upgrade only a person can start, and nothing but a walk's note said so. Located in the controller: the refusal is kept as the walk's note, S3 fires only past a 30-minute bound with generic words, and probe DB reads only a running step.
Author
Contributor

Delivery novox/hq@e6f0e7e359d5 — delivered since 2026-10-09T07:24:08Z

Delivery plan — builds nothing: the change touches no module of the mesh's graph

Transitions

  • 2026-10-08 18:59 (new) → proposed (announced): novox/hq#228's head announced
  • 2026-10-08 18:59 proposed → checked (checked): the verdict names this commit
  • 2026-10-08 18:59 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
  • 2026-10-09 07:24 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
  • 2026-10-09 07:24 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/hq@e6f0e7e359d5` — **delivered** since 2026-10-09T07:24:08Z **Delivery plan** — builds nothing: the change touches no module of the mesh's graph **Transitions** - 2026-10-08 18:59 (new) → proposed (announced): novox/hq#228's head announced - 2026-10-08 18:59 proposed → checked (checked): the verdict names this commit - 2026-10-08 18:59 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail - 2026-10-09 07:24 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move - 2026-10-09 07:24 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-admin merged commit 9744ed7b9d into main 2026-10-09 07:23:42 +00:00
mesh-admin deleted branch issues/336-a-send-held-for-the-bus-step-raises-nothing 2026-10-09 07:23:42 +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/hq#228