Skip to content

fix: 修复 MCP 连接导致退出延迟 - #393

Open
Sakura520222 wants to merge 1 commit into
SPlayer-Dev:devfrom
Sakura520222:feature/fix-mcp-exit-delay
Open

Sakura520222 wants to merge 1 commit into
SPlayer-Dev:devfrom
Sakura520222:feature/fix-mcp-exit-delay

Conversation

@Sakura520222

Copy link
Copy Markdown

改动类型

  • 缺陷修复(fix)

是否包含破坏性变更

  • 否

改动说明

MCP 客户端保留空闲 TCP 连接,或只发送部分 HTTP 请求头/请求体时,应用退出会等待 server.close(),直到客户端超时。

停止监听后调用 closeAllConnections(),断开存量连接,再等待 HTTP 服务和 MCP 会话完成清理。生产代码仅修改 electron/main/services/mcp/http.ts,另两个文件用于更新 mock 和覆盖三种真实连接。

关联 Issue

无

测试情况

基于上游 dev@d37e44b3,Windows 隔离目录验证:

  • pnpm install --frozen-lockfile
  • pnpm typecheck、pnpm lint、pnpm test、pnpm exec electron-vite build 全部通过
  • 完整测试 529 例通过(Node 50 + Vitest 479);lint 0 errors,2 条既有 warnings
  • 新增真实 TCP 回归:空闲连接、未完成请求头、未完成请求体,均在 1 秒内断开
  • 启动真实 Electron 应用,同时保留上述三种连接后退出:658ms 完成退出,客户端全部断开,无 renderer page error
  • 全部变更文件 Prettier 与 git diff --check 通过

自查清单

  • 本 PR 只包含一个修复,没有夹带无关改动
  • 已自行审阅并完成上述自动化及真实应用验证
  • 本 PR 全部文件已运行 Prettier,typecheck、lint 通过
  • 未修改原生模块,未手写 native 类型
  • 目标分支为 dev

This branch has not been deployed

No deployments
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.

1 participant