compose: an offer of form none composes no credential and holds nothing (issue 1126) #159

Merged
mesh-tools merged 1 commits from fix/1126-provision-credentials into main 2026-11-02 15:31:34 +00:00
Member

Issue 1126 (remove the controller), delivery group fix/1126-provision-credentials: mesh-sdk and mesh-catalog. Since the controller is gone nothing made a provision's credential row for a new consumer, so nox's new build (requires mcp-endpoint, offered by node-tools with form none) is held on ace ('stands in for the grant of mcp-endpoint'). Quick fix: mint mesh-cli's row by hand (rejected: the next consumer meets it again). Thorough (chosen): compose derives no credential for form none on either end; the vault makes the first value (create-only) of shared and pair credentials for every holder (ADR 0570 §6); vault_status answers credentials.

Tests: written first; mesh-sdk compose table across forms; mesh-vault pair and status tests; mesh-host suites against this mesh-sdk; offline, vet both tags.

Reviewed-by: review-1126@shanks at c459f75730

https://claude.ai/code/session_01NcbgfJ9Gum47zkFKWRaovL

Issue 1126 (remove the controller), delivery group fix/1126-provision-credentials: mesh-sdk and mesh-catalog. Since the controller is gone nothing made a provision's credential row for a new consumer, so nox's new build (requires mcp-endpoint, offered by node-tools with form none) is held on ace ('stands in for the grant of mcp-endpoint'). Quick fix: mint mesh-cli's row by hand (rejected: the next consumer meets it again). Thorough (chosen): compose derives no credential for form none on either end; the vault makes the first value (create-only) of shared and pair credentials for every holder (ADR 0570 §6); vault_status answers credentials. Tests: written first; mesh-sdk compose table across forms; mesh-vault pair and status tests; mesh-host suites against this mesh-sdk; offline, vet both tags. Reviewed-by: review-1126@shanks at c459f757308a8a66d89aa0e89eb3b86b5dd50773 https://claude.ai/code/session_01NcbgfJ9Gum47zkFKWRaovL
mesh-tools added 1 commit 2026-11-02 14:39:04 +00:00
compose: an offer of form none composes no credential and holds nothing
mesh/delivery merged: source.main moved to novox/mesh-sdk@d6c87ee1a7ae
mesh/delivery-group group fix/1126-provision-credentials merged: every member is merged
mesh/check pass c459f757308a on 036266daff85 | unit 6028 run, 142 kept, 16 skipped | integration 6091 run, 174 kept, 25 skipped | over bound: unit, in…
c459f75730
After the controller, nothing makes a pair row for a new consumer, so a need whose provider offers no credential
(form none) was composed with a stand-in on both ends and the node-engine held the consumer (issue 1126:
mesh-cli on ace, "stands in for the grant of mcp-endpoint"). The vault never mints for form none, so such a need
now composes with no credential: the consumer's need carries none, the provider's grant carries the consumer
and nothing sealed, neither is named foreseen, CredentialsNeeded asks the vault for neither, and no empty grant
file is written.

Claude-Session: https://claude.ai/code/session_01NcbgfJ9Gum47zkFKWRaovL
Author
Member

Delivery novox/mesh-sdk@c459f757308a — merged since 2026-11-02T15:31:36Z

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

Group fix/1126-provision-credentials: novox/mesh-catalog@019614aedc, novox/mesh-sdk@c459f75730

  • composed together: pass — the checker's verdict at the members' heads (9b65c25b042b)

Transitions

  • 2026-11-02 14:39 (new) → proposed (announced): novox/mesh-sdk#159's head announced
  • 2026-11-02 14:39 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-11-02 15:31 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-sdk@c459f757308a` — **merged** since 2026-11-02T15:31:36Z **Source** — source.main moved to novox/mesh-sdk@d6c87ee1a7ae. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves. **Group** `fix/1126-provision-credentials`: novox/mesh-catalog@019614aedc14, novox/mesh-sdk@c459f757308a - composed together: pass — the checker's verdict at the members' heads (9b65c25b042b) **Transitions** - 2026-11-02 14:39 (new) → proposed (announced): novox/mesh-sdk#159's head announced - 2026-11-02 14:39 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-11-02 15:31 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 d6c87ee1a7 into main 2026-11-02 15:31:34 +00:00
mesh-tools deleted branch fix/1126-provision-credentials 2026-11-02 15:31:35 +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-sdk#159