hyperhive/swarm-controller/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas ccf9951e5d hive-c0re: seed an agent's proposed config from the forge when it exists
The swarm writes agent-configs/<agent> when it creates an agent, before
any hive is told to deploy it. setup_proposed authored a second copy of
those same bytes locally, so an agent's initial config had two sources
of truth, each unaware of the other and free to disagree. It now clones
that repo and falls back to the template only when there is nothing
there to take.

Preferred-source rather than a new-path-only variant because
provision_container is the Provision node for the swarm deploy and the
approval flow both, and cannot tell them apart. The approval flow
creates agent-configs/<agent> only after the first spawn
(forge_after_first_spawn), so it finds nothing and lands on the
template: the fallback becomes unreachable when hive-level create is
removed, rather than becoming something someone has to find and delete.

clone, not the neighbouring init+fetch. A failed fetch leaves an empty
.git behind, and that .git is exactly the byte setup_proposed reads to
decide whether seeding is still needed, so the fallback would have seen
a seeded repo. git removes a directory it created when a clone fails.
--branch main also makes an empty repo fail cleanly instead of cloning
to an unborn HEAD that would look seeded.
2026-08-31 00:17:41 +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 hive-c0re: seed an agent's proposed config from the forge when it exists 2026-08-31 00:17:41 +02:00
main.rs swarm: split the deploy subject per hive 2026-08-31 00:17:41 +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 feat(#3255): announce a knowledge change to every hive on the queue 2026-08-19 21:05:52 +02:00
vcs_metrics.rs move otel_http_client from swarm-queue-client into swarm-controller 2026-08-29 11:17:24 +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