iOS reliability follow-ups from v0.21.5–v0.21.8 review
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- ios, typescript
- Domain
- mobile-dev, testing-qa
Research direction
Read the linked child issues #2726–#2731 and their blockers before starting; this issue is coordination rather than a single implementation task. Check each child’s acceptance tests, stopping condition, and implementation or evidence PR, then verify all child states and required live semantic evidence. Do not add CI wiring for #2731 or guess unresolved API behavior.
Written by the indexing model from the issue text.
Description
Purpose
Track bounded follow-ups from the v0.21.5–v0.21.8 iOS source review and the measured iPhone Duo investigation in #2724. This is coordination, not a single implementation PR. Existing input bugs #2711 and #2719 remain linked to #2724; #2694 remains the separate disclosure-routing task.
Execution contract
Each child is deliberately sized for Luna: concrete entry files, one outcome, explicit exclusions, acceptance tests, and a stopping condition. Work one issue per PR. Read blockers before starting; needs-triage children are not AFK-ready. Do not implement an unresolved API/behavior choice by guessing. Investigation success means evidence and a decision, not speculative production code.
Child tasks
- #2726 — fix(ios): correct targetActivation background-state decoding
- #2727 — investigate(ios): establish a measured screen-capture source for the active window
- #2728 — fix(ios): use the resolved display for screenshots and visual verification
- #2729 — fix(fold): make reported screen dimensions match their coordinate-space contract
- #2730 — fix(fold): distinguish an observed half-open angle from a settled pose
- #2731 — test(ios): automate semantic checks across Duo pose transitions
Order and resolved decisions
The display-capture investigation #2727 is complete with measured open/half-open/closed, single-panel, and native-alert evidence. #2728 adopts resolved-window capture with upright raster encoding and actual scale; implement on #2724 or after its merge. #2729 retains released dimensions and marks them coordinateSpace: "native-panel". #2730 requires stable half-open readings and distinguishes unsettled failure. These decisions are recorded in the child contracts.
#2731 is explicitly local-only by maintainer decision until GitHub Actions supports Duo. It can be implemented on #2724 and does not depend on the screenshot or metadata fixes. Automatic CI wiring is deferred, not a completion condition. All four implementation tasks are ready with their branch prerequisites explicit.
Completion
Verify all child issue states and their implementation/evidence PRs, not just this checklist. Runtime changes require live semantic evidence; mocked unit tests and successful synthesis acknowledgements are insufficient. Keep the existing centralized response decoding, typed lifecycle/readiness work, and off-deadline bridge preparation; no broad rewrite is requested.
- Dominant language
- TypeScript
- Stars
- 4.8k
- Forks
- 315
- Avg merge
- 11h 37m
- Merged PRs (30d)
- 556
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from callstack/agent-device
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
callstack/agent-device#1869 ·
Maintainers usually reply within 1 day
-
iOS: type/fill still reads its pre-focus element after the focus tap, ending the runner sessionOpenbug needs-triage
Difficulty 4/5 3-5 days Newbie friendliness 45/100
callstack/agent-device#3238 ·
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
callstack/agent-device#3229 ·
Maintainers usually reply within 1 day
-
fix(apple-runner): fence prep spawns after teardown or last-waiter cancellationPossibly taken @thymikee claimed this today. Openneeds-triage
Difficulty 4/5 3-5 days Newbie friendliness 42/100
callstack/agent-device#3220 ·
Maintainers usually reply within 1 day
-
Explicit macOS surface is lost from recorded actions and replay scriptsPossibly taken @janicduplessis claimed this 1 day ago. Open
Difficulty 4/5 3-5 days Newbie friendliness 25/100
callstack/agent-device#3216 ·
Maintainers usually reply within 1 day
All issues in callstack/agent-device
Similar issues
-
enhancement good first issue priority: low size: XS
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 1-3 hours Newbie friendliness 88/100
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
streamplace/streamplace#1351 ·
Maintainers usually reply within 2 days
-
Link Checker ReportOpenautomated issue report
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
databendlabs/databend-docs#3511 ·
-
automated issue report
Difficulty 2/5 1-3 hours Newbie friendliness 65/100