Registry recovery: the bus module's list, show and orphans answer each binding (issue 1966) #656

Merged
mesh-tools merged 1 commits from fix/1966-bindings-first-view into main 2026-11-11 10:32:27 +00:00
Member

The registry recovery (issue 1966, notes 201 and 202), one delivery group of four on branch fix/1966-bindings-first-view: mesh-contracts, mesh-sdk, mesh-catalog, mesh-delivery.

Why: the grants part on the broker node missed the bus module's created for the distribution's holds, windows and mirrors bindings, so about 190 publishes since 2026-11-09 went unanswered. The grants part now takes a first view of every binding from the seat mesh-broker's list at each start, holds the seat's events unacknowledged until that answer (or its 2-minute bound, when it raises first-view-unanswered and releases them), and applies them in order after it; list, show and orphans answer each held entry's binding, with its types.

Builds: design 25 bindings-first-view §1-§8 (hq 9ca4757; §2's types wording corrected in hq #545).

Tests: unit suites, go vet -tags integration and the touched packages' integration tests in all four (mesh-grants TestTheGrantsPartWhole 41 s, nats tools, the meshbroker contract test), at the reviewed heads. Review round 2 removed the hold, the "named since the ask" check and the pause cap in copies; each makes a test fail.

After delivery: mesh-grants.grants_membership for distribution on the broker node lists holds, windows and mirrors; then builder_publish_again per lost version, proven by oci-artifact-registry.versions.

Reviewed-by: mesh-code-reviewer@shanks at mesh-contracts 0167b24b9564df57e65cb6da81de905ebc908b54, mesh-sdk 0fe5b6a0e7e712b68e8154fcc26a3956cb395475, mesh-catalog ae056a44dd, mesh-delivery 8501968154b4721bc3d075c58068c5ceb25a8e6e

https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ

The registry recovery (issue 1966, notes 201 and 202), one delivery group of four on branch fix/1966-bindings-first-view: mesh-contracts, mesh-sdk, mesh-catalog, mesh-delivery. Why: the grants part on the broker node missed the bus module's `created` for the distribution's holds, windows and mirrors bindings, so about 190 publishes since 2026-11-09 went unanswered. The grants part now takes a first view of every binding from the seat mesh-broker's `list` at each start, holds the seat's events unacknowledged until that answer (or its 2-minute bound, when it raises `first-view-unanswered` and releases them), and applies them in order after it; `list`, `show` and `orphans` answer each held entry's binding, with its types. Builds: design 25 bindings-first-view §1-§8 (hq 9ca4757; §2's `types` wording corrected in hq #545). Tests: unit suites, go vet -tags integration and the touched packages' integration tests in all four (mesh-grants TestTheGrantsPartWhole 41 s, nats tools, the meshbroker contract test), at the reviewed heads. Review round 2 removed the hold, the "named since the ask" check and the pause cap in copies; each makes a test fail. After delivery: mesh-grants.grants_membership for distribution on the broker node lists holds, windows and mirrors; then builder_publish_again per lost version, proven by oci-artifact-registry.versions. Reviewed-by: mesh-code-reviewer@shanks at mesh-contracts 0167b24b9564df57e65cb6da81de905ebc908b54, mesh-sdk 0fe5b6a0e7e712b68e8154fcc26a3956cb395475, mesh-catalog ae056a44dd725867630d2e28f8886b5eaf90227a, mesh-delivery 8501968154b4721bc3d075c58068c5ceb25a8e6e https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
mesh-tools added 1 commit 2026-11-11 10:27:21 +00:00
The bus module's list, show and orphans answer each held entry's binding
mesh/delivery merged: source.main moved to novox/mesh-catalog@9dfb2eae0eb3
mesh/delivery-group group fix/1966-bindings-first-view merged: every member is merged
mesh/check checking ae056a44dd72 on 9dfb2eae0eb3 | novox/mesh-catalog#656 in group fix/1966-bindings-first-view
ae056a44dd
Held.binding is the entry's plan binding, the value its created and recreated
carry, present when the bus holds the entry's objects and absent on one it does
not (waiting, refused). Table rows in the reading verbs' test: the binding of a
held entry equals the one its created carries; a waiting entry has none.

Builds: design 25 bindings-first-view §2, §7 (hq d0760629, PR 543)

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

Delivery novox/mesh-catalog@ae056a44dd72 — merged since 2026-11-11T10:32:28Z

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

Group fix/1966-bindings-first-view: novox/mesh-catalog@ae056a44dd, novox/mesh-contracts@0167b24b95, novox/mesh-delivery@8501968154, novox/mesh-sdk@0fe5b6a0e7

Transitions

  • 2026-11-11 10:27 (new) → proposed (announced): novox/mesh-catalog#656's head announced
  • 2026-11-11 10:27 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-11 10:32 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@ae056a44dd72` — **merged** since 2026-11-11T10:32:28Z **Source** — source.main moved to novox/mesh-catalog@9dfb2eae0eb3. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves. **Group** `fix/1966-bindings-first-view`: novox/mesh-catalog@ae056a44dd72, novox/mesh-contracts@0167b24b9564, novox/mesh-delivery@8501968154b4, novox/mesh-sdk@0fe5b6a0e7e7 **Transitions** - 2026-11-11 10:27 (new) → proposed (announced): novox/mesh-catalog#656's head announced - 2026-11-11 10:27 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-11 10:32 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 9dfb2eae0e into main 2026-11-11 10:32:27 +00:00
mesh-tools deleted branch fix/1966-bindings-first-view 2026-11-11 10:32:27 +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#656