Assert every declared state's bucket on each push (hq ADR 0201) #262

Merged
mesh-admin merged 1 commits from fix/buckets-on-push into main 2026-10-04 09:21:25 +00:00
Contributor

Found on the live test of claude-code: buckets were asserted only by the raise at controller start, so a module registered and assigned since had no bucket until the control plane restarted, and its bundle's watch timed out. Now every push asserts the catalogue's declared buckets (idempotent, over the link's own connection) before issuing the memberships that name them; a failure is said and the push stands. broker.OnConn gives the JetStream handle over a held connection. Live test against MESH_TEST_NATS added; cmd and broker tests pass.

Found on the live test of claude-code: buckets were asserted only by the raise at controller start, so a module registered and assigned since had no bucket until the control plane restarted, and its bundle's watch timed out. Now every push asserts the catalogue's declared buckets (idempotent, over the link's own connection) before issuing the memberships that name them; a failure is said and the push stands. `broker.OnConn` gives the JetStream handle over a held connection. Live test against MESH_TEST_NATS added; cmd and broker tests pass.
mesh-admin added 1 commit 2026-10-04 09:13:45 +00:00
The raise at start was the only place buckets were asserted, so a module
registered and assigned since had none until the control plane restarted —
found on the first module to declare state.
mesh-admin merged commit 912e9f4e85 into main 2026-10-04 09:21:25 +00:00
mesh-admin deleted branch fix/buckets-on-push 2026-10-04 09:21:25 +00:00
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-controller#262