//! Athena durable control-plane primitives.
//!
//! This crate owns durable operational state for clone jobs and daemon
//! execution ownership. It intentionally contains no HTTP framework coupling.

pub mod clone_events;
pub mod clone_jobs;
pub mod daemon_identity;
pub mod daemon_registry;
pub mod error;
pub mod leases;
pub mod repositories;
pub mod schema;
pub mod services;

pub use clone_events::{CloneEventLevel, CloneJobEvent};
pub use clone_jobs::{
    CloneJobDetail, CloneJobId, CloneJobPhase, CloneJobRecord, CloneJobRequest, CloneJobStatus,
    CloneJobSummary, CloneProvisioningPolicy, CloneRegistrationPolicy, CloneSourceSpec,
    CloneTargetMode, CloneTargetSpec, CreateManagedTargetSpec, ReuseManagedTargetSpec,
};
pub use daemon_identity::{
    DaemonId, first_daemon_env_value, install_process_daemon_id, normalize_daemon_id,
    process_daemon_id_override, resolve_runtime_daemon_id, resolve_runtime_host,
};
pub use daemon_registry::{DaemonInventoryRecord, DaemonRegistryService, DaemonRuntimeHeartbeat};
pub use error::ControlPlaneError;
pub use leases::LeaseToken;
pub use repositories::CloneJobRepository;
pub use schema::ControlPlaneSchemaService;
pub use services::CloneJobService;
