diff --git a/docs/scheduler/observability.md b/docs/scheduler/observability.md index 9e63f669..34471003 100644 --- a/docs/scheduler/observability.md +++ b/docs/scheduler/observability.md @@ -63,10 +63,10 @@ boundary (`docs/trust-boundary/security.md`: capability = accepted risk), so an able to _send_ is an accepted extension of that boundary — but it's not closed by this design, and nothing here should be read as closing it. -**The `agent` label is self-reported, and no planned authentication changes -that.** Treat it as a convenience for grouping dashboards, never as evidence of -which container produced a sample: any agent that can reach this hive's -collector can label its data as any other agent. +**The `agent` label is self-reported, and the hive→swarm authentication below +doesn't change that.** Treat it as a convenience for grouping dashboards, never +as evidence of which container produced a sample: any agent that can reach this +hive's collector can label its data as any other agent. **Logs ride the same hop, and a journal carries more than a counter does.** Each agent container forwards its own journal through this port — every unit in it at @@ -77,13 +77,13 @@ destination, same credential, and an agent could already send arbitrary OTLP); what changes is how much detail leaves by default. Worth spelling out, because two different hops are in play and only one of them -is getting a credential: +carries a credential: - **agent→collector** (this section's hop) stays open on the bridge. Nothing downstream can tell one agent's export from another's. -- **hive→swarm** is where the planned ingest auth goes. The swarm tier stamps - `hive=` from the connection it authenticated, so _that_ label becomes - unforgeable. +- **hive→swarm** authenticates. The swarm tier gives each hive its own receiver + and stamps `hive=` from whichever one accepted the sample, so _that_ label is + unforgeable — see [Authenticated ingest](#authenticated-ingest) below. A verified `hive` is reachable and a verified `agent` isn't — and that falls out of the topology rather than being a gap someone forgot to close. The swarm