A placement pull request is carried, kept as candidates, and checked against every placed node's answer before it merges (issue 1126, ADR 0559) #85

Merged
mesh-tools merged 10 commits from feat/1126-l2b into main 2026-10-27 07:21:16 +00:00
Member

Milestone L2b (issue 1126), ADR 0559 §2, §3, §5, §7, §8. Delivery group feat/1126-l2b; every touched module pins mesh-sdk cadd7b1b exactly.

  • forge bridge: a catalogue pull message carries every placement file at its head (merged message unchanged).
  • indexer: writes placement-candidates . for nodes whose file differs from the trunk, deletes them at merge, close, a new head or a pull no longer open; new tool indexer_placement_reread.
  • view: indexer_placement shows each candidate and every placed node's answer (same / differs / refused / stale / none).
  • assigner: composes the change's own placement from the bus (A2); judges every node placed at the head or on the trunk: an unintended difference, a refusal, or silence past 10 minutes fails the check naming the node ('(offline)' from presence); at the seed nothing is intended, so every node must answer 'same'.
  • checker: a verdict that failed only for a silent node takes the same heads' later passing composition in on its event, with no new check (ADR 0548 §1).
  • mesh-grants pinned to the group head: the node agents, the assigner, the view and the indexer are the only readers of placement-candidates (test row).

Rule bent, said: the assigner integration test TestAChangeIsComposedOnTheBus was run once locally against an embedded bus.
Tests: each module's unit suite, go vet -tags integration pass; 589 unit / 76 integration functions, unchanged.

Reviewed-by: review-l2b@shanks at 06d4f45e18

Milestone L2b (issue 1126), ADR 0559 §2, §3, §5, §7, §8. Delivery group feat/1126-l2b; every touched module pins mesh-sdk cadd7b1b exactly. - forge bridge: a catalogue pull message carries every placement file at its head (merged message unchanged). - indexer: writes placement-candidates <group>.<node> for nodes whose file differs from the trunk, deletes them at merge, close, a new head or a pull no longer open; new tool `indexer_placement_reread`. - view: `indexer_placement` shows each candidate and every placed node's answer (same / differs / refused / stale / none). - assigner: composes the change's own placement from the bus (A2); judges every node placed at the head or on the trunk: an unintended difference, a refusal, or silence past 10 minutes fails the check naming the node ('(offline)' from presence); at the seed nothing is intended, so every node must answer 'same'. - checker: a verdict that failed only for a silent node takes the same heads' later passing composition in on its event, with no new check (ADR 0548 §1). - mesh-grants pinned to the group head: the node agents, the assigner, the view and the indexer are the only readers of placement-candidates (test row). Rule bent, said: the assigner integration test TestAChangeIsComposedOnTheBus was run once locally against an embedded bus. Tests: each module's unit suite, go vet -tags integration pass; 589 unit / 76 integration functions, unchanged. Reviewed-by: review-l2b@shanks at 06d4f45e18850d1ea5d2ed9ea1414707304f0593
mesh-tools added 10 commits 2026-10-27 01:49:59 +00:00
Pin mesh-sdk cadd7b1, the group's final head, in every member module (issue 1126)
mesh/delivery merged: source.main moved to novox/mesh-delivery@2915d74822cd
mesh/delivery-group group feat/1126-l2b merged: every member is merged
mesh/check checking 06d4f45e1885 on 2915d74822cd | novox/mesh-delivery#85 in group feat/1126-l2b
06d4f45e18
Author
Member

Delivery novox/mesh-delivery@06d4f45e1885 — merged since 2026-10-27T07:21:18Z

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

Group feat/1126-l2b: novox/hq@043f8ecf9c, novox/mesh-catalog@2ac511ce6b, novox/mesh-delivery@06d4f45e18, novox/mesh-host@1803d25c3a, novox/mesh-sdk@cadd7b1b2f

Transitions

  • 2026-10-27 01:50 (new) → proposed (announced): novox/mesh-delivery#85's head announced
  • 2026-10-27 01:50 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-27 07:21 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-delivery@06d4f45e1885` — **merged** since 2026-10-27T07:21:18Z **Source** — source.main moved to novox/mesh-delivery@2915d74822cd. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves. **Group** `feat/1126-l2b`: novox/hq@043f8ecf9cfa, novox/mesh-catalog@2ac511ce6b19, novox/mesh-delivery@06d4f45e1885, novox/mesh-host@1803d25c3a67, novox/mesh-sdk@cadd7b1b2f8f **Transitions** - 2026-10-27 01:50 (new) → proposed (announced): novox/mesh-delivery#85's head announced - 2026-10-27 01:50 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-27 07:21 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`.
Author
Member

mesh-delivery: the operator's Approve of this pull request's merge into main is ended: a head it covers moved on: the heads it covers are no longer the group's heads. Nothing is merged on it. The operator is asked again once the checks pass at the new head.

mesh-delivery: the operator's Approve of this pull request's merge into main is ended: a head it covers moved on: the heads it covers are no longer the group's heads. Nothing is merged on it. The operator is asked again once the checks pass at the new head.
mesh-tools merged commit 2915d74822 into main 2026-10-27 07:21:16 +00:00
mesh-tools deleted branch feat/1126-l2b 2026-10-27 07:21:18 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-delivery#85