// file: crates/ksp-app-backfill-desk/src/lib.rs // version: 11 //! Tauri desktop application scaffold for controlling and inspecting KSP RAW backfill jobs. #![forbid(unsafe_code)] #![deny(unreachable_pub)] #![warn(missing_docs)] mod app_state; mod backfill_request; mod backfill_run; mod backfill_status; mod bootstrap; mod constants; mod dto_backfill; mod dto_common; mod errors; mod frontend_logging; mod logging_runtime; mod splash; mod store_runtime; mod tauri; mod transport_runtime; mod tw_main; mod tw_splash; /// Runs the KSP Backfill desktop application. pub use self::tauri::run; /// Shared Backfill Desk application state managed by Tauri. pub(crate) use self::app_state::AppState; /// Maps one app-owned campaign DTO to the validated KSP Backfill request contract. pub(crate) use self::backfill_request::map_backfill_request; /// Projects one validated Backfill request without returning address or signature values. pub(crate) use self::backfill_request::project_backfill_request; /// Fully prepared Backfill launch moved into the async runtime after single-run admission. pub(crate) use self::backfill_run::BackfillRunLaunch; /// Single-active-run admission state retained by the application. pub(crate) use self::backfill_run::BackfillRunState; /// Stable Tauri event carrying coalesced latest-value Backfill status. pub(crate) use self::backfill_status::BACKFILL_STATUS_EVENT_NAME; /// Frontend-safe latest-value Backfill runtime projection. pub(crate) use self::backfill_status::BackfillRunStatusDto; /// Projects one complete Job notification to the safe desktop monitoring contract. pub(crate) use self::backfill_status::project_backfill_status; /// Crate-internal Logging startup state shared by the application state. pub(crate) use self::bootstrap::LoggingStartup; /// Builds the Config management facade from the common KSP CLI bootstrap contract. pub(crate) use self::bootstrap::config_management; /// Initializes Logging from the Backfill Desk composite, with a trace-level development fallback. pub(crate) use self::bootstrap::initialize_logging; /// Loads the concrete Backfill Desk Config composite. pub(crate) use self::bootstrap::load_backfill_desk_composite; /// Returns one required component profile from the Backfill Desk composite. pub(crate) use self::bootstrap::required_composite_component_profile; /// Composite component identifier for Logging. pub(crate) use self::constants::COMPOSITE_COMPONENT_ID_LOGGING; /// Composite component identifier for Store. pub(crate) use self::constants::COMPOSITE_COMPONENT_ID_STORE; /// Composite component identifier for Transport. pub(crate) use self::constants::COMPOSITE_COMPONENT_ID_TRANSPORT; /// Initial hydration concurrency proposed by the Backfill campaign form. pub(crate) use self::constants::DEFAULT_BACKFILL_HYDRATION_CONCURRENCY; /// Initial candidate cap proposed by the Backfill campaign form. pub(crate) use self::constants::DEFAULT_BACKFILL_MAX_CANDIDATES; /// Initial discovery-page cap proposed by the Backfill campaign form. pub(crate) use self::constants::DEFAULT_BACKFILL_MAX_PAGES; /// Initial signature page size proposed by the Backfill campaign form. pub(crate) use self::constants::DEFAULT_BACKFILL_PAGE_SIZE; /// Structured domain used while bootstrapping Config and Logging. pub(crate) use self::constants::TRACING_DOMAIN_BOOTSTRAP; /// Structured domain used by technical frontend events. pub(crate) use self::constants::TRACING_DOMAIN_FRONTEND; /// Structured domain used by Backfill campaign admission and request mapping. pub(crate) use self::constants::TRACING_DOMAIN_REQUEST; /// Structured domain used by concrete Backfill run admission and execution. pub(crate) use self::constants::TRACING_DOMAIN_RUN; /// Structured domain used by the Backfill Desk shell. pub(crate) use self::constants::TRACING_DOMAIN_SHELL; /// Structured domain used by Store readiness and shutdown operations. pub(crate) use self::constants::TRACING_DOMAIN_STORE; /// Structured domain used by Transport readiness and role inventory operations. pub(crate) use self::constants::TRACING_DOMAIN_TRANSPORT; /// Structured domain used by Tauri window lifecycle operations. pub(crate) use self::constants::TRACING_DOMAIN_WINDOWS; /// Owning target for backend events emitted by Backfill Desk. pub(crate) use self::constants::TRACING_TARGET; /// Owning target for generic frontend events emitted through the KSP bridge. pub(crate) use self::constants::TRACING_TARGET_FRONTEND; /// Owning target for main-window frontend events. pub(crate) use self::constants::TRACING_TARGET_FRONTEND_MAIN; /// Owning target for splash-window frontend events. pub(crate) use self::constants::TRACING_TARGET_FRONTEND_SPLASH; /// Safe acknowledgement returned by targeted cooperative cancellation. pub(crate) use self::dto_backfill::BackfillCancelResponseDto; /// Backend-derived request bounds and Desk defaults for the campaign form. pub(crate) use self::dto_backfill::BackfillRequestLimitsDto; /// Safe request preview produced after strict backend mapping. pub(crate) use self::dto_backfill::BackfillRequestPreviewDto; /// Safe acknowledgement returned after in-session checkpoint Resume admission. pub(crate) use self::dto_backfill::BackfillResumeResponseDto; /// App-owned campaign request received from the frontend. pub(crate) use self::dto_backfill::BackfillStartRequestDto; /// Safe immediate acknowledgement returned after one Backfill run is admitted and spawned. pub(crate) use self::dto_backfill::BackfillStartResponseDto; /// Returns commitment codes admitted by the current Backfill contract. pub(crate) use self::dto_backfill::backfill_commitment_codes; /// Builds frontend-safe campaign limits from Job-owned public constants. pub(crate) use self::dto_backfill::backfill_request_limits; /// Returns scope kind codes admitted by the current Backfill contract. pub(crate) use self::dto_backfill::backfill_scope_kind_codes; /// Safe Backfill Desk options contract combining readiness and campaign metadata. pub(crate) use self::dto_common::BackfillDeskOptionsDto; /// Safe logical HTTP route exposed for operator selection. pub(crate) use self::dto_common::BackfillHttpRouteOptionDto; /// Safe command error projection exposed to Tauri commands. pub(crate) use self::dto_common::CommandErrorDto; /// Safe canonical Program ID entry exposed only for free-form address autocomplete. pub(crate) use self::dto_common::ProgramIdAutocompleteOptionDto; /// Safe scaffold/runtime snapshot exposed to the shell. pub(crate) use self::dto_common::ShellStatusDto; /// Projects the canonical Core Program ID registry to autocomplete entries. pub(crate) use self::dto_common::program_id_autocomplete_options; /// Shared Backfill Desk runtime state is internally inconsistent. pub(crate) use self::errors::ERROR_CODE_APP_STATE_INVALID; /// Shared Backfill Desk runtime state cannot be locked safely. pub(crate) use self::errors::ERROR_CODE_APP_STATE_LOCK_FAILED; /// Backfill Desk cannot admit a campaign before Transport and Store composition is ready. pub(crate) use self::errors::ERROR_CODE_BACKFILL_COMPOSITION_NOT_READY; /// Backfill Desk received a campaign field that cannot map to the Backfill contract. pub(crate) use self::errors::ERROR_CODE_BACKFILL_REQUEST_INVALID; /// Backfill Desk has no retained safe checkpoint available for in-session Resume. pub(crate) use self::errors::ERROR_CODE_BACKFILL_RESUME_UNAVAILABLE; /// Backfill Desk refuses a concurrent Start while another Backfill run owns the single-run slot. pub(crate) use self::errors::ERROR_CODE_BACKFILL_RUN_ACTIVE; /// Backfill Desk rejects stale or mismatched Job identity control requests. pub(crate) use self::errors::ERROR_CODE_BACKFILL_RUN_MISMATCH; /// Backfill Desk has no active or retained matching run for the requested control operation. pub(crate) use self::errors::ERROR_CODE_BACKFILL_RUN_NOT_ACTIVE; /// Backfill Desk composite configuration is missing or references an unexpected document. pub(crate) use self::errors::ERROR_CODE_CONFIG_COMPOSITE_INVALID; /// Frontend logging requested an unsupported level. pub(crate) use self::errors::ERROR_CODE_FRONTEND_LOG_LEVEL_INVALID; /// Frontend logging requested a target outside the application whitelist. pub(crate) use self::errors::ERROR_CODE_FRONTEND_LOG_TARGET_INVALID; /// Backfill Desk could not install the managed Logging runtime or its safe fallback. pub(crate) use self::errors::ERROR_CODE_LOGGING_BOOTSTRAP_FAILED; /// Splash readiness was invoked from a window other than the splash window. pub(crate) use self::errors::ERROR_CODE_SPLASH_ORIGIN_INVALID; /// A KSP desk splash environment duration is malformed or exceeds its safety bound. pub(crate) use self::errors::ERROR_CODE_SPLASH_SETTING_INVALID; /// Backfill Desk Store and Transport configuration target different logical networks. pub(crate) use self::errors::ERROR_CODE_STORE_NETWORK_MISMATCH; /// Backfill Desk cannot prove a single Transport network before Store opening. pub(crate) use self::errors::ERROR_CODE_STORE_NETWORK_UNAVAILABLE; /// Backfill Desk cannot complete the bounded Store shutdown lifecycle. pub(crate) use self::errors::ERROR_CODE_STORE_SHUTDOWN_FAILED; /// Tauri runtime assembly or execution failed. pub(crate) use self::errors::ERROR_CODE_TAURI_RUNTIME_FAILED; /// A required Tauri window is missing from the configured application runtime. pub(crate) use self::errors::ERROR_CODE_TAURI_WINDOW_MISSING; /// A Tauri window show/focus/destroy/event operation failed. pub(crate) use self::errors::ERROR_CODE_TAURI_WINDOW_OPERATION_FAILED; /// Backfill Desk cannot derive a safe Transport readiness contract. pub(crate) use self::errors::ERROR_CODE_TRANSPORT_READINESS_INVALID; /// Log payload sent by Backfill Desk frontend scripts. pub(crate) use self::frontend_logging::FrontendLogPayloadDto; /// Emits one validated frontend event through the KSP Logging facade. pub(crate) use self::frontend_logging::emit_frontend_log_event; /// Creates the stable runtime identity for this Backfill Desk process launch. pub(crate) use self::logging_runtime::launch_identity; /// Command emitted by Rust to the splash frontend. pub(crate) use self::splash::SplashOrderDto; /// Runtime timings used by the common desk splash lifecycle. pub(crate) use self::splash::SplashSettings; /// Store startup state retained by the application shell. pub(crate) use self::store_runtime::StoreStartup; /// Initializes Store only after composite-selected Transport/Store network coherence is proven. pub(crate) use self::store_runtime::initialize_store; /// Safe and executable Transport runtime retained by application state. pub(crate) use self::transport_runtime::TransportRuntime; /// Initializes the composite-selected HTTP Transport runtime. pub(crate) use self::transport_runtime::initialize_transport; /// Resolves the required main window or returns a typed error. pub(crate) use self::tw_main::require_main_window; /// Shows and focuses the main Backfill Desk window. pub(crate) use self::tw_main::show_main_window; /// Resolves the required splash window or returns a typed error. pub(crate) use self::tw_splash::require_splash_window; /// Starts the one-shot splash lifecycle after the splash frontend reports readiness. pub(crate) use self::tw_splash::splash_frontend_ready_service;