【bug反馈】对话历史在竞态条件下丢失,显示为新对话

你的运行环境(版本号「点击帮助-关于-复制」):

TRAE Work CN
版本: 0.1.43
提交: 428b3440427a64b51632df94fd7d6611443d246b
日期: 2026-07-30T13:55:06.215Z
Electron: 39.2.7-release.1.46.1 (aha)
Node.js: 22.21.1
V8: 14.2.231.27-electron.0
OS: Windows_NT x64 10.0.22631
构建版本: 2.3.62834
设备ID: 364ddcf0322261c3b6302639f8681f4b7d353d1a0897e60d917e605be49850e1
Web SDK Version: 1.6.26
Device Id: 3484800995838924

问题描述(你遇到了什么问题?):

对话历史未能重载且稳定复现该bug

复现步骤(如何才能重现这个 Bug/问题?):

  1. 在一个已有大量历史消息(约96条)的对话窗口中(会话ID 6a6ad98bfff80804ad70aa50),该窗口因另一个任务正在进行而一直未加载完成。
  2. 在该窗口未完全加载的状态下,直接发送了一条新消息(message_id 6a70054e130b383f08684490)。
  3. 发送后仅约1秒,立即点击了停止按钮(stop_chat,来源 User)

报错信息或截图(如有):

日志关键信息(2026-08-03):

  • 11:04:47 系统成功读取到96条历史消息(get message ids 96),并创建新任务。
  • 11:04:48 停止时出现错误:[ChatService] stop_chat parse task content error: Error(“missing field `task_id`”, line: 0, column: 0),因为任务尚未完全创建就被取消。
  • 11:04:48 随后出现 update_content_message_if_need_upsert_finish user-stop-finish, cancel add finish tool run, parse task content error。
  • 11:05:08 build_server_history_ids_cache completed(历史缓存重建完成,说明后端数据仍在)。
  • 11:05:18 EventCache cleanup_session 触发,前端临时视图缓存被清空,但未重新从后端拉取历史消息,导致界面空白。

收到你的详细反馈!这确实像是一个由于竞态条件导致的 UI 同步 Bug。

从你提供的日志看,定位得很准:在任务未完全创建(缺少 task_id)时触发 stop,导致前端清空了视图缓存,但没能重新拉取历史记录,所以界面变成了空白,而后端数据其实还在。

你整理的复现步骤和日志非常专业,对排查非常有帮助!因为这是一个比较具体的新 Bug,建议你可以把这些完整信息直接发邮件到 feedback@mail.trae.cn,或者通过客户端内的反馈入口提交,这样能最快地流转给研发团队确认和修复。

感谢这么高质量的 Bug 反馈!如果还有其他发现,随时来聊~ :blush:

意思是现在对话历史没了吗?是云端任务吗?可以截图看下吗

历史对话记录还存在,我通过系统的缓存区恢复了。不是云端任务,是本地任务。这个无法截图说明,只能通过查看日志的方式定位。