mcpdo: run the daemon test suites on Windows by porting the harness to named pipes
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 53/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- github-actions, node.js, typescript
Hướng nghiên cứu
Start with clients/mcpdo/src/daemon/paths.ts, clients/mcpdo/__tests__/helpers/platform.ts, and the daemon test suites gated by unixDaemonOnly; trace how they construct endpoints and wait during teardown. Run the tests on the Windows CI job and identify cases that depend on POSIX behavior. Done means the daemon suites run on Windows, only explicitly justified POSIX cases remain skipped, and the Windows coverage carve-out is removed from clients/mcpdo/vitest.config.ts.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Problem
mcpdo's Windows daemon path has never been run by a test. Production code already uses a named pipe on win32 (getDaemonSocketPath in clients/mcpdo/src/daemon/paths.ts returns \\.\pipe\mcp-conn-<hash>, and clients/mcpdo/src/daemon/client.ts handles the pipe path when locating the token file). But the daemon test harness was written for a Unix domain socket:
- suites bind or poll
<dir>/mcpdod.sockdirectly. Windows refuses that withEACCES, and the tests then time out waiting on the daemon. - teardown waits for the socket file to vanish. A pipe never appears there, so a live daemon keeps the temp dir open and
rmSyncfails withEBUSY. - some assertions assume POSIX premises (
0700directories, thesun_pathlimit).
#2748 (PR #2906) therefore skips 127 mcpdo tests on win32 (unixDaemonOnly in clients/mcpdo/__tests__/helpers/platform.ts). It also turns off mcpdo's per-file 90% coverage threshold on Windows only (clients/mcpdo/vitest.config.ts), because the daemon modules fall below it there. The new windows CI job is green, but it doesn't show that the daemon works on Windows.
Expected
- The daemon test helpers derive the endpoint from
getDaemonSocketPathinstead of a hard-coded.sockfile, and tear down a named-pipe daemon cleanly on Windows. - The suites gated by
unixDaemonOnlyrun on thewindowsCI job. Only cases that assert genuinely POSIX-only behaviour stay skipped, each with its reason at the site. - mcpdo's per-file 90% threshold is enforced on Windows again, and the win32 carve-out in
clients/mcpdo/vitest.config.tsis removed.
Verification has to come from the windows CI job; maintainers develop on macOS.
- Ngôn ngữ chính
- TypeScript
- Star
- 11.2k
- Fork
- 1.6k
- Merge trung bình
- 3 giờ 36 phút
- Pull request đã merge (30 ngày)
- 154
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của modelcontextprotocol/inspector
-
Document load testing and Active Sessions on modelcontextprotocol.ioCó thể đã có người làm @cliffhall đã nhận 2 ngày trước. Đang mởdocumentation v2 waiting-on-docs
modelcontextprotocol/inspector#2869 · 2 bình luận · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
CLI: OAuth denials and other non-usage failures exit 1 with code "error", the same as a usage errorĐang mởbug v2
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 68/100
modelcontextprotocol/inspector#2842 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
blocked chore v2
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 48/100
modelcontextprotocol/inspector#2548 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
blocked chore v2
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 52/100
modelcontextprotocol/inspector#2547 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Create the GitHub App for board writes and security-alert reads, and store its credentials as org secretsCó thể đã có người làm @cliffhall đã nhận 18 ngày trước. Đang mởchore v2
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
modelcontextprotocol/inspector#2544 · 1 bình luận · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của modelcontextprotocol/inspector
Issue tương tự
-
bug needs-triage potential-regression
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
aws/aws-sdk-js-v3#8408 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
colinhacks/zod#6743 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[BUG] Packing list: the weight field drops digits on a slow connection and saves the wrong weightĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 79/100
openai/openai-node#3124 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 73/100
anthropics/anthropic-sdk-typescript#1296 ·
Maintainer thường phản hồi trong vòng 8 ngày