ADR 0219: the build queue is controlled through the controller and the build seat #105

Merged
mesh-admin merged 2 commits from decision/0219-the-build-queue-is-controlled into main 2026-10-05 18:22:01 +00:00
Contributor

The operator's request: tools to control the build queue (list, restart, cancel, clear, immediate stop, pause, continue, replay).

  • Queue actions are controller verbs (only the controller may act on streams): queue, cancel, clear, rebuild, replay, and kill/pause/resume passed on to the seat.
  • Process actions are the build seat's own per-machine verbs: current, kill (process group + labelled containers, outcome failed, ask acknowledged), pause/resume (flag survives restart).
  • Every action that drops work leaves a failed outcome so no plan waits on it; a plan keeps the id it asked for; a cancelled ask taken in the same instant is not built.
  • Replay is a dry run unless --register, and never over a newer build without --older (issue 207).
  • Rejected: remaking the worker consumer (skips queued asks, issues 206/207); upgrading the bus for consumer pause first (covers only pause).

To-be 18 amended. cycle, records, index pass. Implementation follows in mesh-controller.

The operator's request: tools to control the build queue (list, restart, cancel, clear, immediate stop, pause, continue, replay). - Queue actions are controller verbs (only the controller may act on streams): `queue`, `cancel`, `clear`, `rebuild`, `replay`, and `kill`/`pause`/`resume` passed on to the seat. - Process actions are the build seat's own per-machine verbs: `current`, `kill` (process group + labelled containers, outcome failed, ask acknowledged), `pause`/`resume` (flag survives restart). - Every action that drops work leaves a failed outcome so no plan waits on it; a plan keeps the id it asked for; a cancelled ask taken in the same instant is not built. - Replay is a dry run unless `--register`, and never over a newer build without `--older` (issue 207). - Rejected: remaking the worker consumer (skips queued asks, issues 206/207); upgrading the bus for consumer pause first (covers only pause). To-be 18 amended. cycle, records, index pass. Implementation follows in mesh-controller.
mesh-admin added 1 commit 2026-10-05 16:54:46 +00:00
The operator asked for tools to see, cancel, clear, stop, pause, continue,
restart and replay builds; none existed. Queue actions are the controller's,
process actions the build seat's per machine, and every action that drops
work leaves a failed outcome so no plan waits on it. To-be 18 amended.
jschoubben added 1 commit 2026-10-05 16:56:20 +00:00
mesh-admin merged commit 035d4a27e3 into main 2026-10-05 18:22:01 +00:00
mesh-admin deleted branch decision/0219-the-build-queue-is-controlled 2026-10-05 18:22:01 +00:00
Author
Contributor

Delivery novox/hq@035d4a27e3b0 — held since 2026-10-06T23:05:28Z

Held for a person: merged without a passing check: only a person decides that it goes on — mesh-delivery.release with why lets it go on.

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

Transitions

  • 2026-10-06 23:05 (new) → proposed (announced): novox/hq#105 merged; its head was not heard by this owner, so it is made from the forge's word
  • 2026-10-06 23:05 proposed → held (merged-unchecked): merged without a passing check — a verdict known with it is taken first: only a person decides that it goes on

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

<!-- mesh-delivery:view --> **Delivery** `novox/hq@035d4a27e3b0` — **held** since 2026-10-06T23:05:28Z Held for a person: merged without a passing check: only a person decides that it goes on — `mesh-delivery.release` with why lets it go on. **Delivery plan** — builds nothing: the change touches no module of the mesh's graph **Transitions** - 2026-10-06 23:05 (new) → proposed (announced): novox/hq#105 merged; its head was not heard by this owner, so it is made from the forge's word - 2026-10-06 23:05 proposed → held (merged-unchecked): merged without a passing check — a verdict known with it is taken first: only a person decides that it goes on The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/hq#105