Make the controller's event consumer from now, and give a stuck one a reset (hq issue 248) #51

Merged
mesh-admin merged 2 commits from fix/a-consumer-on-a-history-stream-starts-from-now into main 2026-10-05 15:27:23 +00:00
Contributor

The controller's EVENTS consumer was made with the server's default (deliver all) and replayed a week of merges and build outcomes one at a time, holding every new merge and build behind them (hq issue 248).

  • Consumer.FromNow: a consumer that does not exist is made to deliver from now; an existing one keeps its place. Set on the controller's EVENTS consumer.
  • JetStream.ResetConsumer + broker consumer-reset <stream> <consumer>: re-make a stuck consumer from now, configuration otherwise kept; refused on a work queue.

Tests: new live test (MESH_TEST_NATS) — made from now holds none of the past and does hold the next; asserted again keeps its place; the default replays all; reset leaves nothing pending and keeps every setting; a work queue is refused. Existing live consumer tests and the full suite pass; vet and gofmt clean.

The controller's EVENTS consumer was made with the server's default (deliver all) and replayed a week of merges and build outcomes one at a time, holding every new merge and build behind them (hq issue 248). - `Consumer.FromNow`: a consumer that does not exist is made to deliver from now; an existing one keeps its place. Set on the controller's EVENTS consumer. - `JetStream.ResetConsumer` + `broker consumer-reset <stream> <consumer>`: re-make a stuck consumer from now, configuration otherwise kept; refused on a work queue. Tests: new live test (MESH_TEST_NATS) — made from now holds none of the past and does hold the next; asserted again keeps its place; the default replays all; reset leaves nothing pending and keeps every setting; a work queue is refused. Existing live consumer tests and the full suite pass; vet and gofmt clean.
mesh-admin added 2 commits 2026-10-05 15:16:46 +00:00
A consumer made with the server's default replays everything a stream that
keeps history holds: the controller's EVENTS consumer, re-made that way,
replayed a week of merges and builds one at a time and held every new one
behind them. FromNow makes it start at the end; broker consumer-reset
re-makes a stuck one from now, refusing a work queue. hq issue 244.
mesh-admin merged commit e8478e208b into main 2026-10-05 15:27:23 +00:00
mesh-admin deleted branch fix/a-consumer-on-a-history-stream-starts-from-now 2026-10-05 15:27:23 +00:00
Author
Contributor

Delivery novox/mesh-controller@e8478e208b62 — held since 2026-10-06T23:05:28Z

Held for a person: merged without a passing check: only a person decides that it goes on — mesh-delivery.release with why lets it go on.

Delivery plan — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step

  • tier 0: mesh-controller
  • tier 1: build-agent
  • tier 2: route-proxy
  • ace: receives build-agent, route-proxy
  • g14: receives build-agent
  • novox: receives mesh-controller, build-agent, route-proxy
  • shanks: receives build-agent
  • build-agent keeps data (ADR 0233): what it holds is backed up before it moves
  • route-proxy provides route: its consumers are sent again after it
  • route-proxy keeps data (ADR 0233): what it holds is backed up before it moves

Transitions

  • 2026-10-06 23:05 (new) → proposed (announced): novox/mesh-controller#51 merged; its head was not heard by this owner, so it is made from the forge's word
  • 2026-10-06 23:05 proposed → held (merged-unchecked): merged without a passing check — a verdict known with it is taken first: only a person decides that it goes on

The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.

<!-- mesh-delivery:view --> **Delivery** `novox/mesh-controller@e8478e208b62` — **held** since 2026-10-06T23:05:28Z Held for a person: merged without a passing check: only a person decides that it goes on — `mesh-delivery.release` with why lets it go on. **Delivery plan** — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step - tier 0: mesh-controller - tier 1: build-agent - tier 2: route-proxy - ace: receives build-agent, route-proxy - g14: receives build-agent - novox: receives mesh-controller, build-agent, route-proxy - shanks: receives build-agent - build-agent keeps data (ADR 0233): what it holds is backed up before it moves - route-proxy provides route: its consumers are sent again after it - route-proxy keeps data (ADR 0233): what it holds is backed up before it moves **Transitions** - 2026-10-06 23:05 (new) → proposed (announced): novox/mesh-controller#51 merged; its head was not heard by this owner, so it is made from the forge's word - 2026-10-06 23:05 proposed → held (merged-unchecked): merged without a passing check — a verdict known with it is taken first: only a person decides that it goes on The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
This repo is archived. You cannot comment on pull requests.
No Reviewers
1 Participants
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-controller#51