Watch
0
0
Fork
You've already forked hyperhive
0
Commit graph hyperhive/docs/swarm
Author SHA1 Message Date
atlas
50c1f2a3d1 add rea agent module and reverse-engineer archetype 2026-10-27 11:33:04 +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
atlas
701efadfe4 only the controller's own comments carry the marker, and a cleared comment says resolved 2026-10-26 23:16:53 +01:00
atlas
9fc0e3bf90 comment once per pr and agent while red, clear the marker on a green build 2026-10-26 23:16:53 +01:00
atlas
0bc5a7e475 comment once on a merged config pr when its swarm build fails 2026-10-26 23:16:53 +01:00
iris
599747bacb swarm-ui: alerts and the issue report are folded cards on a reports tab
The alerts and issues tabs are one reports tab in the nav. Each page, unchanged
inside, is a card that starts shut and reads nothing until opened; the alerts
header's link, button and refresh picker move into the card's body. /alerts and
/issues redirect to /reports. Docs follow.
2026-10-26 23:04:32 +01:00
iris
9ffd537aa2 swarm-ui: the review classifier is a folded card on the jobs tab
The review tab is gone from the nav. Its page, unchanged inside, is a card on
/jobs that starts shut and reads nothing until opened; /review redirects to
/jobs. Docs follow.
2026-10-26 20:35:06 +01:00
iris
bdef828df3 swarm-ui: the schedules are a folded card on the messages tab
The schedules tab is gone from the nav. Its page, unchanged inside, is a card
on /messages under the broadcast card that starts shut and reads nothing until
opened; its add button and refresh picker move into the card's body.
/schedules redirects to /messages. Docs follow.
2026-10-26 20:28:58 +01:00
iris
d269c06d58 docs: say the jobs and builds cards start shut, in the active voice 2026-10-26 20:09:29 +01:00
iris
8f5b3a2fa8 swarm-ui: the jobs and builds cards are folded by default
Both cards on the jobs tab start shut and read nothing until opened; a link
with ?run= opens the builds card. The fold-and-build-on-first-open part of the
hives card is now one LazyDisclosure, which the hives card uses too. Docs
follow.
2026-10-26 20:09:17 +01:00
iris
a2f000bab4 swarm-ui: builds are a card under the job graph on the jobs tab
The builds tab is gone from the nav; its card sits below the jobs card on
/jobs. The swarm-builder commit status now links to /jobs?run=<id>, and the old
/builds address redirects there with its query so links already on PRs still
open the build. Docs and the link test follow.
2026-10-26 20:02:57 +01:00
atlas
31670da795 granter role no-op deletes the dead bootstrap token 2026-10-26 19:19:06 +01:00
atlas
59456c3c58 retry every failed meta build each round, a timeout included, and drop the attempt count 2026-10-26 18:52:33 +01:00
atlas
99d2ed5b9e build a failed meta build once more, and treat a timeout or missing grant as no verdict 2026-10-26 18:52:33 +01:00
atlas
5e64048e53 gate each deploy on a swarm build of the agent from internal/meta 2026-10-26 18:52:33 +01:00
atlas
3db835fb57 granter role unit: no-op when the granter login works, delete the token after success 2026-10-26 18:49:02 +01:00
atlas
0c6e8fc5a2 move hiveName to deploy.hive-controller; only a hive host needs a name 2026-10-26 18:47:49 +01:00
iris
67f0d6a9d3 docs: name authelia's disabled flag in the placeholder-user wording, and update the comment that cites the renamed subagent heading 2026-10-26 18:45:04 +01:00
iris
5db38a596e docs: rephrase the vale warnings that have a better wording
Words the alex and Microsoft styles flag where a plainer one reads as well:
disabled/special/invalid as a state, primitive, trap, hang, several, click,
first-person FAQ questions, hyphenated adverb pairs. Left as they are: Let's
Encrypt, quoted UI labels and phrases, the generated forge CLI reference, and
the middle-click gesture.
2026-10-26 18:45:04 +01:00
iris
b53365e371 docs: put the credentials prose on the overview and the tables on the reference
The folded-in secrets.md text sat after the reference's table, so the
reference was half prose. The overview now holds all the prose (where a
secret lives, topologies, the swarm- and hive-level notes, how a reader
reaches the store, the browser UI, adding a secret) and the reference holds
only the tables, each pointing at the section that explains it. No text
dropped; links that asked for the explanation now go to the overview, and
the ones that asked for a list or a row go to the reference.
2026-10-26 18:10:01 +01:00
iris
d273fa8028 docs: fold swarm/secrets.md into the credentials reference
secrets.md and credentials-reference.md answered the same question from two
pages. secrets.md's text now follows the reference's table and operating
notes as a 'Where each secret lives' section, unchanged apart from where it
sits. Every link and doc path that named secrets.md (docs, nix comments,
crate READMEs) points at credentials-reference.md; anchors are unchanged.
2026-10-26 18:10:01 +01:00
iris
2d29711df9 docs: split credentials.md into an overview and a per-secret reference
The overview keeps the store invariant, the mTLS exception and the
minter/reader/renewal contract. The table of every credential and the
operating notes (forge token checks, re-creating agents, revoking a queue
credential, store login retries) move unchanged to credentials-reference.md,
and the links that asked where a credential lives point there.
2026-10-26 18:10:01 +01:00
iris
70917b7dd0 swarm-ui: hives are a folded card on the agents page, and hide developer details also hides the components tab
The hives nav tab and route go, with no redirect; the roster is a card above
the agents panel that starts folded and is read on the first open. The
settings toggle is renamed from hide debug output to hide developer details,
as it now also drops the components tab (the page still answers at
/components); the stored preference keeps its key.
2026-10-26 17:56:10 +01:00
atlas
0cbfa806d3 hive collector runs only on hive hosts; review classifier pushes metrics through its forwarder 2026-10-26 15:58:44 +01:00
atlas
03796f1964 add one shared templated hive policy keyed on the cert alias name 2026-10-26 11:36:55 +01:00
atlas
7a964c9c5c notify router: log each delivered forge event and each sink outcome 2026-10-26 08:07:33 +01:00
atlas
4cdf807afc add one shared templated agent policy and name each agent's bao entity after it 2026-10-25 21:50:06 +01:00
atlas
cce00a6592 swarm-builder: log each archetype eval's elapsed time, wait 5 minutes 2026-10-25 18:42:44 +01:00
atlas
b79896c237 hive reads the forge for nix as its own account, not core
hive-c0re copies the hive's store read token to /run/hyperhive/forge-hive-token
for nix's git credential helper, and no longer mints, reads or falls back to
the core admin token. drops the core user sweep, avatar upload, webhook
cleanup and hive-priv's RunForgeAdmin.
2026-10-25 18:06:48 +01:00
iris
a2e8a2bda0 swarm-ui: dropdowns open a themed list of their own instead of the browser's
SelectField and the refresh-interval picker are built on a new Listbox, a
select-only combobox: a button that keeps focus and a listbox in the top
layer, so it works the same in every current browser, is not clipped by a
scrolling ancestor and shows above a modal dialog. Keys, type-ahead and
placement are pure functions with tests. required becomes aria-required, as a
button has no native form validation.
2026-10-25 17:15:04 +01:00
atlas
88053f437c test the archetype module import in the meta flake render; update archetypes doc 2026-10-25 16:59:05 +01:00
atlas
dd2f0d3ece let notification flows start from submitted pull request reviews 2026-10-25 16:56:12 +01:00
iris
31f8a521e0 swarm-ui: the broadcast composer is its own folded card above the messages card
Replaces the broadcast button in the messages card's header: a Disclosure
titled broadcast, folded by default, over the messages card. The composer is
built on the first open and kept, so it polls the agent list only once used.
The broadcast page wording in broadcast-types.ts and its test now says
composer.
2026-10-25 16:28:26 +01:00
iris
6cf89755e2 swarm-ui: broadcast is a composer on the messages page, not a tab of its own
The messages page gets a broadcast button that opens the agent picker and
message box above the stream, so a sent message shows up in the list below
it. The broadcast route and nav tab go, with no redirect: the page is now the
composer, BroadcastComposer, in the messages page.
2026-10-25 16:28:26 +01:00
atlas
711e413901 swarm-ui: tooltip on the inert wanted badge says to create the agent at swarm level; docs note destroy needs it too 2026-10-25 16:09:14 +01:00
atlas
d8c2fb91b2 docs: contraction in the swarm ui wanted-badge paragraph 2026-10-25 16:02:34 +01:00
atlas
716290e4d2 swarm-controller: state route refuses an agent the swarm has not declared on that hive
A placing state is accepted only for an agent declared or queued on the hive; anything else gets 404 telling the caller to create it at swarm level. swarm-ui's wanted badge no longer offers a first declaration for an undeclared row.
2026-10-25 15:58:25 +01:00
atlas
633139069f redeclare the deploys a failed meta update skipped on the timer's retry
queue_meta_update adds a TriggerDeploy behind each retry UpdateMeta (after_ok) for every agent whose latest deploy waited on a failed update. A created or merged agent whose deploy was skipped is deployed by the run that succeeds; a deploy skipped for another reason, or an agent already deployed, gets nothing.
2026-10-25 15:32:16 +01:00
atlas
61e35ab603 deploy only after a successful meta update
A hive builds only from internal/meta, so a TriggerDeploy after a failed UpdateMeta could only fail its build. Both DAGs that queue an update (merged config PR, agent create) now gate the deploy with after_ok: the update shows Failed and the deploy Skipped.
2026-10-25 15:32:16 +01:00
atlas
4aa11b3a94 build agents only from internal/meta; delete the hive's local meta flake
The hive no longer renders, locks or commits a meta flake. A rebuild's
MetaSync node picks the internal/meta commit and records it with the
hyperhive and config pins it holds; Prebuild, Swap and Create build from it,
and a head that does not pin the agent's current config fails the build
naming the agent. hive-priv's meta_rev is required.

Removed: meta.rs sync/lock/render, the manual-rebuild relock, the boot
sweep's hyperhive bump (MetaLock), the update-meta-inputs form and its
panel, MetaWindow, the hive's hyperhive_rev setting.

Kept: agent_set::refresh holds what sync_agents also did (topology.json, the
gateway's agent-socket map and nginx include), called from spawn, destroy,
rebuild and the migration.

The boot reconcile and the stale-start upgrade compare the agent's marker
with the hyperhive pin of internal/meta; the dashboard's deployed chip reads
the config marker a successful build writes.
2026-10-25 15:32:16 +01:00
iris
cd41e1d510 swarm-ui, hive dashboard, agent page: one profile menu with the signed-in user, avatar and authelia links
The swarm UI's user menu moves to @hive/shared and takes the whoami URL and
authelia's URL as props; the swarm UI keeps a thin wrapper, and the hive
dashboard and the per-agent page mount the same component. The dashboard's
nginx vhost proxies /api/whoami to authelia (the agent page is served from
the same vhost), and hive-c0re's state carries authelia_public_url, set from
services.hyperhive.swarm.authelia.url. The agent page shows the menu only
behind the gateway.
2026-10-25 15:25:20 +01:00
iris
10b8422d93 swarm-ui: the state row offers reconnect when its stream closes, and says no report yet 2026-10-25 15:07:39 +01:00
iris
705160c0fd swarm-ui: move the terminal preview's state badges into a state row of the agent details table
The small preview in the detail panel keeps only the connection badge and
expand, and no longer follows the agent's state stream; the full terminal
tab keeps all its badges. The table gets a state row with the turn state, a
paused badge, and the context and billed tokens (not the model, which the
inference row shows). The preview's top padding drops to one badge row, and
the showHeaderBadges prop goes since the full-tab mount is now the only one
with badges.
2026-10-25 14:52:57 +01:00
atlas
31cb6bfa42 queue the meta update only until one run succeeds 2026-10-25 12:56:48 +01:00
atlas
0f1ba6e630 log failed controller jobs, re-run the meta update every ten minutes 2026-10-25 12:25:01 +01:00
atlas
acfdcd725f reword stale hive-domain discovery claims 2026-10-25 12:15:22 +01:00
atlas
2e7d49bb88 serve matrix discovery at the swarm apex, keep the pinned hive case 2026-10-25 12:15:22 +01:00
iris
c9649b258f swarm-wire: say the repos list holds only repositories with an open issue 2026-10-25 12:14:46 +01:00
iris
b6da2bc9d0 swarm-wire, swarm-ui: the flow schema lists the values a field takes, and the editor picks them instead of asking for typed names
The schema's event fields gain values, a values_from marker (agents, repos)
and a closed flag; a node field gains the marker and the flag. kind is now
listed as issue and PR, what the router sends. The flow editor shows a
dropdown where the list is complete, suggestions where it is only examples,
and a plain box where there is none.
2026-10-25 12:14:46 +01:00