1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
//! Task template system for CueLoop.
//!
//! Purpose:
//! - Task template system for CueLoop.
//!
//! Templates provide pre-filled task fields for common patterns.
//! Built-in templates are embedded; custom templates can be added to `.cueloop/templates/`.
//!
//! Responsibilities:
//! - Define built-in templates for common task types (bug, feature, refactor, test, docs).
//! - Load templates from `.cueloop/templates/` directory (custom overrides).
//! - Merge template fields with user-provided options.
//! - Validate templates and report warnings for unknown variables.
//!
//! Not handled here:
//! - Template application to task creation (see `crate::commands::task`).
//! - CLI argument parsing (see `crate::cli::task`).
//!
//!
//! Usage:
//! - Used through the crate module tree or integration test harness.
//!
//! Invariants/assumptions:
//! - Template names are case-sensitive and must be valid filenames.
//! - Custom templates override built-in templates with the same name.
//! - Template JSON must parse to a valid Task struct (partial tasks allowed).
//! - Unknown variables produce warnings; strict mode fails on unknown variables.
pub use ;
pub use ;
pub use ;