Node agent: compose from the seat mesh-placement and answer proposals (issue 1126, delivery 2 of 2) #167

Merged
mesh-tools merged 7 commits from feat/1126-placement-seat into main 2026-10-28 18:33:13 +00:00
Member

The node agent follows the seat's placement and candidate states (the assigner's) instead of the indexer's: it answers each proposal's candidate keys in its own have, by proposal; it awaits the bus's word that those states were created instead of a timer; a node that never composed its own treats a failed placement read as not placed. Integration tests run under the node's real grant on the seat's states. mesh-sdk is pinned to 38dbe1d.

Issue 1126, ADR 0567, delivery 2 of 2.

Reviewed-by: rev-l2@shanks at 45f5e27526

The node agent follows the seat's placement and candidate states (the assigner's) instead of the indexer's: it answers each proposal's candidate keys in its own have, by proposal; it awaits the bus's word that those states were created instead of a timer; a node that never composed its own treats a failed placement read as not placed. Integration tests run under the node's real grant on the seat's states. mesh-sdk is pinned to 38dbe1d. Issue 1126, ADR 0567, delivery 2 of 2. Reviewed-by: rev-l2@shanks at 45f5e27526642ab3afd502a2b489b4090e0e0000
mesh-tools added 7 commits 2026-10-28 18:24:45 +00:00
The answer names its proposal and the revision of the node's own candidate key; a node with no key in a proposal is not asked. The watch for its own placement key is tried again until the seat's state exists, so the node switches when its key is written.
Pin mesh-sdk to the group's head 38dbe1d (issue 1126)
mesh/delivery merged: source.main moved to novox/mesh-host@4f6b389a37a1
mesh/delivery-group group feat/1126-placement-seat merged: every member is merged
mesh/check failed: integration: meshbuildgo/cmd/mesh-build-go.TestAComposeAskIsBuiltOnceAndAnsweredOnTheBus: the compose ask mvsg85b34d25b4 never ende…
45f5e27526
Author
Member

Delivery novox/mesh-host@45f5e2752664 — merged since 2026-10-28T18:33:14Z

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

Group feat/1126-placement-seat: novox/hq@1aa887dd28, novox/mesh-catalog@105c4d628c, novox/mesh-controller@f46a08772f, novox/mesh-delivery@dd9acaaeb3, novox/mesh-host@45f5e27526

  • composed together: fail — the checker's verdict at the members' heads (205f634c30df): integration: meshbuildgo/cmd/mesh-build-go.TestAComposeAskIsBuiltOnceAndAnsweredOnTheBus

Transitions

  • 2026-10-28 18:24 (new) → proposed (announced): novox/mesh-host#167's head announced
  • 2026-10-28 18:24 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-28 18:33 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-host@45f5e2752664` — **merged** since 2026-10-28T18:33:14Z **Source** — source.main moved to novox/mesh-host@4f6b389a37a1. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves. **Group** `feat/1126-placement-seat`: novox/hq@1aa887dd2898, novox/mesh-catalog@105c4d628cbc, novox/mesh-controller@f46a08772f09, novox/mesh-delivery@dd9acaaeb37b, novox/mesh-host@45f5e2752664 - composed together: fail — the checker's verdict at the members' heads (205f634c30df): integration: meshbuildgo/cmd/mesh-build-go.TestAComposeAskIsBuiltOnceAndAnsweredOnTheBus **Transitions** - 2026-10-28 18:24 (new) → proposed (announced): novox/mesh-host#167's head announced - 2026-10-28 18:24 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-28 18:33 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 4f6b389a37 into main 2026-10-28 18:33:13 +00:00
mesh-tools deleted branch feat/1126-placement-seat 2026-10-28 18:33:13 +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-host#167