Adds basic task management tools.
This commit is contained in:
@@ -2,17 +2,17 @@
|
||||
"""
|
||||
update-tasks
|
||||
|
||||
Synchronizes and regenerates Documentation/Tasks.md:
|
||||
Synchronizes and regenerates docs/tasks.md:
|
||||
1. Parses YAML frontmatter for projects, epics, task-statuses, task-types, and task-id-prefix.
|
||||
2. Extracts all task chunks and sorts the Detailed Tasks section strictly by numeric task ID.
|
||||
3. Updates the Detailed Tasks section:
|
||||
- Normalizes all task IDs to uniform digit width (minimum 3 digits, e.g. OT-001).
|
||||
- Normalizes all task IDs to uniform digit width (minimum 3 digits, e.g. EX-001).
|
||||
- Synchronizes task detail blocks (including optional **Epic:**) with anchor tags (SSOT).
|
||||
4. Re-renders the Overall Progress Table (tasks-list) from the sorted, updated task details:
|
||||
- Bold (**Title**) for pending tasks
|
||||
- Italic (*Title*) for planning and triage tasks
|
||||
- Plain (Title) for fixed/done/other tasks
|
||||
- Type column links ([Type](#ot-xxx))
|
||||
- Type column links ([Type](#ex-xxx))
|
||||
5. Re-renders the metadata derived enum tables at the end of the document:
|
||||
- Projects (Rendered from frontmatter projects)
|
||||
- Task Statuses (Rendered from frontmatter task-statuses)
|
||||
@@ -106,7 +106,7 @@ def read_frontmatter(text):
|
||||
|
||||
|
||||
def get_task_id_prefix(fm_data):
|
||||
prefix = os.environ.get("TASK_ID_PREFIX", fm_data.get("task-id-prefix", "OT"))
|
||||
prefix = os.environ.get("TASK_ID_PREFIX", fm_data.get("task-id-prefix", "EX"))
|
||||
if not isinstance(prefix, str) or not re.fullmatch(r"[A-Za-z][A-Za-z0-9_-]*", prefix):
|
||||
raise ValueError("Task ID prefix must start with a letter and contain only letters, digits, underscores, or hyphens")
|
||||
return prefix.upper()
|
||||
|
||||
Reference in New Issue
Block a user