L3 final: core-credentials back, nats provides bus-state, artifact-store-tools calls the seat mesh-catalog, the old catalog module drops its claim (ADR 0614, ADR 0604, issue 774) #605

Merged
mesh-tools merged 7 commits from feat/l3-final into main 2026-11-04 00:23:43 +00:00
Member

One delivery group, branch feat/l3-final in mesh-sdk, mesh-delivery, mesh-catalog, mesh-tools and mesh-host: the final release of design 47's step L3 (issue 774, with 1367 and 1585).

This member:

  • core-credentials back in nats, mesh-provisioner and mesh-provisioner-client (revert of f2eb5482).
  • nats provides bus-state (scope mesh, credential form none) (ADR 0614 §5).
  • artifact-store-tools invokes seat:mesh-catalog.modules and module (ADR 0604 §3).
  • The old catalog module drops its claim of mesh-catalog and is deprecated in prose. checks/manifests refuses a second claimant (ADR 0604 §6).
  • After check 278aa5f0ccbe failed: mesh-provisioner and mesh-provisioner-client's manifests take version 2. That gives new bytes, because the running indexer holds stale refusals for the reverted bytes (a recovery of the moment, said to the operator; the thorough fix is in mesh-delivery in this group). mesh-provisioner-client's report() is kept under a bounded context the stop does not cancel (a race that also fails on main under -race).
  • The four modules pin mesh-sdk 85ba0a9a70d8.

What the operator sees: the bus module (nats) gets a new build on novox; the release's Approve answers its record ask (ADR 0601 §1). The older open ask for nats (issue 911 note 4) is superseded.
Tests: every touched module within budget; one new test function in checks/manifests.

Reviewed-by: mesh-code-reviewer@shanks at 6c09be4a70
Pushed-by: lead-47@shanks

https://claude.ai/code/session_01JG73KG7AfSdh6FP8VrBqCn

One delivery group, branch feat/l3-final in mesh-sdk, mesh-delivery, mesh-catalog, mesh-tools and mesh-host: the final release of design 47's step L3 (issue 774, with 1367 and 1585). This member: - `core-credentials` back in nats, mesh-provisioner and mesh-provisioner-client (revert of f2eb5482). - nats provides `bus-state` (scope mesh, credential form none) (ADR 0614 §5). - artifact-store-tools invokes `seat:mesh-catalog.modules` and `module` (ADR 0604 §3). - The old catalog module drops its claim of mesh-catalog and is deprecated in prose. checks/manifests refuses a second claimant (ADR 0604 §6). - After check 278aa5f0ccbe failed: mesh-provisioner and mesh-provisioner-client's manifests take version 2. That gives new bytes, because the running indexer holds stale refusals for the reverted bytes (a recovery of the moment, said to the operator; the thorough fix is in mesh-delivery in this group). mesh-provisioner-client's report() is kept under a bounded context the stop does not cancel (a race that also fails on main under -race). - The four modules pin mesh-sdk 85ba0a9a70d8. What the operator sees: the bus module (nats) gets a new build on novox; the release's Approve answers its record ask (ADR 0601 §1). The older open ask for nats (issue 911 note 4) is superseded. Tests: every touched module within budget; one new test function in checks/manifests. Reviewed-by: mesh-code-reviewer@shanks at 6c09be4a703eae461e237e11a80a23da5b9febb9 Pushed-by: lead-47@shanks https://claude.ai/code/session_01JG73KG7AfSdh6FP8VrBqCn
mesh-tools added 5 commits 2026-11-03 22:50:45 +00:00
The indexer whose judge knows the word runs now, so the word returns; the new node-engine keeps what runs for a manifest that lacks it.

Claude-Session: https://claude.ai/code/session_01JG73KG7AfSdh6FP8VrBqCn
Claude-Session: https://claude.ai/code/session_01JG73KG7AfSdh6FP8VrBqCn
The verb module takes no commit; a definition is kept by the commit its answer names.

Claude-Session: https://claude.ai/code/session_01JG73KG7AfSdh6FP8VrBqCn
Claude-Session: https://claude.ai/code/session_01JG73KG7AfSdh6FP8VrBqCn
Pin mesh-sdk 85ba0a9a70d8, the group's head of feat/l3-final (issue 774)
mesh/delivery closed: a newer head of the same pull request
mesh/delivery-group group feat/l3-final rejected: composed together: the checker's verdict at the members' heads (278aa5f0ccbe): unit: mesh-provisioner-client/…
mesh/check failed (2): unit: mesh-provisioner-client/cmd/mesh-provisioner-client.TestNatsANodeComingBackFil…; and 1 more | 093967af9b2f on be24f5ac387f
093967af9b
Claude-Session: https://claude.ai/code/session_01JG73KG7AfSdh6FP8VrBqCn
Author
Member

Delivery novox/mesh-catalog@6c09be4a703e — merged since 2026-11-04T00:23:47Z

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

Group feat/l3-final: novox/mesh-catalog@6c09be4a70, novox/mesh-delivery@70ade15c36, novox/mesh-host@30b86ea602, novox/mesh-sdk@85ba0a9a70, novox/mesh-tools@7fd9d893c0

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

Transitions

  • 2026-11-03 23:56 (new) → proposed (announced): novox/mesh-catalog#605's head announced
  • 2026-11-03 23:56 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-04 00:23 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@6c09be4a703e` — **merged** since 2026-11-04T00:23:47Z **Source** — source.main moved to novox/mesh-catalog@dd458cb155f5. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves. **Group** `feat/l3-final`: novox/mesh-catalog@6c09be4a703e, novox/mesh-delivery@70ade15c36eb, novox/mesh-host@30b86ea602a8, novox/mesh-sdk@85ba0a9a70d8, novox/mesh-tools@7fd9d893c0a5 - composed together: pass — the checker's verdict at the members' heads (d6a3e805db4a) **Transitions** - 2026-11-03 23:56 (new) → proposed (announced): novox/mesh-catalog#605's head announced - 2026-11-03 23:56 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-04 00:23 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: not merged. The merge of this pull request into main at 093967af9b was declined: the operator, via telegram (user id verified), chose Decline. A new head asks the operator again.

mesh-delivery: **not merged.** The merge of this pull request into main at 093967af9b2fdaede6d0cba39334ba4d8c6e4bd4 was declined: the operator, via telegram (user id verified), chose Decline. A new head asks the operator again.
jschoubben added 2 commits 2026-11-03 23:56:51 +00:00
The running indexer holds refusals from 21:14 for the exact bytes of these manifests, which carry core-credentials again. A new digest is read afresh; the thorough fix of stale verdicts is in the indexer in this group (issue 774).

Claude-Session: https://claude.ai/code/session_01JG73KG7AfSdh6FP8VrBqCn
Keep a module's report under a bounded context the client's stop does not cancel (issue 774)
mesh/delivery-group group feat/l3-final merged: every member is merged
mesh/delivery merged: source.main moved to novox/mesh-catalog@dd458cb155f5
mesh/check checking 6c09be4a703e on dd458cb155f5 | novox/mesh-catalog#605 in group feat/l3-final
6c09be4a70
The test of a node coming back stops the client before the report of zsh is kept; the cancelled Put left s.applied without zsh, so leftModules never removed it (2 of 20 runs failed under -race, also at origin/main). Thorough: report() keeps under context.WithoutCancel with a 5 s bound; the same test now passes 40 of 40.

Claude-Session: https://claude.ai/code/session_01JG73KG7AfSdh6FP8VrBqCn
mesh-tools merged commit dd458cb155 into main 2026-11-04 00:23:43 +00:00
mesh-tools deleted branch feat/l3-final 2026-11-04 00:23:44 +00:00
Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-catalog#605