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

6,034 commits

Author SHA1 Message Date
atlas
52d532ff5a render squid's users file from this hive's proxy credentials 2026-10-28 13:50:35 +01:00
atlas
ec06a91deb mint per-agent proxy credentials and a per-hive squid self-check credential 2026-10-28 13:50:35 +01:00
atlas
d452da09ae write the remaining test fake executables from a child process 2026-10-28 12:49:30 +01:00
atlas
41f832458e write the review-classifier fake agent scripts from a child process 2026-10-28 12:17:52 +01:00
atlas
c16cf1756f download an agent's cached closure in prebuild, building locally when that fails 2026-10-28 10:23:45 +01:00
atlas
b845630023 keep the cache's key and pull token for hive-priv in a root-only directory 2026-10-28 10:23:01 +01:00
atlas
d241e64ab1 test the run_node dispatch and the reconcile, signal, drain and purge failure paths 2026-10-28 10:22:22 +01:00
atlas
b1a00a3222 request the review classifier when a pr is opened or reopened 2026-10-28 10:22:13 +01:00
flake-bot
668bd5d46c nix flake update 2026-10-28 08:51:46 +01:00
atlas
3493ba4a96 count suspended time when ageing the queue client's cached token
The cache aged the token on Instant, which does not advance while the host
is suspended, so a resumed host kept presenting an expired token. Age it on
the wall clock, and drop the token when the queue refuses it.
2026-10-28 08:49:55 +01:00
atlas
57b04d6c49 let the operator set, replace and remove an agent's backend env from the swarm ui 2026-10-28 08:49:32 +01:00
atlas
398b2af44b test the remaining job-queue executors through the host seam 2026-10-28 08:49:23 +01:00
atlas
28be594f79 ship the cache host init units' journal through the hive collector 2026-10-28 08:49:14 +01:00
atlas
ca194f5c91 state the heal_own_dir cause in the backend env comments 2026-10-28 02:22:55 +01:00
atlas
be3a3af093 say that the backend env leaf and file are agent-writable, and why that is accepted 2026-10-28 01:24:29 +01:00
atlas
75e9e205e3 fetch the agent's backend env file from the store, seeded from the existing file
the agent's own root unit reads swarm/agents/<agent>/backend-env into /run and
creates it from backendEnvironmentFile with -cas=0 when the store holds nothing.
the shared agent policy gains create (not update) on that one leaf. the harness
and the subagent daemon load the old file first and the fetched one after it.
2026-10-28 01:24:29 +01:00
atlas
5486fc0333 report per agent whether a hive can pull its latest closure from the cache
for each agent the hive looks up its record in agent-closures, fetches the closure's narinfo from the cache with the pull token and checks that a signature by the cache's public key covers it. the result is a log line and the gauge hyperhive.agent.closure_pullable, with a reason label when it is 0. nothing is downloaded and deploys still build locally. part 3 of 3: the probe needs the cache facts and the closure read grant from parts 1 and 2.
2026-10-28 01:19:56 +01:00
atlas
a55d55e494 read the cache facts on the hive and let hives read the closure bucket
hive-c0re reads its cache facts from the store every five minutes and writes /run/hyperhive/attic/{netrc,substituter,public-key}, each 0600. it accepts only an https url, so the pull token never travels in clear. hives get a read grant on the agent-closures bucket, and swarm-queue-client a reader for it. part 2 of 3: nothing uses the files or the reader until the probe lands.
2026-10-28 01:19:56 +01:00
atlas
1e5070796d copy the cache's pull facts to each hive and create them in the in-swarm cache
the in-swarm cache stores its address, name and public key beside its tokens, create-only. swarm-controller copies the four cache facts to swarm/hives/<hive>/attic/* every five minutes, with read on the sources and write on the copies. part 1 of 3: nothing reads the copies until the hive reader and probe land.
2026-10-28 01:19:56 +01:00
atlas
c79c41e004 warn when a hive host without a leaf names the otel oidc secret file 2026-10-28 00:46:19 +01:00
iris
144fae3919 docs: the review classifier is live; drop 'planned, not implemented' from its index entries and its page
Two index entries (docs/README.md, docs/swarm/README.md) and the banner on
docs/swarm/review-classifier.md still said the classifier does not exist.
2026-10-28 00:38:07 +01:00
atlas
606817a994 default swarm.attic domain and cache to the swarm's own cache on every host 2026-10-27 22:16:26 +01:00
atlas
61292e865e add a host seam to the job-queue executors and test them 2026-10-27 21:02:31 +01:00
atlas
078aed1335 refuse unlisted squid names before any destination lookup 2026-10-27 20:59:06 +01:00
atlas
5513a6e875 rename the access-log variable in the squid vm test so it stops shadowing the driver's logger 2026-10-27 20:59:06 +01:00
atlas
a2cf6fe8bb deploy squid on every hive host, with exporter, journal forwarding and self-check 2026-10-27 20:59:06 +01:00
atlas
f66b169158 give each appservice test its own scratch directory 2026-10-27 17:33:06 +01:00
atlas
d5c5862654 keep the matrix appservice registration in bao, with the host file as the last copy 2026-10-27 17:33:06 +01:00
atlas
fb6cd36b5f format the docs tables and the services page 2026-10-27 16:03:44 +01:00
atlas
a572fb6a7f forward the attic container's journal to the swarm collector 2026-10-27 16:03:23 +01:00
atlas
99fab06348 keep authelia's keys in bao, seeded from the existing key files 2026-10-27 16:01:57 +01:00
atlas
a70b25847e refuse a dependency add of an issue on itself 2026-10-27 14:52:41 +01:00
atlas
8895bfc63f document the cycle refusal in dependency add help 2026-10-27 14:52:41 +01:00
atlas
347b8119b2 refuse a dependency add that would close a cycle 2026-10-27 14:52:41 +01:00
atlas
10508895c4 swarm-ui: show and toggle an agent's unrestricted internet flag, add it to the create dialog 2026-10-27 14:45:04 +01:00
atlas
24beb167d8 hive-c0re: export the agent's unrestricted internet flag as a gauge 2026-10-27 14:44:54 +01:00
atlas
bcb15805d0 hive-c0re: fill the new flag when seeding imported permissions 2026-10-27 14:44:41 +01:00
atlas
ae8b2d39ec swarm: merge a re-create into the stored agent permissions instead of overwriting them 2026-10-27 14:44:41 +01:00
atlas
8699857024 swarm: unrestricted_internet flag on the agent permissions record, unset reads as on, create writes false 2026-10-27 14:44:41 +01:00
atlas
e77459d2cb count the cache's container in the service-container cases 2026-10-27 14:28:51 +01:00
atlas
458a046b8d run attic as a swarm service with deploy.attic.enable 2026-10-27 13:04:17 +01:00
atlas
f59ed01353 fix the builder cache module-eval case and document the external cache 2026-10-27 13:02:43 +01:00
atlas
bd214b9f3e require both attic options, follow attic's cache-name rule, read the token from a file 2026-10-27 13:02:43 +01:00
atlas
0849afec80 push green meta builds to the attic cache and record cached 2026-10-27 13:02:43 +01:00
atlas
c4e8d5b540 match the guest's legacy key path in the grafana tmpfiles check, not the /run secrets dir 2026-10-27 13:00:13 +01:00
atlas
a4e48a7bca store the forge webhook secret and grafana's secret key in bao, seeded from the existing files 2026-10-27 13:00:13 +01:00
atlas
50c1f2a3d1 add rea agent module and reverse-engineer archetype 2026-10-27 11:33:04 +01:00
damocles
21a217c75c hive-agent: test the turn-end events and the claude error mapping 2026-10-27 11:24:32 +01:00
atlas
09d89507a9 name the agent's entity before narrowing its role, and test hive provisioning against a fake store 2026-10-27 10:11:02 +01:00
atlas
139007e656 stop writing and attaching per-agent and per-hive bao policies 2026-10-27 10:11:02 +01:00