| Filename | Latest commit message | Latest commit date |
|---|---|---|
`default-features = false` on opentelemetry-otlp was written to trim transports and dropped `internal-logs` with them, so every otel_warn! and otel_debug! inside that crate compiled to nothing. The failure that matters is the one which returns HTTP 200: the collector accepts the request and rejects the data points, and HttpMetricsClient.PartialSuccess is the only place the rejection count and the collector's reason are ever surfaced. The feature is per-crate, not per-workspace: the macros are exported by the opentelemetry API crate but their cfg and CARGO_PKG_NAME resolve in the calling crate, so the API crate and the SDK had internal logs on while the exporter did not. hive-metric keeps the identical declaration on purpose - it installs no tracing subscriber, so the feature would be inert there and would only mislead. Both files now record which side of that they are on, and the stale "same features as hive-metric" comment is corrected. Not sufficient on its own: a hard export failure is logged by the SDK at debug on the compiled timer path, so it stays below the info filter. That needs a level rather than a feature and is left to review. |
||
| .. | ||
| src | ||
| Cargo.toml | ||
| README.md | ||
hive-c0re
The unprivileged host daemon (runs as hive-core). Owns the sqlite
broker, the approval/question/schedule queues, the generic job-DAG
queue, container lifecycle, gateway/forge/matrix provisioning,
per-container stats, and the axum operator dashboard. Largest crate in
the workspace — bin-only, no separate lib.
When to use it
Host-level, cross-container orchestration: spawning/rebuilding/
destroying agent containers, the approval flow, dashboard-visible
state, provisioning per-agent forge/matrix/gateway accounts. Agent-side
behavior (turn loop, MCP tools) lives in hive-agent/hive-agent-mcp
instead — this daemon only talks to agents over the socket wire types
in hive-sh4re.
Shape
Cohesive clusters live in directory submodules, each re-exported at
the crate root (crate::broker::… keeps resolving regardless of which
subdirectory a module actually lives in). One line each — read the
module's own //! doc-comment for real detail, don't expect this file
to track it:
dashboard/— the operator dashboard (containers, approvals, schedules, questions, logs, topology).job_queue/— the job-DAG queue + desired-state reconciliation (docs/coordinator.md).lifecycle/—nixos-containerlifecycle + per-agent config flake generation.stores/— sqlite-backed stores (broker, queues, audit, power).workers/— background sweeps (crash watch, scheduled prompts, auto-update, knowledge sync).agent_config/— per-agent registries (tool groups, capabilities, resource limits, topology).stats/— dashboard metrics aggregation + OTEL export.socket_server/— the unix-socket request server shared by per-agent + manager sockets.forge/— optional Forgejo wiring (docs/forge.md).coordinator.rs— top-level wiring forserve.meta.rs,migrate.rs— the meta flake + schema/state migrations.matrix.rs,gateway_nginx.rs,webhook_secret.rs,priv_client.rs— matrix provisioning, gateway vhosts, webhook secrets, and thehive-privclient respectively.
See the top-level CLAUDE.md/docs/ index for the full reading-path
map.