Watch
0
0
Fork
You've already forked hyperhive
0
Commit graph

6,699 commits

Author SHA1 Message Date
damocles
51479d9fe8 docs: active voice in the run state section 2026-11-15 17:12:31 +01:00
damocles
d476bf1a0c docs: the run state the subagent daemon publishes 2026-11-15 17:12:31 +01:00
damocles
07e237c789 rustfmt the run-state publisher 2026-11-15 17:12:31 +01:00
damocles
1652959741 hive-subagent-mcp: publish each subagent's run state to the swarm queue 2026-11-15 17:12:31 +01:00
damocles
186038718c hive-agent: test that a leftover active_model in the harness state file is ignored and kept 2026-11-15 16:13:47 +01:00
damocles
05c193859f hive-agent: stop writing active_model to the harness state file, nothing reads it 2026-11-15 16:13:47 +01:00
iris
78e063e78c swarm ui: the login button's wording is a tested function
The label that switches between log in and log in again moves next to the
stored login's other wording, so it has a test.
2026-11-15 16:13:15 +01:00
iris
e9ddfd61ec swarm ui: a log in button in the claude login row of an agent's settings
An agent with no stored login, or one to log in again, can be logged in from
the settings panel instead of waiting for its turns to fail with a login needed
badge first. The button opens the same dialog as the card's.
2026-11-15 16:13:15 +01:00
iris
c7d7f0df55 swarm: subagent-status KV bucket, the run state of each subagent
One key per subagent (<agent>.<subagent>) holding running/finished, since,
exit, model, effort and the publish time. The controller creates the bucket,
and the agent credential may publish its own keys. Nothing reads or writes
it yet; the daemon publisher and the controller list follow.
2026-11-15 15:36:12 +01:00
argus
c9c2e75091 review classifier: a nix option sits in the tree that fits it
A negative rule for options added or moved under services.hyperhive: swarm.*
holds swarm-wide facts that are the same on every host, deploy.* holds this
host's own deployment decisions grouped under the deployed component, and a
per-host setting that lands under swarm.* or under another module's namespace
while configuring a component deploy.* names is in the wrong tree. Read-only
outputs, internal options and a rename into the right tree are exempt. The
rules-file test lists the new name.
2026-11-15 15:34:12 +01:00
atlas
4bd02ea14d agents keep their github token in /run, fetched on every start, not in the state dir 2026-11-15 14:08:57 +01:00
atlas
adc61c9043 remove the swarm wireguard mesh; tombstone its options 2026-11-15 02:17:44 +01:00
atlas
fbfc6f392a egress anti-spoof: the vm test pins drop under the new option path 2026-11-15 01:43:50 +01:00
atlas
2325ae6a50 egress anti-spoof: the legacy-name case pins drop, the non-default 2026-11-15 01:43:50 +01:00
atlas
a812e4dd21 egress anti-spoof: the vm test names drop as explicit, and the log default waits for the stale-delete lines 2026-11-15 01:43:50 +01:00
atlas
bbe6f11cb9 egress anti-spoof: the drop description no longer says a leased container is never affected 2026-11-15 01:43:50 +01:00
atlas
b8098686c4 egress anti-spoof: back to log by default; the lease set does not survive a suspend/resume 2026-11-15 01:43:50 +01:00
atlas
da5868e3be hive-c0re: resolve the reconcile tick's doc link by full path 2026-11-15 01:38:26 +01:00
atlas
b8c07a5492 hive-c0re: reconcile declared agents periodically, with backoff 2026-11-15 01:38:26 +01:00
damocles
7468aa4cff nix: move the egress firewall options under deploy.hive-controller.egress 2026-11-15 01:22:35 +01:00
atlas
1cef99e992 egress anti-spoof: renewals from the leased address pass, a stale lease delete is skipped 2026-11-15 01:20:41 +01:00
atlas
3fa926d7d6 otel: collectors drop their own export-failure lines instead of shipping them 2026-11-15 01:20:18 +01:00
atlas
f5e99fe248 gateway: cache authelia's 200 verdicts on the log and metric ingest routes 2026-11-14 22:05:08 +01:00
iris
0e99662710 docs: the swarm README and credentials page keep the overview, the rest moves to its own pages
The hive directory and the WireGuard mesh become handbook pages of their own,
the controller's mint-failure handling moves to controller.md, and the
credential-by-credential mechanics and the secret store UI's proxy move to a new
implementation page.
2026-11-14 13:33:50 +01:00
damocles
7beb1193f4 swarm-controller: archive a destroyed agent's config repo, unarchive it when the name is created again 2026-11-14 13:29:39 +01:00
iris
814edd1d67 docs: swarm/services.md is one blurb per service, the host detail moves to the service's implementation page
Each service section lost its container, credential and metrics detail to a
Host setup section on its own implementation page, unchanged apart from links.
The four agentAuth option rows that sat above the page title moved into the
telemetry page's metrics option table.
2026-11-14 13:28:02 +01:00
atlas
60aede950b egress anti-spoof: drop by default again 2026-11-14 13:27:13 +01:00
iris
8c4541400f docs: a getting-started page on what hyperhive is 2026-11-14 13:26:57 +01:00
iris
88b451afd9 scripts: doc-lengths lists the docs pages and paragraphs over a size limit, worst first
A report, not a gate: 400 lines per page and 100 words per paragraph by default
(`-l` and `-w` override), not wired into CI until the list is worked down.
2026-11-14 13:26:21 +01:00
damocles
183e55dd80 hive-agent: let an agent compact from 40% context usage instead of 66% 2026-11-14 12:35:27 +01:00
atlas
c7580ac3dd archive: say the check reads from the bucket with the s3 backend 2026-11-14 11:57:57 +01:00
atlas
5c30985a25 swarm-archive: check each agent's restic repository weekly
A weekly swarm-archive-check unit runs restic check --read-data-subset on every repository on the archive host, serialised with the prune by a shared flock. It logs archive check failed per agent, pushes check gauges, and has an alert and dashboard columns.
2026-11-14 11:53:27 +01:00
atlas
c4919c5945 archive: read the repository without its lock for the prune metrics 2026-11-14 11:40:20 +01:00
atlas
b60779093e archive: test the metric functions and the backup output filter, and skip absent summary fields 2026-11-14 11:35:46 +01:00
atlas
723ce866f1 archive: push restic backup and prune metrics, and add a backups dashboard 2026-11-14 11:08:57 +01:00
flake-bot
9ac6024a67 nix flake update 2026-11-14 09:26:03 +01:00
atlas
5189e8fb4b egress: refresh a leased pair on dhcp renewal and default anti-spoof to log
dnsmasq runs the dhcp-script on a renewal only with script-on-renewal, so a pair loaded at the first lease timed out while the lease kept renewing and the bridge table dropped the container's traffic. Set script-on-renewal, time pairs out remaining + 300s, default antiSpoof to log, and run the vm test through renewals with drop.
2026-11-13 23:55:12 +01:00
atlas
cf360b74b9 remove the hivectl-only quota verbs and the trollshell status feed 2026-11-13 16:14:41 +01:00
atlas
70a8e54038 egress: reject needs the intercept 2026-11-13 13:00:13 +01:00
atlas
dad15ca855 egress: forward = reject for intercepted agents, direct_mac exempt in log mode too 2026-11-13 13:00:13 +01:00
atlas
dff662c6b3 refuse tls hellos that carry encrypted client hello before squid sees them 2026-11-13 12:56:58 +01:00
atlas
de43dac33c ci: type-check the semi-spread and swarm-builder-offline test scripts with stand-in values 2026-11-13 11:00:04 +01:00
atlas
a401b0c8ef vm tests: stop hive-squid binding journal to both a string and a function 2026-11-13 10:59:30 +01:00
atlas
49266e4410 remove what no longer has a reader: build-log store, dashboard sent/delivered events, graph resource dep 2026-11-13 10:58:49 +01:00
atlas
32f5b74ba4 ci: type-check vm test scripts without building the vms
Adds checks.<system>.vm-test-typecheck-<name> for hive-squid, swarm-archive, agent-ephemeral-rootfs, full-setup and wg-hive: ty and ruff F over nixpkgs' test-script prelude, the machine hints from the node names, and the script text. Node configs are never evaluated. vm-test-typecheck-control passes only when ty rejects a known type error.
2026-11-13 09:47:36 +01:00
atlas
712dcf2b25 squid intercepts restricted and log agents' web traffic, named from the bound source address 2026-11-13 09:47:09 +01:00
damocles
03b9c39498 hive-agent: test the todo socket server's error replies, bind and a full socket round trip 2026-11-13 09:23:29 +01:00
atlas
df02ff89aa vm tests: fail on a missing log port, give up early on a broken hive 2026-11-13 09:04:09 +01:00
atlas
bf77b72217 hive-priv: create the nixos-containers directories at boot 2026-11-13 09:03:39 +01:00
atlas
a437f9ccd5 drop hive and agent response fields the frontend never reads 2026-11-13 08:55:41 +01:00