Expand description
Core data models for tasks and phases.
This module defines the fundamental types used throughout SCUD:
models::Task- Individual work items with status, complexity, dependenciesmodels::Phase- A collection of related tasks (identified by a tag)models::TaskStatus- Task lifecycle states (Pending, InProgress, Done, etc.)models::Priority- Task priority levels (Critical, High, Medium, Low)models::IdFormat- ID generation strategy (Sequential or UUID)
§Example
use scud::models::{Task, TaskStatus, Phase};
let mut phase = Phase::new("my-feature".to_string());
let mut task = Task::new(
"1".to_string(),
"Implement feature".to_string(),
"Add the new functionality".to_string(),
);
task.complexity = 5;
task.dependencies = vec!["setup:1".to_string()]; // Cross-phase dependency
phase.add_task(task);
// Find tasks ready to work on
if let Some(next) = phase.find_next_task() {
println!("Ready: {}", next.title);
}Re-exports§
pub use phase::IdFormat;pub use phase::Phase;pub use task::Priority;pub use task::Task;pub use task::TaskStatus;