本实现计划将任务分配与模板管理功能分解为可执行的开发任务。任务按照从后端 API 到前端组件的顺序组织,确保每一步都可以独立测试和验证。
[x] 1. 后端 - 用户管理 API 扩展
backend/routers/user.py 路由文件Requirements: 1.1, 1.2, 1.3, 1.4
[ ]* 1.2 编写 Property 1 的属性测试
Property 1: 用户列表筛选正确性
Validates: Requirements 1.2, 1.3
测试角色筛选和关键词搜索的正确性
[x] 2. 后端 - 任务分配 API
backend/routers/task.py 添加分配端点Requirements: 2.3, 2.4, 2.5, 2.6, 3.1
[ ]* 2.2 编写 Property 2 的属性测试
Property 2: 任务分配正确性
Validates: Requirements 2.3, 2.4
测试分配后 assigned_to 字段正确更新
[ ]* 2.3 编写 Property 3 的属性测试
Property 3: 批量分配平均性
Validates: Requirements 2.6
测试平均分配模式下任务分配的均匀性
[ ]* 2.4 编写 Property 4 的属性测试
Property 4: 标注人员任务可见性
Validates: Requirements 3.1, 3.2
测试标注人员只能看到分配给自己的任务
[x] 3. 后端 - 模板和配置验证 API
backend/routers/template.py 路由文件Requirements: 4.1, 4.2, 4.3, 5.3, 5.4
[ ]* 3.2 编写 Property 7 的属性测试
Property 7: XML 配置验证
Validates: Requirements 5.3, 5.4
测试 XML 验证的正确性
[x] 4. 后端 - 统计 API
backend/routers/statistics.py 路由文件Requirements: 9.1, 9.2, 9.3, 9.7
[ ]* 4.2 编写 Property 12 的属性测试
Property 12: 统计数据准确性
Validates: Requirements 9.2, 9.3, 9.6, 9.7
测试统计数据的准确性
[x] 5. 后端 - 数据导出 API
backend/routers/export.py 路由文件backend/services/export_service.py 服务文件Requirements: 8.1, 8.2, 8.3, 8.4, 8.5
[ ]* 5.2 编写 Property 11 的属性测试
Property 11: 数据导出完整性
Validates: Requirements 8.3, 8.4, 8.5
测试导出数据的完整性和格式正确性
[x] 6. Checkpoint - 后端 API 完成
[x] 7. 前端 - 状态管理扩展
atoms/user-management-atoms.tsatoms/template-atoms.tsatoms/config-editor-atoms.tsatoms/statistics-atoms.tsatoms/export-atoms.ts[x] 8. 前端 - API 服务扩展
services/api.ts 添加用户管理 API 函数[x] 9. 前端 - 用户管理界面
views/user-management-view/ 目录Requirements: 1.1, 1.2, 1.3, 1.4
[x] 9.2 添加用户管理路由
在 App.tsx 添加 /users 路由
在侧边栏添加用户管理菜单项(仅管理员可见)
Requirements: 1.1
[x] 10. 前端 - 任务分配功能
components/task-assignment-dialog/ 目录Requirements: 2.1, 2.2, 2.3, 2.5, 2.6, 2.7
[x] 10.2 更新任务列表视图
在 TaskListView 添加任务选择功能
添加分配按钮
显示当前分配人员
集成 TaskAssignmentDialog
Requirements: 2.1, 2.7
[x] 10.3 创建标注人员任务视图
更新 TaskListView 支持标注人员模式
只显示分配给当前用户的任务
显示任务完成进度
Requirements: 3.1, 3.2, 3.5
[x] 11. Checkpoint - 任务分配功能完成
[x] 12. 前端 - 模板选择功能
components/template-gallery/ 目录Requirements: 4.1, 4.2, 4.3, 4.5
[x] 12.2 创建预设模板数据
创建 templates/index.ts 文件
添加图像分类模板
添加目标检测模板
添加图像分割模板
添加文本分类模板
添加命名实体识别模板
添加文本标注模板
添加音频转写模板
添加视频标注模板
Requirements: 4.2
[x] 12.3 集成模板选择到项目创建
更新 ProjectForm 组件
添加模板选择步骤
实现模板配置填充
支持自定义修改
Requirements: 4.4, 4.6
[ ]* 12.4 编写 Property 6 的属性测试
Property 6: 模板选择填充
Validates: Requirements 4.4, 4.5
测试模板选择后配置正确填充
[x] 13. 前端 - 配置编辑器
Requirements: 5.1
[x] 13.2 创建 ConfigEditor 组件
创建 components/config-editor/ 目录
实现代码编辑模式(Monaco Editor)
实现 XML 语法高亮
实现实时语法验证
实现错误提示显示
实现模式切换功能
Requirements: 5.1, 5.3, 5.4, 5.6
[ ]* 13.3 编写 Property 8 的属性测试
Property 8: 配置编辑器同步 (Round-trip)
Validates: Requirements 5.6, 5.8
测试模式切换后配置内容同步
[ ] 14. 前端 - 可视化配置构建器
components/visual-config-builder/ 目录Requirements: 6.1, 6.2, 6.3, 6.4, 6.5, 6.6
[ ]* 14.2 编写 Property 9 的属性测试
Property 9: 可视化编辑器 XML 生成
Validates: Requirements 6.3, 6.6
测试组件操作后 XML 正确生成
[ ] 15. 前端 - 配置预览功能
components/config-preview/ 目录Requirements: 7.1, 7.2, 7.3, 7.4, 7.5, 7.6
[ ]* 15.2 编写 Property 10 的属性测试
Property 10: 配置预览错误处理
Validates: Requirements 7.5
测试无效配置的错误处理
[ ] 16. Checkpoint - 模板和编辑器功能完成
[x] 17. 前端 - 数据导出功能
components/data-export-dialog/ 目录Requirements: 8.1, 8.2, 8.3, 8.4, 8.6
[x] 17.2 集成导出功能到项目详情
在 ProjectDetailView 添加导出按钮
集成 DataExportDialog
Requirements: 8.1
[ ] 18. 前端 - 统计面板
components/project-statistics-panel/ 目录Requirements: 9.1, 9.2, 9.3, 9.4, 9.5, 9.7
[ ] 18.2 集成统计面板到项目详情
在 ProjectDetailView 添加统计面板
实现统计数据加载
Requirements: 9.1
[ ] 18.3 更新任务列表显示进度
在 TaskListView 显示任务完成进度
实现进度条组件
Requirements: 3.5, 9.7
[ ] 19. 前端 - 任务状态自动更新
Requirements: 3.6, 9.6
[ ] 19.2 编写 Property 5 的属性测试
Property 5: 任务状态自动更新
Validates: Requirements 3.6
测试任务完成后状态自动更新
[ ] 20. Checkpoint - 所有功能完成
[ ] 21. 集成测试和优化
Requirements: All
[ ] 21.2 性能优化
优化统计查询性能
优化大量任务的分配性能
优化导出大量数据的性能
Requirements: All
[ ] 22. Final Checkpoint - 完整功能验证
* 的任务为可选测试任务,可以跳过以加快 MVP 开发