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

Objective-C: message sends ([obj selector], [self method:arg]) are mostly not recorded as calls (doom-ios recall 0.53)

Đã đóng
#5,639 2 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
55/100
Loại issue
Tính năng
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
objective-c, python

Hướng nghiên cứu

Start with /srv/storage_16tb/projects/gitgalaxy/doom-study/study-prototype/callcheck_all.py and the Objective-C call-recording implementation in the repository, then inspect the cited doom-ios, chocolate-doom, eternity, and gzdoom examples. Add tests for unary, keyword, nested, C-call-contained, @selector, and [super x] message-send shapes, while keeping C-call behavior unchanged. Rescan the licensed Objective-C ports with the #5630 oracle and confirm recall is at least 0.95, documenting @selector handling and any golden drift.

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

Mô tả

bug claim:nyx core-engine metrics needs:doom-corpus priority: medium scope:core

Problem

Objective-C units record C-style calls but most message sends are missing (licensed ports, engine 0e2bf4ade): doom-ios recall 0.53 (122 calls in source, 65 recorded), chocolate-doom pkg/osx 0.52, prboom-plus src/MAC 0.52, gzdoom/eternity cocoa code ~0.85. Examples:

  • doom-ios code/iphone/ControlsMenuView.m:98 awakeFromNib: [self initialize] not recorded (also initWithCoder, initWithFrame).
  • chocolate-doom pkg/osx/IWADController.m:103: selectedIWAD = [self getSelectedIWAD];, :142 return NameForIWAD([self getSelectedIWAD]);.
  • eternity macosx/launcher/ELTextFieldDelegate.m:47: [mOwner updateParameters:...]; gzdoom src/common/platform/posix/cocoa/i_video.mm:149 [self updateTitle].
    Some engine-only edges look like @selector(name:) references or notification targets recorded as calls (e.g. prboom-plus ConsoleController.m:26 launch -> dataReady); decide and document whether @selector counts.

Acceptance

  • Message sends recorded by selector (first keyword for keyword selectors; unary selectors), receiver kept as a qualifier where the engine has one; [super x] handled; C calls unchanged. Tests per shape (unary, keyword, nested, inside C call, @selector).
  • Rescan the licensed ports' Objective-C: recall >= 0.95 under the #5630 oracle; goldens with drift explained.

Found by the DOOM corpus call-graph checks (#5630, #5457); licensed ports only. Prototype: /srv/storage_16tb/projects/gitgalaxy/doom-study/study-prototype/callcheck_all.py.

🤖 Generated with Claude Code

Ngôn ngữ chính
Python
Star
57
Fork
11
Merge trung bình
1 giờ 5 phút
Pull request đã merge (30 ngày)
976

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 squid-protocol/gitgalaxy

Tất cả issue của squid-protocol/gitgalaxy

Issue tương tự

Thêm issue về Python

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.