Pass a wait for a person's new login, and keep the pass of a module healthy beside a failure (hq ADR 0254, issue 318) #142

Merged
mesh-admin merged 2 commits from fix/318-a-wait-for-a-person-is-not-a-failure into main 2026-10-08 12:41:09 +00:00
Contributor

hq issue 318: one module's wait for a new login held every other module's walk, failed the send at the gate's bound and put the module back (which also took its account group back).

What changes (hq ADR 0254):

  1. A new gate reading, healthPerson (waits for a person). A module's account resource unhealthy with relogin needed, and every other unhealthy resource of that module running in the own service manager of that same account (account on the resource, said by the node-engine), reads as a wait. Anything else unhealthy beside it is judged as before (personWait, narrow on purpose). The reading counts as a pass; the verdict carries it ("…; and it waits for a person: relogin needed on : …"). Nothing is put back.
  2. The condition is module.<module>.<machine>.relogin-needed instead of unhealthy: a warning, resolver operator, never escalated by age, one sentence starting "relogin needed on ". It clears on the first statement without the wait; a unit still failing after the login becomes the module's own unhealthy. The gate does not read it as a condition raised since the send.
  3. Each module of a send counts its own passes (PlanGate.Healthy). The send keeps one verdict, but when it fails, a module healthy on its own for the passes asked keeps a pass (PlanGate.Passing, recorded "on its own"), is not put back, and so no longer stays a move every other walk waits for. ungatedIn is unchanged: ADR 0236 §4a stands.

Tests: cmd/mesh-controller/person_wait_test.go (narrowness, gate reading, condition raise/clear, a module keeping its pass when its send fails) and cmd/mesh-controller/replay318_test.go (the replay, R318 in mesh-lab: fails on 950562a, passes here). merge-check.sh passes locally against a throwaway store.

Merge order of the delivery group: mesh-host first, then this, then mesh-lab, then hq.

Note: if hq's plain-words record (issue 320, branch feat/plain-notifications) lands first, the new kind relogin-needed needs its words; whichever lands second adds them.

hq issue 318: one module's wait for a new login held every other module's walk, failed the send at the gate's bound and put the module back (which also took its account group back). What changes (hq ADR 0254): 1. **A new gate reading, `healthPerson` (waits for a person).** A module's `account` resource unhealthy with *relogin needed*, and every other unhealthy resource of that module running in the own service manager of that same account (`account` on the resource, said by the node-engine), reads as a wait. Anything else unhealthy beside it is judged as before (`personWait`, narrow on purpose). The reading counts as a pass; the verdict carries it ("…; and it waits for a person: relogin needed on <machine>: …"). Nothing is put back. 2. **The condition** is `module.<module>.<machine>.relogin-needed` instead of `unhealthy`: a warning, resolver operator, never escalated by age, one sentence starting "relogin needed on <machine>". It clears on the first statement without the wait; a unit still failing after the login becomes the module's own `unhealthy`. The gate does not read it as a condition raised since the send. 3. **Each module of a send counts its own passes** (`PlanGate.Healthy`). The send keeps one verdict, but when it fails, a module healthy on its own for the passes asked keeps a pass (`PlanGate.Passing`, recorded "on its own"), is not put back, and so no longer stays a move every other walk waits for. `ungatedIn` is unchanged: ADR 0236 §4a stands. Tests: `cmd/mesh-controller/person_wait_test.go` (narrowness, gate reading, condition raise/clear, a module keeping its pass when its send fails) and `cmd/mesh-controller/replay318_test.go` (the replay, R318 in mesh-lab: fails on 950562a, passes here). `merge-check.sh` passes locally against a throwaway store. Merge order of the delivery group: mesh-host first, then this, then mesh-lab, then hq. Note: if hq's plain-words record (issue 320, branch feat/plain-notifications) lands first, the new kind `relogin-needed` needs its words; whichever lands second adds them.
Author
Contributor

Delivery novox/mesh-controller@51d7bbfdc88c — delivered since 2026-10-08T13:01:00Z

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

Group fix/318-a-wait-for-a-person-is-not-a-failure, in order: novox/hq@01e48196f7 → novox/mesh-controller@51d7bbfdc8 → novox/mesh-host@9d8398206e → novox/mesh-lab@1455d9560e

Machines

  • mesh-controller on novox: passed — healthy 3 times over 3m57s
  • mesh-controller on the rest running it: sent
  • build-agent on ace: passed — healthy 3 times over 3m19s
  • build-agent on the rest running it: sent
  • route-proxy on ace: passed — healthy 3 times over 3m36s
  • route-proxy on the rest running it: sent

Transitions

  • 2026-10-08 12:25 (new) → proposed (announced): novox/mesh-controller#142's head announced
  • 2026-10-08 12:35 proposed → checked (checked): the verdict names this commit
  • 2026-10-08 12:35 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
  • 2026-10-08 12:41 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 12:41 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:01 delivering → delivered (done): its walk is done: 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-controller@51d7bbfdc88c` — **delivered** since 2026-10-08T13:01:00Z **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 **Group** `fix/318-a-wait-for-a-person-is-not-a-failure`, in order: novox/hq@01e48196f747 → novox/mesh-controller@51d7bbfdc88c → novox/mesh-host@9d8398206e5b → novox/mesh-lab@1455d9560e1c - novox/mesh-controller@51d7bbfdc88c before novox/mesh-host@9d8398206e5b: built by, over engine before controller - composed together: pass — every machine composes with the change as it did without (4 of 4 compose) **Machines** - mesh-controller on novox: passed — healthy 3 times over 3m57s - mesh-controller on the rest running it: sent - build-agent on ace: passed — healthy 3 times over 3m19s - build-agent on the rest running it: sent - route-proxy on ace: passed — healthy 3 times over 3m36s - route-proxy on the rest running it: sent **Transitions** - 2026-10-08 12:25 (new) → proposed (announced): novox/mesh-controller#142's head announced - 2026-10-08 12:35 proposed → checked (checked): the verdict names this commit - 2026-10-08 12:35 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail - 2026-10-08 12:41 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 12:41 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:01 delivering → delivered (done): its walk is done: 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`.
Author
Contributor

Merge check at 9b86fa9a

  • 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: FAIL — its merge-check.sh failed: --- FAIL: TestTheForgesOwnAddressFollowsThePortTheNodeGaveIt (0.00s)

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 novox as build-1791459800912200002 (builds --log build-1791459800912200002).

--- 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-08T11:31:31Z 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-08T11:31:31Z

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.037s
ok  	github.com/novox/mesh-controller/cmd/mesh-controller	184.905s
ok  	github.com/novox/mesh-controller/examples/objectstore-provisioner	1.024s
ok  	github.com/novox/mesh-controller/examples/postgres-provisioner	1.028s
ok  	github.com/novox/mesh-controller/examples/redis-provisioner	1.024s
ok  	github.com/novox/mesh-controller/examples/route-proxy	1.129s
ok  	github.com/novox/mesh-controller/internal/artifacts	1.053s
ok  	github.com/novox/mesh-controller/internal/broker	2.806s
ok  	github.com/novox/mesh-controller/internal/builder	2.633s
--- FAIL: TestTheForgesOwnAddressFollowsThePortTheNodeGaveIt (0.00s)
    foundation_manifests_test.go:186: the forge's manifest does not resolve against its own build: gitea says it builds npm-registry and the build did not produce it — the build did not do what the manifest asked, which is a different fault from a resource asking for the wrong thing
--- FAIL: TestTheForgesSshPortIsTheMeshsFixedConventionByDefault (0.01s)
    foundation_manifests_test.go:286: the forge's manifest does not resolve against its own build: gitea says it builds npm-registry and the build did not produce it — the build did not do what the manifest asked, which is a different fault from a resource asking for the wrong thing
--- FAIL: TestANodeMayGiveTheForgesSshPortADifferentNumber (0.01s)
    foundation_manifests_test.go:306: the forge's manifest does not resolve against its own build: gitea says it builds npm-registry and the build did not produce it — the build did not do what the manifest asked, which is a different fault from a resource asking for the wrong thing
FAIL
FAIL	github.com/novox/mesh-controller/internal/catalogue	3.959s
ok  	github.com/novox/mesh-controller/internal/conditions	2.032s
ok  	github.com/novox/mesh-controller/internal/envfile	1.034s
ok  	github.com/novox/mesh-controller/internal/facts	1.032s
ok  	github.com/novox/mesh-controller/internal/identity	5.134s
ok  	github.com/novox/mesh-controller/internal/inventory	88.742s
ok  	github.com/novox/mesh-controller/internal/lease	17.684s
ok  	github.com/novox/mesh-controller/internal/licences	4.546s
ok  	github.com/novox/mesh-controller/internal/licences/adapters	1.010s
ok  	github.com/novox/mesh-controller/internal/link	47.590s
ok  	github.com/novox/mesh-controller/internal/lint	2.029s
ok  	github.com/novox/mesh-controller/internal/outward	1.047s
ok  	github.com/novox/mesh-controller/internal/overlay	1.026s
ok  	github.com/novox/mesh-controller/internal/secrets	1.497s
ok  	github.com/novox/mesh-controller/internal/store	3.390s
ok  	github.com/novox/mesh-controller/internal/testbus	1.181s
ok  	github.com/novox/mesh-controller/internal/token	1.015s
FAIL
**Merge check** at `9b86fa9a` - `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`: **FAIL** — its merge-check.sh failed: --- FAIL: TestTheForgesOwnAddressFollowsThePortTheNodeGaveIt (0.00s) **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 novox as `build-1791459800912200002` (`builds --log build-1791459800912200002`). ``` --- 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-08T11:31:31Z 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-08T11:31:31Z 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.037s ok github.com/novox/mesh-controller/cmd/mesh-controller 184.905s ok github.com/novox/mesh-controller/examples/objectstore-provisioner 1.024s ok github.com/novox/mesh-controller/examples/postgres-provisioner 1.028s ok github.com/novox/mesh-controller/examples/redis-provisioner 1.024s ok github.com/novox/mesh-controller/examples/route-proxy 1.129s ok github.com/novox/mesh-controller/internal/artifacts 1.053s ok github.com/novox/mesh-controller/internal/broker 2.806s ok github.com/novox/mesh-controller/internal/builder 2.633s --- FAIL: TestTheForgesOwnAddressFollowsThePortTheNodeGaveIt (0.00s) foundation_manifests_test.go:186: the forge's manifest does not resolve against its own build: gitea says it builds npm-registry and the build did not produce it — the build did not do what the manifest asked, which is a different fault from a resource asking for the wrong thing --- FAIL: TestTheForgesSshPortIsTheMeshsFixedConventionByDefault (0.01s) foundation_manifests_test.go:286: the forge's manifest does not resolve against its own build: gitea says it builds npm-registry and the build did not produce it — the build did not do what the manifest asked, which is a different fault from a resource asking for the wrong thing --- FAIL: TestANodeMayGiveTheForgesSshPortADifferentNumber (0.01s) foundation_manifests_test.go:306: the forge's manifest does not resolve against its own build: gitea says it builds npm-registry and the build did not produce it — the build did not do what the manifest asked, which is a different fault from a resource asking for the wrong thing FAIL FAIL github.com/novox/mesh-controller/internal/catalogue 3.959s ok github.com/novox/mesh-controller/internal/conditions 2.032s ok github.com/novox/mesh-controller/internal/envfile 1.034s ok github.com/novox/mesh-controller/internal/facts 1.032s ok github.com/novox/mesh-controller/internal/identity 5.134s ok github.com/novox/mesh-controller/internal/inventory 88.742s ok github.com/novox/mesh-controller/internal/lease 17.684s ok github.com/novox/mesh-controller/internal/licences 4.546s ok github.com/novox/mesh-controller/internal/licences/adapters 1.010s ok github.com/novox/mesh-controller/internal/link 47.590s ok github.com/novox/mesh-controller/internal/lint 2.029s ok github.com/novox/mesh-controller/internal/outward 1.047s ok github.com/novox/mesh-controller/internal/overlay 1.026s ok github.com/novox/mesh-controller/internal/secrets 1.497s ok github.com/novox/mesh-controller/internal/store 3.390s ok github.com/novox/mesh-controller/internal/testbus 1.181s ok github.com/novox/mesh-controller/internal/token 1.015s FAIL ```
Author
Contributor

Merge check at 0012ea56

  • 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-1791460349983046743 (builds --log build-1791460349983046743).

--- 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-08T11:31:31Z 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-08T11:31:31Z

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	162.200s
ok  	github.com/novox/mesh-controller/examples/objectstore-provisioner	1.055s
ok  	github.com/novox/mesh-controller/examples/postgres-provisioner	1.015s
ok  	github.com/novox/mesh-controller/examples/redis-provisioner	1.008s
ok  	github.com/novox/mesh-controller/examples/route-proxy	1.209s
ok  	github.com/novox/mesh-controller/internal/artifacts	1.083s
ok  	github.com/novox/mesh-controller/internal/broker	2.685s
ok  	github.com/novox/mesh-controller/internal/builder	1.806s
ok  	github.com/novox/mesh-controller/internal/catalogue	4.764s
ok  	github.com/novox/mesh-controller/internal/conditions	2.033s
ok  	github.com/novox/mesh-controller/internal/envfile	1.061s
ok  	github.com/novox/mesh-controller/internal/facts	1.060s
ok  	github.com/novox/mesh-controller/internal/identity	4.722s
ok  	github.com/novox/mesh-controller/internal/inventory	79.456s
ok  	github.com/novox/mesh-controller/internal/lease	17.710s
ok  	github.com/novox/mesh-controller/internal/licences	4.287s
ok  	github.com/novox/mesh-controller/internal/licences/adapters	1.053s
ok  	github.com/novox/mesh-controller/internal/link	46.047s
ok  	github.com/novox/mesh-controller/internal/lint	2.051s
ok  	github.com/novox/mesh-controller/internal/outward	1.088s
ok  	github.com/novox/mesh-controller/internal/overlay	1.073s
ok  	github.com/novox/mesh-controller/internal/secrets	1.531s
ok  	github.com/novox/mesh-controller/internal/store	3.474s
ok  	github.com/novox/mesh-controller/internal/testbus	1.246s
ok  	github.com/novox/mesh-controller/internal/token	1.014s
**Merge check** at `0012ea56` - `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-1791460349983046743` (`builds --log build-1791460349983046743`). ``` --- 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-08T11:31:31Z 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-08T11:31:31Z 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 162.200s ok github.com/novox/mesh-controller/examples/objectstore-provisioner 1.055s ok github.com/novox/mesh-controller/examples/postgres-provisioner 1.015s ok github.com/novox/mesh-controller/examples/redis-provisioner 1.008s ok github.com/novox/mesh-controller/examples/route-proxy 1.209s ok github.com/novox/mesh-controller/internal/artifacts 1.083s ok github.com/novox/mesh-controller/internal/broker 2.685s ok github.com/novox/mesh-controller/internal/builder 1.806s ok github.com/novox/mesh-controller/internal/catalogue 4.764s ok github.com/novox/mesh-controller/internal/conditions 2.033s ok github.com/novox/mesh-controller/internal/envfile 1.061s ok github.com/novox/mesh-controller/internal/facts 1.060s ok github.com/novox/mesh-controller/internal/identity 4.722s ok github.com/novox/mesh-controller/internal/inventory 79.456s ok github.com/novox/mesh-controller/internal/lease 17.710s ok github.com/novox/mesh-controller/internal/licences 4.287s ok github.com/novox/mesh-controller/internal/licences/adapters 1.053s ok github.com/novox/mesh-controller/internal/link 46.047s ok github.com/novox/mesh-controller/internal/lint 2.051s ok github.com/novox/mesh-controller/internal/outward 1.088s ok github.com/novox/mesh-controller/internal/overlay 1.073s ok github.com/novox/mesh-controller/internal/secrets 1.531s ok github.com/novox/mesh-controller/internal/store 3.474s ok github.com/novox/mesh-controller/internal/testbus 1.246s ok github.com/novox/mesh-controller/internal/token 1.014s ```
jschoubben added 2 commits 2026-10-08 12:25:23 +00:00
Give relogin-needed its plain words: it needs the operator and offers no button, since only their new login can end it (hq ADR 0253, ADR 0254)
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 delivered
mesh/delivery-group group fix/318-a-wait-for-a-person-is-not-a-failure merged: every member is merged
51d7bbfdc8
jschoubben force-pushed fix/318-a-wait-for-a-person-is-not-a-failure from 0012ea562e to 51d7bbfdc8 2026-10-08 12:25:23 +00:00 Compare
Author
Contributor

Merge check at 51d7bbfd

  • 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-1791462339025090184 (builds --log build-1791462339025090184).

--- 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:22:31Z 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:22:31Z

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.030s
ok  	github.com/novox/mesh-controller/cmd/mesh-controller	143.814s
ok  	github.com/novox/mesh-controller/examples/objectstore-provisioner	1.014s
ok  	github.com/novox/mesh-controller/examples/postgres-provisioner	1.017s
ok  	github.com/novox/mesh-controller/examples/redis-provisioner	1.012s
ok  	github.com/novox/mesh-controller/examples/route-proxy	1.117s
ok  	github.com/novox/mesh-controller/internal/artifacts	1.030s
ok  	github.com/novox/mesh-controller/internal/broker	2.425s
ok  	github.com/novox/mesh-controller/internal/builder	1.708s
ok  	github.com/novox/mesh-controller/internal/catalogue	3.981s
ok  	github.com/novox/mesh-controller/internal/conditions	2.134s
ok  	github.com/novox/mesh-controller/internal/envfile	1.042s
ok  	github.com/novox/mesh-controller/internal/facts	1.071s
ok  	github.com/novox/mesh-controller/internal/identity	4.024s
ok  	github.com/novox/mesh-controller/internal/inventory	66.982s
ok  	github.com/novox/mesh-controller/internal/lease	17.704s
ok  	github.com/novox/mesh-controller/internal/licences	3.699s
ok  	github.com/novox/mesh-controller/internal/licences/adapters	1.041s
ok  	github.com/novox/mesh-controller/internal/link	43.605s
ok  	github.com/novox/mesh-controller/internal/lint	1.864s
ok  	github.com/novox/mesh-controller/internal/outward	1.069s
ok  	github.com/novox/mesh-controller/internal/overlay	1.060s
ok  	github.com/novox/mesh-controller/internal/secrets	1.440s
ok  	github.com/novox/mesh-controller/internal/store	3.299s
ok  	github.com/novox/mesh-controller/internal/testbus	1.210s
ok  	github.com/novox/mesh-controller/internal/token	1.016s
**Merge check** at `51d7bbfd` - `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-1791462339025090184` (`builds --log build-1791462339025090184`). ``` --- 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:22:31Z 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:22:31Z 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.030s ok github.com/novox/mesh-controller/cmd/mesh-controller 143.814s ok github.com/novox/mesh-controller/examples/objectstore-provisioner 1.014s ok github.com/novox/mesh-controller/examples/postgres-provisioner 1.017s ok github.com/novox/mesh-controller/examples/redis-provisioner 1.012s ok github.com/novox/mesh-controller/examples/route-proxy 1.117s ok github.com/novox/mesh-controller/internal/artifacts 1.030s ok github.com/novox/mesh-controller/internal/broker 2.425s ok github.com/novox/mesh-controller/internal/builder 1.708s ok github.com/novox/mesh-controller/internal/catalogue 3.981s ok github.com/novox/mesh-controller/internal/conditions 2.134s ok github.com/novox/mesh-controller/internal/envfile 1.042s ok github.com/novox/mesh-controller/internal/facts 1.071s ok github.com/novox/mesh-controller/internal/identity 4.024s ok github.com/novox/mesh-controller/internal/inventory 66.982s ok github.com/novox/mesh-controller/internal/lease 17.704s ok github.com/novox/mesh-controller/internal/licences 3.699s ok github.com/novox/mesh-controller/internal/licences/adapters 1.041s ok github.com/novox/mesh-controller/internal/link 43.605s ok github.com/novox/mesh-controller/internal/lint 1.864s ok github.com/novox/mesh-controller/internal/outward 1.069s ok github.com/novox/mesh-controller/internal/overlay 1.060s ok github.com/novox/mesh-controller/internal/secrets 1.440s ok github.com/novox/mesh-controller/internal/store 3.299s ok github.com/novox/mesh-controller/internal/testbus 1.210s ok github.com/novox/mesh-controller/internal/token 1.016s ```
mesh-admin merged commit 28712eaea1 into main 2026-10-08 12:41:09 +00:00
mesh-admin deleted branch fix/318-a-wait-for-a-person-is-not-a-failure 2026-10-08 12:41:10 +00:00
This repo is archived. You cannot comment on pull requests.
No Reviewers
2 Participants
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-controller#142