Pin the recovery --delay-ms constant across the Swift hint and the TS help text
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- Half a day
- Newbie friendliness
- 42/100
- Issue type
- Refactor
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- markdown, swift, typescript
- Domain
- testing-qa
Research direction
Start at TextEntryTiming.recoveryDelayMilliseconds in apple/runner/AgentDeviceRunner/AgentDeviceRunnerUITests/RunnerTests+TextEntry.swift (value 80 at line 114) and at the hard-coded --delay-ms 80 in src/commands/schema/cli-help-workflows.ts, then read the golden fixtures under contracts/fixtures/ and AGENTS.md for the cross-language pattern. Done means one declared source for the value, the help text and website/docs/docs/commands.md consuming it, and a check in pnpm check:affected that fails when the Swift constant changes without the help text.
Written by the indexing model from the issue text.
Description
The Apple runner builds its TEXT_INPUT_COMMIT_NOT_OBSERVED hint from TextEntryTiming.recoveryDelayMilliseconds (apple/runner/AgentDeviceRunner/AgentDeviceRunnerUITests/RunnerTests+TextEntry.swift:36, value 80 at :114). The versioned help paragraph introduced in #3334 hard-codes the same number as --delay-ms 80 in src/commands/schema/cli-help-workflows.ts (website/docs/docs/commands.md mirrors it). TS cannot import a Swift constant, so the two can drift silently.
Required behavior: the number is stated once and both surfaces consume it — the cross-language golden tables under contracts/fixtures/ are the mechanism AGENTS.md already prescribes for shared cross-language rules; extend that pattern (or an equivalent single-source check under scripts/) so changing the Swift constant must fail a gate until the help text moves with it.
Completion condition: changing recoveryDelayMilliseconds in Swift without updating the help text fails pnpm check:affected (or a dedicated check), and the current value 80 appears in exactly one declared source plus the generated/pinned projection.
Found by review on #3334 (non-blocking); intentionally not fixed there to keep that PR inside the fill command family.
- Dominant language
- TypeScript
- Stars
- 4.9k
- Forks
- 328
- Avg merge
- 12h 16m
- Merged PRs (30d)
- 538
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 1/5 Under an hour Newbie friendliness 88/100
callstack/agent-device#3353 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
callstack/agent-device#1869 ·
Maintainers usually reply within 1 day
-
needs-triage
Difficulty 5/5 Over a week Newbie friendliness 15/100
callstack/agent-device#3359 ·
Maintainers usually reply within 1 day
-
Limrun Android: `fill` inserts at the cursor instead of replacing the field's textPossibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 3/5 1-2 days Newbie friendliness 62/100
callstack/agent-device#3358 ·
Maintainers usually reply within 1 day
-
iOS selector click taps a point resolved from a pre-tap capture, so a layout shift between capture and tap retargets it silentlyPossibly taken @thymikee claimed this 1 day ago. Open
Difficulty 4/5 3-5 days Newbie friendliness 25/100
callstack/agent-device#3354 ·
Maintainers usually reply within 1 day
All issues in callstack/agent-device
Similar issues
-
awaiting-response bug needs-triage
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
wildcard/caro#1562 · 1 comment ·
Maintainers usually reply within 3 days
-
Difficulty 1/5 Under an hour Newbie friendliness 72/100
supadata-ai/mcp#27 ·
-
content
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
cosimochellini/one-piece-zero-spoiler#516 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
capricorn86/happy-dom#2485 ·
Maintainers usually reply within 2 days
-
lane: fast
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
unicef/adt-studio#946 ·
Maintainers usually reply within 2 days