pub struct TaskResult {
pub task: Task,
pub status: TaskStatus,
pub turns: u32,
pub cost_usd: f64,
pub duration: Duration,
pub artifacts: Vec<PathBuf>,
}Expand description
Result of executing a task, extracted from SDK’s ResultMessage.
Contains execution metrics (turns, cost, duration) alongside the task identity and outcome status.
§Examples
use std::time::Duration;
use coda_core::task::{Task, TaskResult, TaskStatus};
let result = TaskResult {
task: Task::DevPhase {
name: "setup-types".to_string(),
feature_slug: "add-auth".to_string(),
},
status: TaskStatus::Completed,
turns: 3,
cost_usd: 0.12,
duration: Duration::from_secs(300),
artifacts: vec![],
};
assert_eq!(result.turns, 3);
assert!(matches!(result.status, TaskStatus::Completed));Fields§
§task: TaskThe task that was executed.
status: TaskStatusWhether the task completed successfully or failed.
turns: u32Number of agent conversation turns used.
cost_usd: f64Total cost in USD from ResultMessage.total_cost_usd.
duration: DurationWall-clock duration from ResultMessage.duration_ms.
artifacts: Vec<PathBuf>Paths to files created or modified by this task.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TaskResult
impl RefUnwindSafe for TaskResult
impl Send for TaskResult
impl Sync for TaskResult
impl Unpin for TaskResult
impl UnsafeUnpin for TaskResult
impl UnwindSafe for TaskResult
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more