Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

fix(mcp): test passes timeout_seconds and check_ignore to runners that reject them

Đang mở
#1,779 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

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
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ệ
dart, flutter
Lĩnh vực
cli, testing

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ả

bug
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):

  • _parseTest in lib/src/mcp/mcp_server.dart appends --check-ignore and --timeout unconditionally, whichever runner dart selects.
  • --timeout is registered only on very_good test (lib/src/commands/test/test.dart).
  • --check-ignore is registered only on very_good dart test (lib/src/commands/dart/commands/dart_test_command.dart).
  • Neither the timeout_seconds nor the check_ignore schema 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
  1. Call the MCP test tool on a pure Dart package with {"dart": true, "timeout_seconds": 60}.
  2. Observe partial_failure / validation: Could not find an option named "--timeout".
  3. Call the MCP test tool on a Flutter package with {"check_ignore": true}.
  4. Observe partial_failure / validation: Could not find an option named "--check-ignore".
Expected Behavior

One of the following, in order of preference:

  1. Each argument works on both runners: very_good dart test gains --timeout (ideally the wall-clock kill from #1765 / #1766) and very_good test gains --check-ignore.
  2. Otherwise, the handler validates combinations before running and returns a validation failure 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 2007f494 on 2026-10-07 and 493ade61 on 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

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. 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.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của VeryGoodOpenSource/very_good_cli

Tất cả issue của VeryGoodOpenSource/very_good_cli

Issue tương tự

Thêm issue về Dart

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.