docs: move tasklist under plans

This commit is contained in:
nav
2026-03-29 11:34:12 +00:00
parent b416c60ae7
commit 05185c9b21

121
plans/TASKLIST.md Normal file
View File

@@ -0,0 +1,121 @@
# TASKLIST.md
> 说明:如果某个进行中的 Task 没有完全完成,或者在执行过程中遇到 block需要在该 Task 下继续拆分若干子 TODO item本次开发中已经完成的部分标记为已完成block / pending / 尚未完成的部分标记为未完成。
---
# TODOLIST
- [ ] Task 1整理并确认 Calendar / Proposal / Essential 的整体边界
- [ ] 明确 Calendar 系统与 Proposal / Essential 结构调整的耦合边界
- [ ] 确认哪些内容属于“本波开发必须实现”
- [ ] 确认哪些内容仅保留为设计备注或后续规划
- [ ] Task 2设计 Calendar 数据模型
- [ ] 设计 `TimeSlot` 表结构
- [ ] 设计 `SchedulePlan` 表结构
- [ ] 设计 `MinimumWorkload` 存储方案
- [ ] 设计 `slot_id` / plan 虚拟 slot 的标识策略
- [ ] 定义 `event_type``event_data` 的结构约束
- [ ] Task 3设计 Agent 日程唤醒与状态流转
- [ ] 定义插件心跳请求 / 响应格式
- [ ] 定义待执行 slot 的筛选规则
- [ ] 定义 Agent Idle / Busy / OnCall / Exhausted / Offline 的状态流转
- [ ] 定义多 slot 冲突时的优先级与 deferred 规则
- [ ] 定义 Exhausted 状态的进入条件与恢复策略
- [ ] Task 4实现 Calendar 后端模型与数据库迁移
- [ ] 新增 Calendar 相关模型
- [ ] 新增数据库迁移或启动自修复逻辑
- [ ] 处理 plan 物化与真实 slot 持久化逻辑
- [ ] 处理不可编辑过去 slot 的限制
- [ ] Task 5实现 Calendar 后端 API
- [ ] 实现单次日程创建接口
- [ ] 实现日程查看接口
- [ ] 实现日程编辑接口
- [ ] 实现日程取消接口
- [ ] 实现周期计划创建 / 编辑 / 取消 / 列表接口
- [ ] 实现 overlap 检测
- [ ] 实现 MinimumWorkload warning 机制
- [ ] Task 6实现 Calendar CLI
- [ ] 实现 `hf calendar schedule`
- [ ] 实现 `hf calendar show`
- [ ] 实现 `hf calendar cancel`
- [ ] 实现 `hf calendar edit`
- [ ] 实现 `hf calendar date-list`
- [ ] 实现 `hf calendar plan-schedule`
- [ ] 实现 `hf calendar plan-list`
- [ ] 实现 `hf calendar plan-cancel`
- [ ] 实现 `hf calendar plan-edit`
- [ ] Task 7实现 Proposal 重命名为 Proposal 的后端改造
- [ ]`Propose` 概念统一重命名为 `Proposal`
- [ ] 调整后端模型 / schema / router 命名
- [ ] 调整前端页面与 API 调用命名
- [ ] 调整 CLI / 文档 / 测试中的命名
- [ ] 处理兼容迁移策略(如旧接口别名或数据兼容)
- [ ] Task 8设计并实现 Essential 数据模型
- [ ] 新增 `Essential` 实体
- [ ] 定义 `Essential``Proposal` 的关系
- [ ] 定义 `Essential.type` 枚举:`feature` / `improvement` / `refactor`
- [ ] 设计 `EssentialCode` 编码规则
- [ ] 实现 `EssentialCode` 自动生成逻辑
- [ ] Task 9实现 Proposal / Essential 后端 API
- [ ] 实现 Proposal 下 Essential 的创建接口
- [ ] 实现 Proposal 下 Essential 的编辑接口
- [ ] 实现 Proposal 下 Essential 的删除接口
- [ ] 实现 Proposal 详情中 Essential 列表返回
- [ ] 实现 Proposal Accept 时选择目标 Milestone 的能力
- [ ] Task 10重构 Proposal Accept 工作流
- [ ] 移除“Accept 后生成单个 `story/feature` task”的旧逻辑
- [ ] 改为遍历 Proposal 下所有 Essential
- [ ] 按 Essential 类型生成对应 `story/*` task
- [ ] 将生成的 task 统一挂到选定 Milestone
- [ ] 记录 Proposal 与生成 task 的追踪关系
- [ ] 处理 Accept 时的事务一致性与失败回滚
- [ ] Task 11收紧 Story 创建规则
- [ ]`story` 整个大类设为 restricted
- [ ] 禁止通过通用 task create endpoint 直接创建任意 `story/*`
- [ ] 仅允许通过 `Proposal Accept` 创建 `story/*`
- [ ] 调整前端 Task 创建页面,隐藏或禁用 story 创建入口
- [ ] 调整 CLI 创建逻辑与错误提示
- [ ] Task 12实现 Calendar 前端页面
- [ ] 设计日历页展示结构
- [ ] 实现某日 slot 列表展示
- [ ] 实现计划列表展示
- [ ] 实现新增 / 编辑 / 取消日程交互
- [ ] 实现 overlap / warning / deferred 状态提示
- [ ] Task 13实现 Proposal / Essential 前端页面
- [ ] 调整 Proposal 列表与详情页命名
- [ ] 在 Proposal 详情页增加 Essential 列表区域
- [ ] 支持新增 / 编辑 / 删除 Essential
- [ ] 在 Accept 流程中增加目标 Milestone 选择
- [ ] 展示 Accept 后生成的 story task 结果
- [ ] Task 14实现 acc-mgr 禁止修改密码的修复
- [ ] 后端禁止修改 acc-mgr 密码
- [ ] 前端隐藏 acc-mgr 修改密码入口
- [ ] 补充测试覆盖该限制
- [ ] Task 15补齐测试
- [ ] 补充 Calendar 模型 / API / CLI 测试
- [ ] 补充 Proposal / Essential 工作流测试
- [ ] 补充 Story restricted 相关测试
- [ ] 补充 Proposal Accept 批量生成 story task 测试
- [ ] 补充 acc-mgr 密码限制测试
- [ ] Task 16补齐文档与迁移说明
- [ ] 更新后端开发文档
- [ ] 更新前端交互说明
- [ ] 更新 CLI 使用文档
- [ ] 补充 Proposal / Essential / Story restricted 的迁移说明
- [ ] 补充本波开发完成后的验收清单