build-agent: declare busy, so a replaced agent finishes the check it runs (issue 594, hq ADR 0335) #283

Merged
mesh-admin merged 3 commits from feat/335-the-build-agent-declares-busy into main 2026-10-13 22:39:51 +00:00
Contributor

after: none

Reopened from #260 under a branch of its own, out of the delivery group of mesh-host#98 and mesh-controller#283 (the group's order contradicted itself: built-by put the catalogue before mesh-host).

Issue 594; decision: novox/hq ADR 0335 §5. build-agent's server declares busy as /usr/local/bin/mesh-builder busy (by its path, as its health check names it; timeout the default 10s), and its README says what that does.

Merge only once mesh-host#98 and mesh-controller#283 are merged and #283's build-agent image runs on all four machines: a controller older than #283 copies an unknown resource key into every declaration, a node-engine older than #98 refuses the whole declaration for it, and an image older than #283 has no busy command. #283 sends busy only to an engine whose health statement says contract 8.

Checked earlier at #260: merge-check.sh with MESH_GATE set to a controller built from #283 passes (module check, words, agent-home, paths, health-undeclared 67 as kept).

after: none Reopened from #260 under a branch of its own, out of the delivery group of mesh-host#98 and mesh-controller#283 (the group's order contradicted itself: built-by put the catalogue before mesh-host). Issue 594; decision: novox/hq ADR 0335 §5. build-agent's `server` declares `busy` as `/usr/local/bin/mesh-builder busy` (by its path, as its health check names it; timeout the default 10s), and its README says what that does. **Merge only once mesh-host#98 and mesh-controller#283 are merged and #283's build-agent image runs on all four machines**: a controller older than #283 copies an unknown resource key into every declaration, a node-engine older than #98 refuses the whole declaration for it, and an image older than #283 has no `busy` command. #283 sends `busy` only to an engine whose health statement says contract 8. Checked earlier at #260: merge-check.sh with MESH_GATE set to a controller built from #283 passes (module check, words, agent-home, paths, health-undeclared 67 as kept).
mesh-admin added 2 commits 2026-10-13 22:07:58 +00:00
build-agent: declare busy, so a replaced agent finishes the check it runs
mesh/delivery-group group feat/335-a-busy-container-is-replaced-when-idle rejected: its order contradicts itself: novox/mesh-catalog@190608193764, novox/mesh-c…
mesh/merge-gate out of date: judged against trunk 8f80cd471634, the trunk is now 39e7a06e6293; judged again on a recheck or when it is merged
mesh/repo-check out of date: judged against trunk 8f80cd471634, the trunk is now 39e7a06e6293; judged again on a recheck or when it is merged
mesh/delivery stopped: the pull request closed unmerged
1906081937
Every merge into mesh-controller replaced the agents and the queue started
their checks again elsewhere (issue 594). Its server now declares busy as
mesh-builder busy (novox/hq ADR 0335 §5).
build-agent: name mesh-builder by its path in busy, as its health does (review of #260)
mesh/merge-gate head 12a5e7be7321 merged into trunk 23a2e1e20467 — fail: builds build-agent → ace, g14, novox, shanks; no bus step; head 12a5e7be7321 does …
mesh/repo-check head 12a5e7be7321 merged into trunk 23a2e1e20467 — fail: head 12a5e7be7321 does not merge cleanly into trunk 23a2e1e20467: in conflict modu…
mesh/delivery superseded: a newer head of the same pull request
12a5e7be73
Author
Contributor

Merge check at 12a5e7be
Judged: head 12a5e7be7321 merged into trunk 23a2e1e20467

  • mesh/merge-gate: FAIL — head 12a5e7be73 does not merge cleanly into trunk 23a2e1e204: in conflict modules/build-agent/README.md (modules: build-agent)
  • mesh/repo-check: FAIL — head 12a5e7be73 does not merge cleanly into trunk 23a2e1e204: in conflict modules/build-agent/README.md

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

  • tier 0: build-agent
  • ace: receives build-agent
  • g14: receives build-agent
  • novox: receives build-agent
  • shanks: receives build-agent
  • build-agent keeps data (ADR 0233): what it holds is backed up before it moves
  • grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before build-agent is judged on its first machine
  • read by no module's build: modules/build-agent/README.md

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

head 12a5e7be7321 does not merge cleanly into trunk 23a2e1e20467: in conflict modules/build-agent/README.md
**Merge check** at `12a5e7be` Judged: head `12a5e7be7321` merged into trunk `23a2e1e20467` - `mesh/merge-gate`: **FAIL** — head 12a5e7be7321 does not merge cleanly into trunk 23a2e1e20467: in conflict modules/build-agent/README.md (modules: build-agent) - `mesh/repo-check`: **FAIL** — head 12a5e7be7321 does not merge cleanly into trunk 23a2e1e20467: in conflict modules/build-agent/README.md **Delivery plan** — builds build-agent → ace, g14, novox, shanks; no bus step - tier 0: build-agent - ace: receives build-agent - g14: receives build-agent - novox: receives build-agent - shanks: receives build-agent - build-agent keeps data (ADR 0233): what it holds is backed up before it moves - grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before build-agent is judged on its first machine - read by no module's build: modules/build-agent/README.md Run by the build seat on shanks as `build-1791929312317786030` (`builds --log build-1791929312317786030`). ``` head 12a5e7be7321 does not merge cleanly into trunk 23a2e1e20467: in conflict modules/build-agent/README.md ```
Author
Contributor

Delivery novox/mesh-catalog@c876ad4a8303 — delivered since 2026-10-13T22:41:48Z

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

  • tier 0: build-agent
  • ace: receives build-agent
  • g14: receives build-agent
  • novox: receives build-agent
  • shanks: receives build-agent
  • build-agent keeps data (ADR 0233): what it holds is backed up before it moves
  • grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before build-agent is judged on its first machine

Machines

  • build-agent on ace: passed — healthy 1 times over 20s, by a leaf module's rule: one reading (novox/hq ADR 0304)
  • build-agent on the rest running it: sent

Transitions

  • 2026-10-13 22:12 (new) → proposed (announced): novox/mesh-catalog#283's head announced
  • 2026-10-13 22:15 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
  • 2026-10-13 22:15 checked → rejected (refused): the gate failed or could not run, or the repository's own check failed
  • 2026-10-13 22:34 rejected → proposed (recheck): the controller and node-engine that understand busy (mesh-controller #283, mesh-host #98) now run on every machine; its earlier check was judged by the old ones
  • 2026-10-13 22:37 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
  • 2026-10-13 22:37 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
  • 2026-10-13 22:40 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
  • 2026-10-13 22:40 published → delivering (go): its walk started: let go by this owner in its group's order, by a person, or on the controller's own path — not a failed walk that carried a later commit for it, after which it waits for a walk of its own commit
  • 2026-10-13 22:41 delivering → delivered (done): its walk is done, carrying its own commit: every machine of its deploy plan passed, or was left as its policy says

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

<!-- mesh-delivery:view --> **Delivery** `novox/mesh-catalog@c876ad4a8303` — **delivered** since 2026-10-13T22:41:48Z **Delivery plan** — builds build-agent → ace, g14, novox, shanks; no bus step - tier 0: build-agent - ace: receives build-agent - g14: receives build-agent - novox: receives build-agent - shanks: receives build-agent - build-agent keeps data (ADR 0233): what it holds is backed up before it moves - grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before build-agent is judged on its first machine **Machines** - build-agent on ace: passed — healthy 1 times over 20s, by a leaf module's rule: one reading (novox/hq ADR 0304) - build-agent on the rest running it: sent **Transitions** - 2026-10-13 22:12 (new) → proposed (announced): novox/mesh-catalog#283's head announced - 2026-10-13 22:15 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit - 2026-10-13 22:15 checked → rejected (refused): the gate failed or could not run, or the repository's own check failed - 2026-10-13 22:34 rejected → proposed (recheck): the controller and node-engine that understand `busy` (mesh-controller #283, mesh-host #98) now run on every machine; its earlier check was judged by the old ones - 2026-10-13 22:37 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit - 2026-10-13 22:37 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail - 2026-10-13 22:40 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move - 2026-10-13 22:40 published → delivering (go): its walk started: let go by this owner in its group's order, by a person, or on the controller's own path — not a failed walk that carried a later commit for it, after which it waits for a walk of its own commit - 2026-10-13 22:41 delivering → delivered (done): its walk is done, carrying its own commit: every machine of its deploy plan passed, or was left as its policy says The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
jschoubben added 1 commit 2026-10-13 22:12:00 +00:00
Merge remote-tracking branch 'origin/main' into feat/335-the-build-agent-declares-busy
mesh/merge-gate head c876ad4a8303 merged into trunk 23a2e1e20467 — pass: builds build-agent → ace, g14, novox, shanks; no bus step; every machine composes …
mesh/repo-check head c876ad4a8303 merged into trunk 23a2e1e20467 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (go), merge-…
mesh/delivery delivered
c876ad4a83
# Conflicts:
#	modules/build-agent/README.md
Author
Contributor

Merge check at c876ad4a
Judged: head c876ad4a8303 merged into trunk 23a2e1e20467; read beside it: mesh-controller 72214ae989b3, mesh-controller-main 72214ae989b3, mesh-host 0e92ef3d1b21, mesh-tools 954e1a53eef9

  • mesh/merge-gate: FAIL — 4 problem(s) the change brings; the first: a machine (f35): nothing could be sent to it with this change — resource "build-agent.server": a container does not use "busy", and it is set. Refused rather than ignored (modules: build-agent)
  • 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 build-agent → ace, g14, novox, shanks; no bus step

  • tier 0: build-agent
  • ace: receives build-agent
  • g14: receives build-agent
  • novox: receives build-agent
  • shanks: receives build-agent
  • build-agent keeps data (ADR 0233): what it holds is backed up before it moves
  • grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before build-agent is judged on its first machine
  • read by no module's build: modules/build-agent/README.md

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

--- the gate: build-agent
build-agent: ok, keeps workspace (cache), ready: server by exec every 10s
long-running resources without health: 0
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-13T21:43:06Z 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: FAIL — 4 problem(s) the change brings; the first: a machine (f35): nothing could be sent to it with this change — resource "build-agent.server": a container does not use "busy", and it is set. Refused rather than ignored
judged by controller development build against the facts of 2026-10-13T21:43:06Z

fails:
  - a machine (f35): nothing could be sent to it with this change — resource "build-agent.server": a container does not use "busy", and it is set. Refused rather than ignored
  - a machine (yvbpsm): nothing could be sent to it with this change — resource "build-agent.server": a container does not use "busy", and it is set. Refused rather than ignored
  - 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): nothing could be sent to it with this change — resource "build-agent.server": a container does not use "busy", and it is set. Refused rather than ignored
  - holds mesh-dns-resolver (idt): nothing could be sent to it with this change — resource "build-agent.server": a container does not use "busy", and it is set. Refused rather than ignored

modules the change moves:
  - build-agent (changed)

machines:
  - a machine (f35): does not compose
  - holds mesh-dns-resolver (idt): does not compose
  - 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): does not compose
  - a machine (yvbpsm): does not compose

a merge would rebuild 1 module(s) in 1 tier(s): build-agent

notes:
  - modules/build-agent/README.md read by no module's build, and rebuild nothing (issue 280)
mesh-controller: the change fails the merge gate
--- its merge-check.sh (go toolchain)
ok  	git.novox.be/novox/mesh-catalog/checks/words	0.003s
words: 12 retired words and 70 daemons' lines, none in the 46786 strings of 718 files
ok  	git.novox.be/novox/mesh-catalog/checks/agenthome	0.012s
agent-home: no archive and no file written into under the agent's home
ok  	git.novox.be/novox/mesh-catalog/checks/secrets	0.012s
secrets: no setting can replace a vault secret in a mergeable file (1 known, nested)
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: 66, as kept
ok  	git.novox.be/novox/mesh-catalog/checks/deps	0.220s
testing modules/build-agent
ok  	build-agent	1.009s
--- its merge-check-typescript.sh (typescript toolchain)
**Merge check** at `c876ad4a` Judged: head `c876ad4a8303` merged into trunk `23a2e1e20467`; read beside it: mesh-controller `72214ae989b3`, mesh-controller-main `72214ae989b3`, mesh-host `0e92ef3d1b21`, mesh-tools `954e1a53eef9` - `mesh/merge-gate`: **FAIL** — 4 problem(s) the change brings; the first: a machine (f35): nothing could be sent to it with this change — resource "build-agent.server": a container does not use "busy", and it is set. Refused rather than ignored (modules: build-agent) - `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 build-agent → ace, g14, novox, shanks; no bus step - tier 0: build-agent - ace: receives build-agent - g14: receives build-agent - novox: receives build-agent - shanks: receives build-agent - build-agent keeps data (ADR 0233): what it holds is backed up before it moves - grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before build-agent is judged on its first machine - read by no module's build: modules/build-agent/README.md Run by the build seat on shanks as `build-1791929544111997327` (`builds --log build-1791929544111997327`). ``` --- the gate: build-agent build-agent: ok, keeps workspace (cache), ready: server by exec every 10s long-running resources without health: 0 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-13T21:43:06Z 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: FAIL — 4 problem(s) the change brings; the first: a machine (f35): nothing could be sent to it with this change — resource "build-agent.server": a container does not use "busy", and it is set. Refused rather than ignored judged by controller development build against the facts of 2026-10-13T21:43:06Z fails: - a machine (f35): nothing could be sent to it with this change — resource "build-agent.server": a container does not use "busy", and it is set. Refused rather than ignored - a machine (yvbpsm): nothing could be sent to it with this change — resource "build-agent.server": a container does not use "busy", and it is set. Refused rather than ignored - 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): nothing could be sent to it with this change — resource "build-agent.server": a container does not use "busy", and it is set. Refused rather than ignored - holds mesh-dns-resolver (idt): nothing could be sent to it with this change — resource "build-agent.server": a container does not use "busy", and it is set. Refused rather than ignored modules the change moves: - build-agent (changed) machines: - a machine (f35): does not compose - holds mesh-dns-resolver (idt): does not compose - 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): does not compose - a machine (yvbpsm): does not compose a merge would rebuild 1 module(s) in 1 tier(s): build-agent notes: - modules/build-agent/README.md read by no module's build, and rebuild nothing (issue 280) mesh-controller: the change fails the merge gate --- its merge-check.sh (go toolchain) ok git.novox.be/novox/mesh-catalog/checks/words 0.003s words: 12 retired words and 70 daemons' lines, none in the 46786 strings of 718 files ok git.novox.be/novox/mesh-catalog/checks/agenthome 0.012s agent-home: no archive and no file written into under the agent's home ok git.novox.be/novox/mesh-catalog/checks/secrets 0.012s secrets: no setting can replace a vault secret in a mergeable file (1 known, nested) 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: 66, as kept ok git.novox.be/novox/mesh-catalog/checks/deps 0.220s testing modules/build-agent ok build-agent 1.009s --- its merge-check-typescript.sh (typescript toolchain) ```
Author
Contributor

Merge check at c876ad4a
Judged: head c876ad4a8303 merged into trunk 23a2e1e20467; read beside it: mesh-controller 1601cb17432e, mesh-controller-main 1601cb17432e, mesh-host 1a2677882380, mesh-tools 954e1a53eef9

  • mesh/merge-gate: PASS — every machine composes with the change as it did without (4 of 4 compose) (modules: build-agent)
  • 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 build-agent → ace, g14, novox, shanks; no bus step

  • tier 0: build-agent
  • ace: receives build-agent
  • g14: receives build-agent
  • novox: receives build-agent
  • shanks: receives build-agent
  • build-agent keeps data (ADR 0233): what it holds is backed up before it moves
  • grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before build-agent is judged on its first machine
  • read by no module's build: modules/build-agent/README.md

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

--- the gate: build-agent
build-agent: ok, keeps workspace (cache), ready: server by exec every 10s
long-running resources without health: 0
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-13T22:33:29Z 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-13T22:33:29Z

modules the change moves:
  - build-agent (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): build-agent

notes:
  - modules/build-agent/README.md read by no module's build, and rebuild nothing (issue 280)
--- its merge-check.sh (go toolchain)
ok  	git.novox.be/novox/mesh-catalog/checks/words	0.003s
words: 12 retired words and 70 daemons' lines, none in the 46786 strings of 718 files
ok  	git.novox.be/novox/mesh-catalog/checks/agenthome	0.011s
agent-home: no archive and no file written into under the agent's home
ok  	git.novox.be/novox/mesh-catalog/checks/secrets	0.010s
secrets: no setting can replace a vault secret in a mergeable file (1 known, nested)
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: 66, as kept
ok  	git.novox.be/novox/mesh-catalog/checks/deps	0.211s
testing modules/build-agent
ok  	build-agent	1.012s
--- its merge-check-typescript.sh (typescript toolchain)
**Merge check** at `c876ad4a` Judged: head `c876ad4a8303` merged into trunk `23a2e1e20467`; read beside it: mesh-controller `1601cb17432e`, mesh-controller-main `1601cb17432e`, mesh-host `1a2677882380`, mesh-tools `954e1a53eef9` - `mesh/merge-gate`: **PASS** — every machine composes with the change as it did without (4 of 4 compose) (modules: build-agent) - `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 build-agent → ace, g14, novox, shanks; no bus step - tier 0: build-agent - ace: receives build-agent - g14: receives build-agent - novox: receives build-agent - shanks: receives build-agent - build-agent keeps data (ADR 0233): what it holds is backed up before it moves - grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before build-agent is judged on its first machine - read by no module's build: modules/build-agent/README.md Run by the build seat on ace as `build-1791930884065042057` (`builds --log build-1791930884065042057`). ``` --- the gate: build-agent build-agent: ok, keeps workspace (cache), ready: server by exec every 10s long-running resources without health: 0 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-13T22:33:29Z 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-13T22:33:29Z modules the change moves: - build-agent (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): build-agent notes: - modules/build-agent/README.md read by no module's build, and rebuild nothing (issue 280) --- its merge-check.sh (go toolchain) ok git.novox.be/novox/mesh-catalog/checks/words 0.003s words: 12 retired words and 70 daemons' lines, none in the 46786 strings of 718 files ok git.novox.be/novox/mesh-catalog/checks/agenthome 0.011s agent-home: no archive and no file written into under the agent's home ok git.novox.be/novox/mesh-catalog/checks/secrets 0.010s secrets: no setting can replace a vault secret in a mergeable file (1 known, nested) 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: 66, as kept ok git.novox.be/novox/mesh-catalog/checks/deps 0.211s testing modules/build-agent ok build-agent 1.012s --- its merge-check-typescript.sh (typescript toolchain) ```
mesh-admin merged commit ebf7f3773d into main 2026-10-13 22:39:51 +00:00
mesh-admin deleted branch feat/335-the-build-agent-declares-busy 2026-10-13 22:39:51 +00:00
Sign in to join this conversation.
No Reviewers
No labels
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-catalog#283