Milestone "held and failed moves reach the operator; no image the store lacks is sent", one delivery group with mesh-controller on fix/1732-held-moves-asked.
Issue 1742, node-engine half: on novox at 17:13 the node-engine removed the running mailu-automx and then could not pull its replacement image, leaving automx down and every later apply failing. internal/apply/apply.go (applyContainer, case existed) now calls ensureImage (inspect, pull, inspect) before docker rm -f of a running container being replaced; an image it cannot get leaves the old container running and fails that resource alone with "not replacing container X, which keeps running: pulling image ". The per-resource failure contract is unchanged.
Tests: 1742/AC-host-1 TestARunningContainerIsKeptWhenItsReplacementImageCannotBeObtained, AC-host-2 TestAReplacementImageIsPresentBeforeTheRunningContainerIsRemoved (both fail on main on their assertions); the fake machine's pull now leaves the image present, as a real runtime does. Try build-1792603125796743965 passed (an earlier try of the same commit failed once in an untouched bus test: issue 1754). Context: fix-1742-host@shanks.
Milestone "held and failed moves reach the operator; no image the store lacks is sent", one delivery group with mesh-controller on `fix/1732-held-moves-asked`.
Issue 1742, node-engine half: on novox at 17:13 the node-engine removed the running mailu-automx and then could not pull its replacement image, leaving automx down and every later apply failing. internal/apply/apply.go (applyContainer, case existed) now calls ensureImage (inspect, pull, inspect) before `docker rm -f` of a running container being replaced; an image it cannot get leaves the old container running and fails that resource alone with "not replacing container X, which keeps running: pulling image <image>". The per-resource failure contract is unchanged.
Tests: 1742/AC-host-1 TestARunningContainerIsKeptWhenItsReplacementImageCannotBeObtained, AC-host-2 TestAReplacementImageIsPresentBeforeTheRunningContainerIsRemoved (both fail on main on their assertions); the fake machine's pull now leaves the image present, as a real runtime does. Try build-1792603125796743965 passed (an earlier try of the same commit failed once in an untouched bus test: issue 1754). Context: fix-1742-host@shanks.
Reviewed-by: reviewer-1732@shanks at 09c77d57b82304ae39771d6c288de712464ac75d
mesh/merge-gate head 09c77d57b823 merged into trunk c231d1031fc7 — pass: group fix/1732-held-moves-asked composed: every machine composes with the change a…
Deliverynovox/mesh-host@09c77d57b823 — delivered since 2026-10-21T19:28:46Z
Delivery plan — builds mesh-host → ace, g14, novox, shanks; no bus step
tier 0: mesh-host
ace: receives mesh-host
g14: receives mesh-host
novox: receives mesh-host
shanks: receives mesh-host
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-host is judged on its first machine
composed together: pass — every machine composes with the change as it did without (4 of 4 compose)
Machines
mesh-host on every machine running it: sent
route-proxy on every machine running it: sent
mesh-controller on every machine running it: sent
build-agent on every machine running it: sent
Transitions
2026-10-21 18:26 (new) → proposed (announced): novox/mesh-host#129's head announced
2026-10-21 18:33 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
2026-10-21 18:33 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
2026-10-21 19:19 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
2026-10-21 19:19 published → delivering (go): its walk started: let go by this owner in its group's order, by a person, or on the controller's own path — not a failed walk that carried a later commit for it, after which it waits for a walk of its own commit
2026-10-21 19:28 delivering → delivered (done): its walk is done, carrying its own commit: every machine of its deploy plan passed, or was left as its policy says
The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.
<!-- mesh-delivery:view -->
**Delivery** `novox/mesh-host@09c77d57b823` — **delivered** since 2026-10-21T19:28:46Z
**Delivery plan** — builds mesh-host → ace, g14, novox, shanks; no bus step
- tier 0: mesh-host
- ace: receives mesh-host
- g14: receives mesh-host
- novox: receives mesh-host
- shanks: receives mesh-host
- 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-host is judged on its first machine
**Group** `fix/1732-held-moves-asked`: novox/mesh-controller@d6db334840a5, novox/mesh-host@09c77d57b823
- composed together: pass — every machine composes with the change as it did without (4 of 4 compose)
**Machines**
- mesh-host on every machine running it: sent
- route-proxy on every machine running it: sent
- mesh-controller on every machine running it: sent
- build-agent on every machine running it: sent
**Transitions**
- 2026-10-21 18:26 (new) → proposed (announced): novox/mesh-host#129's head announced
- 2026-10-21 18:33 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
- 2026-10-21 18:33 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
- 2026-10-21 19:19 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
- 2026-10-21 19:19 published → delivering (go): its walk started: let go by this owner in its group's order, by a person, or on the controller's own path — not a failed walk that carried a later commit for it, after which it waits for a walk of its own commit
- 2026-10-21 19:28 delivering → delivered (done): its walk is done, carrying its own commit: every machine of its deploy plan passed, or was left as its policy says
The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Milestone "held and failed moves reach the operator; no image the store lacks is sent", one delivery group with mesh-controller on
fix/1732-held-moves-asked.Issue 1742, node-engine half: on novox at 17:13 the node-engine removed the running mailu-automx and then could not pull its replacement image, leaving automx down and every later apply failing. internal/apply/apply.go (applyContainer, case existed) now calls ensureImage (inspect, pull, inspect) before
". The per-resource failure contract is unchanged.
docker rm -fof a running container being replaced; an image it cannot get leaves the old container running and fails that resource alone with "not replacing container X, which keeps running: pulling imageTests: 1742/AC-host-1 TestARunningContainerIsKeptWhenItsReplacementImageCannotBeObtained, AC-host-2 TestAReplacementImageIsPresentBeforeTheRunningContainerIsRemoved (both fail on main on their assertions); the fake machine's pull now leaves the image present, as a real runtime does. Try build-1792603125796743965 passed (an earlier try of the same commit failed once in an untouched bus test: issue 1754). Context: fix-1742-host@shanks.
Reviewed-by: reviewer-1732@shanks at
09c77d57b8Delivery
novox/mesh-host@09c77d57b823— delivered since 2026-10-21T19:28:46ZDelivery plan — builds mesh-host → ace, g14, novox, shanks; no bus step
Group
fix/1732-held-moves-asked: novox/mesh-controller@d6db334840, novox/mesh-host@09c77d57b8Machines
Transitions
The commit's note under
refs/notes/mesh-plankeeps every transition:git log --notes=mesh-plan.