use thiserror::Error;
#[derive(Debug, Error)]
pub enum RecordError {
#[error("failed to spawn command `{command}` in pty: {reason}")]
Spawn {
command: String,
reason: String,
},
#[error("pty error: {0}")]
Pty(String),
#[error(transparent)]
Store(#[from] hh_core::Error),
#[error("child process error: {0}")]
Child(String),
#[error("unknown adapter: {0}")]
Adapter(String),
#[error("mcp proxy error: {0}")]
Mcp(String),
#[error("mcp attach failed: {0}")]
McpSession(String),
}
pub type Result<T> = std::result::Result<T, RecordError>;