The vault makes the first credential of every new consumer, as the controller did (issue 1126) #595

Merged
mesh-tools merged 1 commits from fix/1126-provision-credentials into main 2026-11-02 15:31:38 +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 019614aedc

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 019614aedc140e98bfb15ee4e4f76455b6fad90c https://claude.ai/code/session_01NcbgfJ9Gum47zkFKWRaovL
mesh-tools added 1 commit 2026-11-02 14:39:07 +00:00
mesh-vault: make a new consumer's first credential whether or not it is handed
mesh/delivery merged: source.main moved to novox/mesh-catalog@c52afdf88b84
mesh/delivery-group group fix/1126-provision-credentials merged: every member is merged
mesh/check pass 019614aedc14 on fe7c5ccb64bf | unit 6028 run, 142 kept, 16 skipped | integration 6091 run, 174 kept, 25 skipped | over bound: unit, in…
019614aedc
With the controller gone nothing made the pair row of a new consumer: the vault minted only for a provider
handed to the provisioner (ADR 0349 clause 17's premise, that a holder filled the old way gets the controller's
value). A node composing its own now asks the vault for its credentials (own, ADR 0547 §2, ADR 0550 §5), so the
vault makes the first value of a shared or per-login provision for every holder, create-only (issue 1126; ADR
0570 §6). A remake or a rotation still waits while a holder is filled the old way. A credential asked of the
vault in mesh-provisioner's provisions starts a pass at once, one pass at a time, and vault_status answers each
provider and provision's last outcome as `credentials`.

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

Delivery novox/mesh-catalog@019614aedc14 — merged since 2026-11-02T15:31:40Z

Source — source.main moved to novox/mesh-catalog@c52afdf88b. 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-catalog#595'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-catalog@019614aedc14` — **merged** since 2026-11-02T15:31:40Z **Source** — source.main moved to novox/mesh-catalog@c52afdf88b84. 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-catalog#595'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 c52afdf88b into main 2026-11-02 15:31:38 +00:00
mesh-tools deleted branch fix/1126-provision-credentials 2026-11-02 15:31:39 +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-catalog#595