Skip to content

Proposal: 待办模块 #18

Description

@Alexander-Noah

Issue:待办模块

1. 功能描述

待办模块定义不属于 Goal 的普通完成型事项。Todo 可以有截止时间,也可以有计划时间;截止时间表达“最晚何时完成”,计划时间表达“打算何时做”。

Todo 支持手动和 AI 候选创建、查看、编辑、完成、取消、删除、逾期展示和提醒联动。

2. 用户 / 用户故事

目标用户:需要低成本记录不属于长期 Goal 的普通完成型事项的个人用户。

  • 用户记录“今晚提交实验报告”,设置截止时间。
  • 用户记录“买打印纸”,不设置截止时间。
  • 用户在 AI Tab 输入“提醒我明晚交材料”,确认后创建 Todo。

3. 现有做法及不足

备忘录没有稳定截止、状态和提醒;系统日历容易把完成型事项误做成时间占用;完整任务管理工具又容易过度分类。

Todo 需要保留“完成型轻事项”的语义,并且 AI 创建、修改、删除都应走候选确认,不由子 Agent 直接落库。

4. 本期范围

  1. Todo 创建、查看、编辑、完成、取消、删除。
  2. 标题必填,截止时间可选。
  3. 状态包含 PENDINGCOMPLETEDCANCELLED
  4. 逾期由 due_at 和当前时间推导,不新增正式状态。
  5. 支持未排期 Todo 区域和已排期 Todo 的日程 Tab 投影。
  6. 与提醒模块联动。

5. 明确不做

  • 不做复杂标签、清单、看板。
  • 不做重复待办。
  • 不做 Todo 子任务。
  • 不把普通 Todo 强制纳入 Goal Feedback。
  • 不让 Todo 自动参与 Goal 拆分。

6. 关键决策

决策点 备选方案 选择 理由
Todo 定义 完成型轻事项 / 时间占用对象 完成型轻事项 与 Schedule 时间占用区分
截止与计划 共用一个时间 / 分离 分离 避免把截止误当执行时间
逾期 自动顺延 / 只展示逾期 展示状态 保留原计划事实
延期 系统自动 / 用户操作 用户操作 不替用户静默改日期

7. 边界与异常

  • 标题为空:禁止保存。
  • 无截止时间:允许保存,不自动创建提醒。
  • 截止时间已过:允许保存并立即显示逾期。
  • 固定会议输入为 Todo 时,产品应引导创建 Schedule。

8. 基本概念与信息结构

概念 含义
Todo 不属于 Goal 的普通完成型事项
due_at 可选截止时间
planned_start_at / planned_end_at 可选计划执行时间
status PENDINGCOMPLETEDCANCELLED

9. Agent 输入输出约束

  • 日程待办 Agent 可生成 Todo 创建、查询、修改、删除候选。
  • 创建、修改、删除必须经确认。
  • 查询结果可直接展示。
  • 用户明确修改截止时间时,必须在候选中单独展示截止变化。
  • 手动表单保存/提交作为确认事件;删除和批量修改仍需强确认,写入前统一校验对象归属和当前状态。

10. 验收标准

  • 创建有截止 Todo 后,在对应日期和待办区域正确展示。
  • 逾期 Todo 保留原截止时间。
  • 主动延期会更新截止时间并记录延期次数,状态仍为 PENDING
  • 完成 Todo 后状态为 COMPLETED,未触发提醒取消。
  • AI 创建 / 修改 / 删除 Todo 均需用户确认。
  • 手动保存可追踪,未确认的高风险操作不改变 Todo。

Metadata

Metadata

Assignees

No one assigned

    Labels

    FullSpec完整规格提案:影响面较大,需要写清楚动机、范围、不做、备选方案、接口/数据结构、原型、验收标准Proposal-Acceptedproposal

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions