1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
//! Daemon utilities and abstractions for the ActionQueue system.
//!
//! This crate provides the daemon infrastructure for the ActionQueue system,
//! including configuration, bootstrap, HTTP introspection routes, and metrics.
//!
//! # Overview
//!
//! The daemon crate provides:
//! - [`config`] - Deterministic daemon configuration
//! - [`bootstrap`] - Bootstrap entry point for assembling runtime dependencies
//! - [`time`] - Authoritative daemon clock abstractions
//!
//! # Invariant boundaries
//!
//! All read-only introspection endpoints are enabled by default. Control
//! endpoints require explicit enablement via `enable_control` in configuration.
//! No mutation authority bypass is introduced.
//!
//! # Example
//!
//! ```no_run
//! use actionqueue_daemon::bootstrap::bootstrap;
//! use actionqueue_daemon::config::DaemonConfig;
//!
//! let config = DaemonConfig::default();
//! let state = bootstrap(config).expect("bootstrap should succeed");
//!
//! // Use state to start HTTP server at a higher level
//! // (HTTP server startup is not part of bootstrap)
//! ```