Skip to content

fix(buddy): 点击停止立即结束聊天运行展示 - #231

Closed
QAyong wants to merge 1 commit into
useLexora:masterfrom
QAyong:codex/instant-chat-stop-upstream
Closed

QAyong wants to merge 1 commit into
useLexora:masterfrom
QAyong:codex/instant-chat-stop-upstream

Conversation

@QAyong

@QAyong QAyong commented Sep 29, 2026

Copy link
Copy Markdown
Contributor

背景与关联

AI 调用工具或执行命令时,停止按钮原先要等后台中断及清理结束才恢复,用户容易误以为点击无效。本次让点击立即结束当前轮次的运行展示,并允许提交下一条消息。

关联 Issue:N/A。

主要改动

  • 分开展示状态与真实执行状态:同步取消界面展示,保留已有部分回答,冻结收尾期间该轮次的迟到输出;后台仍使用已有真实取消流程。
  • 界面恢复发送按钮;收尾期间新提交的消息先进入已有队列,取消成功后再请求执行,避免与旧执行重叠。停止前已有的排队消息保持暂停。
  • 取消失败时恢复真实展示;取消时结束工具的等待授权展示;后台终态到达后与真实记录对齐。
  • 增加相关回归检查和 docs/specs/feature-008-instant-chat-stop.md 功能说明。

验证

  • 自动检查:pnpm --filter @uselexora/lexora-buddy type-check 通过。
  • 自动检查:pnpm --filter @uselexora/lexora-buddy exec vitest run --project=unit src/modules/tasks/state/runs/__tests__/useChatRunSync.spec.ts src/modules/tasks/state/runs/__tests__/useChatTurnExecution.spec.ts src/modules/tasks/model/transcript/__tests__/chatStreamingMessage.spec.ts --maxWorkers=2,3 个测试文件、69 项测试通过。覆盖立即取消展示、保留部分回答、忽略迟到增量、失败恢复、避免重复取消,以及取消完成后才启动新提交消息。
  • git diff --check 通过。
  • 手动验证:尚未在实际桌面长命令场景验收。
  • 未执行:完整预检、打包和桌面端到端验证;本次执行范围限定为类型检查与受影响的相关测试。

兼容与风险

不改变数据格式、配置、授权规则或后台取消协议。界面立即停止不代表操作系统中的进程已经退出;后台仍按现有策略中断、释放资源。新消息等待旧执行释放后启动。希望重点检查展示快照与后台终态的对齐,以及取消期间新消息的队列衔接。

界面变更

点击停止后,停止按钮立即恢复为发送按钮,保留点击时已经生成的内容,不再等待后台清理。没有新增界面布局;尚未附截图或录屏。

@QAyong QAyong closed this Sep 29, 2026
@QAyong
QAyong deleted the codex/instant-chat-stop-upstream branch September 29, 2026 15:20
@shanyuhai123

Copy link
Copy Markdown
Contributor

这个咋关闭了

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants