Skip to content

feat(quick-start): 持久化并恢复历史 Agent 会话 #848

Description

@xyh202131

背景

Quick Start 已支持通过历史侧栏重新打开 WorkflowRun,但 Agent 对话主要依赖浏览器本地缓存。用户刷新、清理缓存、切换浏览器或设备后,无法可靠恢复对应运行记录的历史会话,也缺少服务端并发治理。

目标

  • 每个 WorkflowRun 在服务端持久化一份 Quick Start Agent 会话。
  • 重新打开历史运行时恢复原会话,并允许在原消息后继续追加。
  • 迁移已有 localStorage 会话,并在服务端暂时不可用时保留本地回退。
  • 多标签页或多设备并发修改时避免静默覆盖。
  • 会话权限和生命周期继续继承 WorkflowRun。

验收标准

  • 提供按 WorkflowRun 读取和保存 Agent 会话的 API。
  • 用户只能访问自己项目下运行记录的会话。
  • 重新读取历史会话后追加消息时,旧消息保留且版本递增。
  • 写入支持乐观锁、幂等重试和首次并发写入处理。
  • WorkflowRun 删除时对应会话一并清理。
  • 对单会话消息数量和体积设置明确上限。
  • 前端、后端及 OpenAPI 均有对应回归覆盖。

范围边界

本 Issue 面向 Quick Start 的有界生成会话,不提供长期聊天的逐条审计、全文检索或分页消息存储;未来出现这些需求时再拆分 conversation/message 明细模型。

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions