A node-engine answers any verb of its own node, so a new engine verb needs no grants release (issue 774) #122

Closed
mesh-tools wants to merge 0 commits from fix/grants-any-engine-verb into main
Member

Issue 774 (L3). The bus refused every node-engine the new verb composition (and would refuse compose): buscompose engineGrants granted a fixed list from catalogue.EngineVerbs() compiled into the grants part's mesh-sdk pin (eff81f1), and every refusal made each engine drop and reopen its bus link (novox 3, ace 4 times in an hour). Second time of this kind (an earlier grants re-pin was needed for a new verb). Now a node-engine is granted mesh.seat.node-engine.tool.. (so call...) and event..: its own node only (one NATS token), callers still granted one verb at a time; a new engine verb needs no grants release. ADR 0563 §1, §3 and ADR 0259 §3 say nothing against it. Group fix/engine-seat-any-verb / fix/grants-any-engine-verb, merge order mesh-sdk first; mesh-grants pins mesh-sdk 748543c exactly (go.mod/go.sum only).

Quick vs thorough: quick = re-pin the grants part (needed again for every verb); thorough (chosen) = the per-node wildcard. The engine-seat subtest in buscompose_test gained composition, compose, a later verb and event, each on its own node only, and another node refused. gofmt, vet (both tags), go test pass.

Reviewed-by: rev-compose@shanks at 14f68219cf

Issue 774 (L3). The bus refused every node-engine the new verb composition (and would refuse compose): buscompose engineGrants granted a fixed list from catalogue.EngineVerbs() compiled into the grants part's mesh-sdk pin (eff81f1), and every refusal made each engine drop and reopen its bus link (novox 3, ace 4 times in an hour). Second time of this kind (an earlier grants re-pin was needed for a new verb). Now a node-engine is granted mesh.seat.node-engine.tool.*.<node> (so call.*.<node>.*) and event.*.<node>: its own node only (one NATS token), callers still granted one verb at a time; a new engine verb needs no grants release. ADR 0563 §1, §3 and ADR 0259 §3 say nothing against it. Group fix/engine-seat-any-verb / fix/grants-any-engine-verb, merge order mesh-sdk first; mesh-grants pins mesh-sdk 748543c exactly (go.mod/go.sum only). Quick vs thorough: quick = re-pin the grants part (needed again for every verb); thorough (chosen) = the per-node wildcard. The engine-seat subtest in buscompose_test gained composition, compose, a later verb and event, each on its own node only, and another node refused. gofmt, vet (both tags), go test pass. Reviewed-by: rev-compose@shanks at 14f68219cf294735318422993b633ebecb568fa1
mesh-tools added 1 commit 2026-10-31 00:17:37 +00:00
Grants: pin mesh-sdk 748543c, so every node's engine is granted any verb and event of its node seat on its own node, composition and compose included (issue 774)
mesh/delivery merged: source.main moved to novox/mesh-delivery@804d5cc06559
mesh/delivery-group group fix/engine-seat-any-verb merged: every member is merged
mesh/check checking 14f68219cf29 on 804d5cc06559 | novox/mesh-delivery#123 in group fix/engine-seat-any-verb
14f68219cf
The grants part pinned eff81f1, before the verb composition (6bce1fb): the bus refused every engine's subscription to it and each engine reopened its link every few minutes. With 748543c a verb added to the node-engine seat needs no grants release first. Group with mesh-sdk fix/engine-seat-any-verb.
Author
Member

Delivery novox/mesh-delivery@14f68219cf29 — closed since 2026-10-31T00:22:21Z

Transitions

  • 2026-10-31 00:17 (new) → proposed (announced): novox/mesh-delivery#122's head announced
  • 2026-10-31 00:17 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-31 00:22 ready → closed (closed): the pull request closed unmerged

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@14f68219cf29` — **closed** since 2026-10-31T00:22:21Z **Transitions** - 2026-10-31 00:17 (new) → proposed (announced): novox/mesh-delivery#122's head announced - 2026-10-31 00:17 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-31 00:22 ready → closed (closed): the pull request closed unmerged 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 closed this pull request 2026-10-31 00:22:19 +00:00

Pull request closed

This pull request cannot be reopened because the branch was deleted.
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#122