
用户收藏了一段分析结论,一个月后回来查看,原会话已经继续了数十轮。收藏如果只保存“最后一条回答”的位置,就可能打开完全不同的内容。会话结果收藏应绑定具体结果版本,并且清楚说明收藏的是快照还是会跟随更新的链接。
收藏身份不能靠数组位置
消息列表重排、分页、删除都会改变下标。收藏至少保存会话、消息或结果、版本和收藏类型。快照保存当时的可展示内容或受控快照引用,实时链接则在打开时读取当前版本,两种模式应在界面中明确区分。
{
"conversationId": "c_demo",
"resultId": "r_demo",
"revision": "v2",
"mode": "snapshot",
"title": "季度分析草稿"
}
这个对象只是结构示例。真实收藏还需要用户身份、创建时间、来源访问策略以及必要的内容摘要;不能把收藏请求里的用户编号直接当成鉴权依据。

内图上层是继续更新的会话,下层玻璃匣里是固定的结果页。引用线保留来源关系,但不会让玻璃匣里的内容自动随上层滚动变化。
收藏按钮要反映服务端结果
点击后可以立即给出处理中反馈,但只有保存确认后才显示成功。网络失败时保留用户的命名草稿,提供重试;连续点击通过收藏身份或幂等请求键去重。取消收藏同样要处理失败,不能在前端移除后把服务端残留隐瞒起来。
允许用户修改收藏标题,原标题与来源信息仍可在详情里查看。搜索结果显示摘要时说明是否是旧版本,避免把旧结论当成当前分析。原会话更新后可以提供“查看新版本”,由用户决定是否建立新的收藏或替换原收藏。
快照不应绕过访问策略
原任务被删除、权限被撤销、数据过期时,收藏是否继续可见需要产品明确约定。若采用受权限约束的快照,每次打开都重新鉴权;若提供合法的个人导出副本,也需明确其保留和分享边界。不要仅因为收藏列表还能显示标题,就认为其中的附件和明细仍可读取。
离线缓存可以让列表更快显示,但应标注缓存状态,联网后核对当前访问权限。账户切换时清理或隔离本地索引,不把上个账户的摘要显示给下一个账户。
验收用同一条结果创建收藏后,继续修改会话、删除来源附件、撤销权限,再分别检查列表、详情和搜索入口。所有入口都应遵守同一套快照与权限规则。收藏的价值在于稳定找回被选中的成果,而不是提供一个碰巧指向当前内容的书签。
参考:W3C:PROV 来源关系、MDN:IndexedDB。



