hyperhive/swarm-secret-client/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas ffd5018b18 swarm: mint a per-agent queue credential beside the agent's store identity
Every agent on a hive authenticates to the swarm queue with the same
hive-scoped secret today, so at the auth callout one agent is
indistinguishable from its co-hived neighbours and no subject can be
scoped to one of them.

Mint a secret per agent instead, at swarm level, into
secret/swarm/agents/<agent>/queue -- inside the stanza every agent's ACL
document already grants, so no policy changes and no existing agent's
document is rewritten. It is written by the same node that already mints
the agent's certificate, and read back under the agent's own token
before that node reports success.

The secret is not derived from the agent's mTLS identity: the two
credentials answer different questions and coupling their lifetimes
would mean renewing either implied renewing the other. Nothing here
rotates a queue secret -- a re-run keeps the existing value and only
corrects the principal it names, because this function is re-run
deliberately against agents that are already connected. Revoking one
means deleting the path.

Nothing reads the new credential yet; this is the minting half.
2026-09-21 20:38:55 +02:00
..
client.rs swarm: mint a per-agent queue credential beside the agent's store identity 2026-09-21 20:38:55 +02:00
lib.rs swarm: mint, publish and login-verify an agent's store identity at create 2026-09-18 15:05:24 +02:00
matrix.rs matrix: one sender account and one sender token per hive 2026-09-20 22:07:16 +02:00
mtls.rs swarm: mint, publish and login-verify an agent's store identity at create 2026-09-18 15:05:24 +02:00
path.rs fix doc-comment pointers broken by the module-eval split 2026-09-20 04:31:08 +02:00
policy.rs matrix: one sender account and one sender token per hive 2026-09-20 22:07:16 +02:00
queue.rs swarm: mint a per-agent queue credential beside the agent's store identity 2026-09-21 20:38:55 +02:00