hyperhive/docs
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas 860484a193 refactor(#2439): build hive-wide stop/start/restart DAGs dynamically
Hive-wide `stop` / `start` / `restart` emit ONE DAG with a per-agent
subgraph each (concurrent on their own leases) instead of N DAGs — and each
subgraph is now built dynamically from the agent's live running state rather
than a fixed template shape:

- online agent: the full stop→reconcile (restart: stop-for-update→reconcile)
  chain; `graceful` prepends signal→drain.
- offline agent: just `SetWanted → Reconcile` (nothing to quiesce/stop; a
  restart of a down agent is really a start).

The head `SetWanted` (intent) and tail `Reconcile` (convergence guarantee)
are always present; only the mechanical `Signal`/`Drain`/`StopForUpdate`
nodes are state-conditional. Keeping `Reconcile` in every shape closes the
TOCTOU window — a race-up between the `is_running` read and node exec is
still converged in-DAG (with `StopForUpdate`-noop as the backstop) — with no
reliance on an external reconcile sweep.

The state-aware assembly needs an async `is_running` read, so it moves out
of the pure/sync `templates.rs` into `submit.rs`, layered as pure
`*_chain(running)` → pure `*_spec(targets)` (the unit-test seam) → async
`*_many` (reads live state + submits). `templates.rs` keeps only the shared
pure primitives (`node`/`after_ok`/`rebuild_nodes`).

Callers await the now-async submit fns (server, dashboard, socket_server).
Tests exercise both the online and offline shapes via the pure `*_spec`
seam. docs/coordinator.md shapes updated.
2026-07-15 00:29:54 +02:00
..
tools fix(#1763): address argus review on PR #2430 2026-07-14 19:23:59 +02:00
turn-loop refactor: nix/host-modules + nix/agent-modules layout, update doc paths 2026-07-13 22:05:49 +02:00
web-ui extra-forges: fully dashboard-provisioned, no host config 2026-07-14 18:38:55 +02:00
agent-hierarchy.md refactor: nix/host-modules + nix/agent-modules layout, update doc paths 2026-07-13 22:05:49 +02:00
approvals.md feat(#2377): forge-webhook-triggered config-PR merge flow 2026-07-11 12:19:52 +02:00
boundary.md docs(security): ci netns, knowledge .git tmpfs, matrix id/secret split 2026-07-10 19:17:17 +02:00
ci.md refactor: nix/host-modules + nix/agent-modules layout, update doc paths 2026-07-13 22:05:49 +02:00
conventions.md feat(#2377): forge-webhook-triggered config-PR merge flow 2026-07-11 12:19:52 +02:00
coordinator.md refactor(#2439): build hive-wide stop/start/restart DAGs dynamically 2026-07-15 00:29:54 +02:00
forge.md docs(forge): note forgejo-api client + remaining raw-HTTP surfaces 2026-07-07 09:25:51 +02:00
gateway.md docs: reflect the new nix layout and removed options 2026-07-13 22:23:20 +02:00
github.md fix(#1970): bake token path into gh/git wrappers — env var didn't reach claude's bash-tool context 2026-07-11 14:12:25 +02:00
gotchas.md docs: reflect the new nix layout and removed options 2026-07-13 22:23:20 +02:00
knowledge.md docs(security): ci netns, knowledge .git tmpfs, matrix id/secret split 2026-07-10 19:17:17 +02:00
matrix.md refactor: nix/host-modules + nix/agent-modules layout, update doc paths 2026-07-13 22:05:49 +02:00
network.md fix: shared-netns infra containers must not run their own firewall 2026-07-14 00:08:33 +02:00
observability.md fix(hive-metric): multi-thread runtime + counter default 2026-07-10 21:27:56 +02:00
persistence.md refactor: nix/host-modules + nix/agent-modules layout, update doc paths 2026-07-13 22:05:49 +02:00
security.md refactor: nix/host-modules + nix/agent-modules layout, update doc paths 2026-07-13 22:05:49 +02:00
setup.md docs(#2012): add first-run setup guide + link from index 2026-06-27 20:02:15 +02:00
swarm.md feat(#1997): add prettier markdown formatter to treefmt 2026-07-02 23:33:11 +02:00
terminal-rendering.md fix(terminal-rendering): move fmtToolUse table after numbered list 2026-07-04 18:56:59 +02:00
turn-loop.md refactor(#2112): remove the dead stdio transport from hive-agent-mcp 2026-07-11 00:55:41 +02:00
web-ui.md feat: rename matrix-accounts page to credentials, add github PAT tab 2026-07-11 12:40:13 +02:00