The controller answers each node's placement from its own store, the one verb of its exit (issue 1126) #474

Merged
mesh-tools merged 8 commits from feat/1126-nodes-compose into main 2026-10-26 21:11:22 +00:00
Member

Issue 1126 (milestone L2 of design 47: nodes compose). Member of the delivery group feat/1126-nodes-compose, which the milestone's one review approved.

  • One read-only verb, placement-export {node?}: per node, the placement file's JSON (frombus.Export of the controller's own input: readMeshAndNodes + readSettings), nothing written. It is the source of the seed of the catalogue's placement files (ADR 0555 §6).
  • The one exception to "the controller is not changed" (ADR 0547 §1): the operator allowed this verb on Telegram on 2026-10-26 at 19:06:40 ("Allow one export verb").
  • Piece of the research "The controller, NATS-native" it moves: the controller's last owned node data leaves it for the catalogue.
  • Integration test against the real store: each node's export equals frombus.Export of the controller's input; a single node works; an unknown node is refused.
  • Pins mesh-sdk 979644420117 (the group's head) exactly; CAPTURED names it, and the conformance capture is unchanged between the two sdk heads.

Reviewed-by: review-1126@shanks at df8ebf6a77

Issue 1126 (milestone L2 of design 47: nodes compose). Member of the delivery group feat/1126-nodes-compose, which the milestone's one review approved. - One read-only verb, `placement-export` {node?}: per node, the placement file's JSON (`frombus.Export` of the controller's own input: readMeshAndNodes + readSettings), nothing written. It is the source of the seed of the catalogue's placement files (ADR 0555 §6). - The one exception to "the controller is not changed" (ADR 0547 §1): the operator allowed this verb on Telegram on 2026-10-26 at 19:06:40 ("Allow one export verb"). - Piece of the research "The controller, NATS-native" it moves: the controller's last owned node data leaves it for the catalogue. - Integration test against the real store: each node's export equals frombus.Export of the controller's input; a single node works; an unknown node is refused. - Pins mesh-sdk 979644420117 (the group's head) exactly; CAPTURED names it, and the conformance capture is unchanged between the two sdk heads. Reviewed-by: review-1126@shanks at df8ebf6a77c161b5362c5feb36aaa8749f8f1b85
mesh-tools added 2 commits 2026-10-26 18:29:03 +00:00
Author
Member

Delivery novox/mesh-controller@df8ebf6a77c1 — merged since 2026-10-26T21:11:23Z

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

Group feat/1126-nodes-compose: novox/hq@28d84f31bf, novox/mesh-catalog@c085975146, novox/mesh-controller@df8ebf6a77, novox/mesh-delivery@297992a4ae, novox/mesh-host@1d44288514, novox/mesh-sdk@9796444201

Transitions

  • 2026-10-26 21:09 (new) → proposed (announced): novox/mesh-controller#474's head announced
  • 2026-10-26 21:10 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 21:11 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@df8ebf6a77c1` — **merged** since 2026-10-26T21:11:23Z **Source** — source.main moved to novox/mesh-controller@82d212a2a1ff. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves. **Group** `feat/1126-nodes-compose`: novox/hq@28d84f31bfcb, novox/mesh-catalog@c0859751461a, novox/mesh-controller@df8ebf6a77c1, novox/mesh-delivery@297992a4ae55, novox/mesh-host@1d442885148a, novox/mesh-sdk@979644420117 **Transitions** - 2026-10-26 21:09 (new) → proposed (announced): novox/mesh-controller#474's head announced - 2026-10-26 21:10 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 21:11 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`.
jschoubben added 1 commit 2026-10-26 18:40:45 +00:00
Pin mesh-sdk feat/1126-nodes-compose 9713c30: placement carries a settings-form module's values (issue 1126)
mesh/delivery closed: a newer head of the same pull request
mesh/check failed: ace: novox/mesh-catalog#505 does not merge into the trunk: files in conflict: .gitignore | 7c8a2e03dd8e on 2ecfbb3a29cb | unit 1245…
7c8a2e03dd
jschoubben added 1 commit 2026-10-26 19:12:53 +00:00
Review of L2: the export's test reads each printed placement back as the file the seed writes, at its version (S1); pin mesh-sdk 3968849, CAPTURED taken again (issue 1126)
mesh/delivery closed: a newer head of the same pull request
mesh/check failed: unit: ..test: ✔ a transient empty list for four passes retires nothing; five stable passes retire, data kept (290.408814ms) | 4e9e5…
4e9e5c27d4
jschoubben added 1 commit 2026-10-26 19:23:53 +00:00
Review of L2, round 2: the placement export is checked within an existing integration test over the same fresh mesh, so it adds no test of its own (the test budget; issue 1126)
mesh/delivery closed: a newer head of the same pull request
mesh/check checking 9d8a5a7ede90 on 2ecfbb3a29cb | novox/mesh-controller#474 in group feat/1126-nodes-compose
9d8a5a7ede
jschoubben added 1 commit 2026-10-26 19:35:52 +00:00
Pin mesh-sdk feat/1126-nodes-compose 03dce12, the group's head: the checker refuses a pin that is neither trunk nor the group's head (issue 1126)
mesh/delivery closed: a newer head of the same pull request
mesh/delivery-group group feat/1126-nodes-compose checking: 4 of 6 member(s) ready
mesh/check checking fd891688acdf on 2ecfbb3a29cb | novox/mesh-controller#474 in group feat/1126-nodes-compose
fd891688ac
mesh-tools marked the pull request as ready for review 2026-10-26 21:09:25 +00:00
jschoubben added 2 commits 2026-10-26 21:09:58 +00:00
Pin mesh-sdk 9796444 (l2-next: feat/1126-nodes-compose merged with sdk main #101, the standing-test race fixes) (issue 1126)
mesh/delivery merged: source.main moved to novox/mesh-controller@82d212a2a1ff
mesh/delivery-group group feat/1126-nodes-compose merged: every member is merged
mesh/check checking df8ebf6a77c1 on 82d212a2a1ff | novox/mesh-controller#474 in group feat/1126-nodes-compose
df8ebf6a77
mesh-tools merged commit 82d212a2a1 into main 2026-10-26 21:11:22 +00:00
mesh-tools deleted branch feat/1126-nodes-compose 2026-10-26 21:11:22 +00:00
Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-controller#474