//! Handlers for Source Registry operations. //! //! These endpoints allow developers to register sources with human-readable //! labels and retrieve source metadata by hash. //! //! # Flow //! //! 1. Agent stores source document via POST /v1/source (gets hash back) //! 2. Agent registers source metadata via POST /v1/sources (label, tier, url) //! 3. Later: Query includes source_hash with enriched metadata //! //! # Endpoints //! //! - POST /v1/sources - Register a new source //! - GET /v1/sources/{hash} - Get source by hash //! - PATCH /v1/sources/{hash}/status - Update source status //! - GET /v1/sources - List/search sources //! - GET /v1/sources/{hash}/impact - Get impact analysis //! - POST /v1/sources/{hash}/quarantine - Quarantine source //! - POST /v1/sources/{hash}/restore - Restore source //! - GET /v1/sources/{hash}/impact/export - Export impact for audit mod handlers; mod validation; #[cfg(test)] mod tests; // Re-export public handlers pub use handlers::{ export_source_impact, get_source, get_source_impact, list_sources, quarantine_source, register_source, restore_source, update_source_status, }; // Re-export OpenAPI path items (generated by utoipa) pub use handlers::{ __path_export_source_impact, __path_get_source, __path_get_source_impact, __path_list_sources, __path_quarantine_source, __path_register_source, __path_restore_source, __path_update_source_status, };