nexo_driver_loop/
error.rs1use thiserror::Error;
2
3#[derive(Debug, Error)]
4pub enum DriverError {
5 #[error("config: {0}")]
6 Config(String),
7 #[error("workspace: {0}")]
8 Workspace(String),
9 #[error("workspace path escapes root: {path}")]
10 WorkspaceTraversal { path: String },
11 #[error("harness: {0}")]
12 Harness(#[from] nexo_driver_types::HarnessError),
13 #[error("claude: {0}")]
14 Claude(#[from] nexo_driver_claude::ClaudeError),
15 #[error("permission: {0}")]
16 Permission(#[from] nexo_driver_permission::PermissionError),
17 #[error("acceptance: {0}")]
18 Acceptance(String),
19 #[error("socket: {0}")]
20 Socket(String),
21 #[error("io: {0}")]
22 Io(#[from] std::io::Error),
23 #[error("serde: {0}")]
24 Serde(#[from] serde_json::Error),
25 #[error("yaml: {0}")]
26 Yaml(String),
27 #[error("nats: {0}")]
28 Nats(String),
29 #[error("{0}")]
30 Other(String),
31}