skilllite_executor/error.rs
1//! Structured error types for executor public APIs.
2//!
3//! Enables precise error handling at the executor boundary without
4//! coupling callers to internal implementation details.
5
6use std::path::PathBuf;
7use thiserror::Error;
8
9/// Errors from workspace/chat root resolution.
10#[derive(Debug, Error)]
11pub enum ExecutorError {
12 /// I/O error while resolving paths (e.g. current_dir).
13 #[error("I/O error: {0}")]
14 Io(#[from] std::io::Error),
15
16 /// Path resolution produced an invalid result.
17 #[error("Invalid path: {path}")]
18 InvalidPath { path: PathBuf },
19}