use std::path::Path;
use shardline_server::{
LocalFsckReport, ServerConfigError, ServerError, run_fsck as run_server_fsck,
};
use thiserror::Error;
use crate::config::load_server_config;
#[derive(Debug, Error)]
pub enum FsckRuntimeError {
#[error(transparent)]
Config(#[from] ServerConfigError),
#[error(transparent)]
Server(#[from] ServerError),
}
pub async fn run_fsck(root: Option<&Path>) -> Result<LocalFsckReport, FsckRuntimeError> {
let config = load_server_config(root)?;
Ok(run_server_fsck(config).await?)
}