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

Suite runner never asserts PASS + FAIL == TOTAL, so a section can vanish from the tally or double-count

Đang mở
#1,354 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
74/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ệ
bash, shell
Lĩnh vực
testing-qa

Hướng nghiên cứu

Start with tests/run_all_tests.sh and read how each section updates PASS, FAIL, TOTAL, and skipped counts, then inspect tools/section_plan.sh for the existing skip audit. Run full, sharded, and changed-sections suites, including the three [99zb] mutations described in the issue. Done means the suite reports a named nonzero failure for mismatched counters while valid skips remain outside TOTAL.

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

Mô tả

area:gates found-by:critic kind:gate-defect

Found by a blind critic while reviewing the #1326 fix. It is out of scope there, so it is filed here.

tests/run_all_tests.sh prints RESULTS: $PASS/$TOTAL passed, $FAIL failed, $SKIPPED skipped, but nothing asserts the three counters agree. Each section increments TOTAL and then PASS or FAIL (or gives the TOTAL back and calls section_skip) by hand. A mistake in one of those increments does not show up anywhere.

Measured with the #1326 branch, a changed-sections run, and bash32 hidden. Each case mutated only [99zb]'s skip arm:

mutation RESULTS line suite rc
section_skip ... → PASS=$((PASS+1)) (the pre-#1326 behaviour) 419/418 passed, 0 failed, 0 skipped 0
section_skip ... → : 418/418 passed, 0 failed, 0 skipped (the section vanishes) 0
drop TOTAL=$((TOTAL - 1)) 418/419 passed, 0 failed, 1 skipped 0

tools/section_plan.sh --skip-audit is static: it checks that skip lines are ROUTED through section_skip, not that the counters add up. So all three mutations pass it. It does catch a bare echo " SKIP:".

This exists only as mutants today; the real tree reads 5397/5397 on a full release run. It is still a missing invariant: the RESULTS line is the suite's verdict, and it can currently state an impossible fraction and exit 0.

Done when

  • The runner fails (nonzero exit, named reason) when PASS + FAIL != TOTAL at the RESULTS line.
  • Calibrated: each of the three mutations above makes the suite red. Shown in the PR.
  • Sharded and changed-sections runs obey the same invariant (their TOTAL is the selected sections' total).
  • A section's skip still counts only in skipped=. The invariant does not push skips back into TOTAL.
Ngôn ngữ chính
C
Star
3
Fork
7
Merge trung bình
4 giờ 1 phút
Pull request đã merge (30 ngày)
121

Chuẩn bị môi trường

Mở trong Codespaces

Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.

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 InauguralSystems/EigenScript

Tất cả issue của InauguralSystems/EigenScript

Issue tương tự

Thêm issue về C

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.