Skip to content

[codex] fix: chat home workspace switch delay on new task - #43

Merged
shaohaozhi286 merged 1 commit into
masterfrom
codex/fix-chat-workspace-switch-delay
Sep 7, 2026
Merged

shaohaozhi286 merged 1 commit into
masterfrom
codex/fix-chat-workspace-switch-delay

Conversation

@LIUXIN557

Copy link
Copy Markdown
Collaborator

背景

用户反馈:在项目上新建任务后,点击工具栏顶部的「新建任务」,聊天区的已选工作空间要 3-4 秒才能切换到「无工作空间」。

根因

ChatView 里聊天区空态的工作区相关控件(工作区选择显示、提交目标、斜杠命令工作区、输入历史)都派生自 homeWorkspaceHash / selectedHomeWorkspace,而这个状态只在 GET /api/workspaces 异步返回后才更新。点击「新建任务」时 ref 已同步切到无工作空间,但 homeWorkspaceHash 仍停留在上一个项目,直到列表请求回来(该请求在刚创建完会话的 daemon 上可能排队数秒)才切过去。

修改

  • ChatView.jsx:当 ref 携带 homeWorkspaceExplicit 时,用 ref.workspaceHash 同步设置 homeWorkspaceHash,不再等待工作区列表;异步加载后 resolveHomeWorkspaceHash 的 explicit 分支解析出相同值,不会闪回。
  • 连带:home 模式输入历史只认选中工作区的 cwd,切到无工作空间时显式清空残留历史,避免上下键翻出上一个项目的输入。

影响

点击「新建任务」后,聊天区工作区显示、提交目标、命令工作区、专家列表、输入历史立即切换到无工作空间,消除 3-4 秒延迟。

验证

  • 全部 2069 个测试通过(0 失败)。

ref 携带 homeWorkspaceExplicit 时同步定 homeWorkspaceHash,不再等
/api/workspaces 返回;home 模式 history 只认选中工作区 cwd,
无工作空间时显式清空残留输入历史。
@shaohaozhi286
shaohaozhi286 marked this pull request as ready for review September 7, 2026 12:08
@shaohaozhi286
shaohaozhi286 merged commit c418480 into master Sep 7, 2026
1 check passed
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