mix validate_tasklist (TaskValidator v0.4.0)
View SourceValidates the format and structure of a TaskList.md file.
Task List Structure
The task list must contain two main sections:
- Current Tasks (Active tasks in progress)
- Completed Tasks (Tasks that have been finished)
Validation Rules
Task ID Format
- 2-4 uppercase letters as prefix (e.g., SSH, SCP, ERR)
- 3-4 digits as sequence number
- Optional hyphen and number for subtasks (e.g., SSH0001-1)
- Examples: SSH0001, SCP0001, ERR001, SSH0001-1
Status Values
Valid statuses:
- Planned
- In Progress
- Review
- Completed
- Blocked
Priority Values
Valid priorities:
- Critical
- High
- Medium
- Low
Required Sections
Main tasks must include:
- Description
- Simplicity Progression Plan
- Simplicity Principle
- Abstraction Evaluation
- Requirements
- ExUnit Test Requirements
- Integration Test Scenarios
- Typespec Requirements
- TypeSpec Documentation
- TypeSpec Verification
- Status
- Priority
Subtask Requirements
- Must use same prefix as parent task
- Must have "Status" section
- If status is "Completed", must have "Review Rating"
- Review rating format: 1-5 with optional decimal (e.g., 4.5)
- Review rating can include "(partial)" suffix
Additional Rules
- Tasks marked as "In Progress" must have at least one subtask
- All non-completed tasks must have detailed entries
- No duplicate task IDs allowed
- All subtasks must use the same prefix as their parent task
Usage
mix validate_tasklist [OPTIONS]
Options
--path Specify a non-default path to the TaskList.md file (default: docs/TaskList.md)
Example
mix validate_tasklist
mix validate_tasklist --path ./custom/path/TaskList.md
Summary
Functions
Callback implementation for Mix.Task.run/1
.
Functions
Callback implementation for Mix.Task.run/1
.