The controller takes mesh-sdk a7a1fbd3, so its composer gives build modules the node's CPU share (issue 1806, ADR 0553/0554 change B) #473

Merged
mesh-tools merged 1 commits from fix/controller-sdk-cpu-share into main 2026-10-26 15:41:03 +00:00
Member

Issue 1806. The operator said yes to this controller change on 2026-10-26 at 15:54 (the controller is frozen otherwise).

The change: the mesh-sdk pin 10b6e202320f becomes a7a1fbd34e1d (go.mod, go.sum) and the captured SDK fixture's commit line (testdata/beside/CAPTURED); the fixture's bytes are unchanged. Nothing else.

What it does on the machines: mesh-sdk #95's composer gives every module that claims a build seat its runtime process's yields (cpu-share from the node's build-cpu-share, priority idle) and MESH_BUILD_CPU_SHARE. Composed at both pins (.work/ctl-sdk-compare.txt): g14 (75 compositions) and shanks (77) in full; only mesh-build-go, mesh-build-node and mesh-build-image differ, by exactly those two additions; every other composition, both node compositions included, is byte-identical. ace and novox were not composed (the harness lacks two template secrets); by the SDK diff only their build modules change. Composition takes 0.8-4.4 s per node.

Precondition read live: every node's node-engine runs mesh-host src2:0957a705 (mesh-host #148, change A, which knows yields), health ok. All 304 live wants decode under the SDK's stricter DecodeWant (none carries put or hold).

Checks: unit suite passes; try-1793028911971343270 passed (4 min; unit 1097, integration 1763).

Research 072 (the controller, NATS-native): no piece moved. This is a dependency bump the operator allowed so the build CPU limit reaches the machines; milestone 3 of design 47 takes composing away from the controller.

After delivery: ace's mesh-host build-cpu-share set to 75 (the operator's yes), and the cap proven on shanks (the build runtime in meshyield.slice under its quota).

Reviewed-by: review-ctlsdk@shanks at 9ad8715871

Issue 1806. The operator said yes to this controller change on 2026-10-26 at 15:54 (the controller is frozen otherwise). The change: the mesh-sdk pin 10b6e202320f becomes a7a1fbd34e1d (go.mod, go.sum) and the captured SDK fixture's commit line (testdata/beside/CAPTURED); the fixture's bytes are unchanged. Nothing else. What it does on the machines: mesh-sdk #95's composer gives every module that claims a build seat its runtime process's yields (cpu-share from the node's build-cpu-share, priority idle) and MESH_BUILD_CPU_SHARE. Composed at both pins (.work/ctl-sdk-compare.txt): g14 (75 compositions) and shanks (77) in full; only mesh-build-go, mesh-build-node and mesh-build-image differ, by exactly those two additions; every other composition, both node compositions included, is byte-identical. ace and novox were not composed (the harness lacks two template secrets); by the SDK diff only their build modules change. Composition takes 0.8-4.4 s per node. Precondition read live: every node's node-engine runs mesh-host src2:0957a705 (mesh-host #148, change A, which knows yields), health ok. All 304 live wants decode under the SDK's stricter DecodeWant (none carries put or hold). Checks: unit suite passes; try-1793028911971343270 passed (4 min; unit 1097, integration 1763). Research 072 (the controller, NATS-native): no piece moved. This is a dependency bump the operator allowed so the build CPU limit reaches the machines; milestone 3 of design 47 takes composing away from the controller. After delivery: ace's mesh-host build-cpu-share set to 75 (the operator's yes), and the cap proven on shanks (the build runtime in meshyield.slice under its quota). Reviewed-by: review-ctlsdk@shanks at 9ad8715871ea0190f8358954b2ef4c873b18fb0f
mesh-tools added 1 commit 2026-10-26 15:39:58 +00:00
Bump mesh-sdk to a7a1fbd3 so the build seats' runtimes are composed to yield (issue 1806)
mesh/delivery merged: source.main moved to novox/mesh-controller@2ecfbb3a29cb
mesh/check pass 9ad8715871ea on 2ecfbb3a29cb | carried from e1a55f099b4e | unit 1023 run, 171 kept, 2 skipped | integration 1701 run, 214 kept, 9 skip…
9ad8715871
The controller is the only composer, and its pin (10b6e202) predates mesh-sdk #95: without the bump the
build runtimes never get yields {priority idle, cpu-share} or MESH_BUILD_CPU_SHARE (ADR 0553, ADR 0554,
change B). The operator said yes to this one change of the frozen controller on 2026-10-26 15:54.

A composition at both pins over every node's assignment differs only in mesh-build-go, mesh-build-node and
mesh-build-image (the yields and the share word); every other composition is byte-identical. The SDK's
conformance capture moves with the pin, as testdata/beside/CAPTURED asks.

Research 072 (the controller, NATS-native): no piece moved; a pin bump the operator allowed.
Author
Member

Delivery novox/mesh-controller@9ad8715871ea — merged since 2026-10-26T15:41:06Z

Source — source.main moved to novox/mesh-controller@2ecfbb3a29. Whether it reached the machines is mesh-delivery-view's, derived from source.main, the wants and the haves.

Transitions

  • 2026-10-26 15:40 (new) → proposed (announced): novox/mesh-controller#473's head announced
  • 2026-10-26 15:40 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 15:41 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-controller@9ad8715871ea` — **merged** since 2026-10-26T15:41:06Z **Source** — source.main moved to novox/mesh-controller@2ecfbb3a29cb. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves. **Transitions** - 2026-10-26 15:40 (new) → proposed (announced): novox/mesh-controller#473's head announced - 2026-10-26 15:40 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 15:41 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-tools merged commit 2ecfbb3a29 into main 2026-10-26 15:41:03 +00:00
mesh-tools deleted branch fix/controller-sdk-cpu-share 2026-10-26 15:41:03 +00:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-controller#473