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

adb: mark every host refusal as `hostRefusal` and derive `dispatched: "no"` from it

Đang mở
#3,075 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
68/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ệ
android, typescript
Lĩnh vực
mobile, testing

Hướng nghiên cứu

Start with packages/platform-android/src/adb-failure.ts and input-actions.ts, then inspect contracts/fixtures/dispatch-disclosure.json and the Android driver tests. Run the relevant adb-failure and dispatch-disclosure tests to trace attachAdbFailureHint through the real executor. Done means all six host refusals are classified, disclosure reports dispatched: "no" when appropriate, and pnpm check:affected --run passes.

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

Mô tả

needs-triage

Part of #3069.

Purpose

#3055 adds hostRefusal: true to the device_offline classification in packages/platform-android/src/adb-failure.ts, meaning the host adb refused the command before it reached the device. Five other reasons in the same matcher table are host refusals too and carry no flag: device_unauthorized, multiple_devices, no_devices, device_not_found, server_version_mismatch. On the dispatched branch, discloseAdbInputDispatch in input-actions.ts says no only for TOOL_MISSING, so an input tap refused for an unauthorized device reads unknown today.

Required behavior

  • Each host-refusal reason in ANDROID_ADB_FAILURE_MATCHERS carries hostRefusal: true. A reason that can also come from a command that ran on the device (install_*, connection_dropped, timeout) does not.
  • attachAdbFailureHint keeps stamping details.adbHostRefusal.
  • discloseAdbInputDispatch and the helper-session producers say dispatched: "no" when adbHostRefusal === true and no earlier step was dispatched (dispatchedSteps === 0). The classifier is the single source; no second string match.
  • One row per host refusal in contracts/fixtures/dispatch-disclosure.json, each driven through attachAdbFailureHint and the real executor.

Completion conditions

  • adb-failure.test.ts asserts hostRefusal for the six reasons and its absence for the rest.
  • The dispatch-disclosure gate passes with the new rows owned by the Android driver test.
  • pnpm check:affected --run passes.

Dependencies

Blocked by: #3055 (introduces hostRefusal) and #3071 (introduces the table).

Ngôn ngữ chính
TypeScript
Star
4.8k
Fork
315
Merge trung bình
11 giờ 27 phút
Pull request đã merge (30 ngày)
556

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 callstack/agent-device

Tất cả issue của callstack/agent-device

Issue tương tự

Thêm issue về TypeScript

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.