pub fn validate_graph<S: TaskStore>(storage: &mut S) -> Result<()>
Check for cycles in the task graph using Kahn’s algorithm. This is a pre-execution validation step.