use std::io::Write;
use serde_json::Value;
pub fn start_recording(path: &str) -> Result<(), crate::BoxError> {
let _ = std::fs::OpenOptions::new()
.create(true)
.append(true)
.open(path)
.map_err(|e| format!("Failed to open recording file '{path}': {e}"))?;
Ok(())
}
pub fn log_entry(path: &str, cmd: &Value, response: &Value) -> Result<(), crate::BoxError> {
let mut file = std::fs::OpenOptions::new()
.create(true)
.append(true)
.open(path)
.map_err(|e| format!("Failed to open recording file '{path}': {e}"))?;
let entry = serde_json::json!({
"cmd": cmd,
"response": response,
});
let line = serde_json::to_string(&entry)?;
writeln!(file, "{line}")?;
Ok(())
}