stim 1.23.0 → 1.23.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/dist/{acquire-artifact-ybouwJSR.mjs → acquire-artifact-BzYRDgaP.mjs} +1 -1
  2. package/dist/{act-DG54PWtJ.mjs → act-vxiMwdf5.mjs} +6 -6
  3. package/dist/{activity-B5RtpFda.mjs → activity-BpWUPgUm.mjs} +1 -1
  4. package/dist/{agent-device-usage-output-UJ5gC80l.mjs → agent-device-usage-output-CUlLsbRt.mjs} +3 -3
  5. package/dist/{android-CHH4KLOR.mjs → android-CLi6DSiS.mjs} +5 -5
  6. package/dist/{android-BoUJKbfz.mjs → android-DtfRGLcc.mjs} +23 -23
  7. package/dist/api.d.mts +1 -0
  8. package/dist/api.mjs +18 -18
  9. package/dist/{artifact-Dwdo7k1E.mjs → artifact-DBI3DALs.mjs} +9 -9
  10. package/dist/{artifact-5RteZem7.mjs → artifact-Xvgibgzq.mjs} +9 -9
  11. package/dist/{browser-web-CeEVlGug.mjs → browser-web-BJN9ZHxB.mjs} +5 -5
  12. package/dist/{budget-DnPX3DXj.mjs → budget-3ivAK99e.mjs} +7 -7
  13. package/dist/{build-CqufZFqy.mjs → build-Dv9s8Fz-.mjs} +14 -14
  14. package/dist/{build-plan-C8CIvRyi.mjs → build-plan-BmbdHQbr.mjs} +3 -3
  15. package/dist/{ccache-RcAy92gH.mjs → ccache-CH2EWGPB.mjs} +2 -2
  16. package/dist/{cli-D-J9fWGV.mjs → cli-BkK6Wr5i.mjs} +17 -17
  17. package/dist/cli.mjs +1 -1
  18. package/dist/{client-yyso1bwi.mjs → client-B4MMzfo_.mjs} +5 -5
  19. package/dist/{command-output-Db8BqzxH.mjs → command-output-YKGWivpG.mjs} +1 -1
  20. package/dist/{dev-client-BnYSDiKa.mjs → dev-client-BFxiDpkf.mjs} +2 -2
  21. package/dist/{device-BvzPUBs3.mjs → device-B7ljwccX.mjs} +11 -11
  22. package/dist/{device-CCkWmkAA.mjs → device-CiNYxqp6.mjs} +6 -6
  23. package/dist/{device-capacity-CjaSdrhg.mjs → device-capacity-DH0QsZYZ.mjs} +4 -4
  24. package/dist/device-host-worker.mjs +5 -5
  25. package/dist/{device-ios-uOiEETX2.mjs → device-ios-CbVDtDIy.mjs} +32 -4
  26. package/dist/{device-lease-run-BgwPHc6u.mjs → device-lease-run-DXPSwdbb.mjs} +3 -3
  27. package/dist/{device-pool-C-ptmZTa.mjs → device-pool-B4iOXIrD.mjs} +2 -2
  28. package/dist/{doctor-D2SN3Ltx.mjs → doctor-C6t4Maue.mjs} +12 -11
  29. package/dist/{doctor-pxxvipYC.mjs → doctor-DRu-8ld6.mjs} +1 -1
  30. package/dist/{doctor-8sr2tFOL.mjs → doctor-HUC1igzw.mjs} +10 -10
  31. package/dist/{doctor-watchman-sy_RNhFt.mjs → doctor-watchman-iGBpC6KM.mjs} +2 -2
  32. package/dist/{eas-build-CyjU5K7E.mjs → eas-build-DMWSSvxq.mjs} +2 -2
  33. package/dist/{eas-fallback-DV3Wytf1.mjs → eas-fallback-vKlrqxgE.mjs} +5 -5
  34. package/dist/{eas-session-ledger-BzzsX97d.mjs → eas-session-ledger-BQF9Yyy9.mjs} +1 -1
  35. package/dist/{error-diagnostics-C6sVoeqO.mjs → error-diagnostics-DYsjJIHz.mjs} +3 -3
  36. package/dist/{gc-CDoogxAI.mjs → gc-BW8E1uSC.mjs} +9 -9
  37. package/dist/{gc-DLbzvTP2.mjs → gc-dDE4QPVu.mjs} +2 -2
  38. package/dist/{guide-BC37GcDG.mjs → guide-DYYEO3Wz.mjs} +36 -20
  39. package/dist/{hosted-android-CkclQig_.mjs → hosted-android-xcfgCgSF.mjs} +2 -2
  40. package/dist/{hosted-client-ByuMMO5s.mjs → hosted-client-Bt-tndxV.mjs} +1 -1
  41. package/dist/{hosted-ios-DtYHeuYR.mjs → hosted-ios-y19jCYFF.mjs} +1 -1
  42. package/dist/{hosted-logs-Br84qWy1.mjs → hosted-logs-DzJKzKlj.mjs} +2 -2
  43. package/dist/{hosted-macos-DdtYajZt.mjs → hosted-macos-BJusKvqL.mjs} +4 -4
  44. package/dist/{hosted-native-UPI9zdZ4.mjs → hosted-native-BmQC6U_x.mjs} +3 -3
  45. package/dist/{idle-shutdown-DO7oIRlc.mjs → idle-shutdown-CJmUOV5x.mjs} +4 -4
  46. package/dist/{ios-DZZbNYlY.mjs → ios-CWjqfSm_.mjs} +19 -19
  47. package/dist/{ios-vbUOqGXu.mjs → ios-DTOYZGMJ.mjs} +8 -8
  48. package/dist/{ios-device-JC3uWM4K.mjs → ios-device-DFGuwF4U.mjs} +1 -1
  49. package/dist/{ios-project-CVyNwjAF.mjs → ios-project-CSZYI1iu.mjs} +4 -4
  50. package/dist/{js-swap-C3QxUFJR.mjs → js-swap-BSBHldmm.mjs} +3 -3
  51. package/dist/{launch-CHY3p-yz.mjs → launch-CP2wDCVd.mjs} +26 -26
  52. package/dist/{launch-Bz7JtaC4.mjs → launch-D-zq8SHG.mjs} +10 -10
  53. package/dist/{logs-CtNeNDuq.mjs → logs-By5aw3g9.mjs} +4 -4
  54. package/dist/{logs-mxqsWpJs.mjs → logs-pNvA2hHK.mjs} +6 -6
  55. package/dist/{macos-u0BoHKnO.mjs → macos-C67FZ2ft.mjs} +11 -11
  56. package/dist/{macos-inNFbBWc.mjs → macos-CPMahOC2.mjs} +1 -1
  57. package/dist/maintenance-run.mjs +4 -4
  58. package/dist/{native-android-CdCSylTn.mjs → native-android-_MWSs3PP.mjs} +9 -9
  59. package/dist/{native-run-BUTu8T7A.mjs → native-run-Dv88i0aU.mjs} +1 -1
  60. package/dist/{native-runtime-CRSOZxKY.mjs → native-runtime-DBRfY_PN.mjs} +3 -3
  61. package/dist/{native-xcode-inputs-G6rkkhxu.mjs → native-xcode-inputs-CqViUh3r.mjs} +1 -1
  62. package/dist/{native-xcode-ios-_os2PlCD.mjs → native-xcode-ios-vFgqL_yS.mjs} +12 -12
  63. package/dist/offload-worker.mjs +43 -16
  64. package/dist/{plan-placement-BU42oOyT.mjs → plan-placement-cr0fEU7b.mjs} +1 -1
  65. package/dist/{ports-BSmQKzW7.mjs → ports-DpXjKkSV.mjs} +1 -1
  66. package/dist/{prebuild-BFm63bQ0.mjs → prebuild-BligW0QS.mjs} +3 -3
  67. package/dist/{project-CTLNHCfE.mjs → project-DhCtQWWU.mjs} +11 -11
  68. package/dist/{react-native-android-CFgUroxW.mjs → react-native-android-ZlhQfhvq.mjs} +18 -18
  69. package/dist/{react-native-build-CmJkTljQ.mjs → react-native-build-CelbTO_y.mjs} +4 -4
  70. package/dist/{react-native-doctor-LTF-Xt8l.mjs → react-native-doctor-LTIaP7lv.mjs} +5 -5
  71. package/dist/{react-native-ios-ChBF1MkB.mjs → react-native-ios-C5W0SA6f.mjs} +13 -13
  72. package/dist/{reload-DF9hqUUB.mjs → reload-COJWTbae.mjs} +6 -6
  73. package/dist/{reload-RBi1nj6Z.mjs → reload-QcwnYLYV.mjs} +1 -1
  74. package/dist/{remote-BmvMCcJw.mjs → remote-DR8qUERM.mjs} +4 -4
  75. package/dist/{result-Cx5CRLvS.mjs → result-utnBea7x.mjs} +9 -9
  76. package/dist/{server-command-BTiGPEjS.mjs → server-command-B9o92sLM.mjs} +3 -3
  77. package/dist/{server-expo-D9lEz4aq.mjs → server-expo-BXrWxNYh.mjs} +31 -10
  78. package/dist/server-expo-Ddr8cG_c.mjs +2 -0
  79. package/dist/{settings-eKF_vJJs.mjs → settings-PfJx8uK1.mjs} +1 -1
  80. package/dist/{settings-write-79mQRr9C.mjs → settings-write-Chuy7Cte.mjs} +1 -1
  81. package/dist/{slot-launch-D7M2nE4b.mjs → slot-launch-B7AuoWJv.mjs} +2 -2
  82. package/dist/{stage-DKNM4ZPd.mjs → stage-C4u17aES.mjs} +1 -1
  83. package/dist/{start-CRfN1kWV.mjs → start-BL_BsiWt.mjs} +1 -1
  84. package/dist/{start-bjfiScgz.mjs → start-CU8mCPC7.mjs} +4 -4
  85. package/dist/{stats-DioA6cBU.mjs → stats-CO6sK0Nh.mjs} +3 -3
  86. package/dist/{status-Eqx_20WC.mjs → status-CrJutl6-.mjs} +1 -1
  87. package/dist/{status-kzbeWk4x.mjs → status-_WPHzVft.mjs} +11 -11
  88. package/dist/{status-watch-BIqqbJ6q.mjs → status-watch-BHFasOZN.mjs} +1 -1
  89. package/dist/status-worker.mjs +1 -1
  90. package/dist/{stop-B2uLQfoM.mjs → stop-BJ06ipTZ.mjs} +9 -9
  91. package/dist/{stop-DzLJc7Ei.mjs → stop-CR5689oB.mjs} +2 -2
  92. package/dist/{stop-B18d8KDw.mjs → stop-iuFHjUST.mjs} +2 -2
  93. package/dist/supervisor-run.mjs +8 -8
  94. package/dist/{support-DTBV56gy.mjs → support-CbXPbUMJ.mjs} +3 -3
  95. package/dist/{support-BTpZ6RAJ.mjs → support-TWuQlHQo.mjs} +5 -5
  96. package/dist/{swiftpm-macos-r_WSKlXr.mjs → swiftpm-macos-DbwGCpZg.mjs} +3 -3
  97. package/dist/{toolchain-CWeGJgCc.mjs → toolchain-B9hCFCQw.mjs} +1 -1
  98. package/dist/{toolchain-GVgnf8d1.mjs → toolchain-XkA2PfJZ.mjs} +1 -1
  99. package/dist/{web-CwREhjD-.mjs → web-DRF_oFXk.mjs} +3 -3
  100. package/dist/web-kDE9Myoy.mjs +2 -0
  101. package/dist/web-run.mjs +1 -1
  102. package/dist/{workspaces-BxzYlo3P.mjs → workspaces-e41xsjKr.mjs} +2 -2
  103. package/dist/{worktree-8lqn_lBp.mjs → worktree-B4Nj3EGS.mjs} +12 -12
  104. package/dist/{worktree-BxfVxG_b.mjs → worktree-BEwxVwKF.mjs} +1 -1
  105. package/dist/{xcode-iQnROM5o.mjs → xcode-Rq744mBF.mjs} +3 -3
  106. package/package.json +7 -7
  107. package/dist/server-expo-C-Buqvn_.mjs +0 -2
  108. package/dist/web-Cduk0NSE.mjs +0 -2
@@ -1,33 +1,33 @@
1
1
  import { m as workspaceLogsDir$1 } from "./paths-DQtTgsBf.mjs";
2
2
  import { B as deviceSlotFileKey, W as parseDeviceSlotOption, q as validateDeviceSlot } from "./config-DlrsduwG.mjs";
3
- import { _ as stepTimer, g as stepClock, i as formatDuration, l as phaseLine } from "./command-output-Db8BqzxH.mjs";
3
+ import { _ as stepTimer, g as stepClock, i as formatDuration, l as phaseLine } from "./command-output-YKGWivpG.mjs";
4
4
  import { i as recordWorkspaceUse } from "./workspace-state-U08dEzhG.mjs";
5
5
  import { C as iosSigningIdentitySha1Setting, L as projectSettingsContextAsync, N as metroWarmupUrlSetting, R as publicUrlSetting, S as iosSigningIdentitySettingError, _ as iosLanHostSetting, a as SETTING_SHAPE_REMEDY, g as deviceReclaimIdleMinutesSetting, j as metroPortSetting, rt as tunnelModeSetting, v as iosLanHostSettingError, w as iosSigningIdentitySha1SettingError, x as iosSigningIdentitySetting } from "./settings-C7O8A6ZI.mjs";
6
- import { L as workspaceDevServerMode, t as NO_PROJECT_REFUSAL } from "./project-CTLNHCfE.mjs";
7
- import { H as tapBuildLog, In as runProcessOperation, Lt as binOnPath, M as NO_BUILD_PROGRESS, Pn as exitAfterFlush, U as createRunRecorder, V as startBuildProgress, Y as statsProjectKey$1, cn as DEFAULT_METRO_PORT, rr as ownedSessionName } from "./budget-DnPX3DXj.mjs";
8
- import { d as runCancellationSignal, f as withNativeBuildRun, r as cancelledFailure, u as runCancellation } from "./native-run-BUTu8T7A.mjs";
6
+ import { L as workspaceDevServerMode, t as NO_PROJECT_REFUSAL } from "./project-DhCtQWWU.mjs";
7
+ import { H as tapBuildLog, In as runProcessOperation, Lt as binOnPath, M as NO_BUILD_PROGRESS, Pn as exitAfterFlush, U as createRunRecorder, V as startBuildProgress, Y as statsProjectKey$1, cn as DEFAULT_METRO_PORT, rr as ownedSessionName } from "./budget-3ivAK99e.mjs";
8
+ import { d as runCancellationSignal, f as withNativeBuildRun, r as cancelledFailure, u as runCancellation } from "./native-run-Dv88i0aU.mjs";
9
9
  import { _t as parkedMaxSetting, dt as POOL_SETTING_REMEDY } from "./android-C7sVmyI9.mjs";
10
10
  import { i as createIosSimSnapshot } from "./ios-hcBpnEGk.mjs";
11
11
  import { d as optimizationBuildProfile, l as artifactCachePolicy } from "./errors-ccaPc4ox.mjs";
12
- import { t as COMPILATION_CACHE_NOT_RUN } from "./xcode-iQnROM5o.mjs";
13
- import { d as simulatorRuntime, h as setRemoteLogSink } from "./client-yyso1bwi.mjs";
12
+ import { t as COMPILATION_CACHE_NOT_RUN } from "./xcode-Rq744mBF.mjs";
13
+ import { d as simulatorRuntime, h as setRemoteLogSink } from "./client-B4MMzfo_.mjs";
14
14
  import { i as parseBuildMachineOption } from "./selection-DSMbWEX2.mjs";
15
15
  import { r as hostedMetroSettings } from "./metro-gateway-CKZqKqx7.mjs";
16
16
  import { i as writeDevicePlacement } from "./ios-state-Dtw5K2aI.mjs";
17
- import { r as siblingPlatformSlots, t as launchSlotScope } from "./slot-launch-D7M2nE4b.mjs";
18
- import { f as waitFlagConflict, o as leaseExpiryText } from "./device-lease-run-BgwPHc6u.mjs";
19
- import { _ as resolveIosWait, a as deviceModelRefusal, b as resolveSimulatorAppFlag, c as iosProjectPathError, d as ownedSimFailure, g as resolveIosBuildSetup, h as resolveDeviceType, i as deviceLabel, m as resolveConfiguration, n as buildLogFile, r as createIosDeviceWaitRun, u as isReleaseConfiguration, v as resolveRuntime, x as simulatorBuildArch, y as resolveSchemeSelection } from "./support-BTpZ6RAJ.mjs";
20
- import { r as isEasBuildFailure } from "./eas-build-CyjU5K7E.mjs";
21
- import { r as isPhysicalDeviceRequest, t as ensureDevServer } from "./native-runtime-CRSOZxKY.mjs";
22
- import "./dev-client-BnYSDiKa.mjs";
23
- import { t as didSetUpDevice } from "./device-CCkWmkAA.mjs";
17
+ import { r as siblingPlatformSlots, t as launchSlotScope } from "./slot-launch-B7AuoWJv.mjs";
18
+ import { f as waitFlagConflict, o as leaseExpiryText } from "./device-lease-run-DXPSwdbb.mjs";
19
+ import { _ as resolveIosWait, a as deviceModelRefusal, b as resolveSimulatorAppFlag, c as iosProjectPathError, d as ownedSimFailure, g as resolveIosBuildSetup, h as resolveDeviceType, i as deviceLabel, m as resolveConfiguration, n as buildLogFile, r as createIosDeviceWaitRun, u as isReleaseConfiguration, v as resolveRuntime, x as simulatorBuildArch, y as resolveSchemeSelection } from "./support-TWuQlHQo.mjs";
20
+ import { r as isEasBuildFailure } from "./eas-build-DMWSSvxq.mjs";
21
+ import { r as isPhysicalDeviceRequest, t as ensureDevServer } from "./native-runtime-DBRfY_PN.mjs";
22
+ import "./dev-client-BFxiDpkf.mjs";
23
+ import { t as didSetUpDevice } from "./device-CiNYxqp6.mjs";
24
24
  import { t as unsupportedPlan } from "./project-plan-BPwbLwQu.mjs";
25
- import { a as refusePlan, i as printPlan, n as planFlagRefusal } from "./build-plan-C8CIvRyi.mjs";
26
- import { a as lastBuildRecord, o as reportIosResult, s as writeLastBuild } from "./ios-project-CVyNwjAF.mjs";
27
- import { t as acquireIosArtifact } from "./artifact-Dwdo7k1E.mjs";
28
- import { a as hostedIosSelectors, i as hostedIosMetroNote, n as connectIosTarget, o as iosPlacementBudget, r as deviceRemoteConflict, s as selectIosPlacement, t as connectIosBackend } from "./remote-BmvMCcJw.mjs";
29
- import { a as iosPoolCandidates, c as isWirelessIosDevice, f as resolveIosPhysicalDevice, o as iosPoolNoCandidatesRefusal, r as iosDeviceBounds } from "./ios-device-JC3uWM4K.mjs";
30
- import { i as DEFAULT_DEPS, l as lanOriginUrlFor, s as chooseLanAddress, t as finishIosRun } from "./launch-CHY3p-yz.mjs";
25
+ import { a as refusePlan, i as printPlan, n as planFlagRefusal } from "./build-plan-BmbdHQbr.mjs";
26
+ import { a as lastBuildRecord, o as reportIosResult, s as writeLastBuild } from "./ios-project-CSZYI1iu.mjs";
27
+ import { t as acquireIosArtifact } from "./artifact-DBI3DALs.mjs";
28
+ import { a as hostedIosSelectors, i as hostedIosMetroNote, n as connectIosTarget, o as iosPlacementBudget, r as deviceRemoteConflict, s as selectIosPlacement, t as connectIosBackend } from "./remote-DR8qUERM.mjs";
29
+ import { a as iosPoolCandidates, c as isWirelessIosDevice, f as resolveIosPhysicalDevice, o as iosPoolNoCandidatesRefusal, r as iosDeviceBounds } from "./ios-device-DFGuwF4U.mjs";
30
+ import { i as DEFAULT_DEPS, l as lanOriginUrlFor, s as chooseLanAddress, t as finishIosRun } from "./launch-CP2wDCVd.mjs";
31
31
  import { basename, join } from "node:path";
32
32
  import { workspaceId } from "@stim-cli/core";
33
33
  import { hostedIosStatus, parseMachine } from "@stim-cli/core/state";
@@ -1,9 +1,9 @@
1
- import { h as shortUdid, i as formatDuration, l as phaseLine, m as shortHash } from "./command-output-Db8BqzxH.mjs";
2
- import { jn as schemesFromInfoPlist, kn as pickDevClientScheme } from "./budget-DnPX3DXj.mjs";
3
- import { f as podAction, h as resolveDeviceType, i as deviceLabel, m as resolveConfiguration, n as buildLogFile, s as iosConfigurationSetting, t as appNameFromPath, u as isReleaseConfiguration, v as resolveRuntime } from "./support-BTpZ6RAJ.mjs";
4
- import { n as ensureWorkspaceStorageSafely } from "./native-runtime-CRSOZxKY.mjs";
5
- import { t as devClientScheme } from "./dev-client-BnYSDiKa.mjs";
6
- import { a as lastBuildRecord, i as iosFacts, n as cacheDescription, s as writeLastBuild } from "./ios-project-CVyNwjAF.mjs";
7
- import { n as registerIos, r as runIosOperation, t as iosCommand } from "./ios-DZZbNYlY.mjs";
8
- import { a as collectorEntry, o as replaceCollector } from "./launch-CHY3p-yz.mjs";
1
+ import { h as shortUdid, i as formatDuration, l as phaseLine, m as shortHash } from "./command-output-YKGWivpG.mjs";
2
+ import { jn as schemesFromInfoPlist, kn as pickDevClientScheme } from "./budget-3ivAK99e.mjs";
3
+ import { f as podAction, h as resolveDeviceType, i as deviceLabel, m as resolveConfiguration, n as buildLogFile, s as iosConfigurationSetting, t as appNameFromPath, u as isReleaseConfiguration, v as resolveRuntime } from "./support-TWuQlHQo.mjs";
4
+ import { n as ensureWorkspaceStorageSafely } from "./native-runtime-DBRfY_PN.mjs";
5
+ import { t as devClientScheme } from "./dev-client-BFxiDpkf.mjs";
6
+ import { a as lastBuildRecord, i as iosFacts, n as cacheDescription, s as writeLastBuild } from "./ios-project-CSZYI1iu.mjs";
7
+ import { n as registerIos, r as runIosOperation, t as iosCommand } from "./ios-CWjqfSm_.mjs";
8
+ import { a as collectorEntry, o as replaceCollector } from "./launch-CP2wDCVd.mjs";
9
9
  export { appNameFromPath, buildLogFile, cacheDescription, collectorEntry, iosCommand as default, devClientScheme, deviceLabel, ensureWorkspaceStorageSafely, formatDuration, iosConfigurationSetting, iosFacts, isReleaseConfiguration, lastBuildRecord, phaseLine, pickDevClientScheme, podAction, registerIos, replaceCollector, resolveConfiguration, resolveDeviceType, resolveRuntime, runIosOperation, schemesFromInfoPlist, shortHash, shortUdid, writeLastBuild };
@@ -1,5 +1,5 @@
1
1
  import { t as getExecutor } from "./exec-DEoAhcze.mjs";
2
- import { ln as INSTALL_ERROR, pn as appProcessFromPid } from "./budget-DnPX3DXj.mjs";
2
+ import { ln as INSTALL_ERROR, pn as appProcessFromPid } from "./budget-3ivAK99e.mjs";
3
3
  import { n as TOOL_ERROR_PREFIX } from "./ios-device-BXZ0c7Kb.mjs";
4
4
  import { mkdtempSync, readFileSync, rmSync } from "node:fs";
5
5
  import { tmpdir } from "node:os";
@@ -1,9 +1,9 @@
1
1
  import { l as workspaceAgentDeviceDir } from "./paths-DQtTgsBf.mjs";
2
- import { i as formatDuration, l as phaseLine } from "./command-output-Db8BqzxH.mjs";
3
- import { B as recordFinishedBuild, Hn as isEasAuthFailureText, Rn as UPLOAD_TIMEOUT_MS, Vn as easAuthNote, zn as cacheLevel } from "./budget-DnPX3DXj.mjs";
2
+ import { i as formatDuration, l as phaseLine } from "./command-output-YKGWivpG.mjs";
3
+ import { B as recordFinishedBuild, Hn as isEasAuthFailureText, Rn as UPLOAD_TIMEOUT_MS, Vn as easAuthNote, zn as cacheLevel } from "./budget-3ivAK99e.mjs";
4
4
  import { a as workspaceLinkLine } from "./stim-desktop-D5OGpYZM.mjs";
5
- import { o as compilationCacheActivityLine, t as COMPILATION_CACHE_NOT_RUN } from "./xcode-iQnROM5o.mjs";
6
- import { i as deviceLabel } from "./support-BTpZ6RAJ.mjs";
5
+ import { o as compilationCacheActivityLine, t as COMPILATION_CACHE_NOT_RUN } from "./xcode-Rq744mBF.mjs";
6
+ import { i as deviceLabel } from "./support-TWuQlHQo.mjs";
7
7
  import { buildDiagnostics } from "@stim-cli/core/state";
8
8
  import chalk from "chalk";
9
9
  //#region src/commands/ios/result.ts
@@ -2,9 +2,9 @@ import { d as spawnDeclared, m as operationState, t as getExecutor } from "./exe
2
2
  import { r as waitForChild, t as createLineReader } from "./process-output-Fpl8PYi8.mjs";
3
3
  import { a as killOnAbort, f as throwIfCancelled, t as runOperationFile } from "./operation-exec-BW0em61G.mjs";
4
4
  import { Ht as makeTemporaryDirectory, Ut as removeTemporaryEntry } from "./settings-C7O8A6ZI.mjs";
5
- import { Xn as bundleInvocation } from "./budget-DnPX3DXj.mjs";
6
- import { t as cleanLine } from "./server-expo-D9lEz4aq.mjs";
7
- import { _ as tailLines, h as startBuildHeartbeat, r as HEARTBEAT_INTERVAL_MS } from "./xcode-iQnROM5o.mjs";
5
+ import { Xn as bundleInvocation } from "./budget-3ivAK99e.mjs";
6
+ import { t as cleanLine } from "./server-expo-BXrWxNYh.mjs";
7
+ import { _ as tailLines, h as startBuildHeartbeat, r as HEARTBEAT_INTERVAL_MS } from "./xcode-Rq744mBF.mjs";
8
8
  import { randomUUID } from "node:crypto";
9
9
  import { existsSync, mkdirSync, readFileSync, readdirSync, rmSync, writeFileSync } from "node:fs";
10
10
  import { basename, join } from "node:path";
@@ -1,44 +1,44 @@
1
1
  import { t as getExecutor } from "./exec-DEoAhcze.mjs";
2
2
  import { m as workspaceLogsDir } from "./paths-DQtTgsBf.mjs";
3
3
  import { B as deviceSlotFileKey, E as upsertProject, V as deviceSlotKey, p as getProject, u as getConcurrencyLimits, v as recordIosSchemeApprovals } from "./config-DlrsduwG.mjs";
4
- import { _ as stepTimer, c as launchErrorReport, i as formatDuration, l as phaseLine, n as appReadinessMessage, v as launchErrorPreview } from "./command-output-Db8BqzxH.mjs";
4
+ import { _ as stepTimer, c as launchErrorReport, i as formatDuration, l as phaseLine, n as appReadinessMessage, v as launchErrorPreview } from "./command-output-YKGWivpG.mjs";
5
5
  import { u as cancellableSleep } from "./operation-exec-BW0em61G.mjs";
6
6
  import { d as writeWorkspaceState, r as readWorkspaceState } from "./workspace-state-U08dEzhG.mjs";
7
7
  import { $ as settingOriginScope, G as resolveCacheProviderConfig, Ht as makeTemporaryDirectory, Nt as repoRootAsync, Ut as removeTemporaryEntry, Y as resolveSettings, ct as detectProviders, nt as settingsLayers, vt as gitCommonDirAsync } from "./settings-C7O8A6ZI.mjs";
8
- import { L as workspaceDevServerMode, f as projectRegistry, i as findProjectRoot, v as detectIsExpo, z as writeWorkspaceLaunch } from "./project-CTLNHCfE.mjs";
8
+ import { L as workspaceDevServerMode, f as projectRegistry, i as findProjectRoot, v as detectIsExpo, z as writeWorkspaceLaunch } from "./project-DhCtQWWU.mjs";
9
9
  import { r as createNdjsonWriter } from "./ndjson-CgE_o3Dl.mjs";
10
10
  import { c as pidExists, d as resolveProjectMetro, f as signalProcessTree } from "./metro-DiXtA3Ty.mjs";
11
- import { $t as readCollectorRecords, Bn as checkEasAuth, Bt as ensureMetroReachable, En as restartedAppNote, Gt as resolveRemoteContext, J as recordRunStats, Jn as resolveRemote, Jt as LAUNCH_FATAL, K as recordCapacityRefusal, Mn as readRemoteSimulatorArch, Nn as gateMetroOrigin, Qt as isBundleProof, Rt as bundleEntryPoint, Sn as iosAppProcess, Tn as launchIosApp, Un as loadProjectProvider, Vt as ensureRemoteBootOwned, W as readRunEstimates, Wt as remoteIosDeps, Xt as RELEASE_VERIFY_WAIT_MS, Yn as uploadRemote, Yt as LAUNCH_UNVERIFIED, an as verifyReleaseLaunch, en as readMetroRecords, hn as devClientUrl, in as verifyLaunch, mn as clearOtherUserApps, nn as unverifiedLaunchLines, qn as resolveEasCliBin, qt as LAUNCH_BUNDLING, t as budgetGate, tn as unattributedLaunchLines, un as IOS_DEV_MENU_OFF_DEFAULTS_PLIST, xn as installIosApp } from "./budget-DnPX3DXj.mjs";
12
- import { I as acquireBuildSlot, R as releaseBuildSlot } from "./workspaces-BxzYlo3P.mjs";
13
- import { F as waitForBuild, M as acquireBuildLock, P as releaseBuildLock } from "./activity-B5RtpFda.mjs";
11
+ import { $t as readCollectorRecords, Bn as checkEasAuth, Bt as ensureMetroReachable, En as restartedAppNote, Gt as resolveRemoteContext, J as recordRunStats, Jn as resolveRemote, Jt as LAUNCH_FATAL, K as recordCapacityRefusal, Mn as readRemoteSimulatorArch, Nn as gateMetroOrigin, Qt as isBundleProof, Rt as bundleEntryPoint, Sn as iosAppProcess, Tn as launchIosApp, Un as loadProjectProvider, Vt as ensureRemoteBootOwned, W as readRunEstimates, Wt as remoteIosDeps, Xt as RELEASE_VERIFY_WAIT_MS, Yn as uploadRemote, Yt as LAUNCH_UNVERIFIED, an as verifyReleaseLaunch, en as readMetroRecords, hn as devClientUrl, in as verifyLaunch, mn as clearOtherUserApps, nn as unverifiedLaunchLines, qn as resolveEasCliBin, qt as LAUNCH_BUNDLING, t as budgetGate, tn as unattributedLaunchLines, un as IOS_DEV_MENU_OFF_DEFAULTS_PLIST, xn as installIosApp } from "./budget-3ivAK99e.mjs";
12
+ import { I as acquireBuildSlot, R as releaseBuildSlot } from "./workspaces-e41xsjKr.mjs";
13
+ import { F as waitForBuild, M as acquireBuildLock, P as releaseBuildLock } from "./activity-BpWUPgUm.mjs";
14
14
  import { b as untrackedNativeFiles, g as storeBuild, h as resolveBuild, l as fingerprintProject } from "./build-cache-Dv7RN200.mjs";
15
15
  import { d as listAllIosSims, h as listIosRuntimesAsync, r as clearIosAppData } from "./ios-hcBpnEGk.mjs";
16
16
  import { o as workspaceLinks } from "./stim-desktop-D5OGpYZM.mjs";
17
- import { f as readBundleExecutable, m as resolveScheme, p as readBundleId } from "./xcode-iQnROM5o.mjs";
18
- import { h as readPodState, m as podsAreStale, v as runPodInstall } from "./toolchain-CWeGJgCc.mjs";
17
+ import { f as readBundleExecutable, m as resolveScheme, p as readBundleId } from "./xcode-Rq744mBF.mjs";
18
+ import { h as readPodState, m as podsAreStale, v as runPodInstall } from "./toolchain-B9hCFCQw.mjs";
19
19
  import { n as readHostedIos, o as writeHostedIos } from "./ios-state-Dtw5K2aI.mjs";
20
- import { n as prepareHostedIos, t as placeHostedIos } from "./hosted-ios-DtYHeuYR.mjs";
20
+ import { n as prepareHostedIos, t as placeHostedIos } from "./hosted-ios-y19jCYFF.mjs";
21
21
  import { n as verifyCollectorOwnership } from "./ownership-C5fo5Edb.mjs";
22
- import { n as nativeRunCommand, r as siblingPlatformSlots, t as launchSlotScope } from "./slot-launch-D7M2nE4b.mjs";
23
- import { c as startDevServer, g as detectBundleId } from "./start-bjfiScgz.mjs";
22
+ import { n as nativeRunCommand, r as siblingPlatformSlots, t as launchSlotScope } from "./slot-launch-B7AuoWJv.mjs";
23
+ import { c as startDevServer, g as detectBundleId } from "./start-CU8mCPC7.mjs";
24
24
  import { t as spawnEntry } from "./spawn-entry-jw19m8Nl.mjs";
25
- import { a as discoverXcodeProject, r as buildIos } from "./react-native-build-CmJkTljQ.mjs";
26
- import { a as acquireRunLease, c as lostRefusal, d as runLease, s as lostLine, t as DEBUG_VERIFY_STEP_MS, u as releaseLeaseOnAbort } from "./device-lease-run-BgwPHc6u.mjs";
27
- import { r as checkDeviceCapacity } from "./device-capacity-CjaSdrhg.mjs";
28
- import { n as clearIosAdoptionPending } from "./device-ios-uOiEETX2.mjs";
29
- import { i as deviceLabel, o as deviceShortName, t as appNameFromPath } from "./support-BTpZ6RAJ.mjs";
25
+ import { a as discoverXcodeProject, r as buildIos } from "./react-native-build-CelbTO_y.mjs";
26
+ import { a as acquireRunLease, c as lostRefusal, d as runLease, s as lostLine, t as DEBUG_VERIFY_STEP_MS, u as releaseLeaseOnAbort } from "./device-lease-run-DXPSwdbb.mjs";
27
+ import { r as checkDeviceCapacity } from "./device-capacity-DH0QsZYZ.mjs";
28
+ import { n as clearIosAdoptionPending } from "./device-ios-CbVDtDIy.mjs";
29
+ import { i as deviceLabel, o as deviceShortName, t as appNameFromPath } from "./support-TWuQlHQo.mjs";
30
30
  import { a as sealAppForDevice, r as gateProfileForDevice } from "./ios-signing-BtAffm0A.mjs";
31
- import { a as resolveEasDevelopmentBuild } from "./eas-build-CyjU5K7E.mjs";
32
- import { a as printNativeCrashReport, n as IOS_CRASH_REPORT_RETRY, o as simulatorConsolePaths, r as captureNativeCrashes, t as errorDiagnostics } from "./error-diagnostics-C6sVoeqO.mjs";
33
- import { i as launchOutcomeRecord, n as ensureWorkspaceStorageSafely } from "./native-runtime-CRSOZxKY.mjs";
34
- import { i as runPrebuild, n as planPrebuildAsync } from "./prebuild-BFm63bQ0.mjs";
35
- import { n as devClientTakesDevMenuParams, t as devClientScheme } from "./dev-client-BnYSDiKa.mjs";
36
- import { n as automaticDevicePlacement, t as checkEasFallback } from "./eas-fallback-DV3Wytf1.mjs";
37
- import { n as ensureBooted, o as warmMetro, r as ensureOwnedDevice } from "./device-CCkWmkAA.mjs";
38
- import { t as selectFromPool } from "./device-pool-C-ptmZTa.mjs";
39
- import { o as reportIosResult } from "./ios-project-CVyNwjAF.mjs";
40
- import { c as isWirelessIosDevice, i as iosDeviceProcess, l as listIosDevices, n as installIosDeviceApp, p as verifyIosDeviceReleaseLaunch, r as iosDeviceBounds, t as awaitIosDeviceLaunch, u as localNetworkPending } from "./ios-device-JC3uWM4K.mjs";
41
- import { i as swapJsBundle } from "./js-swap-C3QxUFJR.mjs";
31
+ import { a as resolveEasDevelopmentBuild } from "./eas-build-DMWSSvxq.mjs";
32
+ import { a as printNativeCrashReport, n as IOS_CRASH_REPORT_RETRY, o as simulatorConsolePaths, r as captureNativeCrashes, t as errorDiagnostics } from "./error-diagnostics-DYsjJIHz.mjs";
33
+ import { i as launchOutcomeRecord, n as ensureWorkspaceStorageSafely } from "./native-runtime-DBRfY_PN.mjs";
34
+ import { i as runPrebuild, n as planPrebuildAsync } from "./prebuild-BligW0QS.mjs";
35
+ import { n as devClientTakesDevMenuParams, t as devClientScheme } from "./dev-client-BFxiDpkf.mjs";
36
+ import { n as automaticDevicePlacement, t as checkEasFallback } from "./eas-fallback-vKlrqxgE.mjs";
37
+ import { n as ensureBooted, o as warmMetro, r as ensureOwnedDevice } from "./device-CiNYxqp6.mjs";
38
+ import { t as selectFromPool } from "./device-pool-B4iOXIrD.mjs";
39
+ import { o as reportIosResult } from "./ios-project-CSZYI1iu.mjs";
40
+ import { c as isWirelessIosDevice, i as iosDeviceProcess, l as listIosDevices, n as installIosDeviceApp, p as verifyIosDeviceReleaseLaunch, r as iosDeviceBounds, t as awaitIosDeviceLaunch, u as localNetworkPending } from "./ios-device-DFGuwF4U.mjs";
41
+ import { i as swapJsBundle } from "./js-swap-BSBHldmm.mjs";
42
42
  import { mkdirSync, openSync, writeFileSync } from "node:fs";
43
43
  import { networkInterfaces } from "node:os";
44
44
  import { basename, join } from "node:path";
@@ -1,21 +1,21 @@
1
1
  import { m as workspaceLogsDir } from "./paths-DQtTgsBf.mjs";
2
2
  import { B as deviceSlotFileKey, C as saveConfig, E as upsertProject, H as deviceSlotPlatforms, O as withConfigLockAsync, P as formatBytes, V as deviceSlotKey, _ as loadConfig, w as setDevice } from "./config-DlrsduwG.mjs";
3
- import { _ as stepTimer, c as launchErrorReport, i as formatDuration, l as phaseLine, n as appReadinessMessage, v as launchErrorPreview } from "./command-output-Db8BqzxH.mjs";
4
- import { L as workspaceDevServerMode } from "./project-CTLNHCfE.mjs";
3
+ import { _ as stepTimer, c as launchErrorReport, i as formatDuration, l as phaseLine, n as appReadinessMessage, v as launchErrorPreview } from "./command-output-YKGWivpG.mjs";
4
+ import { L as workspaceDevServerMode } from "./project-DhCtQWWU.mjs";
5
5
  import { c as pidExists, f as signalProcessTree } from "./metro-DiXtA3Ty.mjs";
6
- import { En as restartedAppNote, Jt as LAUNCH_FATAL, Xt as RELEASE_VERIFY_WAIT_MS, Yt as LAUNCH_UNVERIFIED, Zt as VERIFY_TIMEOUT_MS, bn as installConflictKind, dn as androidAppProcess, fn as androidDevClientUrl, nn as unverifiedLaunchLines, qt as LAUNCH_BUNDLING, sn as ADB_INSTALL_TIMEOUT_MS, tn as unattributedLaunchLines } from "./budget-DnPX3DXj.mjs";
7
- import { D as teardownOwnedAvd } from "./workspaces-BxzYlo3P.mjs";
6
+ import { En as restartedAppNote, Jt as LAUNCH_FATAL, Xt as RELEASE_VERIFY_WAIT_MS, Yt as LAUNCH_UNVERIFIED, Zt as VERIFY_TIMEOUT_MS, bn as installConflictKind, dn as androidAppProcess, fn as androidDevClientUrl, nn as unverifiedLaunchLines, qt as LAUNCH_BUNDLING, sn as ADB_INSTALL_TIMEOUT_MS, tn as unattributedLaunchLines } from "./budget-3ivAK99e.mjs";
7
+ import { D as teardownOwnedAvd } from "./workspaces-e41xsjKr.mjs";
8
8
  import { p as providerUploadOutcome } from "./build-cache-Dv7RN200.mjs";
9
9
  import { $ as resetAdoptedAvd, i as androidDataFreeBytes, it as trimAndroidCaches, u as androidToolCwd } from "./android-C7sVmyI9.mjs";
10
10
  import { o as workspaceLinks } from "./stim-desktop-D5OGpYZM.mjs";
11
11
  import { n as verifyCollectorOwnership, r as readCollectors } from "./ownership-C5fo5Edb.mjs";
12
- import { n as nativeRunCommand, r as siblingPlatformSlots, t as launchSlotScope } from "./slot-launch-D7M2nE4b.mjs";
12
+ import { n as nativeRunCommand, r as siblingPlatformSlots, t as launchSlotScope } from "./slot-launch-B7AuoWJv.mjs";
13
13
  import { t as spawnEntry } from "./spawn-entry-jw19m8Nl.mjs";
14
- import { c as lostRefusal, s as lostLine, t as DEBUG_VERIFY_STEP_MS } from "./device-lease-run-BgwPHc6u.mjs";
15
- import { a as printNativeCrashReport, r as captureNativeCrashes, t as errorDiagnostics } from "./error-diagnostics-C6sVoeqO.mjs";
16
- import { i as launchOutcomeRecord } from "./native-runtime-CRSOZxKY.mjs";
17
- import { a as PLATFORM, b as noDeviceDiagnostic, h as displayPath, n as LAUNCH_FAILED, r as NO_DEVICE, t as INSTALL_FAILED } from "./support-DTBV56gy.mjs";
18
- import { a as reportAndroidResult, i as persistLastBuild, n as finishAndroidUpload } from "./result-Cx5CRLvS.mjs";
14
+ import { c as lostRefusal, s as lostLine, t as DEBUG_VERIFY_STEP_MS } from "./device-lease-run-DXPSwdbb.mjs";
15
+ import { a as printNativeCrashReport, r as captureNativeCrashes, t as errorDiagnostics } from "./error-diagnostics-DYsjJIHz.mjs";
16
+ import { i as launchOutcomeRecord } from "./native-runtime-DBRfY_PN.mjs";
17
+ import { a as PLATFORM, b as noDeviceDiagnostic, h as displayPath, n as LAUNCH_FAILED, r as NO_DEVICE, t as INSTALL_FAILED } from "./support-CbXPbUMJ.mjs";
18
+ import { a as reportAndroidResult, i as persistLastBuild, n as finishAndroidUpload } from "./result-utnBea7x.mjs";
19
19
  import { mkdirSync, openSync, statSync } from "node:fs";
20
20
  import { basename, join } from "node:path";
21
21
  import { ambientEnv } from "@stim-cli/core";
@@ -1,11 +1,11 @@
1
1
  import { m as workspaceLogsDir$1 } from "./paths-DQtTgsBf.mjs";
2
2
  import { W as parseDeviceSlotOption, _ as loadConfig$1, g as isPathPrefix } from "./config-DlrsduwG.mjs";
3
- import { f as refuseNoProject, v as launchErrorPreview } from "./command-output-Db8BqzxH.mjs";
3
+ import { f as refuseNoProject, v as launchErrorPreview } from "./command-output-YKGWivpG.mjs";
4
4
  import { r as readWorkspaceState$1 } from "./workspace-state-U08dEzhG.mjs";
5
- import { n as findCommandWorkspace } from "./project-CTLNHCfE.mjs";
5
+ import { n as findCommandWorkspace } from "./project-DhCtQWWU.mjs";
6
6
  import { n as SOURCES$1, t as LEVELS$1 } from "./ndjson-CgE_o3Dl.mjs";
7
- import { a as followAgentActions, i as followHostedLogs, n as openWorkspaceLogs } from "./logs-mxqsWpJs.mjs";
8
- import { t as errorDiagnostics } from "./error-diagnostics-C6sVoeqO.mjs";
7
+ import { a as followAgentActions, i as followHostedLogs, n as openWorkspaceLogs } from "./logs-pNvA2hHK.mjs";
8
+ import { t as errorDiagnostics } from "./error-diagnostics-DYsjJIHz.mjs";
9
9
  import { t as watchStdoutReader } from "./stdout-reader-C8yjre1x.mjs";
10
10
  import { realpathSync } from "node:fs";
11
11
  import { relative, sep } from "node:path";
@@ -1,13 +1,13 @@
1
1
  import { g as process_identity_exports } from "./exec-DEoAhcze.mjs";
2
2
  import { m as workspaceLogsDir$1 } from "./paths-DQtTgsBf.mjs";
3
3
  import { G as projectDeviceSlots, _ as loadConfig$1 } from "./config-DlrsduwG.mjs";
4
- import { n as pullHostedNativeLogs, t as pullHostedMacosLogs } from "./hosted-logs-Br84qWy1.mjs";
5
- import { l as phaseLine } from "./command-output-Db8BqzxH.mjs";
6
- import { f as readAgentDeviceRecordsAsync, n as agentDeviceLiveness, o as envDir } from "./activity-B5RtpFda.mjs";
7
- import { l as connectHost } from "./hosted-client-ByuMMO5s.mjs";
4
+ import { n as pullHostedNativeLogs, t as pullHostedMacosLogs } from "./hosted-logs-DzJKzKlj.mjs";
5
+ import { l as phaseLine } from "./command-output-YKGWivpG.mjs";
6
+ import { f as readAgentDeviceRecordsAsync, n as agentDeviceLiveness, o as envDir } from "./activity-BpWUPgUm.mjs";
7
+ import { l as connectHost } from "./hosted-client-Bt-tndxV.mjs";
8
8
  import { n as readHostedIos, t as readHostedAndroid } from "./ios-state-Dtw5K2aI.mjs";
9
- import "./hosted-macos-DdtYajZt.mjs";
10
- import { i as captureWorkspaceCrashes } from "./error-diagnostics-C6sVoeqO.mjs";
9
+ import "./hosted-macos-BJusKvqL.mjs";
10
+ import { i as captureWorkspaceCrashes } from "./error-diagnostics-DYsjJIHz.mjs";
11
11
  import { readdirSync, statSync, watch } from "node:fs";
12
12
  import { homedir } from "node:os";
13
13
  import { dirname, join, relative, resolve, sep } from "node:path";
@@ -1,25 +1,25 @@
1
1
  import { d as spawnDeclared, h as withDrainingCancellation, i as withWorkspaceProcessLock, t as getExecutor } from "./exec-DEoAhcze.mjs";
2
2
  import { d as workspaceDir, l as workspaceAgentDeviceDir, m as workspaceLogsDir$1, n as ensureWorkspaceStorage } from "./paths-DQtTgsBf.mjs";
3
3
  import { E as upsertProject, u as getConcurrencyLimits } from "./config-DlrsduwG.mjs";
4
- import { l as phaseLine } from "./command-output-Db8BqzxH.mjs";
4
+ import { l as phaseLine } from "./command-output-YKGWivpG.mjs";
5
5
  import { f as throwIfCancelled } from "./operation-exec-BW0em61G.mjs";
6
6
  import { d as writeWorkspaceState, i as recordWorkspaceUse } from "./workspace-state-U08dEzhG.mjs";
7
7
  import { J as resolveProjectSettingsAsync, a as SETTING_SHAPE_REMEDY, et as settingShapeErrors } from "./settings-C7O8A6ZI.mjs";
8
- import { f as projectRegistry, i as findProjectRoot$1, s as ownedDeviceLabel } from "./project-CTLNHCfE.mjs";
8
+ import { f as projectRegistry, i as findProjectRoot$1, s as ownedDeviceLabel } from "./project-DhCtQWWU.mjs";
9
9
  import { i as macosProcess, n as macosDir, o as requiredMacosRecord, r as macosLogFile } from "./state-08I3hw3_.mjs";
10
10
  import { r as createNdjsonWriter } from "./ndjson-CgE_o3Dl.mjs";
11
- import { B as recordFinishedBuild, Fn as processContext, H as tapBuildLog, In as runProcessOperation, M as NO_BUILD_PROGRESS, V as startBuildProgress, z as recordBuildPhase } from "./budget-DnPX3DXj.mjs";
12
- import { d as runCancellationSignal, f as withNativeBuildRun } from "./native-run-BUTu8T7A.mjs";
13
- import { I as acquireBuildSlot, R as releaseBuildSlot } from "./workspaces-BxzYlo3P.mjs";
11
+ import { B as recordFinishedBuild, Fn as processContext, H as tapBuildLog, In as runProcessOperation, M as NO_BUILD_PROGRESS, V as startBuildProgress, z as recordBuildPhase } from "./budget-3ivAK99e.mjs";
12
+ import { d as runCancellationSignal, f as withNativeBuildRun } from "./native-run-Dv88i0aU.mjs";
13
+ import { I as acquireBuildSlot, R as releaseBuildSlot } from "./workspaces-e41xsjKr.mjs";
14
14
  import { D as sanitizeDeviceLabel } from "./ios-hcBpnEGk.mjs";
15
- import { c as offloadPlacement, h as setRemoteLogSink, i as closeOffload, l as placementLoad, n as buildPlacementCandidates, o as offloadBuild, r as chooseBuildMachine, u as remotePhaseText } from "./client-yyso1bwi.mjs";
15
+ import { c as offloadPlacement, h as setRemoteLogSink, i as closeOffload, l as placementLoad, n as buildPlacementCandidates, o as offloadBuild, r as chooseBuildMachine, u as remotePhaseText } from "./client-B4MMzfo_.mjs";
16
16
  import { a as requireLocalBuild, i as parseBuildMachineOption, r as namedBuildMachine, s as resolveBuildPlacement, t as OffloadRefusal } from "./selection-DSMbWEX2.mjs";
17
- import { l as connectHost } from "./hosted-client-ByuMMO5s.mjs";
18
- import { t as placeHostedMacos } from "./hosted-macos-DdtYajZt.mjs";
19
- import { r as stopMacosAppHeld, t as stopBundleInstances } from "./stop-DzLJc7Ei.mjs";
17
+ import { l as connectHost } from "./hosted-client-Bt-tndxV.mjs";
18
+ import { t as placeHostedMacos } from "./hosted-macos-BJusKvqL.mjs";
19
+ import { r as stopMacosAppHeld, t as stopBundleInstances } from "./stop-CR5689oB.mjs";
20
20
  import { t as spawnEntry } from "./spawn-entry-jw19m8Nl.mjs";
21
21
  import { t as buildPlacementRecord } from "./placement-log-BnGgJRRZ.mjs";
22
- import { t as reidentifyBundle } from "./stage-DKNM4ZPd.mjs";
22
+ import { t as reidentifyBundle } from "./stage-C4u17aES.mjs";
23
23
  import { t as validateMacosArtifactPlatform } from "./artifact-platform-CXcmX_j3.mjs";
24
24
  import { t as waitForMacosRegistration } from "./registration-BcRgF6Ox.mjs";
25
25
  import { createHash, randomUUID } from "node:crypto";
@@ -345,7 +345,7 @@ async function planMacos(context, root, buildMachineFlag) {
345
345
  if (selected.failure) throw Object.assign(new Error(selected.failure.message), selected.failure);
346
346
  const macos = settings.macos;
347
347
  if (!macos?.product || !macos.infoPlist) throw Object.assign(/* @__PURE__ */ new Error("Set macos.product and macos.infoPlist explicitly in .stim.json. See stim guide macos."), { code: "STIM_BAD_ARG" });
348
- const { swiftpmMacosProject } = await import("./swiftpm-macos-r_WSKlXr.mjs");
348
+ const { swiftpmMacosProject } = await import("./swiftpm-macos-DbwGCpZg.mjs");
349
349
  const recipe = await swiftpmMacosProject(root).prepare(context, settings);
350
350
  let identity = null;
351
351
  let cacheHit = false;
@@ -1,2 +1,2 @@
1
- import { n as runMacos, r as waitForLaunchServices, t as macosCommand } from "./macos-u0BoHKnO.mjs";
1
+ import { n as runMacos, r as waitForLaunchServices, t as macosCommand } from "./macos-C67FZ2ft.mjs";
2
2
  export { macosCommand as default, runMacos, waitForLaunchServices };
@@ -1,11 +1,11 @@
1
1
  import { P as formatBytes } from "./config-DlrsduwG.mjs";
2
- import { Tt as deviceSweepIsScoped, u as resolveBudget } from "./budget-DnPX3DXj.mjs";
2
+ import { Tt as deviceSweepIsScoped, u as resolveBudget } from "./budget-3ivAK99e.mjs";
3
3
  import { I as memoryCulpritAdvice, N as memoryCulpritsUnder } from "./ios-hcBpnEGk.mjs";
4
- import { v as maintenanceLogger } from "./client-yyso1bwi.mjs";
4
+ import { v as maintenanceLogger } from "./client-B4MMzfo_.mjs";
5
5
  import { t as resolveMaintenanceSettings } from "./settings-Djl-mpjX.mjs";
6
6
  import { t as relaunchWithLogFile } from "./detached-entry-BwNEtIrP.mjs";
7
- import { A as levelFloors, C as measureDisk, D as measureSizes, M as lowestFree, O as sizeScanDeferred, T as measurePressure, j as levelStillShort, k as diskPressureLevel } from "./worktree-8lqn_lBp.mjs";
8
- import { i as plannedMaintenance, m as measureOwnedDevices, n as diskRecovered, o as triggeringRoot, r as executeAction } from "./act-DG54PWtJ.mjs";
7
+ import { A as levelFloors, C as measureDisk, D as measureSizes, M as lowestFree, O as sizeScanDeferred, T as measurePressure, j as levelStillShort, k as diskPressureLevel } from "./worktree-B4Nj3EGS.mjs";
8
+ import { i as plannedMaintenance, m as measureOwnedDevices, n as diskRecovered, o as triggeringRoot, r as executeAction } from "./act-vxiMwdf5.mjs";
9
9
  import { r as due, t as capChildLog } from "./attempt-DW-mQqM7.mjs";
10
10
  import { releaseClaim, tryAcquireClaim } from "@stim-cli/core/ownership-claim";
11
11
  import { randomBytes } from "node:crypto";
@@ -3,18 +3,18 @@ import { d as workspaceDir, i as sharedBuildCache } from "./paths-DQtTgsBf.mjs";
3
3
  import { H as deviceSlotPlatforms, p as getProject, q as validateDeviceSlot } from "./config-DlrsduwG.mjs";
4
4
  import { tt as settingValueAt } from "./settings-C7O8A6ZI.mjs";
5
5
  import { r as register } from "./cache-manifest-DSeQjt-Q.mjs";
6
- import { Y as statsProjectKey } from "./budget-DnPX3DXj.mjs";
7
- import { d as runCancellationSignal } from "./native-run-BUTu8T7A.mjs";
6
+ import { Y as statsProjectKey } from "./budget-3ivAK99e.mjs";
7
+ import { d as runCancellationSignal } from "./native-run-Dv88i0aU.mjs";
8
8
  import { h as resolveBuild, o as entryDir, t as artifactIn } from "./build-cache-Dv7RN200.mjs";
9
9
  import { B as ownedAvdDeviceProfile, E as findBuildTool, I as listInstalledSystemImages, K as ownedAvdSystemImage, V as ownedAvdDirectory, X as pickDefaultSystemImage, l as androidSystemImageAbi, o as androidHome } from "./android-C7sVmyI9.mjs";
10
- import { o as resolveCcache } from "./ccache-RcAy92gH.mjs";
11
- import { r as androidToolchainAsync } from "./toolchain-CWeGJgCc.mjs";
10
+ import { o as resolveCcache } from "./ccache-CH2EWGPB.mjs";
11
+ import { r as androidToolchainAsync } from "./toolchain-B9hCFCQw.mjs";
12
12
  import { a as nativeGradleTransfer, t as gradleOffloadInputs } from "./native-gradle-inputs-Dnh84Zbd.mjs";
13
- import { d as buildGradle, l as androidSdkRefusal } from "./react-native-build-CmJkTljQ.mjs";
14
- import { l as skippedMissReason, o as explainBuildMiss } from "./prebuild-BFm63bQ0.mjs";
15
- import { c as resolveAndroidRunPlan } from "./result-Cx5CRLvS.mjs";
16
- import { n as androidProcessRuntime } from "./launch-Bz7JtaC4.mjs";
17
- import { n as planFlagRefusal, r as planPayload } from "./build-plan-C8CIvRyi.mjs";
13
+ import { d as buildGradle, l as androidSdkRefusal } from "./react-native-build-CelbTO_y.mjs";
14
+ import { l as skippedMissReason, o as explainBuildMiss } from "./prebuild-BligW0QS.mjs";
15
+ import { c as resolveAndroidRunPlan } from "./result-utnBea7x.mjs";
16
+ import { n as androidProcessRuntime } from "./launch-D-zq8SHG.mjs";
17
+ import { n as planFlagRefusal, r as planPayload } from "./build-plan-BmbdHQbr.mjs";
18
18
  import { a as nativeGradleWorkerArtifactIdentity, n as gradleArtifactInputs, r as nativeGradleArtifactSnapshot, t as NATIVE_GRADLE_CACHE_LIMIT } from "./native-gradle-artifact-inputs-DHFnmrVf.mjs";
19
19
  import { createHash } from "node:crypto";
20
20
  import { createReadStream, createWriteStream, existsSync, readFileSync, statSync } from "node:fs";
@@ -1,6 +1,6 @@
1
1
  import { i as withWorkspaceProcessLock, l as refuseDeclaredSpawns, m as operationState, p as isTermination, s as allowDeclaredSpawns, u as signalDeclaredSpawns, x as ownership_claim_exports } from "./exec-DEoAhcze.mjs";
2
2
  import { d as workspaceDir } from "./paths-DQtTgsBf.mjs";
3
- import { a as formatElapsed, l as phaseLine } from "./command-output-Db8BqzxH.mjs";
3
+ import { a as formatElapsed, l as phaseLine } from "./command-output-YKGWivpG.mjs";
4
4
  import { o as updateWorkspaceState, r as readWorkspaceState, t as clearWorkspaceStateKey } from "./workspace-state-U08dEzhG.mjs";
5
5
  import { t as canonicalPath } from "./paths-BsJMoPP2.mjs";
6
6
  import { existsSync, mkdirSync } from "node:fs";
@@ -1,10 +1,10 @@
1
1
  import { n as ensureWorkspaceStorage } from "./paths-DQtTgsBf.mjs";
2
- import { l as phaseLine } from "./command-output-Db8BqzxH.mjs";
2
+ import { l as phaseLine } from "./command-output-YKGWivpG.mjs";
3
3
  import { r as readWorkspaceState$1 } from "./workspace-state-U08dEzhG.mjs";
4
4
  import { j as metroPortSetting } from "./settings-C7O8A6ZI.mjs";
5
5
  import { d as resolveProjectMetro } from "./metro-DiXtA3Ty.mjs";
6
- import { Yt as LAUNCH_UNVERIFIED, qt as LAUNCH_BUNDLING } from "./budget-DnPX3DXj.mjs";
7
- import { c as startDevServer } from "./start-bjfiScgz.mjs";
6
+ import { Yt as LAUNCH_UNVERIFIED, qt as LAUNCH_BUNDLING } from "./budget-3ivAK99e.mjs";
7
+ import { c as startDevServer } from "./start-CU8mCPC7.mjs";
8
8
  import { readIdleStop } from "@stim-cli/core/state";
9
9
  import chalk from "chalk";
10
10
  //#region src/commands/native-runtime.ts
@@ -1,6 +1,6 @@
1
1
  import { d as workspaceDir, u as workspaceDerivedData } from "./paths-DQtTgsBf.mjs";
2
2
  import { a as killOnAbort, l as gitQuietAsync, r as childEnvironment } from "./operation-exec-BW0em61G.mjs";
3
- import { h as pbxString, m as pbxReferences } from "./project-CTLNHCfE.mjs";
3
+ import { h as pbxString, m as pbxReferences } from "./project-DhCtQWWU.mjs";
4
4
  import { n as fingerprintNativeInputs, t as NativeInputError } from "./native-inputs-TRTTTRxt.mjs";
5
5
  import { createHash } from "node:crypto";
6
6
  import { existsSync, readFileSync, realpathSync } from "node:fs";
@@ -1,22 +1,22 @@
1
1
  import { t as getExecutor } from "./exec-DEoAhcze.mjs";
2
2
  import { o as sharedCompilationCache } from "./paths-DQtTgsBf.mjs";
3
3
  import { G as resolveCacheProviderConfig, Nt as repoRootAsync, U as remoteIosSetting, et as settingShapeErrors } from "./settings-C7O8A6ZI.mjs";
4
- import { g as selectNativeXcodeProject, h as pbxString, p as NativeXcodeError } from "./project-CTLNHCfE.mjs";
4
+ import { g as selectNativeXcodeProject, h as pbxString, p as NativeXcodeError } from "./project-DhCtQWWU.mjs";
5
5
  import { r as register } from "./cache-manifest-DSeQjt-Q.mjs";
6
- import { Fn as processContext, Y as statsProjectKey } from "./budget-DnPX3DXj.mjs";
7
- import { d as runCancellationSignal } from "./native-run-BUTu8T7A.mjs";
6
+ import { Fn as processContext, Y as statsProjectKey } from "./budget-3ivAK99e.mjs";
7
+ import { d as runCancellationSignal } from "./native-run-Dv88i0aU.mjs";
8
8
  import { n as buildCacheKey, s as filesystemBuildCapability } from "./build-cache-Dv7RN200.mjs";
9
9
  import { l as artifactCachePolicy, p as resolveOptimizations } from "./errors-ccaPc4ox.mjs";
10
- import { a as buildXcode, l as parseSwiftVersion, r as HEARTBEAT_INTERVAL_MS, s as compilationCacheSettings, u as parseXcodeMajor } from "./xcode-iQnROM5o.mjs";
11
- import { a as nativeTransferRefusal } from "./client-yyso1bwi.mjs";
12
- import { _ as runCaptured, a as iosToolchainAsync, h as readPodState, m as podsAreStale, v as runPodInstall } from "./toolchain-CWeGJgCc.mjs";
13
- import { a as deviceModelRefusal, h as resolveDeviceType, m as resolveConfiguration, v as resolveRuntime, x as simulatorBuildArch, y as resolveSchemeSelection } from "./support-BTpZ6RAJ.mjs";
10
+ import { a as buildXcode, l as parseSwiftVersion, r as HEARTBEAT_INTERVAL_MS, s as compilationCacheSettings, u as parseXcodeMajor } from "./xcode-Rq744mBF.mjs";
11
+ import { a as nativeTransferRefusal } from "./client-B4MMzfo_.mjs";
12
+ import { _ as runCaptured, a as iosToolchainAsync, h as readPodState, m as podsAreStale, v as runPodInstall } from "./toolchain-B9hCFCQw.mjs";
13
+ import { a as deviceModelRefusal, h as resolveDeviceType, m as resolveConfiguration, v as resolveRuntime, x as simulatorBuildArch, y as resolveSchemeSelection } from "./support-TWuQlHQo.mjs";
14
14
  import { r as gateProfileForDevice } from "./ios-signing-BtAffm0A.mjs";
15
- import { l as skippedMissReason, o as explainBuildMiss } from "./prebuild-BFm63bQ0.mjs";
16
- import { n as planFlagRefusal, t as planCachedBuild } from "./build-plan-C8CIvRyi.mjs";
17
- import { t as IosRecipeRefusal } from "./ios-project-CVyNwjAF.mjs";
18
- import { i as DEFAULT_DEPS, r as iosProcessRuntime } from "./launch-CHY3p-yz.mjs";
19
- import { a as nativeXcodeSources, i as nativeXcodePackages, n as nativeXcodeInputSnapshot, t as nativeXcodeHasPackages } from "./native-xcode-inputs-G6rkkhxu.mjs";
15
+ import { l as skippedMissReason, o as explainBuildMiss } from "./prebuild-BligW0QS.mjs";
16
+ import { n as planFlagRefusal, t as planCachedBuild } from "./build-plan-BmbdHQbr.mjs";
17
+ import { t as IosRecipeRefusal } from "./ios-project-CSZYI1iu.mjs";
18
+ import { i as DEFAULT_DEPS, r as iosProcessRuntime } from "./launch-CP2wDCVd.mjs";
19
+ import { a as nativeXcodeSources, i as nativeXcodePackages, n as nativeXcodeInputSnapshot, t as nativeXcodeHasPackages } from "./native-xcode-inputs-CqViUh3r.mjs";
20
20
  import { existsSync } from "node:fs";
21
21
  import { join } from "node:path";
22
22
  //#region src/integrations/native-xcode-ios.ts
@@ -4,30 +4,31 @@ import { k as writeConfigSetting } from "./config-DlrsduwG.mjs";
4
4
  import { n as stripAnsi } from "./process-output-Fpl8PYi8.mjs";
5
5
  import { o as git, s as gitAsync } from "./operation-exec-BW0em61G.mjs";
6
6
  import { d as androidLayoutSetting, y as iosProjectDirSetting } from "./settings-C7O8A6ZI.mjs";
7
- import { f as projectRegistry, g as selectNativeXcodeProject } from "./project-CTLNHCfE.mjs";
7
+ import { f as projectRegistry, g as selectNativeXcodeProject } from "./project-DhCtQWWU.mjs";
8
8
  import { o as parseNdjsonText } from "./ndjson-CgE_o3Dl.mjs";
9
- import { Fn as processContext } from "./budget-DnPX3DXj.mjs";
9
+ import { Fn as processContext } from "./budget-3ivAK99e.mjs";
10
10
  import { l as fingerprintProject, m as refingerprintAfterMutation } from "./build-cache-Dv7RN200.mjs";
11
- import { n as CCACHE_UNAVAILABLE, o as resolveCcache } from "./ccache-RcAy92gH.mjs";
12
- import { _ as clearCorruptCompilationCache, f as reactNativeArtifactReceipt, g as COMPILATION_CACHE_CORRUPT, m as reactNativeBuildQuery, p as reactNativeArtifactToolchain } from "./client-yyso1bwi.mjs";
13
- import { f as workerToolchain, h as readPodState, i as availableIphone, m as podsAreStale, v as runPodInstall } from "./toolchain-CWeGJgCc.mjs";
11
+ import { _ as withProjectNode, g as unmetNodePin, h as projectNodeLine, m as pathNodeVersion } from "./server-expo-BXrWxNYh.mjs";
12
+ import { n as CCACHE_UNAVAILABLE, o as resolveCcache } from "./ccache-CH2EWGPB.mjs";
13
+ import { _ as clearCorruptCompilationCache, f as reactNativeArtifactReceipt, g as COMPILATION_CACHE_CORRUPT, m as reactNativeBuildQuery, p as reactNativeArtifactToolchain } from "./client-B4MMzfo_.mjs";
14
+ import { f as workerToolchain, h as readPodState, i as availableIphone, m as podsAreStale, v as runPodInstall } from "./toolchain-B9hCFCQw.mjs";
14
15
  import { n as fingerprintNativeInputs, r as manifestDigest } from "./native-inputs-TRTTTRxt.mjs";
15
16
  import { a as sourceManifest, o as verifyNativeTransfer } from "./native-source-Y0yLhFyQ.mjs";
16
17
  import { i as nativeGradleOutputs, n as gradleStateDirectories, o as validateGradleManifest, s as verifyGradleTransfer, t as gradleOffloadInputs } from "./native-gradle-inputs-Dnh84Zbd.mjs";
17
- import { n as buildAndroid, o as gradlewPath, r as buildIos, u as assembleTaskFor } from "./react-native-build-CmJkTljQ.mjs";
18
- import { f as podAction } from "./support-BTpZ6RAJ.mjs";
19
- import { i as runPrebuild, r as recordPrebuild, t as planPrebuild } from "./prebuild-BFm63bQ0.mjs";
20
- import { g as dumpApkManifest, p as apkPackage } from "./support-DTBV56gy.mjs";
21
- import { n as buildAndroidOperation, t as buildIosOperation } from "./build-CqufZFqy.mjs";
22
- import { i as stageBundle, n as resolveBundleExtras } from "./stage-DKNM4ZPd.mjs";
18
+ import { n as buildAndroid, o as gradlewPath, r as buildIos, u as assembleTaskFor } from "./react-native-build-CelbTO_y.mjs";
19
+ import { f as podAction } from "./support-TWuQlHQo.mjs";
20
+ import { i as runPrebuild, r as recordPrebuild, t as planPrebuild } from "./prebuild-BligW0QS.mjs";
21
+ import { g as dumpApkManifest, p as apkPackage } from "./support-CbXPbUMJ.mjs";
22
+ import { n as buildAndroidOperation, t as buildIosOperation } from "./build-Dv9s8Fz-.mjs";
23
+ import { i as stageBundle, n as resolveBundleExtras } from "./stage-C4u17aES.mjs";
23
24
  import { t as logLines } from "./run-DidHghD1.mjs";
24
- import { r as nativeXcodeMetadataDirectories } from "./native-xcode-inputs-G6rkkhxu.mjs";
25
+ import { r as nativeXcodeMetadataDirectories } from "./native-xcode-inputs-CqViUh3r.mjs";
25
26
  import { n as swiftpmArtifactInputs, r as swiftpmArtifactSnapshot, t as readSwiftpmArtifactToolchain } from "./swiftpm-artifact-inputs-DFcGsXDP.mjs";
26
27
  import { a as nativeGradleWorkerArtifactIdentity, i as nativeGradleArtifactSnapshotFromReceipt, o as nativeGradleWorkerScope } from "./native-gradle-artifact-inputs-DHFnmrVf.mjs";
27
28
  import { createHash } from "node:crypto";
28
29
  import { chmodSync, constants, copyFileSync, cpSync, createReadStream, createWriteStream, existsSync, lstatSync, mkdirSync, readFileSync, readdirSync, readlinkSync, realpathSync, renameSync, rmSync, statSync, symlinkSync, writeFileSync } from "node:fs";
29
30
  import { isDeepStrictEqual } from "node:util";
30
- import { basename, dirname, join, relative, resolve, sep } from "node:path";
31
+ import { basename, delimiter, dirname, join, relative, resolve, sep } from "node:path";
31
32
  import { dependencyInstall, withAmbientContext } from "@stim-cli/core";
32
33
  import { isJsonObject, windowsShortDir, windowsShortDirKey } from "@stim-cli/core/state";
33
34
  import { realpath } from "node:fs/promises";
@@ -484,9 +485,32 @@ async function materialize(job, src) {
484
485
  removed
485
486
  };
486
487
  }
488
+ /**
489
+ * Puts the Node that `root`, or the nearest directory above it in `src`, pins first on this worker's `PATH`, and
490
+ * reports which Node the build runs on.
491
+ */
492
+ function useProjectNode(root, src) {
493
+ const node = withProjectNode(root, process.env, { top: src });
494
+ if (node.pinned) process.env.PATH = node.env.PATH;
495
+ note("deps", node.pinned ? projectNodeLine(node.pinned) : `Node ${pathNodeVersion(process.env) ?? "unknown"} on PATH`);
496
+ }
497
+ /**
498
+ * Names the `node` first on this worker's `PATH` in `<iosDir>/.xcode.env.local`. React Native's `with-environment.sh`
499
+ * runs Xcode's script phases on that file's `NODE_BINARY`, and its CocoaPods setup writes the file only when it is
500
+ * missing, so a file left from an earlier job, or one recording a Homebrew Cellar path, would otherwise win.
501
+ */
502
+ function useXcodeNode(iosDir) {
503
+ const node = (process.env.PATH ?? "").split(delimiter).filter(Boolean).map((dir) => join(dir, "node")).find((path) => statSync(path, { throwIfNoEntry: false })?.isFile());
504
+ if (!node || !existsSync(iosDir)) return;
505
+ const file = join(iosDir, ".xcode.env.local");
506
+ const line = `export NODE_BINARY='${node.replaceAll("'", "'\\''")}'`;
507
+ const text = existsSync(file) ? readFileSync(file, "utf8") : "";
508
+ const next = /^export NODE_BINARY=.*$/m.test(text) ? text.replace(/^export NODE_BINARY=.*$/gm, () => line) : `${text}${text && !text.endsWith("\n") ? "\n" : ""}${line}\n`;
509
+ if (next !== text) writeFileSync(file, next);
510
+ }
487
511
  /** Installs JavaScript dependencies when the lockfile, or the install command, changed since the last install. */
488
512
  async function ensureDependencies(job, src) {
489
- const install = dependencyInstall(src, job.packageName);
513
+ const install = dependencyInstall(src, job.packageName, relative(src, realpathSync(join(src, job.project))));
490
514
  if (!install) return;
491
515
  const { command, args, digest, lockfile } = install;
492
516
  const marker = join(job.area, "dependencies");
@@ -672,10 +696,12 @@ async function build(job) {
672
696
  compiled = await workerOperation(root, (context) => compileMacos(context, job, root, log, time));
673
697
  if (!compiled.ok) return failed(compiled.code, compiled.message);
674
698
  } else {
699
+ useProjectNode(realRoot, realSrc);
700
+ const nodeFailed = (code, message) => failed(code, [message, unmetNodePin(realRoot, process.env, { top: realSrc })].filter(Boolean).join(" "));
675
701
  try {
676
702
  await time("depsMs", () => ensureDependencies(job, src));
677
703
  } catch (error) {
678
- return failed("deps-failed", error.message);
704
+ return nodeFailed("deps-failed", error.message);
679
705
  }
680
706
  const platform = job.platform;
681
707
  let iosProject;
@@ -710,10 +736,11 @@ async function build(job) {
710
736
  note("prebuild", plan === "generate" ? `generating ${platform}/` : `regenerating ${platform}/ with --clean`);
711
737
  recordPrebuild(realRoot, platform, null);
712
738
  const result = await time("prebuildMs", () => runPrebuild(realRoot, platform, log, { clean: plan === "regenerate" }));
713
- if (result?.failed) return failed("prebuild-failed", result.reason ?? "expo prebuild failed.");
739
+ if (result?.failed) return nodeFailed("prebuild-failed", result.reason ?? "expo prebuild failed.");
714
740
  mutations.push("prebuild");
715
741
  }
716
742
  if (platform === "ios") {
743
+ useXcodeNode(iosProject.dir);
717
744
  const podState = readPodState(realRoot, iosProject.dir);
718
745
  const pods = podAction(podState, podsAreStale(podState.lockText, podState.manifestText, podState.dir));
719
746
  if (pods.install) {
@@ -1,6 +1,6 @@
1
1
  import { d as hostingMachines } from "./selection-DSMbWEX2.mjs";
2
2
  import { r as readHostedNative } from "./ios-state-Dtw5K2aI.mjs";
3
- import { i as probeHost, n as automaticDevicePlacement } from "./eas-fallback-DV3Wytf1.mjs";
3
+ import { i as probeHost, n as automaticDevicePlacement } from "./eas-fallback-vKlrqxgE.mjs";
4
4
  import { automaticMachineEnabled } from "@stim-cli/core/state";
5
5
  //#region src/device-host/plan-placement.ts
6
6
  /**
@@ -1,5 +1,5 @@
1
1
  import { p as getProject } from "./config-DlrsduwG.mjs";
2
- import { n as findCommandWorkspace } from "./project-CTLNHCfE.mjs";
2
+ import { n as findCommandWorkspace } from "./project-DhCtQWWU.mjs";
3
3
  import { n as getNamedPort, t as clearNamedPorts } from "./named-ports-DkEzOfzO.mjs";
4
4
  //#region src/commands/ports.ts
5
5
  async function inProject(action) {
@@ -4,10 +4,10 @@ import { n as stripAnsi, r as waitForChild, t as createLineReader } from "./proc
4
4
  import { o as git, s as gitAsync } from "./operation-exec-BW0em61G.mjs";
5
5
  import { o as updateWorkspaceState, r as readWorkspaceState$1 } from "./workspace-state-U08dEzhG.mjs";
6
6
  import { yt as gitCommonDirOnDisk } from "./settings-C7O8A6ZI.mjs";
7
- import { v as detectIsExpo } from "./project-CTLNHCfE.mjs";
8
- import { Zn as remoteCliInvocation } from "./budget-DnPX3DXj.mjs";
7
+ import { v as detectIsExpo } from "./project-DhCtQWWU.mjs";
8
+ import { Zn as remoteCliInvocation } from "./budget-3ivAK99e.mjs";
9
9
  import { a as diffFingerprintSources, v as storedSources } from "./build-cache-Dv7RN200.mjs";
10
- import { i as expoBinRefusal, o as expoSdkMajor, r as expoBinPath } from "./server-expo-D9lEz4aq.mjs";
10
+ import { i as expoBinRefusal, o as expoSdkMajor, r as expoBinPath } from "./server-expo-BXrWxNYh.mjs";
11
11
  import { existsSync, realpathSync } from "node:fs";
12
12
  import { dirname, join, relative } from "node:path";
13
13
  import { ambientContext } from "@stim-cli/core";