nats: a WebSocket listener for a page in a browser, from the overlay only (hq research 036) #181

Closed
mesh-admin wants to merge 1 commits from feat/bus-websocket-listener into main
Contributor

hq research 036 (everything over NATS) names the gap: there is no WebSocket listener and no auth callout (G1). This is the smallest bus-side half of closing it, for the issue tracker's local view page; the controller's half is the read-only view user (mesh-controller PR feat/bus-view-principal). No hq record by the operator's word; code only.

What changes (modules/nats)

  • server-conf gains a websocket block: listen: 0.0.0.0:4223, no_tls: true, compression: true. The comment says why no_tls is acceptable: the port is reached across the overlay only, which is WireGuard — encrypted and authenticated by the peers' keys before anything is on the wire — and a browser cannot be made to trust the mesh's own certificate. The client port 4222 keeps its TLS; nothing of the mesh moves.
  • listens gains bus-websocket (4223/tcp, from: mesh): the machine's filter admits it from the overlay and nothing else, exactly as 4222 is published today. The container publishes 4223:4223.
  • README: a section on the ports.
  • cmd/nats-tools/websocket_test.go: the declared configuration parsed by nats-server itself (TLS paths and store pointed at the test's directories, a user list of its own beside it); the opening, the published port and the listener held to one port, no_tls and compression held on, the listener bound to every interface inside the container; a client connected over ws:// with a round trip; the client port still refusing a plain connection.

The bus step. The bus module's policy is record: a new build of it is never rolled out, and reaches the bus's machine only through the planned step a person starts — bus upgrade --why … --reversible (hq ADR 0236; the streams are snapshotted first). This is the same path #166 (nats in_force) takes. One restart carries both: this branch merges cleanly with #166's (git merge-tree: no conflict; different files), so once both are merged one bus upgrade sends one build holding both. The listener is live on the bus's machine after that step, and not before.

Reviewers' checklist

  • The listener binds the overlay only: from: mesh on the opening (the filter), published 4223:4223 like 4222:4222; nothing is reachable off the overlay.
  • no_tls is said and justified in the configuration's own comment; TLS on 4222 is untouched.
  • The change is gated for a person: upgrade.policy: record (unchanged), so the merge gate plans it and sends nothing; bus upgrade is the one way.
  • Compatible with #166: clean merge, one build, one restart.

Checks. MESH_GATE=<controller built from main 4d30b5d> MESH_CHECK_MODULES=nats sh merge-check.sh passes locally: words, agent-home, paths, every manifest through module check (70 long-running resources without health, as kept), go test ./... of the module.

Do not merge without review; the controller PR goes with it (the view user is what connects here).

hq research 036 (everything over NATS) names the gap: *there is no WebSocket listener and no auth callout* (G1). This is the smallest bus-side half of closing it, for the issue tracker's local view page; the controller's half is the read-only `view` user (mesh-controller PR `feat/bus-view-principal`). No hq record by the operator's word; code only. **What changes (`modules/nats`)** - `server-conf` gains a `websocket` block: `listen: 0.0.0.0:4223`, `no_tls: true`, `compression: true`. The comment says why `no_tls` is acceptable: the port is reached across the overlay only, which is WireGuard — encrypted and authenticated by the peers' keys before anything is on the wire — and a browser cannot be made to trust the mesh's own certificate. The client port 4222 keeps its TLS; nothing of the mesh moves. - `listens` gains `bus-websocket` (4223/tcp, **from: mesh**): the machine's filter admits it from the overlay and nothing else, exactly as 4222 is published today. The container publishes `4223:4223`. - README: a section on the ports. - `cmd/nats-tools/websocket_test.go`: the declared configuration parsed by nats-server itself (TLS paths and store pointed at the test's directories, a user list of its own beside it); the opening, the published port and the listener held to one port, `no_tls` and `compression` held on, the listener bound to every interface inside the container; a client connected over `ws://` with a round trip; the client port still refusing a plain connection. **The bus step.** The bus module's policy is `record`: a new build of it is never rolled out, and reaches the bus's machine only through the planned step a person starts — `bus upgrade --why … --reversible` (hq ADR 0236; the streams are snapshotted first). This is the same path #166 (nats `in_force`) takes. **One restart carries both**: this branch merges cleanly with #166's (`git merge-tree`: no conflict; different files), so once both are merged one `bus upgrade` sends one build holding both. The listener is live on the bus's machine after that step, and not before. **Reviewers' checklist** - The listener binds the overlay only: `from: mesh` on the opening (the filter), published `4223:4223` like `4222:4222`; nothing is reachable off the overlay. - `no_tls` is said and justified in the configuration's own comment; TLS on 4222 is untouched. - The change is gated for a person: `upgrade.policy: record` (unchanged), so the merge gate plans it and sends nothing; `bus upgrade` is the one way. - Compatible with #166: clean merge, one build, one restart. **Checks.** `MESH_GATE=<controller built from main 4d30b5d> MESH_CHECK_MODULES=nats sh merge-check.sh` passes locally: words, agent-home, paths, every manifest through `module check` (70 long-running resources without health, as kept), `go test ./...` of the module. Do not merge without review; the controller PR goes with it (the view user is what connects here).
mesh-admin added 1 commit 2026-10-10 14:01:19 +00:00
nats: a WebSocket listener for a page in a browser, from the overlay only (hq research 036)
mesh/merge-gate head e6d5ead50dfd merged into trunk 44e7002d3c84 — fail: builds nats, sent nowhere; merging this needs a person's bus upgrade; 1 wait(s) fo…
mesh/repo-check head e6d5ead50dfd merged into trunk 44e7002d3c84 — fail: head e6d5ead50dfd does not merge cleanly into trunk 44e7002d3c84: in conflict modu…
mesh/delivery stopped: the pull request closed unmerged
e6d5ead50d
The bus has no way for a browser to reach it (research 036, gap G1). The server now also listens
over WebSocket on 4223: published from the mesh like 4222, so the machine's filter admits it from
the overlay and nothing else; no TLS, acceptable only because the overlay is WireGuard and a
browser cannot be made to trust the mesh's own certificate; compression on. The user a page
connects as is the read-only view the controller composes (mesh-controller, `bus view-credential`).

A test parses the declared configuration with the server itself, holds the opening, the published
port and the listener to one port, and connects a client over WebSocket. The bus module's policy is
`record`: this reaches the bus's machine only through the planned step a person starts
(`bus upgrade`), as every bus change does.
Author
Contributor

Delivery novox/mesh-catalog@e6d5ead50dfd — stopped since 2026-10-17T23:46:53Z

Delivery plan — builds nats, sent nowhere; merging this needs a person's bus upgrade; 1 wait(s) for a person

  • tier 0: nats
  • novox: waits for a person: nats
  • merging this needs a person's bus upgrade: nats is never sent by an ordinary send, and until mesh_call mesh-controller.bus {"upgrade": "true", "why": "…", "reversible" or "irreversible": "true"} runs, nothing else is sent to novox either — unless the new build turns out the same as the one running there (issue 280)
  • nats provides mesh-bus: its consumers are sent again after it
  • nats keeps data (ADR 0233): what it holds is backed up before it moves

Transitions

  • 2026-10-10 14:01 (new) → proposed (announced): novox/mesh-catalog#181's head announced
  • 2026-10-10 14:04 proposed → checked (checked): the verdict names this commit
  • 2026-10-10 14:04 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
  • 2026-10-17 23:46 ready → stopped (closed): the pull request closed unmerged

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

<!-- mesh-delivery:view --> **Delivery** `novox/mesh-catalog@e6d5ead50dfd` — **stopped** since 2026-10-17T23:46:53Z **Delivery plan** — builds nats, sent nowhere; merging this needs a person's bus upgrade; 1 wait(s) for a person - tier 0: nats - novox: waits for a person: nats - merging this needs a person's bus upgrade: nats is never sent by an ordinary send, and until `mesh_call mesh-controller.bus {"upgrade": "true", "why": "…", "reversible" or "irreversible": "true"}` runs, nothing else is sent to novox either — unless the new build turns out the same as the one running there (issue 280) - nats provides mesh-bus: its consumers are sent again after it - nats keeps data (ADR 0233): what it holds is backed up before it moves **Transitions** - 2026-10-10 14:01 (new) → proposed (announced): novox/mesh-catalog#181's head announced - 2026-10-10 14:04 proposed → checked (checked): the verdict names this commit - 2026-10-10 14:04 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail - 2026-10-17 23:46 ready → stopped (closed): the pull request closed unmerged The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
Author
Contributor

Merge check at e6d5ead5

  • mesh/merge-gate: PASS — every machine composes with the change as it did without (4 of 4 compose) (modules: nats)
  • mesh/repo-check: PASS — its merge-check.sh passed, each part in its toolchain: merge-check.sh (go), merge-check-typescript.sh (typescript)

Delivery plan — builds nats, sent nowhere; merging this needs a person's bus upgrade; 1 wait(s) for a person

  • tier 0: nats
  • novox: waits for a person: nats
  • merging this needs a person's bus upgrade: nats is never sent by an ordinary send, and until mesh_call mesh-controller.bus {"upgrade": "true", "why": "…", "reversible" or "irreversible": "true"} runs, nothing else is sent to novox either — unless the new build turns out the same as the one running there (issue 280)
  • nats provides mesh-bus: its consumers are sent again after it
  • nats keeps data (ADR 0233): what it holds is backed up before it moves

Run by the build seat on novox as build-1791640894244056399 (builds --log build-1791640894244056399).

--- the gate: nats
nats: ok, 9 tool(s), keeps jetstream (valuable), snapshots (rebuildable); WARNING: server 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 1 module(s) changed against 4 machine(s), as the snapshot of 2026-10-10T13:56:57Z 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-10T13:56:57Z

modules the change moves:
  - nats (changed)

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 1 module(s) in 1 tier(s): nats
--- its merge-check.sh (go toolchain)
ok  	git.novox.be/novox/mesh-catalog/checks/words	0.006s
words: 12 retired words and 70 daemons' lines, none in the 37531 strings of 637 files
ok  	git.novox.be/novox/mesh-catalog/checks/agenthome	0.013s
agent-home: no archive and no file written into under the agent's home
ok  	git.novox.be/novox/mesh-catalog/checks/paths	0.006s
paths: no module names another's state on its machine (3 known, listed to go)
long-running resources without health: 70, as kept
testing modules/nats
ok  	nats-tools/cmd/nats-tools	6.453s
--- its merge-check-typescript.sh (typescript toolchain)
**Merge check** at `e6d5ead5` - `mesh/merge-gate`: **PASS** — every machine composes with the change as it did without (4 of 4 compose) (modules: nats) - `mesh/repo-check`: **PASS** — its merge-check.sh passed, each part in its toolchain: merge-check.sh (go), merge-check-typescript.sh (typescript) **Delivery plan** — builds nats, sent nowhere; merging this needs a person's bus upgrade; 1 wait(s) for a person - tier 0: nats - novox: waits for a person: nats - merging this needs a person's bus upgrade: nats is never sent by an ordinary send, and until `mesh_call mesh-controller.bus {"upgrade": "true", "why": "…", "reversible" or "irreversible": "true"}` runs, nothing else is sent to novox either — unless the new build turns out the same as the one running there (issue 280) - nats provides mesh-bus: its consumers are sent again after it - nats keeps data (ADR 0233): what it holds is backed up before it moves Run by the build seat on novox as `build-1791640894244056399` (`builds --log build-1791640894244056399`). ``` --- the gate: nats nats: ok, 9 tool(s), keeps jetstream (valuable), snapshots (rebuildable); WARNING: server 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 1 module(s) changed against 4 machine(s), as the snapshot of 2026-10-10T13:56:57Z 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-10T13:56:57Z modules the change moves: - nats (changed) 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 1 module(s) in 1 tier(s): nats --- its merge-check.sh (go toolchain) ok git.novox.be/novox/mesh-catalog/checks/words 0.006s words: 12 retired words and 70 daemons' lines, none in the 37531 strings of 637 files ok git.novox.be/novox/mesh-catalog/checks/agenthome 0.013s agent-home: no archive and no file written into under the agent's home ok git.novox.be/novox/mesh-catalog/checks/paths 0.006s paths: no module names another's state on its machine (3 known, listed to go) long-running resources without health: 70, as kept testing modules/nats ok nats-tools/cmd/nats-tools 6.453s --- its merge-check-typescript.sh (typescript toolchain) ```
mesh-tools closed this pull request 2026-10-17 18:51:34 +00:00
Member

Merge check at e6d5ead5
Judged: head e6d5ead50dfd merged into trunk f076cadecedc

  • mesh/merge-gate: FAIL — head e6d5ead50d does not merge cleanly into trunk f076cadece: in conflict modules/nats/module.json (modules: nats)
  • mesh/repo-check: FAIL — head e6d5ead50d does not merge cleanly into trunk f076cadece: in conflict modules/nats/module.json

Delivery plan — builds nats, sent nowhere; merging this needs a person's bus upgrade; 1 wait(s) for a person

  • tier 0: nats
  • novox: waits for a person: nats
  • merging this needs a person's bus upgrade: nats is never sent by an ordinary send, and until mesh_call mesh-controller.bus {"upgrade": "true", "why": "…", "reversible" or "irreversible": "true"} runs, nothing else is sent to novox either — unless the new build turns out the same as the one running there (issue 280)
  • nats provides mesh-bus: its consumers are sent again after it
  • nats keeps data (ADR 0233): what it holds is backed up before it moves

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

head e6d5ead50dfd does not merge cleanly into trunk f076cadecedc: in conflict modules/nats/module.json
**Merge check** at `e6d5ead5` Judged: head `e6d5ead50dfd` merged into trunk `f076cadecedc` - `mesh/merge-gate`: **FAIL** — head e6d5ead50dfd does not merge cleanly into trunk f076cadecedc: in conflict modules/nats/module.json (modules: nats) - `mesh/repo-check`: **FAIL** — head e6d5ead50dfd does not merge cleanly into trunk f076cadecedc: in conflict modules/nats/module.json **Delivery plan** — builds nats, sent nowhere; merging this needs a person's bus upgrade; 1 wait(s) for a person - tier 0: nats - novox: waits for a person: nats - merging this needs a person's bus upgrade: nats is never sent by an ordinary send, and until `mesh_call mesh-controller.bus {"upgrade": "true", "why": "…", "reversible" or "irreversible": "true"}` runs, nothing else is sent to novox either — unless the new build turns out the same as the one running there (issue 280) - nats provides mesh-bus: its consumers are sent again after it - nats keeps data (ADR 0233): what it holds is backed up before it moves Run by the build seat on ace as `build-1792268517127920779` (`builds --log build-1792268517127920779`). ``` head e6d5ead50dfd does not merge cleanly into trunk f076cadecedc: in conflict modules/nats/module.json ```
Member

Merge check at e6d5ead5
Judged: head e6d5ead50dfd merged into trunk ad80048c22d8

  • mesh/merge-gate: FAIL — head e6d5ead50d does not merge cleanly into trunk ad80048c22: in conflict modules/nats/module.json (modules: nats)
  • mesh/repo-check: FAIL — head e6d5ead50d does not merge cleanly into trunk ad80048c22: in conflict modules/nats/module.json

Delivery plan — builds nats, sent nowhere; merging this needs a person's bus upgrade; 1 wait(s) for a person

  • tier 0: nats
  • novox: waits for a person: nats
  • merging this needs a person's bus upgrade: nats is never sent by an ordinary send, and until mesh_call mesh-controller.bus {"upgrade": "true", "why": "…", "reversible" or "irreversible": "true"} runs, nothing else is sent to novox either — unless the new build turns out the same as the one running there (issue 280)
  • nats provides mesh-bus: its consumers are sent again after it
  • nats keeps data (ADR 0233): what it holds is backed up before it moves

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

head e6d5ead50dfd does not merge cleanly into trunk ad80048c22d8: in conflict modules/nats/module.json
**Merge check** at `e6d5ead5` Judged: head `e6d5ead50dfd` merged into trunk `ad80048c22d8` - `mesh/merge-gate`: **FAIL** — head e6d5ead50dfd does not merge cleanly into trunk ad80048c22d8: in conflict modules/nats/module.json (modules: nats) - `mesh/repo-check`: **FAIL** — head e6d5ead50dfd does not merge cleanly into trunk ad80048c22d8: in conflict modules/nats/module.json **Delivery plan** — builds nats, sent nowhere; merging this needs a person's bus upgrade; 1 wait(s) for a person - tier 0: nats - novox: waits for a person: nats - merging this needs a person's bus upgrade: nats is never sent by an ordinary send, and until `mesh_call mesh-controller.bus {"upgrade": "true", "why": "…", "reversible" or "irreversible": "true"}` runs, nothing else is sent to novox either — unless the new build turns out the same as the one running there (issue 280) - nats provides mesh-bus: its consumers are sent again after it - nats keeps data (ADR 0233): what it holds is backed up before it moves Run by the build seat on ace as `build-1792272975340054091` (`builds --log build-1792272975340054091`). ``` head e6d5ead50dfd does not merge cleanly into trunk ad80048c22d8: in conflict modules/nats/module.json ```
Member

Merge check at e6d5ead5
Judged: head e6d5ead50dfd merged into trunk 3395af96bc34

  • mesh/merge-gate: FAIL — head e6d5ead50d does not merge cleanly into trunk 3395af96bc: in conflict modules/nats/module.json (modules: nats)
  • mesh/repo-check: FAIL — head e6d5ead50d does not merge cleanly into trunk 3395af96bc: in conflict modules/nats/module.json

Delivery plan — builds nats, sent nowhere; merging this needs a person's bus upgrade; 1 wait(s) for a person

  • tier 0: nats
  • novox: waits for a person: nats
  • merging this needs a person's bus upgrade: nats is never sent by an ordinary send, and until mesh_call mesh-controller.bus {"upgrade": "true", "why": "…", "reversible" or "irreversible": "true"} runs, nothing else is sent to novox either — unless the new build turns out the same as the one running there (issue 280)
  • nats provides mesh-bus: its consumers are sent again after it
  • nats keeps data (ADR 0233): what it holds is backed up before it moves

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

head e6d5ead50dfd does not merge cleanly into trunk 3395af96bc34: in conflict modules/nats/module.json
**Merge check** at `e6d5ead5` Judged: head `e6d5ead50dfd` merged into trunk `3395af96bc34` - `mesh/merge-gate`: **FAIL** — head e6d5ead50dfd does not merge cleanly into trunk 3395af96bc34: in conflict modules/nats/module.json (modules: nats) - `mesh/repo-check`: **FAIL** — head e6d5ead50dfd does not merge cleanly into trunk 3395af96bc34: in conflict modules/nats/module.json **Delivery plan** — builds nats, sent nowhere; merging this needs a person's bus upgrade; 1 wait(s) for a person - tier 0: nats - novox: waits for a person: nats - merging this needs a person's bus upgrade: nats is never sent by an ordinary send, and until `mesh_call mesh-controller.bus {"upgrade": "true", "why": "…", "reversible" or "irreversible": "true"}` runs, nothing else is sent to novox either — unless the new build turns out the same as the one running there (issue 280) - nats provides mesh-bus: its consumers are sent again after it - nats keeps data (ADR 0233): what it holds is backed up before it moves Run by the build seat on shanks as `build-1792273742160090126` (`builds --log build-1792273742160090126`). ``` head e6d5ead50dfd does not merge cleanly into trunk 3395af96bc34: in conflict modules/nats/module.json ```
Member

Merge check at e6d5ead5
Judged: head e6d5ead50dfd merged into trunk 0c56f603059b

  • mesh/merge-gate: FAIL — head e6d5ead50d does not merge cleanly into trunk 0c56f60305: in conflict modules/nats/module.json (modules: nats)
  • mesh/repo-check: FAIL — head e6d5ead50d does not merge cleanly into trunk 0c56f60305: in conflict modules/nats/module.json

Delivery plan — builds nats, sent nowhere; merging this needs a person's bus upgrade; 1 wait(s) for a person

  • tier 0: nats
  • novox: waits for a person: nats
  • merging this needs a person's bus upgrade: nats is never sent by an ordinary send, and until mesh_call mesh-controller.bus {"upgrade": "true", "why": "…", "reversible" or "irreversible": "true"} runs, nothing else is sent to novox either — unless the new build turns out the same as the one running there (issue 280)
  • nats provides mesh-bus: its consumers are sent again after it
  • nats keeps data (ADR 0233): what it holds is backed up before it moves

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

head e6d5ead50dfd does not merge cleanly into trunk 0c56f603059b: in conflict modules/nats/module.json
**Merge check** at `e6d5ead5` Judged: head `e6d5ead50dfd` merged into trunk `0c56f603059b` - `mesh/merge-gate`: **FAIL** — head e6d5ead50dfd does not merge cleanly into trunk 0c56f603059b: in conflict modules/nats/module.json (modules: nats) - `mesh/repo-check`: **FAIL** — head e6d5ead50dfd does not merge cleanly into trunk 0c56f603059b: in conflict modules/nats/module.json **Delivery plan** — builds nats, sent nowhere; merging this needs a person's bus upgrade; 1 wait(s) for a person - tier 0: nats - novox: waits for a person: nats - merging this needs a person's bus upgrade: nats is never sent by an ordinary send, and until `mesh_call mesh-controller.bus {"upgrade": "true", "why": "…", "reversible" or "irreversible": "true"}` runs, nothing else is sent to novox either — unless the new build turns out the same as the one running there (issue 280) - nats provides mesh-bus: its consumers are sent again after it - nats keeps data (ADR 0233): what it holds is backed up before it moves Run by the build seat on ace as `build-1792275426673975530` (`builds --log build-1792275426673975530`). ``` head e6d5ead50dfd does not merge cleanly into trunk 0c56f603059b: in conflict modules/nats/module.json ```
Member

Merge check at e6d5ead5
Judged: head e6d5ead50dfd merged into trunk 44e7002d3c84

  • mesh/merge-gate: FAIL — head e6d5ead50d does not merge cleanly into trunk 44e7002d3c: in conflict modules/nats/module.json (modules: nats)
  • mesh/repo-check: FAIL — head e6d5ead50d does not merge cleanly into trunk 44e7002d3c: in conflict modules/nats/module.json

Delivery plan — builds nats, sent nowhere; merging this needs a person's bus upgrade; 1 wait(s) for a person

  • tier 0: nats
  • novox: waits for a person: nats
  • merging this needs a person's bus upgrade: nats is never sent by an ordinary send, and until mesh_call mesh-controller.bus {"upgrade": "true", "why": "…", "reversible" or "irreversible": "true"} runs, nothing else is sent to novox either — unless the new build turns out the same as the one running there (issue 280)
  • nats provides mesh-bus: its consumers are sent again after it
  • nats keeps data (ADR 0233): what it holds is backed up before it moves

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

head e6d5ead50dfd does not merge cleanly into trunk 44e7002d3c84: in conflict modules/nats/module.json
**Merge check** at `e6d5ead5` Judged: head `e6d5ead50dfd` merged into trunk `44e7002d3c84` - `mesh/merge-gate`: **FAIL** — head e6d5ead50dfd does not merge cleanly into trunk 44e7002d3c84: in conflict modules/nats/module.json (modules: nats) - `mesh/repo-check`: **FAIL** — head e6d5ead50dfd does not merge cleanly into trunk 44e7002d3c84: in conflict modules/nats/module.json **Delivery plan** — builds nats, sent nowhere; merging this needs a person's bus upgrade; 1 wait(s) for a person - tier 0: nats - novox: waits for a person: nats - merging this needs a person's bus upgrade: nats is never sent by an ordinary send, and until `mesh_call mesh-controller.bus {"upgrade": "true", "why": "…", "reversible" or "irreversible": "true"}` runs, nothing else is sent to novox either — unless the new build turns out the same as the one running there (issue 280) - nats provides mesh-bus: its consumers are sent again after it - nats keeps data (ADR 0233): what it holds is backed up before it moves Run by the build seat on ace as `build-1792280716402835672` (`builds --log build-1792280716402835672`). ``` head e6d5ead50dfd does not merge cleanly into trunk 44e7002d3c84: in conflict modules/nats/module.json ```
Member

mesh-delivery: the operator's Approve of this pull request's merge into main is ended: its head e6d5ead50d is no longer the pull request's head, or the pull request closed. Nothing is merged on it. The operator is asked again once the checks pass at the new head.

mesh-delivery: the operator's Approve of this pull request's merge into main is ended: its head e6d5ead50dfd is no longer the pull request's head, or the pull request closed. Nothing is merged on it. The operator is asked again once the checks pass at the new head.

Pull request closed

Please reopen this pull request to perform a merge.
Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-catalog#181