fix(mcp): test passes timeout_seconds and check_ignore to runners that reject them
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ó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 67/100
Hướng nghiên cứu
Start with _parseTest in lib/src/mcp/mcp_server.dart, then read the runner option definitions in lib/src/commands/test/test.dart and lib/src/commands/dart/commands/dart_test_command.dart. Reproduce both argument combinations from the issue and check the MCP schema descriptions. Done when each combination either works on both runners or returns a clear validation failure naming the unsupported argument and runner.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Description
The MCP test tool builds a command line from its arguments without checking which runner will receive it. Two arguments are accepted by the tool schema but rejected by one of the two runners, so the call fails with exit 64 before any test runs.
| Tool arguments | Command built | Result |
|---|---|---|
dart: true, timeout_seconds: 180 |
very_good dart test --timeout 180 -- … |
Could not find an option named "--timeout". |
check_ignore: true on a Flutter package |
very_good test --coverage --min-coverage 100 --check-ignore … |
Could not find an option named "--check-ignore". |
The cause is visible on main (8c772f3):
_parseTestinlib/src/mcp/mcp_server.dartappends--check-ignoreand--timeoutunconditionally, whichever runnerdartselects.--timeoutis registered only onvery_good test(lib/src/commands/test/test.dart).--check-ignoreis registered only onvery_good dart test(lib/src/commands/dart/commands/dart_test_command.dart).- Neither the
timeout_secondsnor thecheck_ignoreschema description says it is runner-specific.
This bites agents twice: an agent told to "always set timeout_seconds" cannot test a pure Dart package, and an agent told to pass check_ignore cannot test a Flutter one. The plugin's green-gate skill currently instructs both (VeryGoodOpenSource/vgv-ai-flutter-plugin#178).
Steps To Reproduce
- Call the MCP
testtool on a pure Dart package with{"dart": true, "timeout_seconds": 60}. - Observe
partial_failure/validation:Could not find an option named "--timeout". - Call the MCP
testtool on a Flutter package with{"check_ignore": true}. - Observe
partial_failure/validation:Could not find an option named "--check-ignore".
Expected Behavior
One of the following, in order of preference:
- Each argument works on both runners:
very_good dart testgains--timeout(ideally the wall-clock kill from #1765 / #1766) andvery_good testgains--check-ignore. - Otherwise, the handler validates combinations before running and returns a
validationfailure that names the argument and the runner it applies to, and the schema descriptions say which runner each argument supports.
Additional Context
-
Seen in field use in 3 of 310 calls (sessions
2007f494on 2026-10-07 and493ade61on 2026-10-14). Transcript excerpts are available on request. -
very_good_cli 1.5.0, Dart 3.13.5, Flutter 3.47.6, macOS 26.5 arm64, Claude Code 2.1.302.
-
Related: #1765 (timeout does not kill a hung run), #1705 (MCP surface narrower than the CLI).
-
Tracking issue: VeryGoodOpenSource/vgv-ai-flutter-plugin#180
- Ngôn ngữ chính
- Dart
- Star
- 2.4k
- Fork
- 244
- Merge trung bình
- 1 ngày 18 giờ
- Pull request đã merge (30 ngày)
- 27
Chuẩn bị môi trường
- Không có Dockerfile hay 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 VeryGoodOpenSource/very_good_cli
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
VeryGoodOpenSource/very_good_cli#1783 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
feature
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
VeryGoodOpenSource/very_good_cli#1782 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 4/5 1-2 ngày Mức phù hợp với người mới 55/100
VeryGoodOpenSource/very_good_cli#1781 · 1 reaction ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 42/100
VeryGoodOpenSource/very_good_cli#1780 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
fix(mcp): test timeout_seconds does not kill a hung test run, which blocks every later tool callCó thể đã có người làm @unicoderbot đã nhận 7 ngày trước. Đang mởbug
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 45/100
VeryGoodOpenSource/very_good_cli#1765 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của VeryGoodOpenSource/very_good_cli
Issue tương tự
-
bug good first issue P2-Medium
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 64/100
basictech01/uniun#305 ·
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 70/100
daohoangson/flutter_widget_from_html#1657 ·
Maintainer thường phản hồi trong vòng 3 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
RevenueCat/purchases-flutter#1973 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Needs Attention platform: android type: infrastructure umbrella
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
firebase/flutterfire#18832 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Shoulder measurement bugĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
Maintainer thường phản hồi trong vòng 5 ngày