HermitCrab: no word reaches the MaxApplicationCount gate, and the mutant stack-overflow path has no end-to-end test

Đang mở
#616 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ó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
18/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
csharp
Lĩnh vực
backend

Hướng nghiên cứu

Start in the HermitCrab engine where MaxApplicationCount is checked during analysis and synthesis, and compare the cap sites in each pass. The open question is whether the synthesis cap sites are dead code or only lack a trace call, so the first step is the proposed mutation that removes the check and records whether any word's output changes. Done means either the dead sites are removed or a word is shown to hit the limit, with the stack-overflow path covered end to end.

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

Mô tả

Hermit Crab

Two conformance points stay in machine because they concern its engine and runner, not the grammars now in sillsdev/fieldworks-parser-conformance.

  1. MaxApplicationCount: no word reaches this gate. Analysis stops at the cap with a bare return and no trace call; synthesis re-applies only rules analysis un-applied, so the synthesis cap sites never see a count at the cap. Decide: remove the dead sites, or add the trace call so a word can witness the limit. The behaviour to witness is stated in sillsdev/fieldworks-parser-conformance#8.
  2. The mutant stack-overflow path is tested only at its classification, by unit tests. The real overflow reproduced only on a fixture that was deleted.

Not known: whether the synthesis cap sites are dead code or only lack a trace call.

Related: #613 (closed, origin); #615 (runner, open); sillsdev/fieldworks-parser-conformance#8.

Next: run a mutation that removes the cap check at the synthesis sites and record whether any word changes.

🤖 Generated with Claude Code

Ngôn ngữ chính
C#
Star
29
Fork
16
Merge trung bình
6 ngày 7 giờ
Pull request đã merge (30 ngày)
14

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

  • Không có Dockerfile hay tệp Docker Compose
  • Có mẫu pull request
  • Không có hướng dẫn đóng góp

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 sillsdev/machine

Tất cả issue của sillsdev/machine

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.