38 KiB
监督者 User Stories
日期:2026-09-22。本文定义监督者从应用入口到故事线图谱的用户场景、界面行为和验收条件。
当前代码已经交付智能心跳页面和运行链路;监督者工作回顾、故事线图谱、会话侧栏反馈和知识库双向定位仍是目标设计。因此每条故事标注了当前状态:
- 已实现:当前生产界面或 Main/Preload 链路已有可验证行为。
- 待实现:产品目标,不能用现有智能心跳页面或 Story Graph Demo 代替验收。
- 沿用:已有能力在监督者统一入口中必须继续保留。
用户角色
| 角色 | 目标 |
|---|---|
| 工作使用者 | 回到工作现场,理解进展、决定和未解决事项,并继续工作 |
| 知识整理者 | 核对来源,修正自动归纳,把可靠认识补充到知识库 |
| 监督者配置者 | 决定观察范围、运行时间和反馈方式 |
| 受限访问者 | 只能看到已授权范围内的会话、任务、笔记和知识库引用 |
入口与范围
US-S01 启用后知道监督者观察什么
状态:待实现。
作为工作使用者,我希望在第一次使用监督者时明确它将观察哪些内容,避免启用应用后默认读取全部工作。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 用户第一次打开监督者 | 选择 Global 或一个、多个 Project,并选择可用来源和时间区间 | 页面在生成前显示完整范围、来源和时间区间 |
| 用户没有选择来源 | 点击生成回顾 | 不开始整理,显示选择来源的入口和原因 |
| 当前项目已打开 | 打开范围选择 | 当前项目可以作为建议值,但不能覆盖已保存范围 |
| 用户切换当前项目 | 返回监督者 | 已保存的范围不改变 |
界面行为
- 首次状态显示“选择关注范围”,不显示看似已有的空回顾。
- 范围摘要持续显示在页面标题或范围徽标中。
- Global、指定项目和来源选择使用持久标签;不能只用颜色表示范围。
- 生成按钮在范围未完成时禁用,并把错误关联到对应字段。
US-S14 从应用中心进入唯一的监督者
状态:应用入口与启停已接入,完整验证范围见实施进度。
作为用户,我希望监督者只有一个稳定入口,不需要在智能心跳、任务中心和设置中心之间寻找重复配置。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 用户打开应用中心 | 启用应用后选择智能心跳入口 | 进入监督者统一页面,未来显示为监督者名称 |
| 用户已有智能心跳计划 | 应用入口升级 | 计划、运行记录、报告、建议和启用偏好仍可访问 |
| 用户打开任务中心或设置中心 | 查找心跳配置 | 不出现第二套计划 CRUD;需要时只提供进入监督者的链接 |
| 新安装或设置缺失应用启用值 | 启动应用 | 监督者关闭;已有显式开启或关闭选择保留 |
| 应用已启用但没有已保存且启用的计划 | 等待自动调度 | 不自动创建计划或运行回顾 |
| 已有心跳运行被领取并正在执行 | 关闭应用 | 该运行可完成并保存;不再接受新运行或追加自动监督回顾,侧栏不挂载或查询监督面板;普通任务定时调度不变 |
以上启停验收遵守应用启停与执行。
界面行为
- 应用身份、排序和常驻行为保持一致,不能生成第二个平级应用。
- 迁移期间如果仍显示“智能心跳”,页面应明确说明它是监督者的自动唤醒能力。
- 旧数据为空时进入有意义的首次配置状态,而不是报错。
US-S21 选择一个或多个项目作为观察范围
状态:已实现。
作为监督者配置者,我希望心跳计划明确属于 Global 或选定项目。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 用户编辑心跳计划 | 选择 Global | 计划显示 Global,不能同时选择项目 |
| 用户选择指定项目 | 勾选一个或多个活动项目并保存 | 计划保存为一份多项目计划,不为每个项目复制 Run 或报告 |
| 用户没有勾选项目 | 尝试保存指定项目计划 | 保存按钮不可用或显示字段错误 |
| 项目已归档或删除 | 查看或保存旧计划 | 显示不可用项目;不能默默扩大或改写范围 |
界面行为
- 使用分段控件选择 Global/指定项目,项目使用 Checkbox。
- 计划卡片显示 Global 或完整项目摘要;项目过多时显示数量并保留可访问的完整名称。
- 当前项目切换不会重新解释计划卡片的范围。
US-S22 配置自动监督
状态:已实现。
作为监督者配置者,我希望配置回顾时间、周期、回顾窗口和保留期限。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 用户打开自动监督 | 查看计划列表并点击创建或编辑 | Modal 显示名称、项目范围、每日/每周频率、指定时间、时区、回顾窗口和保留期限;页面说明选择每日或每周时间、保存并启用后自动运行 |
| 应用已启用但没有计划 | 打开自动监督或填写 Modal 字段 | 显示“尚未配置自动监督,目前仅支持手动回顾”,不自动保存、创建计划或发起运行 |
| 用户修改计划草稿 | 保存失败或关闭 Modal | 失败保留输入并可重试;Escape、取消和遮罩关闭均先确认放弃,继续编辑保留草稿 |
| 已有计划处于暂停状态 | 编辑并保存 | 更新计划字段,保持暂停;只有显式恢复才启用 |
| 两条计划名称相同 | 点击其中一条的执行记录 | 打开统一活动记录并按所选计划的精确 ID 筛选;可清除筛选,不影响自动监督页的概览和审计 |
| 用户完成配置 | 点击保存并启用计划 | 保存明确选择的频率、时间、范围和期限,参与既有调度 |
| 用户编辑已有计划 | 修改字段并保存 | 计划卡片显示新配置、下次运行和上次状态 |
| 已有计划暂停且时区与本机不同 | 编辑并保存 | 保留已暂停状态及原时区,不隐式恢复或改变执行时间 |
| 用户开始编辑 | 点击取消编辑 | 草稿丢弃,恢复编辑前的计划值 |
| 保存失败 | 提交表单 | 草稿保留,错误就地显示,用户可以修正后重试 |
界面行为
- 表单标签始终可见,不能用 placeholder 代替。
- 每次操作期间禁用重复提交和相互冲突的按钮。
- 周期选择为 weekly 时才显示星期字段。
- 新建使用本机时区,编辑保留原计划时区,表单与计划摘要常显时区;范围和状态不能只依赖颜色。
US-S23 暂停、恢复或立即运行计划
状态:已实现。
作为用户,我希望临时暂停自动回顾,也能随时手动运行一次。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 计划正在运行 | 点击暂停 | 计划停止下一次自动运行,已有历史和结果保留 |
| 计划已暂停 | 点击恢复 | 计划恢复并显示下一次运行时间 |
| 计划可运行 | 点击立即运行 | 创建一条标记为手动触发的 Run,并在完成后刷新结果 |
| Run 正在执行 | 再次点击运行或暂停 | 禁止重复操作,按钮显示进行中状态 |
工作回顾和监督反馈
US-S02 隔几天回来能继续上次工作
状态:待实现;当前智能心跳的运行概览和最新报告是可复用基础。
作为工作使用者,我希望打开监督者就知道上次形成了什么决定、哪些内容改变、还有什么没有解决。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 已有成功的阶段回顾 | 打开工作回顾 | 默认显示最近成功结果、覆盖范围和生成时间 |
| 回顾包含决定、变化和未解决事项 | 点击其中一项 | 展开依据,并提供“在图谱中查看”入口 |
| 没有成功回顾 | 打开工作回顾 | 显示首次生成入口,不伪装成已有总结 |
界面行为
- 页面顶部固定显示当前范围、来源和时间区间。
- 工作回顾是监督者的主视图之一,与故事线图谱使用 PageTabs 切换。
- 内容卡片显示“自动归纳”“待核对”或“用户确认”等状态。
- 点击图谱入口时带入当前阶段、实体或事件的定位,不打开无选择的全局图谱。
US-S24 手动回顾当前进展
状态:已接入工作回顾;执行状态与取消规则见活动记录。
作为工作使用者,我希望主动检查当前范围,而不必等待下一次计划运行。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 范围有效且有来源 | 点击“回顾” | 应用 Toast 提示已开始,可从活动记录查看进度、暂停与取消 |
| 整理完成并有新变化 | 返回结果 | 工作回顾、监督反馈和图谱引用同一次结果 |
| 没有有效新变化 | 整理完成 | 显示检查时间和“暂无新进展”,不重复推送旧内容 |
| 用户点击取消 | 整理仍在运行 | 清理期间显示正在取消,停止后显示已取消,保留上一次成功结果和成功批次 |
| 回顾正在执行或停止清理 | 再次点击手动发起 | 显示当前运行提示,不新建或排队;关闭提示不取消执行 |
| 回顾运行中刷新或切换页签 | 本次请求随后失败 | 显示本地化错误 Toast,技术详情留在活动记录,工作区不增加错误横幅 |
| 已有历史结果或运行记录 | 加载页面或选择历史 | 只读取内容,不补发开始或结束通知;读取失败就地重试 |
界面行为
- 运行按钮在整理期间保持可用,重复点击按上表提示;取消停止后可以新建,已取消运行不能继续。
- “无新进展”与“失败”使用不同状态和文案。
- 手动操作的开始、结束和失败反馈遵守 Toast 规则,关闭通知后可继续阅读已有结果。
- 结果必须显示本次冻结的范围,不能因用户后来切换项目而改变解释。
US-S03 自动检查不过度打扰
状态:待实现;当前智能心跳已实现计划运行、静默之外的私有结果保存和运行审计。
作为用户,我希望定时检查有变化时才打扰我,没有新信息时保持安静。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 计划到期 | 智能心跳唤醒监督者 | 监督者只读取冻结范围内的有界内容 |
| 没有有效新变化 | 运行完成 | 保存检查记录,不发送重复侧栏反馈或全局通知 |
| 有新的阶段认识 | 运行完成 | 更新工作回顾和图谱,并按反馈设置显示监督反馈 |
| 运行失败 | 运行结束 | 显示失败状态和重试入口,不把失败当作成功回顾 |
界面行为
- 心跳负责唤醒,监督者负责判断是否需要反馈。
- 自动结果不在系统通知中暴露私人正文;用户在应用内查看详情。
- 同一结果不能同时作为重复的侧栏卡片和全局通知推送。
US-S25 查看和处理监督反馈
状态:Conversation/Task 过滤、固定/跟随、来源、确认发送和侧栏结果直达图谱已接入;Experiment 仍待实现。验证见进度。
作为工作使用者,我希望在当前会话旁边看到与当前工作有关的简短反馈,并能进入完整回顾。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 监督栏处于跟随模式 | 用户切换会话或任务 | 面板只显示包含该目标来源且范围匹配的结果,同时标出结果真实范围;无结果显示空态 |
| 旧目标请求仍在读取 | 用户切换目标 | 旧摘要、来源和预览不出现在新目标下 |
| 监督栏固定到 Conversation、Task 或 Experiment | 用户切换聊天 | 面板继续显示固定目标,并显示目标名称 |
| 反馈卡片有来源 | 点击“查看依据” | 展开来源摘要和可用定位信息 |
| 用户点击“在图谱中查看” | 进入图谱 | 图谱定位到反馈对应阶段或实体 |
| 用户点击“发到当前会话” | 确认发送 | 才将反馈作为消息加入会话;默认不自动发言 |
界面行为
- 卡片显示目标、阶段、结论、未解决事项和来源。
- 跨会话总结明确显示覆盖范围,不能伪装成当前会话观察。
- 固定/跟随模式沿用通用助手工作栏的选择和返回行为。
故事线图谱
US-S04 从时间事件查看发生了什么
状态:待实现;当前 Demo 仅有模拟数据。
作为工作使用者,我希望知道某个时间点发生了什么,以及它影响了哪些认识。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 图谱显示多个时间事件 | 点击外圈时间点 | 相关知识实体和实际连线高亮,其余内容降低显著度 |
| 同一天事件过密 | 点击聚合点 | 显示事件数量和事件列表,可选择具体事件 |
| 用户选择具体事件 | 查看右侧详情 | 显示事件摘要、所属故事、发生时间、影响实体和来源入口 |
| 来源可用 | 点击来源 | 打开所属会话、笔记或知识库条目的对应位置 |
界面行为
- 外圈时间轴从起点到终点逆时针排列,持续显示方向和当前时间范围。
- 外圈保留缺口,不能让用户误以为时间循环。
- 时间到实体的连线表示事件影响实体;它与实体之间的知识关系使用不同文字说明。
US-S05 追溯同一个知识实体的变化
状态:待实现。
作为知识整理者,我希望看到一个认识如何被提出、补充、验证或修订。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 一个知识实体关联多个时间事件 | 点击内部实体 | 多个时间点和连线高亮,右侧先显示当前理解 |
| 事件类型分别为提出、补充、验证或修订 | 展开演变 | 每次变化显示类型、时间、摘要和依据 |
| 新方案只是增加选择 | 查看演变 | 旧方案不被自动标记为失效 |
| 正在回放过去时刻 | 查看实体 | 只显示截至该时刻已形成的理解,不泄漏未来结论 |
界面行为
- 一个实体只显示一个稳定节点,不能把每次变化复制成同名节点。
- 用户能从当前理解切换到演变列表和来源列表。
- 用户确认过的描述和关系显示确认状态,自动新增内容显示待核对状态。
US-S06 查看知识关系为什么成立
状态:待实现。
作为知识整理者,我希望知道两个实体为什么被连接,而不是只看到一条线。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 图谱存在实体间关系 | 点击关系线 | 右侧显示关系类型、关联理由、确认状态和两端依据 |
| 关系由系统推测 | 查看关系详情 | 明确标记“待核对” |
| 用户确认关系 | 点击确认 | 关系进入用户确认状态,并保留确认操作记录 |
| 用户认为关系错误 | 修改类型或移除 | 图谱更新,原始来源不删除,移除可撤销 |
界面行为
- 关系类型必须有文字名称,颜色只能辅助区分。
- 时间到实体的关系和跨故事实体关系在详情中分别说明。
- 后续自动整理只能提出补充或修订建议,不能静默覆盖用户确认内容。
US-S10 纠正错误关系而不删除来源
状态:待实现。
作为知识整理者,我希望修正系统错误合并的概念或错误关系,同时保留原始记录和撤销能力。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 自动归纳把两个概念错误连接 | 在关系详情中选择修改或移除 | 图谱立即反映修正,并显示待保存或已保存状态 |
| 用户移除一条关系 | 查看来源或知识库 | 原始来源和知识库正文仍然存在 |
| 用户完成修正 | 后续自动整理 | 系统可以提出新的证据或差异,但不能静默恢复被移除关系 |
| 用户点击撤销 | 修正仍可撤销 | 关系恢复到修正前状态,来源不发生变化 |
界面行为
- 破坏性关系操作使用明确确认,并说明只改变图谱组织。
- 用户修改、系统归纳和来源事实显示不同状态。
- 修正失败时保留当前详情和未提交意图,不能显示为已保存。
US-S07 按时间段查看阶段总结
状态:待实现。
作为工作使用者,我希望复盘一段过程,而不是逐条翻阅原始记录。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 图谱有多个事件 | 拖选起止时间或使用时间范围控件 | 页面显示选中范围和阶段总结入口 |
| 用户打开阶段总结 | 查看结果 | 总结只覆盖该范围,分别列出决定、变化和未解决事项 |
| 用户拖动回放控制 | 回到过去时刻 | 图谱只显示当时已经发生的事件和已经形成的认识 |
| 用户切换圆形/平铺 | 保留当前范围 | 回放时刻、选择和范围继续保留 |
界面行为
- 平铺环绕视图是默认图谱视图;圆形视图用于观察故事聚合。
- 回放状态必须持续显示“截至某时刻”,避免误读当前结论。
- 时间轴密集时先聚合数量,展开后才能选择单个事件。
US-S15 在列表、窄屏和键盘中完成同样操作
状态:待实现。
作为无法方便操作图形的用户,我希望通过文字列表和键盘完成相同的查看和追溯任务。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 用户使用窄屏 | 打开故事线图谱 | 故事列表收为选择入口,详情进入可返回的独立区域 |
| 用户不使用鼠标 | 用 Tab、方向键和 Enter 选择对象 | 能选择时间事件、实体和关系,并查看相同详情 |
| 用户缩放或平移图谱 | 返回详情或列表 | 当前选择不丢失 |
| 图形无法加载 | 使用文字列表 | 仍能浏览对象、关系、来源和回到知识库的入口 |
界面行为
- 焦点始终可见,弹出详情关闭后返回触发它的控件。
- 文字列表和图形共享同一选择状态,不维护两份内容。
- 缩放、平移和颜色不能成为获取信息的唯一方式。
来源与知识库
US-S08 回到来源核对依据
状态:待实现,沿用现有知识库的本地条目和外部片段边界。
作为知识整理者,我希望从总结或图谱回到原始依据。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 引用的是本地知识库条目 | 点击来源 | 打开原条目及引用位置,并可返回图谱 |
| 引用的是会话或魔法笔记 | 点击来源 | 打开所属内容,并显示可用的消息、条目或位置 |
| 引用的是外部知识库片段 | 点击来源 | 打开已保存的有界片段和可用定位信息 |
| 原来源已失效或没有位置 | 点击来源 | 明确显示不可用或缺少定位,不伪造远端原文跳转 |
US-S09 把新认识整理进本地知识库
状态:待实现。
作为知识整理者,我希望把可靠的新认识放入现有知识库,而不是建立第二份正文存储。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 候选归纳尚无对应条目 | 选择“新建条目” | 显示正文预览、来源和目标位置,确认后才保存 |
| 已有本地条目可以补充 | 选择“补充已有条目” | 显示新增内容与原内容的差异,确认后修改原条目 |
| 用户查看的是外部只读资料 | 查找写入操作 | 不显示写回或远端同步按钮 |
| 同一内容已被保存 | 再次整理 | 提示已有条目,避免重复创建 |
界面行为
- 图谱保存实体、关系和来源定位,不复制知识库正文。
- 保存失败保留编辑预览,不能把候选显示为已写入。
- 现有资料使用“打开知识库条目”,已有条目不显示“存入知识库”。
建议、任务与继续工作
US-S16 审核心跳产生的记忆建议
状态:已实现,沿用智能心跳页面。
作为知识整理者,我希望逐条确认或忽略记忆候选。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 存在待确认记忆 | 打开待处理建议 | 显示类型、内容、置信度和显著性 |
| 内容较长 | 点击展开 | 显示完整内容,再次点击可以收起 |
| 用户确认 | 点击确认记忆 | 状态变为已确认,计数和指标更新 |
| 用户不接受 | 点击忽略 | 候选不再作为待处理项,不改写来源 |
US-S17 处理后续任务建议
状态:已实现,沿用智能心跳页面。
作为工作使用者,我希望把回顾产生的行动建议带入对话或标记完成。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 存在未完成的后续任务 | 点击“带入对话处理” | 将任务交给当前会话处理入口,不自动执行工具 |
| 用户完成任务 | 点击标记完成 | 任务状态更新,行动转化指标刷新 |
| 用户不再需要任务 | 点击忽略建议 | 任务标记为取消或不再待处理 |
| 任务已经完成或取消 | 再次打开建议 | 不显示需要处理的操作按钮 |
US-S11 带着上下文继续讨论
状态:待实现。
作为工作使用者,我希望围绕已有知识继续讨论,而不用重新交代背景。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 用户选中知识实体或阶段总结 | 点击“继续讨论” | 显示将携带的摘要、时间范围和来源列表 |
| 用户移除部分上下文并确认 | 进入会话 | 会话只携带剩余上下文,并明确来自监督者 |
| 新讨论产生内容 | 下一次整理 | 新内容可以关联到原实体或提出待核对的新关系 |
| 用户没有确认上下文 | 关闭预览 | 不创建会话消息,也不改变图谱确认状态 |
历史、失败与权限
US-S18 查看报告和运行审计
状态:已实现。
作为监督者配置者,我希望区分报告内容和产生报告的运行记录。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 已有报告 | 打开报告与记录 | 按时间显示摘要、亮点和建议数量 |
| 用户点击展开报告 | 展开一项 | 显示完整摘要和亮点,可再次收起 |
| 用户查看运行记录 | 打开审计列表 | 显示手动/计划触发、时间、状态、尝试次数和错误 |
| 记录超过首屏数量 | 点击加载更多 | 追加历史,不替换当前已展开内容 |
界面行为
- 报告和 Run 审计是两个可区分的区域。
claimed、完成、失败和跳过使用文字和图标共同表达。- 失败信息直接显示在对应 Run 下,不能用空报告代替。
US-S19 加载、刷新和首次空状态可区分
状态:已实现;监督者页面必须沿用。
作为用户,我希望知道页面是在加载、真的没有数据,还是读取失败。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 页面首次读取尚未完成 | 打开页面 | 显示加载状态和忙碌语义,不显示创建按钮造成误导 |
| 首次读取失败 | 页面返回错误 | 显示错误原因和重试按钮 |
| 已有数据显示但刷新失败 | 点击刷新后失败 | 保留旧数据,同时显示刷新失败提示和重试入口 |
| 读取成功但没有数据 | 完成加载 | 显示首次配置或生成回顾的空状态 |
US-S12 新一次失败不覆盖旧结果
状态:待实现;当前智能心跳已有失败 Run 保留历史结果的基础行为。
作为工作使用者,我希望一次模型、来源或网络失败不会抹掉上一次可用回顾。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 已有成功回顾 | 新一次整理失败 | 旧回顾继续可读,新运行显示失败原因和覆盖范围 |
| 新一次整理被取消 | 用户查看工作回顾 | 显示已取消,不把部分内容标成完整回顾 |
| 只有部分来源可用 | 整理完成 | 显示已覆盖和遗漏范围,结果标记为部分完成 |
| 用户点击重试 | 重新运行 | 创建新的运行记录,不把旧失败记录改写为成功 |
US-S13 历史回放不冒充当前来源
状态:待实现。
作为知识整理者,我希望回看过去时看到当时的认识,知道原始来源是否已经变化。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 来源后来被修改 | 回放旧阶段 | 仍显示当时保存的归纳和可用历史依据 |
| 旧版原文无法恢复 | 点击来源 | 明确提示历史版本不可用,并显示当前可用信息的时间,不称其为旧原文 |
| 当前结论与过去不同 | 回放过去 | 不把当前结论注入过去的图谱或阶段总结 |
US-S20 遵守范围和访问边界
状态:已实现于智能心跳输入与工具禁用边界;监督者目标行为待实现。
作为受限访问者,我希望监督者只处理授权范围内的内容。
Given / When / Then
| Given | When | Then |
|---|---|---|
| 计划是 Global | 运行回顾 | 只读取允许访问的有界会话、任务和 Global 已确认记忆 |
| 计划绑定项目 | 运行回顾 | 只读取选中项目内容及允许共享的 Global 记忆 |
| 模型尝试调用工具 | 整理期间 | 调用被拒绝,运行失败原因可审计 |
| 模型输出项目外的记忆或任务 | 校验输出 | 结果被拒绝,不写入越权内容 |
界面行为
- 页面显示本次运行的冻结范围。
- 权限不足、来源不可用和没有新内容使用不同状态。
- 监督者的内部评审保持无工具,不因 Agent 身份获得工具执行或批准能力。
活动记录
US-S26 查看实际执行活动
对应 FR-S10,当前已接入。
| Given | When | Then |
|---|---|---|
| 用户手动开始监督回顾 | 打开活动 | 显示冻结范围、开始时间和运行中状态;失败保留错误,成功提供结果入口 |
| 定时或立即运行心跳已保存报告 | 下游监督仍在运行或失败 | 一条活动分别显示阶段状态,整体不能显示完成 |
| 活动包含较早的成功结果 | 点击查看回顾或在图谱中查看 | 打开该 resultId,超过最近结果列表仍正确定位 |
| 活动读取失败 | 点击重试 | 保留可用记录并重新读取,不调用模型 |
| 活动有在途请求 | 离开页签、页面或关闭应用 | 停止后续刷新,迟到响应不更新界面;关闭后不查询活动 |
| 旧记录缺少范围或运行关联 | 查看活动 | 明确显示缺失,不根据当前计划或相近时间推断 |
| 六个来源批次已保存,剩余来源为零 | 导航合并失败后打开活动 | 已记录的合并阶段显示失败,发布保持未完成;继续复用成功叶子和导航节点 |
| 已保存批次跨多个项目和会话 | 展开事实并翻页 | 按本页真实归属分层,标明本页数量;原文可读,失败叶子不伪造为已保存 |
| 原始错误是多行校验 JSON | 展开错误详情 | 默认折叠,展开后有界滚动,完整文本可选择复制;恢复操作和阶段仍在其前面 |
继续后的运行仍可暂停或取消;任一运行执行或停止清理期间,其他运行不能继续。重新进入页面仍显示实际停止状态。人工修改时间序列审计不属于当前已实现范围;实际状态及保留规则见活动记录。
US-S27 自动增量与历史重看
对应 FR-S4、FR-S10。
| Given | When | Then |
|---|---|---|
| 监督已成功处理窗口内来源 | 同范围再次自动检查且来源未修改 | 不调用模型,活动显示无变化,不新增图谱事件或建议 |
| 消息正文、知识引用或任务状态有修改 | 再次自动检查 | 只处理修改版本及未读片段,结合已有摘要和实体说明,允许复用已有实体 ID |
| 来源多于单次预算或正文较长 | 一次结果成功保存后再次检查 | 继续处理窗口内遗漏或剩余片段,已送入且保存成功的部分不重复处理 |
| 模型、校验或保存失败 | 再次检查相同输入 | 失败阶段仍可重试;已成功的另一个阶段不重复付费 |
| 来源已经自动处理 | 用户点击 | |
| 只有已确认记忆或背景摘要变化 | 自动检查 | 背景不单独触发模型调用 |
US-S32 点击回顾只整理变化
状态:已实现(2026-09-30)。 对应 FR-S4、FR-S12,规则 H3、H4。
| Given | When | Then |
|---|---|---|
| 所选范围已有成功回顾,来源未变化 | 点击“回顾” | 不调用模型,活动显示“无新变化”,保留原结果 |
| 有新增或修订的消息 | 点击“回顾” | 只处理变化部分,关联已有实体后发布;不生成建议 |
| 用户需要重看一段历史 | 在“更多”中选择“重新整理”并确认 | 重新分析所选区间,保留用户确认内容,不改变自动进度 |
| 首次对某范围回顾 | 点击“回顾” | 完整分批处理所选时间区间 |
US-S33 心跳按配置给出建议
状态:已实现(2026-09-30),主动介入除外。 对应 FR-S12,规则 H1、H5 至 H10。
| Given | When | Then |
|---|---|---|
| 计划介入方式为“生成建议”,来源无变化 | 计划到期 | 不调用模型,不产生建议或通知 |
| 有变化,但图谱变化中没有建议候选 | 计划到期 | 完成增量整理;不发起建议调用 |
| 有变化,出现新的未解决事项或分歧 | 计划到期 | 整理后按候选生成建议,每条附依据并可打开来源;原文不重复读取 |
| 介入方式为“仅更新记忆” | 计划到期 | 只更新图谱,不生成建议 |
| 用户忽略一条建议 | 后续检查没有新证据 | 不再重复提出 |
| 建议生成失败 | 查看活动 | 显示“已更新,建议生成失败”;图谱与进度保留,可单独重试建议 |
| 旧计划升级 | 打开自动监督 | 范围、频率和启停状态不变,介入方式为“生成建议”;旧报告只读可查 |
时态图谱与 Agent 读取
US-S28 依据决定演变继续工作
状态:D1 工具读取已实现;真实模型建议质量尚未验收。 对应 FR-S11,读取合同见时态 Story Graph MCP 设计,验证范围见实施进度。
| Given | When | Then |
|---|---|---|
| 已保存旧决定 A,后来有明确证据将其修订为 B | 用户询问“继续上次工作,现在采用什么” | Agent 按需读取图谱,说明 A 到 B 的变化、推荐 B 的依据,并引用旧决定与修订来源 |
| 新记录只是增加选项 C | Agent 查询当前理解 | B 不因 C 更新而自动失效;替代或矛盾关系必须有明确证据 |
| 记录只表明决定采用 B,没有完成证据 | 用户询问执行进度 | 回答已决定且完成状态未知,不推断已完成 |
| 已确认旧认识与新证据冲突 | Agent 组织当前建议 | 分别展示确认状态、有效性与待核对差异,不静默覆盖 |
US-S29 分页核对时间与来源
状态:D1 已实现,缺失历史版本明确返回不可用。 对应 FR-S11、US-S13。
| Given | When | Then |
|---|---|---|
| 旧事件在较晚回顾中才生成并记录 | 按发生时间查询并查看 timeline | 区分事件、回顾生成和记录时间;不把补录当成新发生,也不声称当时已知 |
| 搜索、演变或原文超过一页 | Agent 继续读取 | 每页说明范围、修订、覆盖与剩余页,能读取全部匹配内容,无静默截断 |
| 旧记录只有证据条数,没有完整覆盖信息 | Agent 读完最后一页 | 返回覆盖未知,不称已覆盖全部原始工作记录 |
| 引用版本原文已不可用或当前内容已修改 | 读取历史来源 | 返回实际保存片段或明确版本不可用;读取当前版本须显式选择并标注差异 |
| 分页期间对象版本变化 | 继续使用旧游标 | 明确提示游标失效并重新查询,不混合新旧版本 |
| 用户要求截至过去时刻的完整认识 | 调用 as_of |
明确不支持,不用 current 或 timeline 冒充历史重建 |
US-S30 按需读取并遵守应用开关
状态:D1 已实现;跨平台安装包验收未执行。 对应 FR-S11、US-S14、US-S20。
| Given | When | Then |
|---|---|---|
| 会话属于当前项目 | Agent 未显式指定 scope 搜索 | 只查该项目;无项目时要求明确范围,不自动扩大为 Global |
| 用户进行普通聊天 | 没有继续工作或历史依据需求 | 不强制每轮查询或注入完整图谱;需要核对原话时才进一步读来源 |
| 监督者开启且内置能力已分配,没有自动计划 | 查询已有结果 | 可以读取;查询不触发模型、回顾或业务写入 |
| 监督者关闭,旧会话仍缓存工具 | 列出工具或直接调用 | 不暴露工具,调用被拒绝;已有数据保留 |
| 监督者应用关闭 | 打开输入区对话设置 | 完全不显示“使用故事图谱”开关 |
| 监督者应用开启,会话未保存过该选项 | 打开输入区对话设置 | 知识库上方显示默认开启的共享 Switch |
| 当前会话关闭“使用故事图谱” | 本地或远程 Agent 列工具或使用旧能力会话调用 | 不暴露三个图谱工具并拒绝执行,其他会话仍按自己的设置运行 |
| 开关已保存 | 切换会话、重启或关闭后重开监督者应用 | 恢复该会话的选择;开关不发起回顾或自动注入上下文 |
| 保存失败 | 用户切换开关 | 保留最后确认值并显示错误,可重试 |
| 相同范围与证据分别通过本地和远程 Runtime 查询 | 翻页、读取版本或关闭监督者 | 返回相同业务语义与引用,远程实际桥接须通过验收 |
US-S31 保留偏好并复用跨范围事实
状态:待实现;当前仍独立处理精确 scope,读取现有已确认 memory。 对应 FR-S11、US-S16、US-S27。
| Given | When | Then |
|---|---|---|
| 用户已有已确认的 Global 或项目偏好 | 逐步切换统一工作记忆入口 | 原内容、确认状态、适用范围和引用保留,不删除旧数据 |
| 旧偏好只有更新时间 | 查询演变 | 标记为当前背景和历史未知,不补造决定时间或替代关系 |
| 项目 A 的来源版本已有成功叶子事实 | 目标复用能力交付后进行 Global 整理 | 复用该版本的事件、变化、关系和来源,不因 scope 改变重复提取相同正文,也不只复用摘要 |
| 仅部分片段成功或原来源已改版 | 再次整理 | 识别未覆盖或变更部分,不把旧版本覆盖算作新版本完成 |
| Global 结果含多个项目的归纳 | 从单项目查询 | 不把跨项目摘要伪装成项目结论,复用事实仍保留来源归属 |
US-S34 独立选择监督者模型
对应 FR-S13,生效规则见监督者模型选择。
| Given | When | Then |
|---|---|---|
| 已保存多个文本模型连接 | 在监督者“设置 → 模型”选择连接并保存 | 回顾和建议使用所选连接,无需重新输入凭据 |
| 尚未配置监督者模型,或选择“跟随应用默认” | 开始执行 | 使用应用默认文本模型 |
| 回顾正在提取或汇总 | 修改模型选择或原连接配置 | 此次回顾后续批次、故事和经验阶段保持原模型 |
| 回顾已暂停或失败 | 修改模型后继续 | 使用当前选择继续已保存进度 |
| 已选连接被删除或变成图片模型 | 打开设置并尝试执行 | 显示连接不可用,执行报错,用户可改选;不自动回退 |
| 模型选择保存失败 | 留在设置页 | 保留选择草稿及重试入口 |
US-S35 删除会话后继续未发布回顾
对应 FR-S9,规则见会话删除。
| Given | When | Then |
|---|---|---|
| 回顾已保存批次但尚未发布 | 删除其中一个会话后继续 | 跳过该会话的消息、知识引用和已记录归属的任务,保留无关批次 |
| 来源正在初始化、提取、合并或等待发布 | 用户删除会话 | 丢弃受影响输出及依赖摘要,继续其余来源,不从片段恢复会话 |
| 一个旧批次包含已删除及仍存在的会话来源 | 继续回顾 | 重做受影响的存活来源,无关来源不重做 |
| 所有待回顾来源所属会话均已删除 | 继续或结束当前请求 | 显示省略数及无新变化,不生成空报告 |
| 删除前已有发布结果 | 删除会话 | 既有历史结果和历史片段不变;未发布结果按省略后的覆盖发布 |
| 会话仍存在,来源正文被修改或会话被归档 | 校验来源 | 明确失败,不把修改或归档记为删除省略 |
验收优先级与依赖
首个可用版本应先打通以下路径:
应用入口 → 选择范围 → 手动回顾 → 工作回顾 → 选择知识实体 → 查看多个时间事件 → 打开来源 → 预览并继续讨论
建议实施顺序:
- 顶层有工作回顾、故事线图谱、自动监督、活动记录、设置五项。自动监督保留计划 CRUD 与范围校验,创建和编辑使用同一 Modal 表单;运行概览、指标、趋势、自动监督报告、建议和心跳审计与计划列表同页,无计划时只有一处未配置说明和一个创建按钮。工作回顾只阅读统一监督结果,新请求的范围和运行状态不改变旧结果的日期、范围及正文;自动报告为空时不会在成功结果下显示“没有报告”。历史选择位于正文前,图谱打开所选结果的精确 ID。活动记录只保留统一执行、进度和详情。设置只显示算法参数,没有计划、报告、审计、第二套页签、整页范围徽标或独立刷新行。
- 增加监督者统一的工作回顾和共享结果模型。
- 接入最小故事线图谱:时间事件、知识实体、实体变化、来源和时间回放。
- 接入文字列表、窄屏和键盘操作,以及失败、取消和部分来源状态。
- 接入来源双向定位、继续讨论预览和本地知识库新建/补充。
- 侧栏监督反馈和自动增量已接入;事件驱动及语义层面的主动反馈判定仍待实现。