Skip to content

[build-tools] Let serve-sim start the iOS Simulator for Argent - #4602

Merged
gwdp merged 4 commits into
mainfrom
gwdp/serve-sim-argent-startup
Oct 20, 2026
Merged

gwdp merged 4 commits into
mainfrom
gwdp/serve-sim-argent-startup

Conversation

@gwdp

@gwdp gwdp commented Oct 10, 2026 •

Copy link
Copy Markdown
Contributor

Why

Let serve-sim start the Simulator and app while Argent is being prepared.

How

  • Use the shared startup path with the selected device and optional app inputs. Check the egress guard before install/launch.
  • Argent still handles later app actions. Existing prepared workflows and Android keep their current path.
  • Stop controller setup when Simulator startup fails; drain owned commands and preserve the first error.

Release compatible serve-sim, deploy the worker, then enable the new workflow inputs.

Test Plan

  • Codex rebased onto main at aae7d13ac; all four worker patches are unchanged. All 137 focused tests, typecheck, changed-file lint and formatting pass locally. Fresh CI and Devin review are pending.
  • Earlier local launch E2E passed: Universe-generated steps through build-tools download/install/start to pinned serve-sim on a real iOS Simulator. Verified one app start, arguments and deep link. Cloud calls used loopback adapters; hosted and current-head device runs remain pending.

Cold startup benchmark

Session Main median Stack median Median paired saving
argent 41.61s 32.59s 8.84s (21.2%)

Codex measured four alternating pairs per type on an initialized iPhone 17 Pro Simulator (iOS 26.4, Tart 6 CPU / 8 GiB), starting shut down with the app absent and packages cached. Timing runs from worker entry to local session reporting, using real controllers and native boot/install/launch with loopback cloud adapters.

This compares the completed startup stack e0b7462 against main 4aca8b1, with the same pinned local serve-sim #260 build; it does not isolate this PR's contribution. Hosted dispatch and first browser frame were not measured.

Savings are the median of paired differences, not the difference between the two arm medians. All four pairs were faster, by 7.21–14.01s.

Authorship and LLM use

Gabe wrote the initial implementation and guided the design. Codex implemented and split the changes. AI review led to fixes for startup order and cleanup. Gabe reviewed the final changes.

@gwdp
gwdp force-pushed the gwdp/serve-sim-argent-startup branch from bb48740 to d3212ae Compare October 10, 2026 08:39
@gwdp
gwdp added this pull request to stack #4604 October 10, 2026 08:40
@gwdp

This comment has been minimized.

@codecov

codecov Bot commented Oct 10, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 97.18310% with 2 lines in your changes missing coverage. Please review.
✅ Project coverage is 75.25%. Comparing base (aae7d13) to head (b243c95).

Files with missing lines Patch % Lines
...ls/src/steps/functions/startArgentRemoteSession.ts 97.19% 2 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4602      +/-   ##
==========================================
+ Coverage   75.23%   75.25%   +0.02%     
==========================================
  Files        1053     1053              
  Lines       52000    52045      +45     
  Branches    11345    11357      +12     
==========================================
+ Hits        39118    39162      +44     
- Misses      11894    11895       +1     
  Partials      988      988              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@gwdp gwdp changed the title [build-tools] Let serve-sim start Argent iOS sessions [build-tools] Let serve-sim start the iOS Simulator for Argent Oct 10, 2026
@gwdp
gwdp force-pushed the gwdp/serve-sim-argent-startup branch from d3212ae to d9a919c Compare October 10, 2026 16:25
@gwdp

This comment has been minimized.

@gwdp
gwdp force-pushed the gwdp/serve-sim-argent-startup branch from d9a919c to 799b387 Compare October 10, 2026 16:52
@gwdp
gwdp force-pushed the gwdp/serve-sim-argent-startup branch from 799b387 to 37b1e61 Compare October 10, 2026 16:53
@gwdp
gwdp removed this pull request from stack #4604 October 10, 2026 16:54
@gwdp
gwdp added this pull request to stack #4606 October 10, 2026 16:55
@gwdp

This comment has been minimized.

@gwdp
gwdp force-pushed the gwdp/serve-sim-argent-startup branch 2 times, most recently from a915716 to 8231479 Compare October 10, 2026 17:31
@gwdp
gwdp force-pushed the gwdp/serve-sim-argent-startup branch from 8231479 to ec8a350 Compare October 10, 2026 18:18
@gwdp
gwdp force-pushed the gwdp/serve-sim-argent-startup branch from ec8a350 to 9ccab93 Compare October 10, 2026 18:27
@gwdp
gwdp force-pushed the gwdp/serve-sim-argent-startup branch from 9ccab93 to bceb555 Compare October 10, 2026 18:50
@gwdp

This comment has been minimized.

@gwdp
gwdp force-pushed the gwdp/serve-sim-argent-startup branch from bceb555 to 41b6fcd Compare October 10, 2026 20:06
@gwdp

This comment has been minimized.

@gwdp
gwdp force-pushed the gwdp/serve-sim-argent-startup branch from 0893061 to 959e9d7 Compare October 15, 2026 16:28
@gwdp

This comment has been minimized.

@devin-ai-integration

This comment has been minimized.

devin-ai-integration[bot]

This comment was marked as resolved.

@gwdp
gwdp force-pushed the gwdp/serve-sim-argent-startup branch from 959e9d7 to 743e6eb Compare October 15, 2026 18:00
@gwdp

This comment has been minimized.

@devin-ai-integration

This comment has been minimized.

@gwdp
gwdp marked this pull request as ready for review October 15, 2026 19:07
@gwdp
gwdp requested a review from szdziedzic October 15, 2026 19:07
Base automatically changed from gwdp/serve-sim-agent-device-boot to main October 16, 2026 21:45
@gwdp
gwdp force-pushed the gwdp/serve-sim-argent-startup branch from 9715281 to 5a8640f Compare October 16, 2026 22:15
@gwdp

gwdp commented Oct 16, 2026

Copy link
Copy Markdown
Contributor Author

Rebased #4602 onto main 904859b8, including merged #4544. New head: 5a8640f.

Codex resolved the host-startup conflict by keeping main's private-preview, iframe and CORS settings alongside Argent's startup-failure handling. Both test sets are retained.

368 focused tests, typecheck across all 13 packages, full-repository lint and formatting pass. Opus found no rebase regression. Fresh CI is pending. No new hosted Argent run was performed for this rebase.

— Codex

@gwdp
gwdp removed this pull request from stack #4606 October 17, 2026 01:44
@gwdp
gwdp added this pull request to stack #4671 October 17, 2026 01:44
@gwdp
gwdp force-pushed the gwdp/serve-sim-argent-startup branch from 5a8640f to b243c95 Compare October 19, 2026 23:58
@gwdp

gwdp commented Oct 19, 2026

Copy link
Copy Markdown
Contributor Author

Rebased onto main at aae7d13; new head b243c95. All four reviewed worker patches are unchanged by range-diff. Codex ran 137 focused tests, typecheck, changed-file lint and formatting successfully. No new hosted or device run is claimed. Existing Szymon approval predates this rebase. Deploy this worker before enabling Universe #32360; verify the production worker and cache canary before activation.

/devin review

— Codex

@github-actions

Copy link
Copy Markdown

✅ Thank you for adding a changeset!

@gwdp

gwdp commented Oct 19, 2026

Copy link
Copy Markdown
Contributor Author

/devin review

Please review exact rebased head b243c95, especially parallel Argent/Simulator startup failure handling and compatibility with prepared iOS and Android workflows. The four worker patches are unchanged by range-diff.

— Codex

@devin-ai-integration

Copy link
Copy Markdown

Starting Devin Review.

Devin Review

@gwdp
gwdp merged commit d0cb5a2 into main Oct 20, 2026
11 checks passed
@gwdp
gwdp deleted the gwdp/serve-sim-argent-startup branch October 20, 2026 00:12
AndrewSouthpaw added a commit to AndrewSouthpaw/eas-cli that referenced this pull request Oct 22, 2026
…t-dirs

* upstream/main: (128 commits)
  [build-tools] stop logging workflow hook parsing in build logs (expo#4717)
  [build-tools] retry download_build network failures and report their cause (expo#4690)
  [eas-cli][build-tools] Bump Node.js to 22.23.4 (expo#4714)
  [eas-cli] make command descriptions lowercase without trailing periods (expo#4385)
  [build-tools] Add `max_duration_seconds` to sandboxes (expo#4702)
  [eas-cli] Show simulator session errors in simulator:get (expo#4694)
  [eas-cli] Show why a simulator session failed to start (expo#4693)
  [worker] Mask secrets in every field of uploaded log records (expo#4698)
  [eas-build-job][build-tools] Check Android launch inputs before the session starts (expo#4696)
  bump STAGING and PRODUCTION to 25.3.0 in cli-versions.json
  v25.3.0
  [eas-cli] Add --system-image to eas simulator:start (expo#4500)
  [build-tools] Wait up to five minutes for Google Play to process an uploaded bundle (expo#4700)
  [build-tools] Quote Android launch arguments for the device shell (expo#4695)
  [build-tools] Forward network capture through local egress (expo#4598)
  [build-tools] Let serve-sim start the iOS Simulator for Appium (expo#4603)
  [build-tools] Let serve-sim start the iOS Simulator for Argent (expo#4602)
  [build-tools] Upload iOS Simulator session screen recording metadata (expo#4689)
  [build-tools] Reset the session idle timer on serve-sim preview input (expo#4691)
  [eas-cli] Add a checkout prompt experiment to the Free plan build limit error (expo#4633)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants