iOS smoke lane: preflight 'prepare ios-runner' fails job with daemon_startup_failed on PR lanes (untracked third class)
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- github-actions, typescript
Research direction
Start by reading the ios.yml Smoke Tests preflight step and the daemon startup and cleanup paths reached by pnpm clean:daemon and prepare ios-runner; inspect the lock and daemon.json handling and startup probe. Compare the reported failures with the Windows daemon changes in #3330, then use the existing smoke lane to validate the identified cause. Done means the root cause is established and the preflight no longer fails spuriously.
Written by the indexing model from the issue text.
Description
Why
ios.yml Smoke Tests fails at the step "Preflight iOS runner through public CLI" (pnpm clean:daemon + node src/bin.ts prepare ios-runner …) before any scenario runs, with the daemon client's typed details.kind: "daemon_startup_failed":
"message": "Failed to start daemon",
"details": { "kind": "daemon_startup_failed", "startupTimeoutMs": 15000, "startupAttempts": 1, … }
This is a third red class in the iOS smoke lane beyond the two in #3337, and it is exactly the "red that means nothing" problem #2491 / #3336 are about: the step fails the whole job while the diff cannot have caused it.
Evidence (PR-lane only; no failing main run observed)
- Run 37839500279 (PR #3336, head
ffd575ae7, test-only diff — zero files undersrc/daemonorpackages/host-kit), failed 2026-10-08T20:32:31Z. - Run 37832908816 (PR #3330
fix/windows-daemon-start-3291, head0743ddba0), failed the IDENTICAL step with the IDENTICALdetails.kindat 2026-10-08T19:38:37Z — different branch, different author, same environment signature within an hour. mainshows no failingios.ymlruns on 2026-10-08, so this is currently PR-lane-only evidence.
Both payloads show stateDir/lockPath/infoPath inside the workspace .tmp/agent-device-state, startupTimeoutMs: 15000, startupAttempts: 1, and the client hint pointing at stale lock/daemon metadata from a previous owner in that state directory.
Scope
Find the root owner: whether the preflight's clean:daemon can leave (or collide with) lock/daemon.json state that makes the next start unrecoverable within the 15 s one-attempt budget on shared CI hosts, or whether the startup probe itself is under-budgeted under host load. Note the failing runs overlapped PR #3330, which is actively changing daemon startup on Windows (#3291) — rule that interaction in or out before assuming pure environment flake. Not requested here: re-running lanes to mask it — the re-run of 37839500279 is recorded on #3336.
Related: #2491 (lane signal), #3337 (other untracked smoke-lane signatures).
- 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
-
Difficulty 3/5 Half a day Newbie friendliness 42/100
callstack/agent-device#3360 ·
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
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