Watch
0
0
Fork
You've already forked hyperhive
0
hyperhive/swarm-controller/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
iris 50650476ad swarm-controller+swarm-ui: merge config-PR into GET /api/agents/status
Per mara's review call on this PR: "the view should be filled by a single
backend call." AgentsPage.tsx was doing three fetches (/api/agents,
/api/config-prs, /api/agents/status) and joining them client-side by name.

Moves the config-PR join server-side instead: AgentStatusRow gains a
config_pr field, populated by get_agents_status's handler from
AppState::config_prs after agent_status::AgentStatusReader::view() returns
- not inside that module, which has no forge client and stays that way (see
the field's doc comment for why the handler is the right layer for this
merge, not the reader).

AgentsPage.tsx now does exactly one fetch and no client-side joining at all
- the wire row is the table row. Dropped the separate AgentStatusRow TS
interface (folded into AgentRow, which now mirrors the backend type
field-for-field) and the /api/agents + /api/config-prs fetches entirely;
neither is needed once /api/agents/status already returns every roster
agent with its config PR attached.

ConfigPrStatus gained Deserialize (previously Serialize-only) since
AgentStatusRow derives both and a struct's derive requires every field to
support it.
2026-09-02 14:18:02 +02:00
..
agent_status.rs swarm-controller+swarm-ui: merge config-PR into GET /api/agents/status 2026-09-02 14:18:02 +02:00
auth.rs swarm-queue-client: audience-scoped tokens + a blocking mint for a non-reactor caller 2026-08-29 11:17:24 +02:00
config_pr.rs swarm-controller: fix stale route reference in snapshot's doc comment 2026-08-19 22:27:12 +02:00
forge.rs swarm-controller+swarm-ui: merge config-PR into GET /api/agents/status 2026-09-02 14:18:02 +02:00
issue_report.rs swarm-controller: fix broken intra-doc link in issue_report.rs 2026-08-31 18:50:38 +02:00
main.rs swarm-controller+swarm-ui: merge config-PR into GET /api/agents/status 2026-09-02 14:18:02 +02:00
otel_http_client.rs move otel_http_client from swarm-queue-client into swarm-controller 2026-08-29 11:17:24 +02:00
status.rs swarm-controller: make status::render/row pub(crate) so agent_status.rs's doc links resolve 2026-09-02 10:20:29 +02:00
vcs_metrics.rs docs: restructure into topic subdirectories, collapse duplicated index 2026-09-02 01:55:37 +02:00
wanted.rs feat(#3124): publish the agent set the swarm declares for each hive 2026-09-02 02:32:36 +02:00
webhook.rs swarm-controller: emit vcs commit/push otel counters from an instance-wide forge webhook 2026-08-24 20:54:49 +02:00