hyperhive/hive-c0re/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas 27932ec631 types: let nix own the reserved-name blacklist
One list, in nix/reserved-names.nix, handed to everything that needs it
as HIVE_RESERVED_NAMES. Keeping it current becomes a config change
rather than a rebuild, and hive names and agent names -- one namespace
going forward -- are checked against the same file: swarm-otel.nix's
hand-written reservedOwners is gone.

Whitespace-separated rather than JSON, deliberately, unlike the
structured env vars beside it. Every entry is an Ident ([a-z0-9-]), so
whitespace cannot occur inside a name and the encoding is provably
lossless; JSON would mean either a parser dependency in a crate whose
purpose is to have none, or a copy of the parse in every consumer.

An UNSET variable is not "nothing is reserved". Both creation sites log
an error and return a warning saying the check did not run, so a
misconfigured deployment says so instead of silently accepting every
name. A blank value folds into unset: nix always renders a non-empty
list, so present-but-empty is a rendering fault, not a declaration.

Two guards whose subject moved out of their own file now assert their
own case is still in it, because a guard that can be retired by an edit
elsewhere is not a guard:

- swarm-otel.nix asserts reserved-names.nix still contains its
  swarmTierName.
- hive-sh4re's sentinel drift test PANICS when the variable is missing
  rather than skipping -- a drift test that quietly does nothing still
  reports green. checks.nix and devshell.nix both export it so CI and a
  local cargo test agree. Verified as a pair: with the variable set, 8
  tests pass; with it unset, exactly the 4 drift tests fail and the
  unrelated ones still pass.
2026-08-27 16:36:42 +02:00
..
agent_config fix(#3245): resolve broken intra-doc links in hive-c0re 2026-08-14 00:25:35 +02:00
dashboard feat(#3255): hives stop owning the knowledge webhook, and clean up their own 2026-08-19 21:05:52 +02:00
forge hive-c0re: re-register the CI runner when the forge address changes 2026-08-26 13:11:15 +02:00
job_queue swarm-queue-based lifecycle notices, replacing push_todo(MANAGER_AGENT) 2026-08-24 14:34:37 +02:00
lifecycle fix(otel): stop delivering the hive's upstream token to agents 2026-08-18 22:23:35 +02:00
socket_server types: let nix own the reserved-name blacklist 2026-08-27 16:36:42 +02:00
stats feat(hive-c0re): export metrics whose subject is the hive, not an agent 2026-08-24 19:51:37 +02:00
stores fix(#3245): resolve broken intra-doc links in hive-c0re 2026-08-14 00:25:35 +02:00
workers knowledge: remove the redundant concurrent boot-time pull that races with reset --hard, and clean -fd untracked drift too 2026-08-24 14:38:15 +02:00
actions.rs refactor(#2916): destroy submits a DAG instead of an imperative teardown 2026-08-14 00:24:45 +02:00
container_view.rs feat(#493): api-key backend support (useApiKey + backendEnvironmentFile) 2026-08-27 12:53:50 +02:00
coordinator.rs fix(#3245): resolve broken intra-doc links in hive-c0re 2026-08-14 00:25:35 +02:00
dashboard_events.rs hive-sh4re: split inbox, container, journal, and schedule wire shapes into their own modules 2026-08-10 23:26:15 +02:00
gateway_nginx.rs fix(3179): the gateway's config files get their own state dir 2026-08-12 10:29:27 +02:00
loose_ends.rs hive-sh4re: split inbox, container, journal, and schedule wire shapes into their own modules 2026-08-10 23:26:15 +02:00
main.rs knowledge: remove the redundant concurrent boot-time pull that races with reset --hard, and clean -fd untracked drift too 2026-08-24 14:38:15 +02:00
matrix.rs hive-c0re: trim the tuwunel version-claim doc fix, drop the pinned version number 2026-08-23 22:46:27 +02:00
meta.rs test(hive-c0re): serialise the remaining env-mutating tests 2026-08-19 06:18:15 +02:00
migrate.rs refactor(#2916): drop the two obsolete startup migrations 2026-08-02 01:41:37 +02:00
paths.rs fix(3179): the gateway's config files get their own state dir 2026-08-12 10:29:27 +02:00
priv_client.rs feat(3088): move the gateway's nginx + dnsmasq onto the host 2026-08-11 18:01:03 +02:00
questions.rs hive-sh4re: split inbox, container, journal, and schedule wire shapes into their own modules 2026-08-10 23:26:15 +02:00
server.rs swarm-queue-based lifecycle notices, replacing push_todo(MANAGER_AGENT) 2026-08-24 14:34:37 +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_notices.rs swarm-queue-based lifecycle notices, replacing push_todo(MANAGER_AGENT) 2026-08-24 14:34:37 +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 swarm-queue-based lifecycle notices, replacing push_todo(MANAGER_AGENT) 2026-08-24 14:34:37 +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 chore(#2510): bump indicatif/tower-http/hmac/sha2 to latest majors 2026-07-16 10:42:30 +02:00