use crate::cli::ForgetArgs;
use crate::{build_client, open_service, runtime, CliResult};
pub fn run(args: ForgetArgs, via_daemon: bool) -> CliResult {
if via_daemon {
let client = build_client()?;
runtime()?.block_on(async { client.forget(&args.id).await })?;
} else {
let (service, _db) = open_service(args.common.db.as_deref())?;
service.forget(&args.id)?;
}
if args.common.json {
let value = serde_json::json!({ "redacted": true, "id": args.id });
println!("{}", serde_json::to_string(&value)?);
} else {
println!("\nRedacted observation {}\n", args.id);
}
Ok(())
}