hyperhive/hivectl/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas ba71e45486 refactor(#2862): one snapshot store per swarm, not one per peer
The push side modelled a store per peer hive: a --peer argument, a
swarm.peers.<domain>.snapshotStorePort option, and a swarm_peers module
whose entire job was answering "which peer". A swarm has exactly one
store, so none of that had anything to select between.

The receiver already proved it. It keys destination directories by
agent, not by sending hive, precisely so an agent that migrates keeps
one unbroken incremental chain -- which only makes sense if every hive
pushes to the same place. Per-hive stores would split the chain in two,
the case that keying exists to prevent.

So the destination moves to services.hyperhive.swarm.snapshotStore,
rendered into HYPERHIVE_SNAPSHOT_STORE, and swarm_peers is deleted
rather than adapted. address has no default because it is a
deployment fact this host cannot derive; port defaults because it is a
convention both ends read from the same option docs. An unset or empty
address fails naming the option instead of connecting somewhere
arbitrary, and a test asserts the message suggests no value.
2026-07-31 22:15:37 +02:00
..
agents.rs hivectl: add agent <name> watch to follow live events from the CLI 2026-07-27 21:04:00 +02:00
approvals.rs split hivectl main.rs into per-domain modules (#2509) 2026-07-16 11:28:43 +02:00
choom.rs hivectl: rename hivectl agents to hivectl agent <name> <verb> 2026-07-27 19:07:18 +02:00
cli.rs refactor(#2862): one snapshot store per swarm, not one per peer 2026-07-31 22:15:37 +02:00
client.rs hivectl: say which of the three socket failures actually happened 2026-07-26 17:35:44 +02:00
completions.rs split hivectl main.rs into per-domain modules (#2509) 2026-07-16 11:28:43 +02:00
dag_progress.rs refactor(#2808): the wire state enum is the scheduler's own 2026-07-27 21:50:24 +02:00
forge.rs refactor(#2302): type socket wire fields as ident, validated by serde on deserialize 2026-07-20 21:46:18 +02:00
gateway.rs split hivectl main.rs into per-domain modules (#2509) 2026-07-16 11:28:43 +02:00
github.rs refactor(#2302): type socket wire fields as ident, validated by serde on deserialize 2026-07-20 21:46:18 +02:00
main.rs hivectl: add agent <name> watch to follow live events from the CLI 2026-07-27 21:04:00 +02:00
matrix.rs refactor(#2302): type socket wire fields as ident, validated by serde on deserialize 2026-07-20 21:46:18 +02:00
open.rs hivectl: say which of the three socket failures actually happened 2026-07-26 17:35:44 +02:00
power.rs split hivectl main.rs into per-domain modules (#2509) 2026-07-16 11:28:43 +02:00
quota.rs hivectl: rename hivectl agents to hivectl agent <name> <verb> 2026-07-27 19:07:18 +02:00
subvol.rs refactor(#2862): one snapshot store per swarm, not one per peer 2026-07-31 22:15:37 +02:00
util.rs fix(hivectl): ask the daemon whether an agent exists 2026-07-27 09:34:43 +02:00
watch.rs hivectl: add agent <name> watch to follow live events from the CLI 2026-07-27 21:04:00 +02:00
wg.rs hivectl: say which of the three socket failures actually happened 2026-07-26 17:35:44 +02:00