(tasks: &[crate::planning::Task])
| 74 | } |
| 75 | |
| 76 | pub fn tasks_to_ahp_items(tasks: &[crate::planning::Task]) -> Vec<a3s_ahp::TaskItem> { |
| 77 | tasks |
| 78 | .iter() |
| 79 | .map(|task| a3s_ahp::TaskItem { |
| 80 | id: task.id.clone(), |
| 81 | title: task.content.clone(), |
| 82 | status: task_status_to_ahp(task.status), |
| 83 | depends_on: task.dependencies.clone(), |
| 84 | evidence: Vec::new(), |
| 85 | artifacts: Vec::new(), |
| 86 | error: (task.status == crate::planning::TaskStatus::Failed) |
| 87 | .then(|| "task failed".to_string()), |
| 88 | updated_at: Some(now()), |
| 89 | metadata: task_metadata(task), |
| 90 | }) |
| 91 | .collect() |
| 92 | } |
| 93 | |
| 94 | pub fn cancelled_run_event( |
| 95 | run_id: &str, |
no test coverage detected