use std::path::PathBuf; #[derive(Debug, thiserror::Error)] pub enum BenchError { #[error("Config error: {0}")] Config(String), #[error("Config file not found: {path}")] ConfigNotFound { path: PathBuf }, #[error("Suite {name} not found. Available: {available}")] SuiteNotFound { name: String, available: String }, #[error("Task {task_id} failed: {reason}")] TaskFailed { task_id: String, reason: String }, #[error("Scoring error for task {task_id}: {reason}")] Scoring { task_id: String, reason: String }, #[error("IO error: {0}")] Io(#[from] std::io::Error), #[error("JSON error: {0}")] Json(#[from] serde_json::Error), #[error("TOML parse error: {0}")] Toml(#[from] toml::de::Error), #[error("Agent error: {0}")] Agent(#[from] ironclaw::Error), }