Files
HarborForge/plans/TASKLIST.md
2026-03-29 11:34:12 +00:00

5.2 KiB
Raw Blame History

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_typeevent_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 实体
    • 定义 EssentialProposal 的关系
    • 定义 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 的迁移说明
    • 补充本波开发完成后的验收清单