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

CI perf (coverage tradeoff): Windows-only path bugs reach main because `test (windows-latest, *)` runs only nightly

Đang mở
#1,720 5 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
45/100
Loại issue
Tái cấu trúc
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
github-actions, rust
Lĩnh vực
ci-cd

Hướng nghiên cứu

Start in ci.yml around line 346 where the test job's Windows shards are gated by CI_SCOPE. Read the merge_group trigger and windows-compile-check step to see where to add a Windows cargo test step for socket-patch-core. Done means merge_group runs cargo test -p socket-patch-core --lib on windows-latest while keeping checks ci-ok and clippy unchanged. Validate by triggering a merge_group with a crate change.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

agent:needs-human agent:triaged ci-perf priority:p3

Filed by the CI janitor routine. This is a cost vs. coverage tradeoff, so it goes to the CI profiler/implementer and a human. The janitor didn't change CI.

Evidence

On pull_request and merge_group, the test job runs only on Linux, with macOS added on PRs. test (windows-latest, 1|2) runs only when vars.CI_SCOPE == 'full', on the nightly schedule, or on dispatch (ci.yml line 346). On merge_group, Windows gets only windows-compile-check. Windows-only test failures therefore surface after merge, on the nightly run.

Nightly CI (schedule) on main, last 7 days:

date run result Windows-only failure fix
10-24 40067511756 ❌ yarnrc::tests::global_folder_values_read_like_yarn: \${HOME} is read as absolute on Windows #1710 (open, green, waiting on review)
10-23 39907645034 ❌ governing_root::tests::vlt_project_root_governs_unlisted_directories (RUNNER~1 vs \\?\ paths); get_failure_paths::engine_nested_apply_preserves_conflicts_introduced_during_fetch; one test in the user_patches target #1686
10-22 39730006970 ❌ uv::tests::global_uv_settings_reads_the_user_then_first_system_file (/ vs \) #1663
10-21 39551481612 ✅
10-20 39376690526 ❌ (Linux, pipenv/uv: not this issue) #1716

Across 3 consecutive nights there were 5 Windows-only test regressions. Each made main red for about a day and needed its own follow-up PR plus another merge-queue trip. All of them were deterministic path-form assertions (separators, 8.3 short names, \\?\ verbatim prefixes), not flakes, so one Windows run of the changed crate's tests before merge would have caught every one.

Options (for the profiler/implementer to cost)

  1. Run cargo test -p socket-patch-core --lib on Windows in merge_group, next to windows-compile-check. It's the target that failed in 4 of the 5 cases. Its test step took 207–325 s in the failing nightlies, on top of the existing compile-check build.
  2. Use path filters to run the Windows test shards on merge_group only when crates/** changes. That is nearly every agent PR, so it would cost about as much as running them always.
  3. Keep the current setup, but add a lint or helper that rejects /-joined PathBuf expectations in tests. This is cheaper, but it only covers the separator case.

Please keep the required check names ci-ok and clippy unchanged.

Ngôn ngữ chính
Rust
Star
8
Fork
2
Merge trung bình
19 giờ 31 phút
Pull request đã merge (30 ngày)
686

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 SocketDev/socket-patch

Tất cả issue của SocketDev/socket-patch

Issue tương tự

Thêm issue về Rust

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.