pub mod bootstrap;
pub(crate) mod config_loader;
pub mod error;
pub mod path_validation;
pub mod paths;
pub mod private_file;
pub(crate) mod services;
pub(crate) mod skill_validator;
pub mod state_dir;
pub use bootstrap::{
ENCRYPTION_MASTER_KEY_BYTES, KeyMaterialError, MANIFEST_SIGNING_SEED_BYTES, ProfileBootstrap,
ProfileBootstrapError, ResolvedSource, SecretsBootstrap, SecretsBootstrapError,
SecretsDocument, SecretsProvider, VaultAttemptFailure, VaultError, VaultKvProvider,
build_loaded_secrets_message, decode_master_key, decode_seed, generate_master_key,
generate_seed, load_secrets_from_path, persist_seed, resolve_source,
};
pub use config_loader::{
build_from_profile, resolve_instance_id, try_init_config, validate_database_config,
};
pub use error::{ConfigError, ConfigResult};
pub use paths::{
AppPaths, BuildPaths, PathError, StoragePaths, SystemPaths, WebPaths, WritableRoot,
};
pub use private_file::write_private_atomic;
pub use services::{
ConfigValidationError, ModelSpec, ProviderCatalogService, ProviderSpec, SecurityChange,
SecurityConfigService, SecurityUpdate, generate_schema, validate_config, validate_yaml_file,
validate_yaml_str,
};
pub use skill_validator::SkillConfigValidator;
pub use state_dir::{StateDirError, StateDirsError, create_state_dir, ensure_state_dirs_writable};