use crate::{config::Config, db};
pub fn run(cfg: &Config, options: db::Options) -> anyhow::Result<()> {
let paths = db::discover(cfg);
println!("OpenCode DBs:");
if paths.is_empty() {
println!(" none found");
}
let diagnoses = db::diagnose(&paths, options);
for diagnosis in &diagnoses {
match (diagnosis.sessions, diagnosis.error.as_deref()) {
(Some(count), _) => println!(" ok {:>5} {}", count, diagnosis.path.display()),
(_, Some(error)) => {
println!(" error {} ({})", diagnosis.path.display(), error)
}
_ => println!(" unknown {}", diagnosis.path.display()),
}
}
println!();
println!(
"Sessions found: {}",
db::load(&paths, cfg.limit, options).len()
);
println!("Resume command: {}", cfg.resume_command);
Ok(())
}