Skip to main content

start_task

Function start_task 

Source
pub fn start_task(
    ito_path: &Path,
    change_id: &str,
    task_id: &str,
) -> CoreResult<TaskItem>
Expand description

Mark a task as in-progress in a change’s tracking file.

Validates parsing diagnostics and task preconditions, updates the tracking file on disk, and returns the updated TaskItem with its status set to InProgress.

Parameters:

  • ito_path: root repository path used to resolve the change’s tracking file.
  • change_id: canonical change identifier whose tracking file will be modified.
  • task_id: task identifier to start; for checkbox-format files this may be a numeric index that will be resolved to the canonical task id.

Errors: Returns a CoreError when the tracking file cannot be read/written, when parsing diagnostics contain errors, when the task cannot be resolved or located, or when preconditions for transitioning the task to InProgress are not met (including blocked, already in-progress, completed, or shelved states).

§Examples

use std::path::Path;
// Start task "1.1" for change "1" in the repository at "/repo"
let repo = Path::new("/repo");
let _ = ito_core::tasks::start_task(repo, "1", "1.1");