Give every module of a failed send a verdict, and excuse only the wait a build's own send brought (hq issue 318 review) #146

Merged
mesh-admin merged 3 commits from fix/318-follow-up into main 2026-10-08 13:45:02 +00:00
Contributor

Follow-up to #142 (hq ADR 0254, issue 318), from its review.

  • (a) Nothing is stranded by an early fault. A module found broken stays broken for the rest of the judging (PlanGate.Broken, BrokenWhy), and the send's verdict waits until every other module has its own verdict, or the bound. At the verdict, every module that did not pass on its own is in Failing and is put back; none is left on the machine without a verdict. The cost: a broken module is put back when the rest are judged (at most the bound), not at once.
  • (b) Tier path. failFirstSend records the pass of the plan's own module when it passed on its own ("passed on its own and is kept"); the tier's other modules were already kept by keepPassing. TestACoreBehindWhileTheNodeToolsSettleFailsNoOtherModule now expects that pass in place of "not found wanting".
  • (c) Spacing. A module's pass is counted only gateEvery after its last counted one (PlanGate.HealthyAt).
  • (d) Only this send's wait is excused. The wait reading holds only when every waiting account resource's since is at or after the gate's since (two seconds of skew, as the witness allows). An older wait is judged as before.
  • (e) passCarried, gatePassed and passedWith give each build only its own wait (whyFor).
  • (f) Wording. The fallback for the kind names a dotted module whole. The words say "your account" only when the waiting account is the machine's operator account, and otherwise neither name nor claim it. When unhealthy turns into relogin-needed, or back, the cleared condition's line says what it became (Keeper.ClearSaying).
  • (g) A provider waiting for a login lists its held consumers and is urgent, as an unhealthy provider is. sayWaiters finds either kind.

Tests: cmd/mesh-controller/gate_followup_test.go (a, b, c, e, g) and person_wait_test.go (d, f). merge-check.sh passes locally.

Note for hq #204: ADR 0254's sentences on what still strands, and on a pending relogin excusing later builds, describe #142. Once this merges they need a dated progressive insight.

Follow-up to #142 (hq ADR 0254, issue 318), from its review. - **(a) Nothing is stranded by an early fault.** A module found broken stays broken for the rest of the judging (`PlanGate.Broken`, `BrokenWhy`), and the send's verdict waits until every other module has its own verdict, or the bound. At the verdict, every module that did not pass on its own is in `Failing` and is put back; none is left on the machine without a verdict. The cost: a broken module is put back when the rest are judged (at most the bound), not at once. - **(b) Tier path.** `failFirstSend` records the pass of the plan's own module when it passed on its own ("passed on its own and is kept"); the tier's other modules were already kept by `keepPassing`. `TestACoreBehindWhileTheNodeToolsSettleFailsNoOtherModule` now expects that pass in place of "not found wanting". - **(c) Spacing.** A module's pass is counted only `gateEvery` after its last counted one (`PlanGate.HealthyAt`). - **(d) Only this send's wait is excused.** The wait reading holds only when every waiting account resource's `since` is at or after the gate's `since` (two seconds of skew, as the witness allows). An older wait is judged as before. - **(e)** `passCarried`, `gatePassed` and `passedWith` give each build only its own wait (`whyFor`). - **(f) Wording.** The fallback for the kind names a dotted module whole. The words say "your account" only when the waiting account is the machine's operator account, and otherwise neither name nor claim it. When `unhealthy` turns into `relogin-needed`, or back, the cleared condition's line says what it became (`Keeper.ClearSaying`). - **(g)** A provider waiting for a login lists its held consumers and is urgent, as an unhealthy provider is. `sayWaiters` finds either kind. Tests: `cmd/mesh-controller/gate_followup_test.go` (a, b, c, e, g) and `person_wait_test.go` (d, f). `merge-check.sh` passes locally. Note for hq #204: ADR 0254's sentences on what still strands, and on a pending relogin excusing later builds, describe #142. Once this merges they need a dated progressive insight.
Author
Contributor

Delivery novox/mesh-controller@a63939160ef3 — superseded since 2026-10-08T13:46:21Z

Delivery plan — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step

  • tier 0: mesh-controller
  • tier 1: build-agent
  • tier 2: route-proxy
  • ace: receives build-agent, route-proxy
  • g14: receives build-agent
  • novox: receives mesh-controller, build-agent, route-proxy
  • shanks: receives build-agent
  • build-agent keeps data (ADR 0233): what it holds is backed up before it moves
  • route-proxy provides route: its consumers are sent again after it
  • route-proxy keeps data (ADR 0233): what it holds is backed up before it moves

Machines

  • mesh-controller on novox: judging — 0 healthy judging(s) so far

Transitions

  • 2026-10-08 13:28 (new) → proposed (announced): novox/mesh-controller#146's head announced
  • 2026-10-08 13:32 proposed → checked (checked): the verdict names this commit
  • 2026-10-08 13:32 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
  • 2026-10-08 13:45 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
  • 2026-10-08 13:45 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
  • 2026-10-08 13:46 delivering → superseded (superseded): a newer delivery to the same trunk took over its walk

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

<!-- mesh-delivery:view --> **Delivery** `novox/mesh-controller@a63939160ef3` — **superseded** since 2026-10-08T13:46:21Z **Delivery plan** — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step - tier 0: mesh-controller - tier 1: build-agent - tier 2: route-proxy - ace: receives build-agent, route-proxy - g14: receives build-agent - novox: receives mesh-controller, build-agent, route-proxy - shanks: receives build-agent - build-agent keeps data (ADR 0233): what it holds is backed up before it moves - route-proxy provides route: its consumers are sent again after it - route-proxy keeps data (ADR 0233): what it holds is backed up before it moves **Machines** - mesh-controller on novox: judging — 0 healthy judging(s) so far **Transitions** - 2026-10-08 13:28 (new) → proposed (announced): novox/mesh-controller#146's head announced - 2026-10-08 13:32 proposed → checked (checked): the verdict names this commit - 2026-10-08 13:32 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail - 2026-10-08 13:45 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move - 2026-10-08 13:45 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 - 2026-10-08 13:46 delivering → superseded (superseded): a newer delivery to the same trunk took over its walk The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
Author
Contributor

Merge check at f3c2ef98

  • mesh/merge-gate: PASS — every machine composes with the change as it did without (4 of 4 compose) (modules: build-agent, mesh-controller, route-proxy)
  • mesh/repo-check: PASS — its merge-check.sh passed

Delivery plan — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step

  • tier 0: mesh-controller
  • tier 1: build-agent
  • tier 2: route-proxy
  • ace: receives build-agent, route-proxy
  • g14: receives build-agent
  • novox: receives mesh-controller, build-agent, route-proxy
  • shanks: receives build-agent
  • build-agent keeps data (ADR 0233): what it holds is backed up before it moves
  • route-proxy provides route: its consumers are sent again after it
  • route-proxy keeps data (ADR 0233): what it holds is backed up before it moves

Run by the build seat on ace as build-1791463935004233618 (builds --log build-1791463935004233618).

--- the gate: build-agent, mesh-controller, route-proxy
mesh-controller: ok, 50 tool(s); WARNING: controller stay(s) up and say(s) not how it is ready — judged by liveness alone, refused from 2026-11-18 (ADR 0240 rule 8)
long-running resources without health: 1
1 manifest(s) checked. Judged against the seats this binary carries; a claim on one of the mesh's own seats is judged fully at registration, and a seat declared by a module not given here reads as unknown. Identities judged on a 6-character machine name, against the bounds of the providers given here
judging 0 module(s) changed against 4 machine(s), as the snapshot of 2026-10-08T12:46:24Z says they run
composing every machine as the mesh is
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
composing every machine with the change
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
merge gate: PASS — every machine composes with the change as it did without (4 of 4 compose)
judged by controller development build against the facts of 2026-10-08T12:46:24Z

machines:
  - a machine (f35): composes
  - holds mesh-dns-resolver (idt): composes
  - holds git, holds mesh-artifact-store, holds mesh-broker, holds mesh-catalog, holds mesh-delivery, holds mesh-dns-resolver, holds mesh-store, holds mesh-vault, holds npm-package-registry, the control node, the hub (ygcyr): composes
  - a machine (yvbpsm): composes

a merge would rebuild 3 module(s) in 3 tier(s): build-agent, mesh-controller, route-proxy
--- its merge-check.sh (go toolchain)
ok  	github.com/novox/mesh-controller/cmd/mesh-builder	1.029s
ok  	github.com/novox/mesh-controller/cmd/mesh-controller	148.038s
ok  	github.com/novox/mesh-controller/examples/objectstore-provisioner	1.045s
ok  	github.com/novox/mesh-controller/examples/postgres-provisioner	1.044s
ok  	github.com/novox/mesh-controller/examples/redis-provisioner	1.035s
ok  	github.com/novox/mesh-controller/examples/route-proxy	1.140s
ok  	github.com/novox/mesh-controller/internal/artifacts	1.059s
ok  	github.com/novox/mesh-controller/internal/broker	2.453s
ok  	github.com/novox/mesh-controller/internal/builder	1.698s
ok  	github.com/novox/mesh-controller/internal/catalogue	3.952s
ok  	github.com/novox/mesh-controller/internal/conditions	2.142s
ok  	github.com/novox/mesh-controller/internal/envfile	1.038s
ok  	github.com/novox/mesh-controller/internal/facts	1.043s
ok  	github.com/novox/mesh-controller/internal/identity	4.009s
ok  	github.com/novox/mesh-controller/internal/inventory	66.517s
ok  	github.com/novox/mesh-controller/internal/lease	17.669s
ok  	github.com/novox/mesh-controller/internal/licences	3.665s
ok  	github.com/novox/mesh-controller/internal/licences/adapters	1.042s
ok  	github.com/novox/mesh-controller/internal/link	43.629s
ok  	github.com/novox/mesh-controller/internal/lint	1.864s
ok  	github.com/novox/mesh-controller/internal/outward	1.067s
ok  	github.com/novox/mesh-controller/internal/overlay	1.062s
ok  	github.com/novox/mesh-controller/internal/secrets	1.436s
ok  	github.com/novox/mesh-controller/internal/store	3.229s
ok  	github.com/novox/mesh-controller/internal/testbus	1.213s
ok  	github.com/novox/mesh-controller/internal/token	1.019s
**Merge check** at `f3c2ef98` - `mesh/merge-gate`: **PASS** — every machine composes with the change as it did without (4 of 4 compose) (modules: build-agent, mesh-controller, route-proxy) - `mesh/repo-check`: **PASS** — its merge-check.sh passed **Delivery plan** — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step - tier 0: mesh-controller - tier 1: build-agent - tier 2: route-proxy - ace: receives build-agent, route-proxy - g14: receives build-agent - novox: receives mesh-controller, build-agent, route-proxy - shanks: receives build-agent - build-agent keeps data (ADR 0233): what it holds is backed up before it moves - route-proxy provides route: its consumers are sent again after it - route-proxy keeps data (ADR 0233): what it holds is backed up before it moves Run by the build seat on ace as `build-1791463935004233618` (`builds --log build-1791463935004233618`). ``` --- the gate: build-agent, mesh-controller, route-proxy mesh-controller: ok, 50 tool(s); WARNING: controller stay(s) up and say(s) not how it is ready — judged by liveness alone, refused from 2026-11-18 (ADR 0240 rule 8) long-running resources without health: 1 1 manifest(s) checked. Judged against the seats this binary carries; a claim on one of the mesh's own seats is judged fully at registration, and a seat declared by a module not given here reads as unknown. Identities judged on a 6-character machine name, against the bounds of the providers given here judging 0 module(s) changed against 4 machine(s), as the snapshot of 2026-10-08T12:46:24Z says they run composing every machine as the mesh is the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued composing every machine with the change the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued merge gate: PASS — every machine composes with the change as it did without (4 of 4 compose) judged by controller development build against the facts of 2026-10-08T12:46:24Z machines: - a machine (f35): composes - holds mesh-dns-resolver (idt): composes - holds git, holds mesh-artifact-store, holds mesh-broker, holds mesh-catalog, holds mesh-delivery, holds mesh-dns-resolver, holds mesh-store, holds mesh-vault, holds npm-package-registry, the control node, the hub (ygcyr): composes - a machine (yvbpsm): composes a merge would rebuild 3 module(s) in 3 tier(s): build-agent, mesh-controller, route-proxy --- its merge-check.sh (go toolchain) ok github.com/novox/mesh-controller/cmd/mesh-builder 1.029s ok github.com/novox/mesh-controller/cmd/mesh-controller 148.038s ok github.com/novox/mesh-controller/examples/objectstore-provisioner 1.045s ok github.com/novox/mesh-controller/examples/postgres-provisioner 1.044s ok github.com/novox/mesh-controller/examples/redis-provisioner 1.035s ok github.com/novox/mesh-controller/examples/route-proxy 1.140s ok github.com/novox/mesh-controller/internal/artifacts 1.059s ok github.com/novox/mesh-controller/internal/broker 2.453s ok github.com/novox/mesh-controller/internal/builder 1.698s ok github.com/novox/mesh-controller/internal/catalogue 3.952s ok github.com/novox/mesh-controller/internal/conditions 2.142s ok github.com/novox/mesh-controller/internal/envfile 1.038s ok github.com/novox/mesh-controller/internal/facts 1.043s ok github.com/novox/mesh-controller/internal/identity 4.009s ok github.com/novox/mesh-controller/internal/inventory 66.517s ok github.com/novox/mesh-controller/internal/lease 17.669s ok github.com/novox/mesh-controller/internal/licences 3.665s ok github.com/novox/mesh-controller/internal/licences/adapters 1.042s ok github.com/novox/mesh-controller/internal/link 43.629s ok github.com/novox/mesh-controller/internal/lint 1.864s ok github.com/novox/mesh-controller/internal/outward 1.067s ok github.com/novox/mesh-controller/internal/overlay 1.062s ok github.com/novox/mesh-controller/internal/secrets 1.436s ok github.com/novox/mesh-controller/internal/store 3.229s ok github.com/novox/mesh-controller/internal/testbus 1.213s ok github.com/novox/mesh-controller/internal/token 1.019s ```
jschoubben force-pushed fix/318-follow-up from 428bacc1b0 to bd25807ca7 2026-10-08 13:08:34 +00:00 Compare
jschoubben force-pushed fix/318-follow-up from bd25807ca7 to 6a0dbe5a04 2026-10-08 13:08:43 +00:00 Compare
Author
Contributor

Merge check at 428bacc1

  • mesh/merge-gate: PASS — every machine composes with the change as it did without (4 of 4 compose) (modules: build-agent, mesh-controller, route-proxy)
  • mesh/repo-check: PASS — its merge-check.sh passed

Delivery plan — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step

  • tier 0: mesh-controller
  • tier 1: build-agent
  • tier 2: route-proxy
  • ace: receives build-agent, route-proxy
  • g14: receives build-agent
  • novox: receives mesh-controller, build-agent, route-proxy
  • shanks: receives build-agent
  • build-agent keeps data (ADR 0233): what it holds is backed up before it moves
  • route-proxy provides route: its consumers are sent again after it
  • route-proxy keeps data (ADR 0233): what it holds is backed up before it moves

Run by the build seat on ace as build-1791464759653236674 (builds --log build-1791464759653236674).

--- the gate: build-agent, mesh-controller, route-proxy
mesh-controller: ok, 50 tool(s); WARNING: controller stay(s) up and say(s) not how it is ready — judged by liveness alone, refused from 2026-11-18 (ADR 0240 rule 8)
long-running resources without health: 1
1 manifest(s) checked. Judged against the seats this binary carries; a claim on one of the mesh's own seats is judged fully at registration, and a seat declared by a module not given here reads as unknown. Identities judged on a 6-character machine name, against the bounds of the providers given here
judging 0 module(s) changed against 4 machine(s), as the snapshot of 2026-10-08T13:04:50Z says they run
composing every machine as the mesh is
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
composing every machine with the change
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
merge gate: PASS — every machine composes with the change as it did without (4 of 4 compose)
judged by controller development build against the facts of 2026-10-08T13:04:50Z

machines:
  - a machine (f35): composes
  - holds mesh-dns-resolver (idt): composes
  - holds git, holds mesh-artifact-store, holds mesh-broker, holds mesh-catalog, holds mesh-delivery, holds mesh-dns-resolver, holds mesh-store, holds mesh-vault, holds npm-package-registry, the control node, the hub (ygcyr): composes
  - a machine (yvbpsm): composes

a merge would rebuild 3 module(s) in 3 tier(s): build-agent, mesh-controller, route-proxy
--- its merge-check.sh (go toolchain)
ok  	github.com/novox/mesh-controller/cmd/mesh-builder	1.033s
ok  	github.com/novox/mesh-controller/cmd/mesh-controller	146.976s
ok  	github.com/novox/mesh-controller/examples/objectstore-provisioner	1.019s
ok  	github.com/novox/mesh-controller/examples/postgres-provisioner	1.033s
ok  	github.com/novox/mesh-controller/examples/redis-provisioner	1.025s
ok  	github.com/novox/mesh-controller/examples/route-proxy	1.124s
ok  	github.com/novox/mesh-controller/internal/artifacts	1.044s
ok  	github.com/novox/mesh-controller/internal/broker	2.442s
ok  	github.com/novox/mesh-controller/internal/builder	1.693s
ok  	github.com/novox/mesh-controller/internal/catalogue	3.940s
ok  	github.com/novox/mesh-controller/internal/conditions	2.113s
ok  	github.com/novox/mesh-controller/internal/envfile	1.025s
ok  	github.com/novox/mesh-controller/internal/facts	1.035s
ok  	github.com/novox/mesh-controller/internal/identity	4.041s
ok  	github.com/novox/mesh-controller/internal/inventory	67.319s
ok  	github.com/novox/mesh-controller/internal/lease	17.667s
ok  	github.com/novox/mesh-controller/internal/licences	3.695s
ok  	github.com/novox/mesh-controller/internal/licences/adapters	1.027s
ok  	github.com/novox/mesh-controller/internal/link	43.404s
ok  	github.com/novox/mesh-controller/internal/lint	1.855s
ok  	github.com/novox/mesh-controller/internal/outward	1.073s
ok  	github.com/novox/mesh-controller/internal/overlay	1.063s
ok  	github.com/novox/mesh-controller/internal/secrets	1.428s
ok  	github.com/novox/mesh-controller/internal/store	3.247s
ok  	github.com/novox/mesh-controller/internal/testbus	1.219s
ok  	github.com/novox/mesh-controller/internal/token	1.018s
**Merge check** at `428bacc1` - `mesh/merge-gate`: **PASS** — every machine composes with the change as it did without (4 of 4 compose) (modules: build-agent, mesh-controller, route-proxy) - `mesh/repo-check`: **PASS** — its merge-check.sh passed **Delivery plan** — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step - tier 0: mesh-controller - tier 1: build-agent - tier 2: route-proxy - ace: receives build-agent, route-proxy - g14: receives build-agent - novox: receives mesh-controller, build-agent, route-proxy - shanks: receives build-agent - build-agent keeps data (ADR 0233): what it holds is backed up before it moves - route-proxy provides route: its consumers are sent again after it - route-proxy keeps data (ADR 0233): what it holds is backed up before it moves Run by the build seat on ace as `build-1791464759653236674` (`builds --log build-1791464759653236674`). ``` --- the gate: build-agent, mesh-controller, route-proxy mesh-controller: ok, 50 tool(s); WARNING: controller stay(s) up and say(s) not how it is ready — judged by liveness alone, refused from 2026-11-18 (ADR 0240 rule 8) long-running resources without health: 1 1 manifest(s) checked. Judged against the seats this binary carries; a claim on one of the mesh's own seats is judged fully at registration, and a seat declared by a module not given here reads as unknown. Identities judged on a 6-character machine name, against the bounds of the providers given here judging 0 module(s) changed against 4 machine(s), as the snapshot of 2026-10-08T13:04:50Z says they run composing every machine as the mesh is the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued composing every machine with the change the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued merge gate: PASS — every machine composes with the change as it did without (4 of 4 compose) judged by controller development build against the facts of 2026-10-08T13:04:50Z machines: - a machine (f35): composes - holds mesh-dns-resolver (idt): composes - holds git, holds mesh-artifact-store, holds mesh-broker, holds mesh-catalog, holds mesh-delivery, holds mesh-dns-resolver, holds mesh-store, holds mesh-vault, holds npm-package-registry, the control node, the hub (ygcyr): composes - a machine (yvbpsm): composes a merge would rebuild 3 module(s) in 3 tier(s): build-agent, mesh-controller, route-proxy --- its merge-check.sh (go toolchain) ok github.com/novox/mesh-controller/cmd/mesh-builder 1.033s ok github.com/novox/mesh-controller/cmd/mesh-controller 146.976s ok github.com/novox/mesh-controller/examples/objectstore-provisioner 1.019s ok github.com/novox/mesh-controller/examples/postgres-provisioner 1.033s ok github.com/novox/mesh-controller/examples/redis-provisioner 1.025s ok github.com/novox/mesh-controller/examples/route-proxy 1.124s ok github.com/novox/mesh-controller/internal/artifacts 1.044s ok github.com/novox/mesh-controller/internal/broker 2.442s ok github.com/novox/mesh-controller/internal/builder 1.693s ok github.com/novox/mesh-controller/internal/catalogue 3.940s ok github.com/novox/mesh-controller/internal/conditions 2.113s ok github.com/novox/mesh-controller/internal/envfile 1.025s ok github.com/novox/mesh-controller/internal/facts 1.035s ok github.com/novox/mesh-controller/internal/identity 4.041s ok github.com/novox/mesh-controller/internal/inventory 67.319s ok github.com/novox/mesh-controller/internal/lease 17.667s ok github.com/novox/mesh-controller/internal/licences 3.695s ok github.com/novox/mesh-controller/internal/licences/adapters 1.027s ok github.com/novox/mesh-controller/internal/link 43.404s ok github.com/novox/mesh-controller/internal/lint 1.855s ok github.com/novox/mesh-controller/internal/outward 1.073s ok github.com/novox/mesh-controller/internal/overlay 1.063s ok github.com/novox/mesh-controller/internal/secrets 1.428s ok github.com/novox/mesh-controller/internal/store 3.247s ok github.com/novox/mesh-controller/internal/testbus 1.219s ok github.com/novox/mesh-controller/internal/token 1.018s ```
Author
Contributor

Merge check at 6a0dbe5a

  • mesh/merge-gate: PASS — every machine composes with the change as it did without (4 of 4 compose) (modules: build-agent, mesh-controller, route-proxy)
  • mesh/repo-check: PASS — its merge-check.sh passed

Delivery plan — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step

  • tier 0: mesh-controller
  • tier 1: build-agent
  • tier 2: route-proxy
  • ace: receives build-agent, route-proxy
  • g14: receives build-agent
  • novox: receives mesh-controller, build-agent, route-proxy
  • shanks: receives build-agent
  • build-agent keeps data (ADR 0233): what it holds is backed up before it moves
  • route-proxy provides route: its consumers are sent again after it
  • route-proxy keeps data (ADR 0233): what it holds is backed up before it moves

Run by the build seat on shanks as build-1791464941443308564 (builds --log build-1791464941443308564).

--- the gate: build-agent, mesh-controller, route-proxy
mesh-controller: ok, 50 tool(s); WARNING: controller stay(s) up and say(s) not how it is ready — judged by liveness alone, refused from 2026-11-18 (ADR 0240 rule 8)
long-running resources without health: 1
1 manifest(s) checked. Judged against the seats this binary carries; a claim on one of the mesh's own seats is judged fully at registration, and a seat declared by a module not given here reads as unknown. Identities judged on a 6-character machine name, against the bounds of the providers given here
judging 0 module(s) changed against 4 machine(s), as the snapshot of 2026-10-08T13:04:50Z says they run
composing every machine as the mesh is
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
composing every machine with the change
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
merge gate: PASS — every machine composes with the change as it did without (4 of 4 compose)
judged by controller development build against the facts of 2026-10-08T13:04:50Z

machines:
  - a machine (f35): composes
  - holds mesh-dns-resolver (idt): composes
  - holds git, holds mesh-artifact-store, holds mesh-broker, holds mesh-catalog, holds mesh-delivery, holds mesh-dns-resolver, holds mesh-store, holds mesh-vault, holds npm-package-registry, the control node, the hub (ygcyr): composes
  - a machine (yvbpsm): composes

a merge would rebuild 3 module(s) in 3 tier(s): build-agent, mesh-controller, route-proxy
--- its merge-check.sh (go toolchain)
ok  	github.com/novox/mesh-controller/cmd/mesh-builder	1.040s
ok  	github.com/novox/mesh-controller/cmd/mesh-controller	167.306s
ok  	github.com/novox/mesh-controller/examples/objectstore-provisioner	1.029s
ok  	github.com/novox/mesh-controller/examples/postgres-provisioner	1.037s
ok  	github.com/novox/mesh-controller/examples/redis-provisioner	1.029s
ok  	github.com/novox/mesh-controller/examples/route-proxy	1.206s
ok  	github.com/novox/mesh-controller/internal/artifacts	1.074s
ok  	github.com/novox/mesh-controller/internal/broker	2.695s
ok  	github.com/novox/mesh-controller/internal/builder	1.837s
ok  	github.com/novox/mesh-controller/internal/catalogue	4.721s
ok  	github.com/novox/mesh-controller/internal/conditions	2.261s
ok  	github.com/novox/mesh-controller/internal/envfile	1.056s
ok  	github.com/novox/mesh-controller/internal/facts	1.064s
ok  	github.com/novox/mesh-controller/internal/identity	4.728s
ok  	github.com/novox/mesh-controller/internal/inventory	79.198s
ok  	github.com/novox/mesh-controller/internal/lease	17.713s
ok  	github.com/novox/mesh-controller/internal/licences	4.307s
ok  	github.com/novox/mesh-controller/internal/licences/adapters	1.061s
ok  	github.com/novox/mesh-controller/internal/link	46.051s
ok  	github.com/novox/mesh-controller/internal/lint	2.093s
ok  	github.com/novox/mesh-controller/internal/outward	1.091s
ok  	github.com/novox/mesh-controller/internal/overlay	1.079s
ok  	github.com/novox/mesh-controller/internal/secrets	1.553s
ok  	github.com/novox/mesh-controller/internal/store	3.465s
ok  	github.com/novox/mesh-controller/internal/testbus	1.253s
ok  	github.com/novox/mesh-controller/internal/token	1.014s
**Merge check** at `6a0dbe5a` - `mesh/merge-gate`: **PASS** — every machine composes with the change as it did without (4 of 4 compose) (modules: build-agent, mesh-controller, route-proxy) - `mesh/repo-check`: **PASS** — its merge-check.sh passed **Delivery plan** — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step - tier 0: mesh-controller - tier 1: build-agent - tier 2: route-proxy - ace: receives build-agent, route-proxy - g14: receives build-agent - novox: receives mesh-controller, build-agent, route-proxy - shanks: receives build-agent - build-agent keeps data (ADR 0233): what it holds is backed up before it moves - route-proxy provides route: its consumers are sent again after it - route-proxy keeps data (ADR 0233): what it holds is backed up before it moves Run by the build seat on shanks as `build-1791464941443308564` (`builds --log build-1791464941443308564`). ``` --- the gate: build-agent, mesh-controller, route-proxy mesh-controller: ok, 50 tool(s); WARNING: controller stay(s) up and say(s) not how it is ready — judged by liveness alone, refused from 2026-11-18 (ADR 0240 rule 8) long-running resources without health: 1 1 manifest(s) checked. Judged against the seats this binary carries; a claim on one of the mesh's own seats is judged fully at registration, and a seat declared by a module not given here reads as unknown. Identities judged on a 6-character machine name, against the bounds of the providers given here judging 0 module(s) changed against 4 machine(s), as the snapshot of 2026-10-08T13:04:50Z says they run composing every machine as the mesh is the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued composing every machine with the change the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued merge gate: PASS — every machine composes with the change as it did without (4 of 4 compose) judged by controller development build against the facts of 2026-10-08T13:04:50Z machines: - a machine (f35): composes - holds mesh-dns-resolver (idt): composes - holds git, holds mesh-artifact-store, holds mesh-broker, holds mesh-catalog, holds mesh-delivery, holds mesh-dns-resolver, holds mesh-store, holds mesh-vault, holds npm-package-registry, the control node, the hub (ygcyr): composes - a machine (yvbpsm): composes a merge would rebuild 3 module(s) in 3 tier(s): build-agent, mesh-controller, route-proxy --- its merge-check.sh (go toolchain) ok github.com/novox/mesh-controller/cmd/mesh-builder 1.040s ok github.com/novox/mesh-controller/cmd/mesh-controller 167.306s ok github.com/novox/mesh-controller/examples/objectstore-provisioner 1.029s ok github.com/novox/mesh-controller/examples/postgres-provisioner 1.037s ok github.com/novox/mesh-controller/examples/redis-provisioner 1.029s ok github.com/novox/mesh-controller/examples/route-proxy 1.206s ok github.com/novox/mesh-controller/internal/artifacts 1.074s ok github.com/novox/mesh-controller/internal/broker 2.695s ok github.com/novox/mesh-controller/internal/builder 1.837s ok github.com/novox/mesh-controller/internal/catalogue 4.721s ok github.com/novox/mesh-controller/internal/conditions 2.261s ok github.com/novox/mesh-controller/internal/envfile 1.056s ok github.com/novox/mesh-controller/internal/facts 1.064s ok github.com/novox/mesh-controller/internal/identity 4.728s ok github.com/novox/mesh-controller/internal/inventory 79.198s ok github.com/novox/mesh-controller/internal/lease 17.713s ok github.com/novox/mesh-controller/internal/licences 4.307s ok github.com/novox/mesh-controller/internal/licences/adapters 1.061s ok github.com/novox/mesh-controller/internal/link 46.051s ok github.com/novox/mesh-controller/internal/lint 2.093s ok github.com/novox/mesh-controller/internal/outward 1.091s ok github.com/novox/mesh-controller/internal/overlay 1.079s ok github.com/novox/mesh-controller/internal/secrets 1.553s ok github.com/novox/mesh-controller/internal/store 3.465s ok github.com/novox/mesh-controller/internal/testbus 1.253s ok github.com/novox/mesh-controller/internal/token 1.014s ```
jschoubben added 3 commits 2026-10-08 13:28:09 +00:00
Put a broken module back at once, and excuse a wait only for a move that added an account group (hq issue 318 review)
mesh/merge-gate pass: builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step; every machine composes with the change as it…
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery superseded: a newer delivery to the same trunk took over its walk
a63939160e
jschoubben force-pushed fix/318-follow-up from 6a0dbe5a04 to a63939160e 2026-10-08 13:28:09 +00:00 Compare
Author
Contributor

Merge check at a6393916

  • mesh/merge-gate: PASS — every machine composes with the change as it did without (4 of 4 compose) (modules: build-agent, mesh-controller, route-proxy)
  • mesh/repo-check: PASS — its merge-check.sh passed

Delivery plan — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step

  • tier 0: mesh-controller
  • tier 1: build-agent
  • tier 2: route-proxy
  • ace: receives build-agent, route-proxy
  • g14: receives build-agent
  • novox: receives mesh-controller, build-agent, route-proxy
  • shanks: receives build-agent
  • build-agent keeps data (ADR 0233): what it holds is backed up before it moves
  • route-proxy provides route: its consumers are sent again after it
  • route-proxy keeps data (ADR 0233): what it holds is backed up before it moves

Run by the build seat on ace as build-1791466094951767631 (builds --log build-1791466094951767631).

--- the gate: build-agent, mesh-controller, route-proxy
mesh-controller: ok, 50 tool(s); WARNING: controller stay(s) up and say(s) not how it is ready — judged by liveness alone, refused from 2026-11-18 (ADR 0240 rule 8)
long-running resources without health: 1
1 manifest(s) checked. Judged against the seats this binary carries; a claim on one of the mesh's own seats is judged fully at registration, and a seat declared by a module not given here reads as unknown. Identities judged on a 6-character machine name, against the bounds of the providers given here
judging 0 module(s) changed against 4 machine(s), as the snapshot of 2026-10-08T13:23:02Z says they run
composing every machine as the mesh is
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
composing every machine with the change
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued
merge gate: PASS — every machine composes with the change as it did without (4 of 4 compose)
judged by controller development build against the facts of 2026-10-08T13:23:02Z

machines:
  - a machine (f35): composes
  - holds mesh-dns-resolver (idt): composes
  - holds git, holds mesh-artifact-store, holds mesh-broker, holds mesh-catalog, holds mesh-delivery, holds mesh-dns-resolver, holds mesh-store, holds mesh-vault, holds npm-package-registry, the control node, the hub (ygcyr): composes
  - a machine (yvbpsm): composes

a merge would rebuild 3 module(s) in 3 tier(s): build-agent, mesh-controller, route-proxy
--- its merge-check.sh (go toolchain)
ok  	github.com/novox/mesh-controller/cmd/mesh-builder	1.032s
ok  	github.com/novox/mesh-controller/cmd/mesh-controller	147.042s
ok  	github.com/novox/mesh-controller/examples/objectstore-provisioner	1.034s
ok  	github.com/novox/mesh-controller/examples/postgres-provisioner	1.043s
ok  	github.com/novox/mesh-controller/examples/redis-provisioner	1.033s
ok  	github.com/novox/mesh-controller/examples/route-proxy	1.139s
ok  	github.com/novox/mesh-controller/internal/artifacts	1.061s
ok  	github.com/novox/mesh-controller/internal/broker	2.462s
ok  	github.com/novox/mesh-controller/internal/builder	1.711s
ok  	github.com/novox/mesh-controller/internal/catalogue	3.961s
ok  	github.com/novox/mesh-controller/internal/conditions	2.164s
ok  	github.com/novox/mesh-controller/internal/envfile	1.040s
ok  	github.com/novox/mesh-controller/internal/facts	1.046s
ok  	github.com/novox/mesh-controller/internal/identity	4.079s
ok  	github.com/novox/mesh-controller/internal/inventory	66.933s
ok  	github.com/novox/mesh-controller/internal/lease	17.680s
ok  	github.com/novox/mesh-controller/internal/licences	3.729s
ok  	github.com/novox/mesh-controller/internal/licences/adapters	1.034s
ok  	github.com/novox/mesh-controller/internal/link	43.752s
ok  	github.com/novox/mesh-controller/internal/lint	1.866s
ok  	github.com/novox/mesh-controller/internal/outward	1.063s
ok  	github.com/novox/mesh-controller/internal/overlay	1.048s
ok  	github.com/novox/mesh-controller/internal/secrets	1.446s
ok  	github.com/novox/mesh-controller/internal/store	3.298s
ok  	github.com/novox/mesh-controller/internal/testbus	1.208s
ok  	github.com/novox/mesh-controller/internal/token	1.016s
**Merge check** at `a6393916` - `mesh/merge-gate`: **PASS** — every machine composes with the change as it did without (4 of 4 compose) (modules: build-agent, mesh-controller, route-proxy) - `mesh/repo-check`: **PASS** — its merge-check.sh passed **Delivery plan** — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step - tier 0: mesh-controller - tier 1: build-agent - tier 2: route-proxy - ace: receives build-agent, route-proxy - g14: receives build-agent - novox: receives mesh-controller, build-agent, route-proxy - shanks: receives build-agent - build-agent keeps data (ADR 0233): what it holds is backed up before it moves - route-proxy provides route: its consumers are sent again after it - route-proxy keeps data (ADR 0233): what it holds is backed up before it moves Run by the build seat on ace as `build-1791466094951767631` (`builds --log build-1791466094951767631`). ``` --- the gate: build-agent, mesh-controller, route-proxy mesh-controller: ok, 50 tool(s); WARNING: controller stay(s) up and say(s) not how it is ready — judged by liveness alone, refused from 2026-11-18 (ADR 0240 rule 8) long-running resources without health: 1 1 manifest(s) checked. Judged against the seats this binary carries; a claim on one of the mesh's own seats is judged fully at registration, and a seat declared by a module not given here reads as unknown. Identities judged on a 6-character machine name, against the bounds of the providers given here judging 0 module(s) changed against 4 machine(s), as the snapshot of 2026-10-08T13:23:02Z says they run composing every machine as the mesh is the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued composing every machine with the change the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued the bus's user list leaves out 5 user(s) the mesh has minted no credential for: controller, node.f35, node.idt, node.ygcyr, node.yvbpsm. Each is a user that cannot connect until one is issued merge gate: PASS — every machine composes with the change as it did without (4 of 4 compose) judged by controller development build against the facts of 2026-10-08T13:23:02Z machines: - a machine (f35): composes - holds mesh-dns-resolver (idt): composes - holds git, holds mesh-artifact-store, holds mesh-broker, holds mesh-catalog, holds mesh-delivery, holds mesh-dns-resolver, holds mesh-store, holds mesh-vault, holds npm-package-registry, the control node, the hub (ygcyr): composes - a machine (yvbpsm): composes a merge would rebuild 3 module(s) in 3 tier(s): build-agent, mesh-controller, route-proxy --- its merge-check.sh (go toolchain) ok github.com/novox/mesh-controller/cmd/mesh-builder 1.032s ok github.com/novox/mesh-controller/cmd/mesh-controller 147.042s ok github.com/novox/mesh-controller/examples/objectstore-provisioner 1.034s ok github.com/novox/mesh-controller/examples/postgres-provisioner 1.043s ok github.com/novox/mesh-controller/examples/redis-provisioner 1.033s ok github.com/novox/mesh-controller/examples/route-proxy 1.139s ok github.com/novox/mesh-controller/internal/artifacts 1.061s ok github.com/novox/mesh-controller/internal/broker 2.462s ok github.com/novox/mesh-controller/internal/builder 1.711s ok github.com/novox/mesh-controller/internal/catalogue 3.961s ok github.com/novox/mesh-controller/internal/conditions 2.164s ok github.com/novox/mesh-controller/internal/envfile 1.040s ok github.com/novox/mesh-controller/internal/facts 1.046s ok github.com/novox/mesh-controller/internal/identity 4.079s ok github.com/novox/mesh-controller/internal/inventory 66.933s ok github.com/novox/mesh-controller/internal/lease 17.680s ok github.com/novox/mesh-controller/internal/licences 3.729s ok github.com/novox/mesh-controller/internal/licences/adapters 1.034s ok github.com/novox/mesh-controller/internal/link 43.752s ok github.com/novox/mesh-controller/internal/lint 1.866s ok github.com/novox/mesh-controller/internal/outward 1.063s ok github.com/novox/mesh-controller/internal/overlay 1.048s ok github.com/novox/mesh-controller/internal/secrets 1.446s ok github.com/novox/mesh-controller/internal/store 3.298s ok github.com/novox/mesh-controller/internal/testbus 1.208s ok github.com/novox/mesh-controller/internal/token 1.016s ```
mesh-admin merged commit 58e143bbc0 into main 2026-10-08 13:45:02 +00:00
mesh-admin deleted branch fix/318-follow-up 2026-10-08 13:45: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-controller#146