Design 47: the bus module's want follows ADR 0594
mesh/delivery merged: source.main moved to novox/hq@08b968fd80cb
mesh/check pass b01f86734552 on f6bd4246b0d7 | carried from 979bf3f19cce | unit 39 run, 0 kept, 1 skipped | integration 39 run, 0 kept, 1 skipped | co…

Claude-Session: https://claude.ai/code/session_01NcbgfJ9Gum47zkFKWRaovL
This commit is contained in:
2026-11-03 02:02:39 +01:00
parent 402ac3bfda
commit b01f867345
@@ -4,6 +4,7 @@ status: in-progress
code: [mesh-controller, mesh-catalog modules/mesh-delivery-gate, mesh-delivery, mesh-host, mesh-sdk, mesh-vault, hq 00-META/checks]
updated: 2026-11-03
decisions:
- "ADR 0594"
- "ADR 0572"
- "ADR 0571"
- "ADR 0570"
@@ -845,11 +846,13 @@ backup holder backs up nothing, and the have says so.
fingerprint, the digest, the phase and the health after the module's start window. A failed apply is loud,
retried by the next change of the want or the composition, never by a clock, and fixed forward (ADR 0360 §8,
ADR 0539 §9).
- **The bus module is wanted like any module; its server moves only by a put.** "The bus moves" (ADR 0539 §15,
ADR 0546 §8) means its server is replaced. So the assigner writes the bus module's want by the same rules as
every module's, and the node agent applies what that want brings (its files, its processes' bus accounts and
secrets, its tools) while it keeps the server's container as it runs. Only a want written by a put, on the
operator's warrant after the streams' snapshot, replaces the server. mesh-sdk names the resources the bus's
- **The bus module is wanted like any module; only a warranted want replaces its server** (ADR 0594, changing
ADR 0539 §14 and §15, ADR 0546 §8 and ADR 0565 §7 for the bus module). The assigner writes the bus module's want by
the same rules as every module's, and the node agent applies what that want brings (its files, its processes' bus
accounts and secrets, its tools) while it keeps the server's container as it runs, with no record ask. Only a want
that carries the operator's warrant (a put after the streams' snapshot, or the operator's hand write) replaces the
server; until then the bus module's have names the fingerprint applied and the one the server runs, and the view
says the server waits. mesh-sdk names the resources the bus's
server holds, so the assigner and the node agent read one list; the assigner writes the bus module's want only to a
node agent whose have says it keeps the server (the version it reports), so the node agent's keeping of the server
is delivered before the assigner's change. Until