Follow-up to #176 and #178 (second confirmation review).
commandEnvironment(caller, verb, terminal bool): the terminal is said, never read from an empty verb. Every non-terminal line names its verb and is stripped of MESH_CLI_TERMINAL whatever the serving environment holds. TestTheTerminalsMarkIsStrippedFromEveryOtherLine sets the mark in the serving environment; with the strip removed it fails (checked by hand).
Only a login session is the terminal. On the control-node the operator's account is the terminal only when the engine sent a login session (session, read from the kernel's cgroup by mesh-host follow-up feat/272-a-login-session-and-the-tagged-sdk); the tool runner and user units running as the operator are ordinary calls with the reason. TestOnlyALoginSessionIsTheTerminal; fails with the rule taken out (checked by hand). Field-name test now includes session.
#178's headline names the pull request's number: Pull request hq #243 has had no merge check for …, from the stalled line's number (mesh-catalog follow-up feat/272-the-tagged-sdk-and-the-pull-requests-number).
Order / fail-closed. Merged before the engine follow-up is live, a mesh-cli line carries no session and nothing is the terminal (ordinary calls only) until it is: fails closed. merge-check.sh (race, full suite) on main + this: see the PR's verdict.
Follow-up to #176 and #178 (second confirmation review).
- **`commandEnvironment(caller, verb, terminal bool)`**: the terminal is said, never read from an empty verb. Every non-terminal line names its verb and is stripped of `MESH_CLI_TERMINAL` whatever the serving environment holds. `TestTheTerminalsMarkIsStrippedFromEveryOtherLine` sets the mark in the serving environment; with the strip removed it fails (checked by hand).
- **Only a login session is the terminal.** On the control-node the operator's account is the terminal only when the engine sent a login session (`session`, read from the kernel's cgroup by mesh-host follow-up `feat/272-a-login-session-and-the-tagged-sdk`); the tool runner and user units running as the operator are ordinary calls with the reason. `TestOnlyALoginSessionIsTheTerminal`; fails with the rule taken out (checked by hand). Field-name test now includes `session`.
- **#178's headline names the pull request's number**: `Pull request hq #243 has had no merge check for …`, from the stalled line's `number` (mesh-catalog follow-up `feat/272-the-tagged-sdk-and-the-pull-requests-number`).
**Order / fail-closed.** Merged before the engine follow-up is live, a mesh-cli line carries no session and nothing is the terminal (ordinary calls only) until it is: fails closed. `merge-check.sh` (race, full suite) on main + this: see the PR's verdict.
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…
- commandEnvironment takes the terminal as a bool instead of reading an
empty verb as one; every non-terminal line names its verb and is stripped
of MESH_CLI_TERMINAL, and a test with the mark set in the serving
environment fails when that strip is taken out.
- On the control-node the operator's account is the terminal only from a
login session, as the node-engine reads it from the kernel's cgroup; the
tool runner and the account's user units run as the operator too, and are
ordinary calls. The request carries `session` (field-name tests on both
sides).
- A pull request the forge never announced is named with its number in
the condition's headline (hq issue 347), from the stalled line's
`number`, which mesh-delivery sends.
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: passed — healthy 3 times over 3m38s
mesh-controller on the rest running it: sent
build-agent on ace: passed — healthy 3 times over 3m37s
build-agent on the rest running it: sent
route-proxy on ace: passed — healthy 3 times over 3m30s
route-proxy on the rest running it: sent
Transitions
2026-10-09 11:43 (new) → proposed (announced): novox/mesh-controller#180's head announced
2026-10-09 11:59 proposed → checked (checked): the verdict names this commit
2026-10-09 11:59 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
2026-10-09 12:03 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
2026-10-09 12:03 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-09 12:18 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@51c8c7ec5277` — **delivered** since 2026-10-09T12:18:49Z
**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: passed — healthy 3 times over 3m38s
- mesh-controller on the rest running it: sent
- build-agent on ace: passed — healthy 3 times over 3m37s
- build-agent on the rest running it: sent
- route-proxy on ace: passed — healthy 3 times over 3m30s
- route-proxy on the rest running it: sent
**Transitions**
- 2026-10-09 11:43 (new) → proposed (announced): novox/mesh-controller#180's head announced
- 2026-10-09 11:59 proposed → checked (checked): the verdict names this commit
- 2026-10-09 11:59 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
- 2026-10-09 12:03 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
- 2026-10-09 12:03 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-09 12:18 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`.
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-1791546185204253882 (builds --log build-1791546185204253882).
--- the gate: build-agent, mesh-controller, route-proxy
mesh-controller: ok, 52 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
files asking for a setting without saying whether it is trusted: 0
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-09T11:44:53Z 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-09T11:44:53Z
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.039s
ok github.com/novox/mesh-controller/cmd/mesh-controller 209.872s
ok github.com/novox/mesh-controller/examples/objectstore-provisioner 1.022s
ok github.com/novox/mesh-controller/examples/postgres-provisioner 1.038s
ok github.com/novox/mesh-controller/examples/redis-provisioner 1.022s
ok github.com/novox/mesh-controller/examples/route-proxy 1.220s
ok github.com/novox/mesh-controller/internal/artifacts 1.071s
ok github.com/novox/mesh-controller/internal/broker 2.749s
ok github.com/novox/mesh-controller/internal/builder 1.931s
ok github.com/novox/mesh-controller/internal/catalogue 4.985s
ok github.com/novox/mesh-controller/internal/conditions 2.495s
ok github.com/novox/mesh-controller/internal/envfile 1.041s
ok github.com/novox/mesh-controller/internal/facts 1.049s
ok github.com/novox/mesh-controller/internal/identity 4.735s
ok github.com/novox/mesh-controller/internal/inventory 85.191s
ok github.com/novox/mesh-controller/internal/lease 17.689s
ok github.com/novox/mesh-controller/internal/licences 4.304s
ok github.com/novox/mesh-controller/internal/licences/adapters 1.045s
ok github.com/novox/mesh-controller/internal/link 53.496s
ok github.com/novox/mesh-controller/internal/lint 2.194s
ok github.com/novox/mesh-controller/internal/outward 1.078s
ok github.com/novox/mesh-controller/internal/overlay 1.065s
ok github.com/novox/mesh-controller/internal/secrets 1.552s
ok github.com/novox/mesh-controller/internal/store 3.480s
ok github.com/novox/mesh-controller/internal/testbus 1.193s
ok github.com/novox/mesh-controller/internal/token 1.015s
**Merge check** at `51c8c7ec`
- `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-1791546185204253882` (`builds --log build-1791546185204253882`).
```
--- the gate: build-agent, mesh-controller, route-proxy
mesh-controller: ok, 52 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
files asking for a setting without saying whether it is trusted: 0
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-09T11:44:53Z 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-09T11:44:53Z
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.039s
ok github.com/novox/mesh-controller/cmd/mesh-controller 209.872s
ok github.com/novox/mesh-controller/examples/objectstore-provisioner 1.022s
ok github.com/novox/mesh-controller/examples/postgres-provisioner 1.038s
ok github.com/novox/mesh-controller/examples/redis-provisioner 1.022s
ok github.com/novox/mesh-controller/examples/route-proxy 1.220s
ok github.com/novox/mesh-controller/internal/artifacts 1.071s
ok github.com/novox/mesh-controller/internal/broker 2.749s
ok github.com/novox/mesh-controller/internal/builder 1.931s
ok github.com/novox/mesh-controller/internal/catalogue 4.985s
ok github.com/novox/mesh-controller/internal/conditions 2.495s
ok github.com/novox/mesh-controller/internal/envfile 1.041s
ok github.com/novox/mesh-controller/internal/facts 1.049s
ok github.com/novox/mesh-controller/internal/identity 4.735s
ok github.com/novox/mesh-controller/internal/inventory 85.191s
ok github.com/novox/mesh-controller/internal/lease 17.689s
ok github.com/novox/mesh-controller/internal/licences 4.304s
ok github.com/novox/mesh-controller/internal/licences/adapters 1.045s
ok github.com/novox/mesh-controller/internal/link 53.496s
ok github.com/novox/mesh-controller/internal/lint 2.194s
ok github.com/novox/mesh-controller/internal/outward 1.078s
ok github.com/novox/mesh-controller/internal/overlay 1.065s
ok github.com/novox/mesh-controller/internal/secrets 1.552s
ok github.com/novox/mesh-controller/internal/store 3.480s
ok github.com/novox/mesh-controller/internal/testbus 1.193s
ok github.com/novox/mesh-controller/internal/token 1.015s
```
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-1791547086458522929 (builds --log build-1791547086458522929).
--- the gate: build-agent, mesh-controller, route-proxy
mesh-controller: ok, 52 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
files asking for a setting without saying whether it is trusted: 0
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-09T11:53:53Z 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-09T11:53:53Z
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 236.627s
ok github.com/novox/mesh-controller/examples/objectstore-provisioner 1.021s
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.121s
ok github.com/novox/mesh-controller/internal/artifacts 1.054s
ok github.com/novox/mesh-controller/internal/broker 5.670s
ok github.com/novox/mesh-controller/internal/builder 10.277s
ok github.com/novox/mesh-controller/internal/catalogue 4.935s
ok github.com/novox/mesh-controller/internal/conditions 3.536s
ok github.com/novox/mesh-controller/internal/envfile 1.024s
ok github.com/novox/mesh-controller/internal/facts 1.022s
ok github.com/novox/mesh-controller/internal/identity 10.130s
ok github.com/novox/mesh-controller/internal/inventory 96.517s
ok github.com/novox/mesh-controller/internal/lease 17.697s
ok github.com/novox/mesh-controller/internal/licences 9.673s
ok github.com/novox/mesh-controller/internal/licences/adapters 1.009s
ok github.com/novox/mesh-controller/internal/link 55.071s
ok github.com/novox/mesh-controller/internal/lint 2.083s
ok github.com/novox/mesh-controller/internal/outward 1.032s
ok github.com/novox/mesh-controller/internal/overlay 1.027s
ok github.com/novox/mesh-controller/internal/secrets 1.425s
ok github.com/novox/mesh-controller/internal/store 5.440s
ok github.com/novox/mesh-controller/internal/testbus 1.181s
ok github.com/novox/mesh-controller/internal/token 1.014s
**Merge check** at `51c8c7ec`
- `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 novox as `build-1791547086458522929` (`builds --log build-1791547086458522929`).
```
--- the gate: build-agent, mesh-controller, route-proxy
mesh-controller: ok, 52 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
files asking for a setting without saying whether it is trusted: 0
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-09T11:53:53Z 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-09T11:53:53Z
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 236.627s
ok github.com/novox/mesh-controller/examples/objectstore-provisioner 1.021s
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.121s
ok github.com/novox/mesh-controller/internal/artifacts 1.054s
ok github.com/novox/mesh-controller/internal/broker 5.670s
ok github.com/novox/mesh-controller/internal/builder 10.277s
ok github.com/novox/mesh-controller/internal/catalogue 4.935s
ok github.com/novox/mesh-controller/internal/conditions 3.536s
ok github.com/novox/mesh-controller/internal/envfile 1.024s
ok github.com/novox/mesh-controller/internal/facts 1.022s
ok github.com/novox/mesh-controller/internal/identity 10.130s
ok github.com/novox/mesh-controller/internal/inventory 96.517s
ok github.com/novox/mesh-controller/internal/lease 17.697s
ok github.com/novox/mesh-controller/internal/licences 9.673s
ok github.com/novox/mesh-controller/internal/licences/adapters 1.009s
ok github.com/novox/mesh-controller/internal/link 55.071s
ok github.com/novox/mesh-controller/internal/lint 2.083s
ok github.com/novox/mesh-controller/internal/outward 1.032s
ok github.com/novox/mesh-controller/internal/overlay 1.027s
ok github.com/novox/mesh-controller/internal/secrets 1.425s
ok github.com/novox/mesh-controller/internal/store 5.440s
ok github.com/novox/mesh-controller/internal/testbus 1.181s
ok github.com/novox/mesh-controller/internal/token 1.014s
```
This repo is archived. You cannot comment on pull requests.
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.
Follow-up to #176 and #178 (second confirmation review).
commandEnvironment(caller, verb, terminal bool): the terminal is said, never read from an empty verb. Every non-terminal line names its verb and is stripped ofMESH_CLI_TERMINALwhatever the serving environment holds.TestTheTerminalsMarkIsStrippedFromEveryOtherLinesets the mark in the serving environment; with the strip removed it fails (checked by hand).session, read from the kernel's cgroup by mesh-host follow-upfeat/272-a-login-session-and-the-tagged-sdk); the tool runner and user units running as the operator are ordinary calls with the reason.TestOnlyALoginSessionIsTheTerminal; fails with the rule taken out (checked by hand). Field-name test now includessession.Pull request hq #243 has had no merge check for …, from the stalled line'snumber(mesh-catalog follow-upfeat/272-the-tagged-sdk-and-the-pull-requests-number).Order / fail-closed. Merged before the engine follow-up is live, a mesh-cli line carries no session and nothing is the terminal (ordinary calls only) until it is: fails closed.
merge-check.sh(race, full suite) on main + this: see the PR's verdict.Delivery
novox/mesh-controller@51c8c7ec5277— delivered since 2026-10-09T12:18:49ZDelivery plan — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step
Machines
Transitions
The commit's note under
refs/notes/mesh-plankeeps every transition:git log --notes=mesh-plan.Merge check at
51c8c7ecmesh/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 passedDelivery plan — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step
Run by the build seat on shanks as
build-1791546185204253882(builds --log build-1791546185204253882).Merge check at
51c8c7ecmesh/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 passedDelivery plan — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step
Run by the build seat on novox as
build-1791547086458522929(builds --log build-1791547086458522929).