Repository navigation
fix(companion): 保留后台回报后的进度文字,明确本轮结束语义 - #7085
Conversation
Signed-off-by: Dash <125997726+dashhuang@users.noreply.github.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
[Medium impact] The change reaches delegated-task conversations and their summaries. 本次改动可以合并;建议补上长回复摘要保留末尾结论的处理和测试。 Findings
Fix with agent prompt### Issue 1
apps/desktop/src/main/maker-ipc/botWorkbenchTranscripts.ts:120
`lastExchange` 改为返回整段助手回复,但 `boundTaskDigest` 仍只保留前 300 字,超过总预算时还会继续从尾部截短。对于先解释过程、最后说明失败或阻塞的长回复,`get_task_digest` 现在会丢掉原先能保留的末行结论。
建议为助手回复保留开头和结尾,并补一个结论位于 300 字之后的回归用例。
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b03ce8d778
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Signed-off-by: Dash <125997726+dashhuang@users.noreply.github.com>
Code Review: PR #7085 fix(companion): 保留后台回报后的进度文字,明确本轮结束语义
改动概述删除宿主侧 逐项核验
意见与讨论处置
验证记录(本轮实测,均保留命令退出码)
说明 1:首次在 worktree 根目录跑 vitest 时 electron stub 别名未生效( 说明 2(DCO):本地 Intent alignment对照初始提交(b03ce8d778)与当前 head(4a852f3591)逐项复核:
风险与遗留(非阻断)
无 P0/P1 findings,无 review thread 需创建。 |
这次改了什么
摘要
伙伴收到委派任务的内部回报后,宿主原先会过滤这一轮的文字、思考,并清空结束事件的答复。于是即使 #7081 已恢复前端的进度展示,这条路径仍只留下工具记录,用户看不到伙伴整理后的进展。
这次只隐藏原始协调来信,伙伴回复恢复普通消息的保存和分发:运行中进度持续可见,最终答复后沿用普通任务的过程折叠。同步去掉“通过
send_to_session给自己发消息才能汇报”的提示;不扩大工具授权。finished继续只表示所查任务本轮结束。后台委派任务可以继续执行,用户的下一条消息按现有运行状态与队列正常派发。摘要同时跳过隐藏协调/续跑输入,并在原有 2KB 预算内保留最新助手回复的首尾片段;总预算进一步收紧时也保留末尾结果或阻塞说明。变更类型
feat新功能fix缺陷修复refactor/perf重构或性能优化docs/test/chore文档、测试或工程维护范围
UI 变化
没有新增或修改界面布局、样式、组件或 UI 文案。宿主恢复给现有桌面/手机消息列表提供文字,显示与折叠继续复用普通任务逻辑。
怎么验证的
自动验证
先红后绿:修改生产管线和摘要用例后,旧代码复现两处失败——协调文字没有送入持久化/广播、隐藏回报覆盖最近用户消息;修复后通过。
初始版本 840 项相关测试通过,另有文档合同 10 项通过;桌面与 MCP 包类型检查通过。本轮摘要修复定向运行 6 项工具测试(含新增 2 项),累计覆盖 842 项相关回归,并通过 MCP 类型检查、文档合同与测试规范检查。同步主干
784e8c477e后,逐文件重跑四个修改过的 maker-ipc 测试文件并再次运行桌面类型检查。测试价值(均为已有文件,未新增测试文件;耗时为单文件 Vitest 总耗时):
sessionEventPipeline.test.tshandleSessionEvent管线;一个协调输入的 commentary、独立文字、工具及 done 应保留持久化与广播的正文。原用例反而要求丢弃正文,现改为本次回归。agent-input-coordinator.test.tsbotWorkbenchTranscripts.test.tslastExchange;用户要求后追加隐藏协调消息、助手回复含两行,仍取真实用户消息和完整回复。原覆盖缺少隐藏输入,只取末行丢失结论。botTaskCoordination.test.tsagent-island/service.test.tsbotPrivateReply=false后仍不产生成功提醒。仅定向运行该项,其余 164 项未运行。getTaskDigestTool.test.ts输入协调器文件已有 589 项用例,本次增加 1 项无真实等待的内存时序回归;12.48s 包含原有大文件加载和用例矩阵,本次未增加模块重置或外部 I/O。
手工验证
已自审完整 diff,核对来源核验、私聊/群专线、成功通知静默、输入放行及摘要输出预算的现有边界。未将开发版装入当前运行的 Cindy。
未执行的验证
未启动桌面开发版、Metro、模拟器或 iPhone 真机,因此没有本轮界面截图或实机验收结论。分支为
dash/companion-coordination-progress,worktree 为cindy-src-companion-coordination-progress。未重复执行整仓单测:按当前仓库风险匹配的提交规则完成定向回归,完整检查由 CI 执行。此前 #7081 已记录本机全量桌面 Vitest 在干净主干也出现 SIGSEGV 的证据;本次没有修改 runner 或依赖。
风险
风险分类
影响与回滚
botTaskCoordination来源标记及既有成功完成通知静默,私聊/群专线的botPrivateReply判据不变。提交前检查
git commit -s,见 DCO)