已开启
[Bug]: 对话中间的本轮产物列表在 Run 未结束时就出现 #83
yuheng_wang创建于 27 天前
27 天前 添加了label:bug
openJiuwen-bot
27 天前 评论:
27 天前 评论:
欢迎来到 openJiuwen 社区
Hey @yuheng_wang , 感谢你对社区的贡献.
机器人使用手册
有关指令的使用,可以点击 此处 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。


Hey @yuheng_wang , 感谢你对社区的贡献.
有关指令的使用,可以点击 此处 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。


Checklist
🐞 问题详细描述
对话列中间的「本轮产物 / 工作区当前文件」列表会在 Run 仍在进行时 提前出现。这与 #60 已确认的设计不符:正在运行的 Run 应只接收产物事件、终态后再展示列表。右侧 Workspace 产物目录随声明即时更新是合理的,不在本缺陷范围内。
复现
write_file/declare_artifact,再继续跑后续步骤)。实际结果
Run 尚未
completed/failed/cancelled/interrupted时,对话列已经出现产物/当前文件列表。第一轮尤其明显:列表被挂在时间线后的tail槽位。若上一轮已结束、本轮仍在跑,新写出的预览文件还会挂到上一轮的列表下面。期望结果
每一轮对话的内联产物列表只在该轮顶层 Run 进入终态后出现。右侧项目级 Artifacts 面板可以继续即时刷新。
原因
#60 的
anchorArtifactOutputs()仍会跳过非终态 Run。回归来自48fbdb5a(feat(web): simplify process records and organize workspace sections):把未声明的工作区预览文件塞进了同一个ConversationArtifactList,并在对话流尾部无条件渲染。未终态 Run 的已声明路径还不在registeredPaths里,于是 json/csv/md 等文件以「当前文件」提前出现在中间栏。相关代码:
apps/web/src/session/ConversationArtifactList.tsxapps/web/src/App.tsx中currentPreviewFiles/renderConversationOutputs("tail")docs/zh/explanation/conversation-inline-artifacts-design.md第 2、4.1 节详细的环境信息描述
http://127.0.0.1:<SCIENCE_AGENT_PORT>/)其他辅助信息
建议修复:Run 仍为
running/blocked时,不要把工作区预览文件送进对话列列表;终态后再与该轮「本轮产物」一起展示。右侧面板保持现状。版本信息
9fea66b8feat: show artifacts below completed runs(#60)48fbdb5afeat(web): simplify process records and organize workspace sections(2026-09-11)main在上述提交之后的当前 HEAD 仍可复现