Watch
0
0
Fork
You've already forked hyperhive
0
hyperhive/swarm-nats-auth/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas d9c586ef94 swarm-controller: replay a subagent's newest rows before its live tail
A subagent's terminal opened directly showed nothing until the subagent
published again: the relay was a core subscription, though its rows sit
in term-sub-<agent> for 24 hours. It now goes through the agent route's
replay-then-tail, so it opens with the subagent's newest 100 rows and
resumes after Last-Event-ID.

- term_stream.rs: the replay takes a stream name and a filter subject
  instead of an agent, and `replay_or_live` (replay, else the live core
  subscription) is the one fn both routes call. When the filter is one of
  several subjects in the stream, a fresh reader's consumer starts at the
  oldest row and drops all but the newest REPLAY_ROWS it counts as
  pending, since the stream's newest sequences may belong to sibling
  subagents. A single-subject stream (term-main-<agent>) picks its start
  with replay_start exactly as before. Tests for both subagent cases.
- subagent_term.rs: the relay calls replay_or_live on the subagent's
  subject in term-sub-<agent> and reads Last-Event-ID; module doc and
  OpenAPI text no longer say "live only".
- main.rs: the handler test passes the new headers argument.
- swarm-queue-client agent_term.rs: replay_consumer_config takes the
  filter subject instead of the agent.
- swarm-queue-client subagent_term.rs: consumer_create_grant, the
  extended CONSUMER.CREATE form with a subagent subject as filter.
- swarm-nats-auth policy.rs: the controller holds that grant; the agent
  grant's `$SWARM.term.*` filter is two tokens short of a subagent
  subject, and the test that refused it now admits it.
- docs/swarm/ui.md, README.md: a subagent terminal opens with its newest
  rows.

Fixes #5527
2026-10-18 03:00:08 +02:00
..
agent_token.rs swarm-nats-auth: answer callout requests concurrently, skip expired ones 2026-10-17 23:36:01 +02:00
introspect.rs swarm-nats-auth: give issued user JWTs an exp 2026-10-17 16:29:55 +02:00
keystore.rs swarm-nats-auth: read the callout issuer and user seeds from the store 2026-10-06 14:53:33 +02:00
main.rs swarm-nats-auth: answer callout requests concurrently, skip expired ones 2026-10-17 23:36:01 +02:00
nkey.rs swarm-nats-auth: read the callout issuer and user seeds from the store 2026-10-06 14:53:33 +02:00
oidc_secret.rs swarm-nats-auth: answer callout requests concurrently, skip expired ones 2026-10-17 23:36:01 +02:00
policy.rs swarm-controller: replay a subagent's newest rows before its live tail 2026-10-18 03:00:08 +02:00
request.rs swarm-nats-auth: answer callout requests concurrently, skip expired ones 2026-10-17 23:36:01 +02:00
respond.rs swarm-nats-auth: give issued user JWTs an exp 2026-10-17 16:29:55 +02:00
xkey.rs swarm-nats-auth: answer callout requests concurrently, skip expired ones 2026-10-17 23:36:01 +02:00