Files
siriusscan--sirius/documentation/dev/operations/README.tasks.md
T
wehub-resource-sync 161ef94b4f
Check engine pin consistency / Dockerfile / CI pin consistency (push) Successful in 8s
Sirius CI/CD Pipeline / Detect Changes (push) Successful in 23s
Validate Docker Configuration / Validate Docker Compose Configuration (push) Successful in 47s
Sirius CI/CD Pipeline / Build API (${{ matrix.platform }}) (push) Has been cancelled
Sirius CI/CD Pipeline / Build UI (${{ matrix.platform }}) (push) Has been cancelled
Sirius CI/CD Pipeline / Merge Engine Manifest (push) Has been cancelled
Sirius CI/CD Pipeline / Merge API Manifest (push) Has been cancelled
Sirius CI/CD Pipeline / Merge UI Manifest (push) Has been cancelled
Sirius CI/CD Pipeline / Build Engine (${{ matrix.platform }}) (push) Has been cancelled
Sirius CI/CD Pipeline / Build Infra (${{ matrix.service }}, ${{ matrix.platform }}) (push) Has been cancelled
Sirius CI/CD Pipeline / Merge Infra Manifest (sirius-postgres) (push) Has been cancelled
Sirius CI/CD Pipeline / Merge Infra Manifest (sirius-rabbitmq) (push) Has been cancelled
Sirius CI/CD Pipeline / Merge Infra Manifest (sirius-valkey) (push) Has been cancelled
Sirius CI/CD Pipeline / Integration Test (push) Has been cancelled
Sirius CI/CD Pipeline / Public Stack Contract (push) Has been cancelled
Sirius CI/CD Pipeline / Dispatch Demo Deployment (sirius-demo branch) (push) Has been cancelled
Sirius CI/CD Pipeline / Dispatch Demo Canary (main branch) (push) Has been cancelled
Sirius CI/CD Pipeline / Guard Registry Namespace (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 12:32:25 +08:00

367 lines
9.9 KiB
Markdown

---
title: "Task Management System"
description: "Guidelines for managing development tasks using the JSON-based task system for project tracking and progress monitoring."
template: "TEMPLATE.documentation-standard"
version: "1.0.0"
last_updated: "2025-01-03"
author: "Development Team"
tags: ["task-management", "project-tracking", "development-workflow"]
categories: ["operations", "development"]
difficulty: "beginner"
prerequisites: ["json", "project-structure"]
related_docs:
- "README.new-project.md"
- "README.git-operations.md"
dependencies: []
llm_context: "high"
search_keywords:
[
"task management",
"tasks.json",
"project tracking",
"development workflow",
"task status",
]
---
# Task Management System
> **📚 New Projects**: For project initialization workflow, see [README.new-project.md](README.new-project.md)
## Purpose
This document provides guidelines for managing development tasks using our JSON-based task system. It ensures consistent task tracking, progress monitoring, and project completion across all development efforts.
## When to Use This System
- **Working on any project** with a `tasks/{project-name}.json` file
- **Tracking progress** on development sprints
- **Managing dependencies** between related tasks
- **Planning work** and estimating completion
- **Reporting status** to stakeholders
## Core Principles
### 1. Always Check Your Tasks
- **Start each work session** by reviewing the current task file
- **Understand dependencies** before starting work
- **Check task status** to see what's been completed
- **Identify next steps** based on available tasks
### 2. Mark Tasks Complete
- **Update status immediately** when a task is finished
- **Verify completion** using the test strategy
- **Update dependent tasks** if completion affects them
- **Commit changes** to the task file with your code
### 3. Ask for Support When Needed
- **Request clarification** on unclear requirements
- **Ask for help** when blocked or uncertain
- **Escalate issues** that prevent progress
- **Get approval** for significant scope changes
## Task Status Management
### Status Values
| Status | Description | When to Use |
| ------------- | ------------------------- | ------------------------------------ |
| `pending` | Task not started | Default for new tasks |
| `in_progress` | Currently being worked on | When actively working |
| `done` | Completed successfully | When task is finished |
| `blocked` | Cannot proceed | When waiting for external dependency |
### Status Updates
```json
{
"id": "1.2",
"title": "Implement User Authentication",
"status": "in_progress", // ← Update this as work progresses
"priority": "high",
"dependencies": ["1.1"]
}
```
**Update Pattern:**
1. **Start work**: Change to `in_progress`
2. **Complete work**: Change to `done`
3. **Hit blocker**: Change to `blocked`
4. **Resolve blocker**: Change back to `in_progress`
## Task Dependencies
### Understanding Dependencies
Tasks can depend on other tasks being completed first:
```json
{
"id": "2.1",
"title": "Create Database Schema",
"dependencies": ["1.1", "1.2"] // ← Must complete 1.1 AND 1.2 first
}
```
### Dependency Rules
- **Check dependencies** before starting any task
- **Only work on tasks** with completed dependencies
- **Update dependent tasks** when you complete a task
- **Resolve circular dependencies** immediately
### Dependency Resolution
```bash
# Check what tasks are available to work on
# Look for tasks with status "pending" and no incomplete dependencies
# Example: Task 2.1 depends on 1.1 and 1.2
# - If 1.1 is "done" and 1.2 is "done" → Task 2.1 is available
# - If 1.1 is "pending" or 1.2 is "blocked" → Task 2.1 is not available
```
## Task File Structure
### Main Task Structure
```json
{
"id": "1",
"title": "PHASE 1: Core Implementation",
"description": "Brief description of the phase",
"details": "Detailed implementation notes and expected outputs",
"status": "pending",
"priority": "high",
"dependencies": [],
"subtasks": [
{
"id": "1.1",
"title": "Specific Implementation Task",
"description": "What this task accomplishes",
"details": "Implementation details, acceptance criteria, and context",
"status": "pending",
"priority": "high",
"dependencies": [],
"testStrategy": "How to verify this task is complete"
}
]
}
```
### Subtask Structure
```json
{
"id": "1.2",
"title": "Implement User Authentication",
"description": "Add login/logout functionality to the application",
"details": "Create authentication endpoints, middleware, and UI components. Use JWT tokens for session management. Include password hashing and validation.",
"status": "pending",
"priority": "high",
"dependencies": ["1.1"],
"testStrategy": "Test login with valid/invalid credentials, verify JWT token generation, confirm logout clears session"
}
```
## Working with Tasks
### Daily Workflow
1. **Review task file** at start of work session
2. **Identify available tasks** (pending status, dependencies met)
3. **Select highest priority** available task
4. **Update status** to `in_progress`
5. **Work on task** following details and test strategy
6. **Mark complete** when finished
7. **Commit changes** to both code and task file
### Task Selection Guidelines
**Priority Order:**
1. **High priority** tasks first
2. **Medium priority** tasks second
3. **Low priority** tasks last
**Dependency Order:**
1. **No dependencies** first
2. **Fewer dependencies** before more complex ones
3. **Blocking tasks** before dependent tasks
### Example Work Session
```bash
# 1. Check current tasks
cat tasks/feature-development.json | jq '.[] | select(.status == "pending")'
# 2. Find available tasks (no incomplete dependencies)
# Look for tasks with status "pending" and all dependencies "done"
# 3. Start work on selected task
# Update status to "in_progress" in task file
# 4. Complete work
# Update status to "done" in task file
# Commit both code and task file changes
git add .
git commit -m "feat: implement user authentication
- Add JWT-based authentication system
- Create login/logout endpoints
- Update task 1.2 to done status"
```
## Task File Maintenance
### Regular Updates
- **Update status** as work progresses
- **Add details** if requirements change
- **Update dependencies** if new relationships discovered
- **Refine test strategies** based on implementation
### File Validation
Ensure task files maintain proper structure:
```json
// Valid task structure
{
"id": "string", // Required: Unique identifier
"title": "string", // Required: Clear task name
"description": "string", // Required: Brief summary
"details": "string", // Required: Implementation notes
"status": "string", // Required: pending|in_progress|done|blocked
"priority": "string", // Required: high|medium|low
"dependencies": ["array"], // Required: Array of task IDs
"subtasks": [
// Optional: For main tasks only
{
"id": "string",
"title": "string",
"description": "string",
"details": "string",
"status": "string",
"priority": "string",
"dependencies": ["array"],
"testStrategy": "string" // Required for subtasks
}
]
}
```
## Integration with Development Tools
### Cursor Integration
When working with tasks, Cursor will:
- **Include task files** in context for relevant projects
- **Reference task details** when discussing implementation
- **Update task status** when completing work
- **Check dependencies** before suggesting work
### Git Integration
- **Commit task changes** with code changes
- **Reference task IDs** in commit messages
- **Track progress** through commit history
- **Maintain task history** across branches
## Common Patterns
### Task Completion Pattern
```bash
# 1. Complete the work
# 2. Test using testStrategy
# 3. Update task status
# 4. Check dependent tasks
# 5. Commit changes
git add .
git commit -m "feat: complete task 1.2 - user authentication
- Implemented JWT-based auth system
- Added login/logout endpoints
- Updated task status to done
- Ready for dependent tasks"
```
### Dependency Resolution Pattern
```bash
# When completing a task that others depend on:
# 1. Mark current task as done
# 2. Check what tasks depend on this one
# 3. Update dependent tasks if needed
# 4. Notify team of newly available tasks
```
### Blocked Task Pattern
```bash
# When encountering a blocker:
# 1. Update task status to "blocked"
# 2. Add details about the blocker
# 3. Identify resolution steps
# 4. Work on other available tasks
# 5. Return when blocker is resolved
```
## Troubleshooting
### Common Issues
**Task file not found:**
- Verify file exists in `tasks/` directory
- Check filename matches project name
- Ensure JSON syntax is valid
**Invalid task status:**
- Use only: `pending`, `in_progress`, `done`, `blocked`
- Check for typos in status values
- Validate JSON structure
**Circular dependencies:**
- Review dependency chains
- Break circular references
- Restructure task dependencies
**Missing test strategy:**
- Add testStrategy field to subtasks
- Include specific verification steps
- Make tests measurable and clear
### Getting Help
- **Task questions**: Ask for clarification on requirements
- **Dependency issues**: Request help resolving conflicts
- **Status updates**: Confirm completion criteria
- **File problems**: Verify JSON syntax and structure
## Future Enhancements
This task management system will evolve based on team needs:
- **Automated status tracking** based on commit messages
- **Dependency visualization** tools
- **Progress reporting** dashboards
- **Integration** with project management tools
- **Notification system** for task updates
---
_This task management system ensures consistent progress tracking and project completion. Always check your tasks, mark them complete, and ask for support when needed._