@@ -4,6 +4,8 @@ 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-10-26
decisions:
- "ADR 0554"
- "ADR 0553"
- "ADR 0551"
- "ADR 0550"
- "ADR 0549"
@@ -138,6 +140,10 @@ source revision is derived from the keys: every **want** equals its module's **f
**build capacity**, a setting of the node that the build modules read; a node at capacity 0, the control-node among them, pulls nothing
(ADR 0525 §2, §4, §5). One ask is one whole job on one node: the fetch, the build and the push of a fingerprint, or the fetch, the digest and
the levels of a check (ADR 0525 §3). A session may call a build module's tools on a named node (ADR 0525 §8).
**The build seats yield** (ADR 0553, ADR 0554): the node-engine places every build module's runtime of a node in one slice at the top
of the hierarchy, at idle CPU weight and nice 19, under one quota of the node's share of its processors (the node-engine's
own config `build-cpu-share`, default half, set per node). The quota bounds all build modules of the node together; a step
sizes its threads from the share over its own module's capacity. Interactive and service work always come first.
- **The checker** runs the merge check on built artifacts: a change's tests, through the build module of each
module's language and by that language's convention, running only the packages whose inputs changed and
taking the kept verdict of the rest; it writes the change's one status (ADR 0444, ADR 0445, ADR 0447); it runs dark in R4c-5 (ADR 0484).