Issue 1806, ADR 0553 (accepted, operator) and ADR 0554 (accepted). Change B: merged only after change A's mesh-host runs on every node (ADR 0553 §5). Change A (mesh-sdk #94, mesh-host #148, mesh-catalog #499) was delivered: mesh-host src2:0957a705 runs healthy on ace, g14, novox and shanks since 15:29:39 local, with the yields decoder.
catalogue/yields.go: each yielding module's runtime gets yields {priority: idle, cpu-share} and the word MESH_BUILD_CPU_SHARE, the node's share from mesh-host's config build-cpu-share (a value out of range falls back to 50, never refusing the composition). The engine then runs the build runtimes in meshyield.slice (idle, CPUQuota = share × processors) and each step uses share ÷ its own capacity threads (shanks: 4).
What the operator will see after delivery: the three build runtimes on each node restart once; on shanks all builds together take at most 12 of 24 processors, at idle priority. Right after B's delivery, ace's node layer for mesh-host's build-cpu-share is set to 75 (the operator's choice, ADR 0554 §2) through the settings verb, never on disk; each later share change restarts that node's build runtimes once.
Tests and vet clean. Try try-1793023288418424605 passed.
Issue 1806, ADR 0553 (accepted, operator) and ADR 0554 (accepted). Change B: merged only after change A's mesh-host runs on every node (ADR 0553 §5). Change A (mesh-sdk #94, mesh-host #148, mesh-catalog #499) was delivered: mesh-host src2:0957a705 runs healthy on ace, g14, novox and shanks since 15:29:39 local, with the yields decoder.
`catalogue/yields.go`: each yielding module's runtime gets `yields {priority: idle, cpu-share}` and the word MESH_BUILD_CPU_SHARE, the node's share from mesh-host's config `build-cpu-share` (a value out of range falls back to 50, never refusing the composition). The engine then runs the build runtimes in meshyield.slice (idle, CPUQuota = share × processors) and each step uses share ÷ its own capacity threads (shanks: 4).
What the operator will see after delivery: the three build runtimes on each node restart once; on shanks all builds together take at most 12 of 24 processors, at idle priority. Right after B's delivery, ace's node layer for mesh-host's `build-cpu-share` is set to 75 (the operator's choice, ADR 0554 §2) through the settings verb, never on disk; each later share change restarts that node's build runtimes once.
Tests and vet clean. Try try-1793023288418424605 passed.
Reviewed-by: review-buildcpu@shanks at 4ef49d03919526c71f565499cbc725526cf2978d
The second half of ADR 0553, merged only once the node-engine that decodes
yields runs on every node (§5). The share is the node-engine's own config as
the node's layers give it; each step divides it by its own module's capacity.
A share out of range bounds builds at the default and never refuses the
node's composition. A change of the share recomposes the build runtimes, which
restart once.
Deliverynovox/mesh-sdk@4ef49d039195 — merged since 2026-10-26T14:31:16Z
Source — source.main moved to novox/mesh-sdk@960d6c34d2. Whether it reached the machines is mesh-delivery-view's, derived from source.main, the wants and the haves.
Transitions
2026-10-26 14:30 (new) → proposed (announced): novox/mesh-sdk#95's head announced
2026-10-26 14:30 proposed → ready (accepted): a verdict names this commit and the trunk's head as its trunk commit, the gate passed or warned, and the repository's own check did not fail; or the check gates no merge (check-gates-merge false)
2026-10-26 14:31 ready → merged (merged): on the trunk its modules follow: merged there
The commit's note under refs/notes/mesh-plan keeps every transition of this change up to its merge: git log --notes=mesh-plan.
<!-- mesh-delivery:view -->
**Delivery** `novox/mesh-sdk@4ef49d039195` — **merged** since 2026-10-26T14:31:16Z
**Source** — source.main moved to novox/mesh-sdk@960d6c34d25e. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves.
**Transitions**
- 2026-10-26 14:30 (new) → proposed (announced): novox/mesh-sdk#95's head announced
- 2026-10-26 14:30 proposed → ready (accepted): a verdict names this commit and the trunk's head as its trunk commit, the gate passed or warned, and the repository's own check did not fail; or the check gates no merge (check-gates-merge false)
- 2026-10-26 14:31 ready → merged (merged): on the trunk its modules follow: merged there
The commit's note under `refs/notes/mesh-plan` keeps every transition of this change up to its merge: `git log --notes=mesh-plan`.
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.
Issue 1806, ADR 0553 (accepted, operator) and ADR 0554 (accepted). Change B: merged only after change A's mesh-host runs on every node (ADR 0553 §5). Change A (mesh-sdk #94, mesh-host #148, mesh-catalog #499) was delivered: mesh-host src2:0957a705 runs healthy on ace, g14, novox and shanks since 15:29:39 local, with the yields decoder.
catalogue/yields.go: each yielding module's runtime getsyields {priority: idle, cpu-share}and the word MESH_BUILD_CPU_SHARE, the node's share from mesh-host's configbuild-cpu-share(a value out of range falls back to 50, never refusing the composition). The engine then runs the build runtimes in meshyield.slice (idle, CPUQuota = share × processors) and each step uses share ÷ its own capacity threads (shanks: 4).What the operator will see after delivery: the three build runtimes on each node restart once; on shanks all builds together take at most 12 of 24 processors, at idle priority. Right after B's delivery, ace's node layer for mesh-host's
build-cpu-shareis set to 75 (the operator's choice, ADR 0554 §2) through the settings verb, never on disk; each later share change restarts that node's build runtimes once.Tests and vet clean. Try try-1793023288418424605 passed.
Reviewed-by: review-buildcpu@shanks at
4ef49d0391Delivery
novox/mesh-sdk@4ef49d039195— merged since 2026-10-26T14:31:16ZSource — source.main moved to novox/mesh-sdk@960d6c34d2. Whether it reached the machines is
mesh-delivery-view's, derived fromsource.main, the wants and the haves.Transitions
The commit's note under
refs/notes/mesh-plankeeps every transition of this change up to its merge:git log --notes=mesh-plan.