use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
pub struct TaskMetrics {
pub total_tasks: u64,
pub completed_tasks: u64,
pub success_rate: f64,
pub total_ticks: u64,
pub total_actions: u64,
pub successful_actions: u64,
}
impl TaskMetrics {
pub fn from_core_metrics(
total_ticks: u64,
total_actions: u64,
successful_actions: u64,
) -> Self {
let success_rate = if total_actions > 0 {
successful_actions as f64 / total_actions as f64
} else {
0.0
};
Self {
total_tasks: 0, completed_tasks: 0, success_rate,
total_ticks,
total_actions,
successful_actions,
}
}
}