Remote iOS recording: recover completed export after record stop times out
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Bug
- Clarity
- Needs clarification
- Activity status
- Active
- Tech stack
- ios, typescript
- Domain
- backend-api-design, cli, mobile-dev
Research direction
Start by tracing the CLI record-stop workflow and the remote daemon's /artifacts endpoint, then determine which layer owns the 90-second timeout. Done means distinguishing an ongoing export from failure, exposing a supported status and retrieval path with actionable identifiers, and preserving session and tenant ownership checks.
Written by the indexing model from the issue text.
Description
Problem
A customer running agent-device against an EAS-hosted remote iOS simulator reported that record stop timed out client-side after 90 seconds while the daemon continued exporting. The recording eventually became available, but they could not find a CLI command to retrieve it and fetched it manually through the daemon's /artifacts endpoint.
This leaves an agent unable to finish retrieving its recording through the normal CLI workflow even though the export succeeds.
Environment and evidence
- Remote iOS simulator on EAS Simulator.
- Version baseline for this report: 0.20.10; exact client/daemon versions and recording options still need confirmation from the reporter.
- Customer-reported observation, not independently reproduced by us. The exact timeout transcript, session ID, export duration, and a minimal reproduction are not yet available. The customer has offered transcripts and diagnostics.
- We have not established which layer owns the 90-second timeout.
Requested behavior
- Distinguish a failed export from an export that is still running when the client stops waiting.
- Provide a supported CLI recovery path to inspect export status and retrieve the completed daemon-managed recording after the original request times out, without starting another recording or manually calling HTTP endpoints.
- Give actionable recovery information in the timeout response, including a stable recording/export identifier if needed.
- Preserve normal session/tenant ownership checks on retrieval.
The exact command shape is open. The existing documented artifacts command lists provider-hosted artifacts (for example BrowserStack/AWS Device Farm); this request concerns a recording exported by the remote agent-device daemon.
Related work
- #197 covered normal remote artifact retrieval; this is specifically recovery after the original export request times out.
- #2170 concerns a host recording lock after an ungraceful recorder kill. Here the daemon reportedly kept exporting and produced an artifact, so this is not known to be the same mechanism.
- Dominant language
- TypeScript
- Stars
- 4.7k
- Forks
- 304
- Avg merge
- 11h 46m
- Merged PRs (30d)
- 496
Contributor 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 ·
-
needs-triage
Difficulty 5/5 Over a week Newbie friendliness 25/100
callstack/agent-device#2754 · 2 comments ·
-
needs-triage
Difficulty 4/5 3-5 days Newbie friendliness 52/100
callstack/agent-device#2751 ·
-
bug ready-for-agent
Difficulty 5/5 Over a week Newbie friendliness 38/100
callstack/agent-device#2728 ·
-
enhancement needs-triage
Difficulty 5/5 Over a week Newbie friendliness 25/100
callstack/agent-device#2725 ·
All issues in callstack/agent-device
Similar issues
-
blocklist removal
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
MetaMask/eth-phishing-detect#296544 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
pastelsky/bundlephobia#1122 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
category/development priority/P2 scope/file-operations scope/testing type/enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Enatega Customer and Rider app: Add-ons price is not visible to customer after order is placed. Open
Difficulty 2/5 1-3 hours Newbie friendliness 75/100