Watch
0
0
Fork
You've already forked hyperhive
0
hyperhive/hive-c0re/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas 5785c0024c Make agent creation swarm-only and refuse a name placed on another hive
swarm-controller's POST /api/agents now refuses (409) a name the swarm
has already placed on a different hive: a non-Destroyed declaration in
that hive's wanted state, or a SetAgentWanted node still queued for it.
The same name on the same hive is that agent being re-created and goes
through. A wanted state that cannot be read refuses (503/500) instead of
reading as "placed nowhere". Creations are serialised from that read to
the graph insert so two concurrent creations of one name cannot both
pass.

Hive-level creation is removed: hivectl `agent create` / `request-create`,
HostRequest::Spawn / RequestSpawn, the dashboard POST /api/request-spawn
route, and ApprovalKind::Spawn with its approve/resolve arms and the
approval-carrying `templates::spawn`. The swarm path (deploy request or
wanted-state sweep -> queue_first_deploy -> templates::first_deploy) used
none of them. Old `spawn` approval rows are skipped by collect_lenient,
as `init_config` rows were in a3b672d1.

policy.rs's comment on agent_object_name stated swarm-wide name
uniqueness as a fact; it now says where it is enforced and what that
check cannot see.

Refs #4396
2026-09-29 15:47:40 +02:00
..
agent_config hive-c0re: fail on an unparseable resource-limits or topology file, write both atomically 2026-09-27 02:41:38 +02:00
dashboard Make agent creation swarm-only and refuse a name placed on another hive 2026-09-29 15:47:40 +02:00
forge hive-c0re: stop reporting refused invites as success; re-register the config-PR hook when its secret changes 2026-09-27 04:41:31 +02:00
job_queue Make agent creation swarm-only and refuse a name placed on another hive 2026-09-29 15:47:40 +02:00
lifecycle hive-c0re: bound prebuild_toplevel's nix build with a timeout 2026-09-29 02:04:53 +02:00
socket_server Make agent creation swarm-only and refuse a name placed on another hive 2026-09-29 15:47:40 +02:00
stats hive-c0re: warn on a du failure that isn't just a missing path 2026-09-29 09:37:16 +02:00
stores Make agent creation swarm-only and refuse a name placed on another hive 2026-09-29 15:47:40 +02:00
workers Make agent creation swarm-only and refuse a name placed on another hive 2026-09-29 15:47:40 +02:00
actions.rs Make agent creation swarm-only and refuse a name placed on another hive 2026-09-29 15:47:40 +02:00
container_view.rs hive-c0re: fail on a malformed agent name and on an unreadable container list 2026-09-27 05:13:21 +02:00
coordinator.rs Make agent creation swarm-only and refuse a name placed on another hive 2026-09-29 15:47:40 +02:00
dashboard_events.rs Make agent creation swarm-only and refuse a name placed on another hive 2026-09-29 15:47:40 +02:00
gateway_nginx.rs gateway: $connection_upgrade does not come from recommendedProxySettings 2026-09-02 09:04:24 +02:00
loose_ends.rs hive-agent-mcp, hive-c0re, hive-sh4re: drop agent param from get_loose_ends 2026-09-20 05:36:49 +02:00
main.rs hive-screen-mcp: bound grim/wtype and VNC calls; hive-c0re: make messages match the code 2026-09-27 20:47:06 +02:00
matrix.rs hivectl, hive-c0re: remove dead matrix create-user/promote-user/reset-password 2026-09-29 13:13:59 +02:00
meta.rs hive-c0re: fail on an unparseable resource-limits or topology file, write both atomically 2026-09-27 02:41:38 +02:00
migrate.rs hive-c0re: fail on a malformed agent name and on an unreadable container list 2026-09-27 05:13:21 +02:00
paths.rs hivectl, hive-c0re: remove dead matrix create-user/promote-user/reset-password 2026-09-29 13:13:59 +02:00
priv_client.rs hive-dashboard: remove the MATRIX credentials tab and its login route 2026-09-29 13:54:18 +02:00
server.rs Make agent creation swarm-only and refuse a name placed on another hive 2026-09-29 15:47:40 +02:00
snapshot_push.rs refactor(#2862): one snapshot store per swarm, not one per peer 2026-07-31 22:15:37 +02:00
swarm_agent_status.rs swarm: present tense + no-queue-coordinates wording 2026-09-13 12:01:58 +02:00
swarm_notices.rs swarm: present tense + no-queue-coordinates wording 2026-09-13 12:01:58 +02:00
swarm_queue.rs swarm-queue-based lifecycle notices, replacing push_todo(MANAGER_AGENT) 2026-08-24 14:34:37 +02:00
swarm_status.rs Make agent creation swarm-only and refuse a name placed on another hive 2026-09-29 15:47:40 +02:00
test_env.rs test(hive-c0re): one crate-wide lock for env-mutating tests 2026-08-19 01:38:54 +02:00
webhook_secret.rs hive-c0re: stop reporting refused invites as success; re-register the config-PR hook when its secret changes 2026-09-27 04:41:31 +02:00