stim 1.32.0 → 1.33.0

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 (169) hide show
  1. package/dist/{acquire-artifact-CI9fIokp.mjs → acquire-artifact-DTh_LxrE.mjs} +2 -2
  2. package/dist/{act-BfChMxcU.mjs → act-Cur4YKtK.mjs} +22 -22
  3. package/dist/{activity-yjH7Q3zn.mjs → activity-C8kBq9w0.mjs} +6 -6
  4. package/dist/{agent-device-usage-output-DO412bsG.mjs → agent-device-usage-output-BTRaK_up.mjs} +5 -5
  5. package/dist/{android-BeeC15Ve.mjs → android-B2DSKg-A.mjs} +2 -2
  6. package/dist/{android-BNm5A40S.mjs → android-BL-QqHjc.mjs} +87 -53
  7. package/dist/{android-D56S_GX3.mjs → android-D5mCdVl2.mjs} +5 -5
  8. package/dist/{android-DsEj2CCs.mjs → android-Iq0M2t2d.mjs} +27 -15
  9. package/dist/{android-cas-CbumHXIq.mjs → android-cas-Dhcjkys1.mjs} +4 -4
  10. package/dist/android-cas-compiler.mjs +1 -1
  11. package/dist/android-image-DFk26aY6.mjs +254 -0
  12. package/dist/{android-project-CCEQyYJK.d.mts → android-project-BDlPnfmL.d.mts} +1 -1
  13. package/dist/api.d.mts +2 -1
  14. package/dist/api.mjs +28 -28
  15. package/dist/{apk-signed-tail-B9Usseps.mjs → apk-signed-tail-CPpA-3vu.mjs} +2 -2
  16. package/dist/{artifact-C8Nvp07y.mjs → artifact-BMjubIP2.mjs} +13 -13
  17. package/dist/{artifact-k1x9Jrn0.mjs → artifact-BufzdGbT.mjs} +34 -21
  18. package/dist/{artifact-platform-BO2Uvk_A.mjs → artifact-platform-DqCWUieN.mjs} +1 -1
  19. package/dist/{auto-placement--nfdQ9rp.mjs → auto-placement-D7P98glJ.mjs} +11 -9
  20. package/dist/{browser-web-6RDAeH0z.mjs → browser-web-C74et-Nv.mjs} +15 -15
  21. package/dist/{build-VXX_dtl5.mjs → build-DFBGWOTc.mjs} +23 -23
  22. package/dist/{build-cache-BsKim4V7.mjs → build-cache-Cqj4FGnX.mjs} +20 -8
  23. package/dist/{build-plan-BK34X2iY.mjs → build-plan-T3Hi24ax.mjs} +7 -7
  24. package/dist/{cache-manifest-CfiEny4T.mjs → cache-manifest-8JX9S1QJ.mjs} +1 -1
  25. package/dist/cache-manifest.mjs +1 -1
  26. package/dist/{ccache-BrwGIxmV.mjs → ccache-BXtzEL6M.mjs} +34 -24
  27. package/dist/{cdp-C3svvXiE.mjs → cdp-C216kOAn.mjs} +1 -1
  28. package/dist/{chrome-DyDWurWG.mjs → chrome-C8sC5tdl.mjs} +1 -1
  29. package/dist/{cli-Jc7obreB.mjs → cli-B2YSjc9s.mjs} +20 -20
  30. package/dist/cli.mjs +1 -1
  31. package/dist/{client-lDmA-5jx.mjs → client-0_Mnfz0a.mjs} +29 -9
  32. package/dist/collector-run.mjs +7 -7
  33. package/dist/{command-output-CfPW1bKP.mjs → command-output-DWI9tGPU.mjs} +1 -1
  34. package/dist/{config-D5qNWJEP.mjs → config-BW0fAtoK.mjs} +256 -246
  35. package/dist/{dependencies-DkZ8681S.mjs → dependencies-CgvBZbXD.mjs} +39 -39
  36. package/dist/{dependency-state-DZVln1P9.mjs → dependency-state-mL5g4H6K.mjs} +2 -2
  37. package/dist/{detached-entry-BPlSaCwC.mjs → detached-entry-tfrgGVWb.mjs} +1 -1
  38. package/dist/{dev-client-eDZy6RoX.mjs → dev-client-ChsHwgrn.mjs} +2 -2
  39. package/dist/{device-CeIikWac.mjs → device-B0htCt2u.mjs} +13 -13
  40. package/dist/{device-CTozKhU0.mjs → device-DOehZpyx.mjs} +11 -11
  41. package/dist/{device-android-zgD9We85.mjs → device-android-B8TQP5AX.mjs} +10 -10
  42. package/dist/{device-capacity-Bki6B-7h.mjs → device-capacity-BAkETfIl.mjs} +9 -9
  43. package/dist/device-host-worker.mjs +58 -17
  44. package/dist/{device-ios-TE5ejeXx.mjs → device-ios-DFaYFdar.mjs} +9 -9
  45. package/dist/{device-lease-run-DeNGjJZM.mjs → device-lease-run-DpiCnRbZ.mjs} +5 -5
  46. package/dist/{device-pool-mjyUYaau.mjs → device-pool-DP4sCeCC.mjs} +3 -3
  47. package/dist/{device-provision-j_B7G0e6.mjs → device-provision-CnNOIxCF.mjs} +10 -10
  48. package/dist/{doctor-sSLtn-j1.mjs → doctor-9GrW5YSP.mjs} +30 -17
  49. package/dist/{doctor-CNZuvTSe.mjs → doctor-C6Xn96RS.mjs} +1 -1
  50. package/dist/{doctor-fingerprint-o7ZI9YLn.mjs → doctor-fingerprint-DqWvIhMb.mjs} +1 -1
  51. package/dist/doctor-fingerprint.mjs +1 -1
  52. package/dist/{doctor-BlrcoQ7B.mjs → doctor-nRLBoajo.mjs} +54 -25
  53. package/dist/{doctor-watchman-CCuboyj1.mjs → doctor-watchman-CDhpC3Oh.mjs} +5 -5
  54. package/dist/{eas-build-CaG-Sfs9.mjs → eas-build-CpJ4h9tG.mjs} +4 -4
  55. package/dist/{eas-fallback-BpX1lpco.mjs → eas-fallback-B3z5nL1g.mjs} +6 -6
  56. package/dist/{eas-session-ledger-B-nTfdfk.mjs → eas-session-ledger-Bspy-VJQ.mjs} +6 -6
  57. package/dist/{error-diagnostics-q56Im4D8.mjs → error-diagnostics-DoLGklYX.mjs} +10 -10
  58. package/dist/{exec-aULwtNly.mjs → exec-CGuDzt40.mjs} +103 -103
  59. package/dist/{gc-By2Kc-Ek.mjs → gc-BWoOp9q7.mjs} +2 -2
  60. package/dist/{gc-Dv6nb9nf.mjs → gc-DolXpMSB.mjs} +25 -54
  61. package/dist/{guide-CwpsGWTJ.mjs → guide-CmZB0GtP.mjs} +139 -44
  62. package/dist/{hosted-android-c5nPJA6S.mjs → hosted-android-ByG-ICuh.mjs} +4 -4
  63. package/dist/{hosted-client-Hs-fD4L3.mjs → hosted-client-D19Lv0tg.mjs} +6 -5
  64. package/dist/{hosted-logs-BteXG8rm.mjs → hosted-logs-D7anR6Dk.mjs} +7 -7
  65. package/dist/{hosted-logs-sync-B8bjLEMs.mjs → hosted-logs-sync-D182b1eJ.mjs} +5 -5
  66. package/dist/{hosted-macos-B4byscei.mjs → hosted-macos-D0DDQxvl.mjs} +6 -6
  67. package/dist/{hosted-native-Bh9IJ_t5.mjs → hosted-native-BzXIy97W.mjs} +14 -10
  68. package/dist/{idle-shutdown-BaeCo4ps.mjs → idle-shutdown-6i8CHoNq.mjs} +6 -6
  69. package/dist/{ios-D1XKSITX.mjs → ios-AdhPKXO3.mjs} +8 -8
  70. package/dist/{ios-CdAV4-1E.mjs → ios-BdZdNsAj.mjs} +6 -6
  71. package/dist/{ios-CsRVik64.mjs → ios-Qam0bT9n.mjs} +1 -1
  72. package/dist/{ios-D3oK9-O4.mjs → ios-dbXzjTxx.mjs} +28 -28
  73. package/dist/{ios-device-CiBA-er9.mjs → ios-device-DLdEDWJj.mjs} +1 -1
  74. package/dist/{ios-device-D7Gi3e1I.mjs → ios-device-DXbHZfFe.mjs} +3 -3
  75. package/dist/{ios-project-DDQlX_jX.mjs → ios-project-BzfLigfh.mjs} +7 -7
  76. package/dist/{ios-signing-BJzvDPfU.mjs → ios-signing-D-tSX1iF.mjs} +2 -2
  77. package/dist/{ios-state-BEIJRJ7P.mjs → ios-state-CWsBysyN.mjs} +1 -1
  78. package/dist/{js-swap-C8N5DXHl.mjs → js-swap-EDVOJmqx.mjs} +6 -6
  79. package/dist/{launch-DxpvL6il.mjs → launch-CKHpthsw.mjs} +20 -20
  80. package/dist/{lightened-Df6II_XI.mjs → lightened-Cv4ToJRX.mjs} +5 -5
  81. package/dist/{logs-zv3ge7c6.mjs → logs-DCQ3_tGS.mjs} +6 -6
  82. package/dist/{logs-CuWJWF88.mjs → logs-IagR9dWI.mjs} +7 -7
  83. package/dist/{macos-C6U-4Iip.mjs → macos-Ch7vuM-G.mjs} +22 -22
  84. package/dist/{macos-CbRZheLw.mjs → macos-pc0aVVbN.mjs} +1 -1
  85. package/dist/macos-run.mjs +1 -1
  86. package/dist/maintenance-run.mjs +6 -6
  87. package/dist/{metro-mKHEMO-a.mjs → metro-B5PVz0Wv.mjs} +4 -4
  88. package/dist/{metro-request-DODHNXCN.mjs → metro-request-2LmFpC1z.mjs} +2 -2
  89. package/dist/{named-ports-B0hCk2v-.mjs → named-ports-CA0nB9Yw.mjs} +3 -3
  90. package/dist/{native-android-9dVFqvTT.mjs → native-android-B3CEDq4R.mjs} +29 -19
  91. package/dist/{native-gradle-artifact-inputs-BlY97pt8.mjs → native-gradle-artifact-inputs-BLnO2hHR.mjs} +5 -5
  92. package/dist/{native-runtime-DQfxW5Au.mjs → native-runtime-e1OU8gEN.mjs} +6 -6
  93. package/dist/{native-source-D1AzWiuP.mjs → native-source-ChAGj7R1.mjs} +1 -1
  94. package/dist/{native-xcode-inputs-tDuUvSU8.mjs → native-xcode-inputs-DL3ETb8s.mjs} +3 -3
  95. package/dist/{native-xcode-ios-CG-PD-7g.mjs → native-xcode-ios-D4e8k2Jy.mjs} +17 -17
  96. package/dist/offload-worker.d.mts +3 -1
  97. package/dist/offload-worker.mjs +37 -23
  98. package/dist/{operation-exec-Dp4FuIGR.mjs → operation-exec-DKlBcKAL.mjs} +1 -1
  99. package/dist/{ownership-CCfiBfOP.mjs → ownership-hC7xvvxF.mjs} +3 -3
  100. package/dist/{page-CQJlcj3x.mjs → page-Dj8IqvGM.mjs} +2 -2
  101. package/dist/{phone-reverses-CnNwdz9A.mjs → phone-reverses-rvyxW1Fl.mjs} +4 -4
  102. package/dist/{placement-log-CRL0IY-k.mjs → placement-log-nnGnu8mo.mjs} +1 -1
  103. package/dist/{plan-placement-2imvnlWP.mjs → plan-placement-D3JD-T-K.mjs} +6 -6
  104. package/dist/{ports-CKktj5lV.mjs → ports-CZJJfJ8Q.mjs} +3 -3
  105. package/dist/{prebuild-CyNrUWgV.mjs → prebuild-Bhs7TTcz.mjs} +12 -12
  106. package/dist/{project-Crtcbfl0.mjs → project-DWEXiBA9.mjs} +16 -16
  107. package/dist/{pull-request-BzLmzAIQ.mjs → pull-request-BpMTNkMB.mjs} +2 -2
  108. package/dist/pull-requests.mjs +1 -1
  109. package/dist/{react-native-android-Cabe2YER.mjs → react-native-android-C6Y270GS.mjs} +37 -33
  110. package/dist/{react-native-build-DhWBUV_H.mjs → react-native-build-DaPfzf_e.mjs} +10 -10
  111. package/dist/{react-native-doctor-D-twmBon.mjs → react-native-doctor-DGMPxkPS.mjs} +6 -6
  112. package/dist/{react-native-ios-u_ley41B.mjs → react-native-ios-dX48_92n.mjs} +21 -17
  113. package/dist/{recordings-BWnIlhZH.mjs → recordings-AKZfsW2W.mjs} +1 -1
  114. package/dist/{registration-BwCe64PH.mjs → registration-DKjJGQ6p.mjs} +1 -1
  115. package/dist/{reload-f9hvEHE9.mjs → reload-BGwblBJ9.mjs} +1 -1
  116. package/dist/{reload-D2TpUlns.mjs → reload-DsOByDfy.mjs} +17 -17
  117. package/dist/{remote-BsBAjlD2.mjs → remote-D0uJZ76R.mjs} +9 -9
  118. package/dist/{result-EOsWV6sp.mjs → result-DuimMZKJ.mjs} +24 -20
  119. package/dist/{run-2CHAJ9Oj.mjs → run-N-BbRxnC.mjs} +2 -2
  120. package/dist/{selection-C4ZQz_ER.mjs → selection-xS50Mt0V.mjs} +5 -4
  121. package/dist/{server-bare-CFyVFZXJ.mjs → server-bare-BTlICuaX.mjs} +2 -2
  122. package/dist/{server-command-BMyKtnjH.mjs → server-command-BC0EgMfY.mjs} +5 -5
  123. package/dist/{server-expo-BLxcN2x2.mjs → server-expo-15RjL0ir.mjs} +3 -3
  124. package/dist/server-expo-gYIypb0-.mjs +2 -0
  125. package/dist/{settings-C6UTYW2K.mjs → settings-B5IBDfTx.mjs} +4 -4
  126. package/dist/{settings-jeS0WmUF.mjs → settings-CuP55ieT.mjs} +2 -2
  127. package/dist/{settings-payload-CrX933Xi.mjs → settings-payload-BIGGQ3or.mjs} +5 -5
  128. package/dist/{settings-write-DMcT23Kl.mjs → settings-write-D85j8mej.mjs} +6 -6
  129. package/dist/settings.schema.json +38 -0
  130. package/dist/{simslim-93xmPh-d.mjs → simslim-DKdJx0LL.mjs} +2 -2
  131. package/dist/{slot-launch-CSpQcFZw.mjs → slot-launch-D4oREwhx.mjs} +6 -6
  132. package/dist/{stage-Cf9uSM1a.mjs → stage-DKC6tDXu.mjs} +2 -2
  133. package/dist/{start-CLN_r9EG.mjs → start-BsEV4S-s.mjs} +12 -12
  134. package/dist/{start-CquYgzVf.mjs → start-DfPSLc__.mjs} +1 -1
  135. package/dist/{state-CM_HvvkS.mjs → state-CtmYTRWm.mjs} +4 -4
  136. package/dist/{state-CiflgxTP.mjs → state-DSOUqO-o.mjs} +2 -2
  137. package/dist/{stats-BVEZuSlg.mjs → stats-ByEUblPr.mjs} +5 -5
  138. package/dist/{stats-report-B86Cv7Uc.mjs → stats-report-BVRCqwWA.mjs} +1 -1
  139. package/dist/{status-D0ruTmPl.mjs → status-C6hLlDqW.mjs} +37 -28
  140. package/dist/{status-GQ-JqvRi.mjs → status-DTFhDnd1.mjs} +1 -1
  141. package/dist/{status-Bhdy07v0.mjs → status-FP1MH9qn.mjs} +1 -1
  142. package/dist/{status-watch-DSu_hhg6.mjs → status-watch-D8s823CZ.mjs} +5 -5
  143. package/dist/status-worker.mjs +1 -1
  144. package/dist/{stim-desktop-1XxET4S8.mjs → stim-desktop-_WTria-r.mjs} +2 -2
  145. package/dist/{stop-RZqER_Ww.mjs → stop-5LKfVv-0.mjs} +2 -2
  146. package/dist/{stop-W4DK8qZq.mjs → stop-BVI2-L7s.mjs} +16 -16
  147. package/dist/{stop-B616ZyTv.mjs → stop-CpTy6bod.mjs} +5 -5
  148. package/dist/supervisor-run.mjs +16 -16
  149. package/dist/{support-S_5nkkzs.mjs → support-CqyWfZZI.mjs} +18 -8
  150. package/dist/{support-NxnD8QXd.mjs → support-D8OH0z98.mjs} +9 -9
  151. package/dist/{swiftpm-artifact-inputs-yp8D5LE4.mjs → swiftpm-artifact-inputs-uq5oV7xR.mjs} +4 -4
  152. package/dist/{swiftpm-macos-Gtq9bNQb.mjs → swiftpm-macos-BuhqYB3n.mjs} +11 -11
  153. package/dist/{toolchain-B2bN8jEo.mjs → toolchain-D_jotUG7.mjs} +1 -1
  154. package/dist/{toolchain-Bnm8vUCV.mjs → toolchain-s5ZmG42Z.mjs} +25 -14
  155. package/dist/{trigger-CfnOfpDd.mjs → trigger-BtB4kbe0.mjs} +2 -2
  156. package/dist/trigger-D8B7QR0q.mjs +2 -0
  157. package/dist/{warm-progress-_aTMvkIH.mjs → warm-progress-q11Vdvhh.mjs} +6 -6
  158. package/dist/{web-BdWG8b5_.mjs → web-DwYCTFdh.mjs} +9 -9
  159. package/dist/web-cCfM8kwV.mjs +2 -0
  160. package/dist/web-run.mjs +8 -8
  161. package/dist/windows-report.mjs +1 -1
  162. package/dist/{workspace-state-3bF4TB8P.mjs → workspace-state-BdZ-QgmB.mjs} +3 -3
  163. package/dist/{workspaces-C59v9bpD.mjs → workspaces-B3ahAHZc.mjs} +14 -14
  164. package/dist/{worktree-CinoSsGy.mjs → worktree-BhsML6GV.mjs} +77 -31
  165. package/dist/{worktree-K9F50fD_.mjs → worktree-CrjsPIs2.mjs} +1 -1
  166. package/package.json +7 -7
  167. package/dist/server-expo-DwR3eD-a.mjs +0 -2
  168. package/dist/trigger-DBZ-GBrl.mjs +0 -2
  169. package/dist/web-DwuluWJt.mjs +0 -2
@@ -1,19 +1,19 @@
1
- import { D as ownership_claim_exports, E as debugLog, S as process_identity_exports, l as WorkspaceProcessCleanupError, u as withWorkspaceProcessLock } from "./exec-aULwtNly.mjs";
2
- import { E as workspaceDir, c as withWorkspaceStateLock, d as writeWorkspaceState, l as withWorkspaceStateLockAsync, n as clearWorkspaceStateKeys, r as readWorkspaceState$1, s as updateWorkspaceStateAsync } from "./workspace-state-3bF4TB8P.mjs";
3
- import { D as upsertProject, G as parseDeviceSlotOption, J as validateDeviceSlot, K as projectDeviceSlots, U as deviceSlotPlatforms, W as parseDeviceSlotKey, k as withConfigLockAsync$1, m as getProject, o as clearSupervisor } from "./config-D5qNWJEP.mjs";
4
- import { f as refuseNoProject, l as phaseLine, p as releasedLeaseFact, u as plural } from "./command-output-CfPW1bKP.mjs";
5
- import { A as clearWorkspaceLaunches, M as readMetroTunnel, O as clearManagedMetroTunnel, P as readRemoteSession, T as MODE_COMMAND, j as clearWorkspaceSupervisor, k as clearRemoteSession, n as findCommandWorkspace } from "./project-Crtcbfl0.mjs";
6
- import { t as macosAppPresent } from "./state-CiflgxTP.mjs";
7
- import { nt as removeOwnedEmulatorMetroReverses } from "./android-DsEj2CCs.mjs";
8
- import { a as listeningPidsAsync, c as pidExists, d as resolveProjectMetro, h as isMetroRunning, p as signalProcessTreeAsync, r as killMetroTreeAsync, u as processCwds } from "./metro-mKHEMO-a.mjs";
9
- import { D as requestDevServerStop, Ln as resolveEasCliBin, Ot as endRecordedSession, T as logVanishedSupervisor, k as withdrawDevServerStopRequest } from "./ccache-BrwGIxmV.mjs";
10
- import { C as stopTunnel, ht as teardownOwnedIosSim, mt as teardownOwnedBrowser, pt as teardownOwnedAvd, x as resolveSupervisorTarget } from "./workspaces-C59v9bpD.mjs";
11
- import { Q as NATIVE_RUN_WAIT_MS, Z as NATIVE_RUN_LOCK, at as requestNativeRunCancel, et as clearNativeRunCancel, it as nativeRunWaitNotice, nt as describeNativeRunHolder, rt as nativeRunHolder, tt as decideStopAction } from "./toolchain-Bnm8vUCV.mjs";
12
- import { O as releaseWorkspaceLeasesAsync, y as fileLeaseIo } from "./activity-yjH7Q3zn.mjs";
13
- import { i as stopHostedAndroid } from "./hosted-android-c5nPJA6S.mjs";
14
- import { a as stopHostedIos, n as removePhoneReverses } from "./phone-reverses-CnNwdz9A.mjs";
15
- import { r as stopMacosApp } from "./stop-B616ZyTv.mjs";
16
- import { n as verifyCollectorOwnership } from "./ownership-CCfiBfOP.mjs";
1
+ import { D as ownership_claim_exports, E as debugLog, T as process_identity_exports, f as WorkspaceProcessCleanupError, p as withWorkspaceProcessLock } from "./exec-CGuDzt40.mjs";
2
+ import { E as workspaceDir, c as withWorkspaceStateLock, d as writeWorkspaceState, l as withWorkspaceStateLockAsync, n as clearWorkspaceStateKeys, r as readWorkspaceState$1, s as updateWorkspaceStateAsync } from "./workspace-state-BdZ-QgmB.mjs";
3
+ import { f as refuseNoProject, l as phaseLine, p as releasedLeaseFact, u as plural } from "./command-output-DWI9tGPU.mjs";
4
+ import { D as upsertProject, _t as validateDeviceSlot, ft as deviceSlotPlatforms, ht as projectDeviceSlots, k as withConfigLockAsync$1, m as getProject, mt as parseDeviceSlotOption, o as clearSupervisor, pt as parseDeviceSlotKey } from "./config-BW0fAtoK.mjs";
5
+ import { A as clearWorkspaceLaunches, M as readMetroTunnel, O as clearManagedMetroTunnel, P as readRemoteSession, T as MODE_COMMAND, j as clearWorkspaceSupervisor, k as clearRemoteSession, n as findCommandWorkspace } from "./project-DWEXiBA9.mjs";
6
+ import { t as macosAppPresent } from "./state-DSOUqO-o.mjs";
7
+ import { nt as removeOwnedEmulatorMetroReverses } from "./android-Iq0M2t2d.mjs";
8
+ import { a as listeningPidsAsync, c as pidExists, d as resolveProjectMetro, h as isMetroRunning, p as signalProcessTreeAsync, r as killMetroTreeAsync, u as processCwds } from "./metro-B5PVz0Wv.mjs";
9
+ import { D as requestDevServerStop, Ln as resolveEasCliBin, Ot as endRecordedSession, T as logVanishedSupervisor, k as withdrawDevServerStopRequest } from "./ccache-BXtzEL6M.mjs";
10
+ import { C as stopTunnel, ht as teardownOwnedIosSim, mt as teardownOwnedBrowser, pt as teardownOwnedAvd, x as resolveSupervisorTarget } from "./workspaces-B3ahAHZc.mjs";
11
+ import { Q as NATIVE_RUN_WAIT_MS, Z as NATIVE_RUN_LOCK, at as requestNativeRunCancel, et as clearNativeRunCancel, it as nativeRunWaitNotice, nt as describeNativeRunHolder, rt as nativeRunHolder, tt as decideStopAction } from "./toolchain-s5ZmG42Z.mjs";
12
+ import { O as releaseWorkspaceLeasesAsync, y as fileLeaseIo } from "./activity-C8kBq9w0.mjs";
13
+ import { i as stopHostedAndroid } from "./hosted-android-ByG-ICuh.mjs";
14
+ import { a as stopHostedIos, n as removePhoneReverses } from "./phone-reverses-rvyxW1Fl.mjs";
15
+ import { r as stopMacosApp } from "./stop-CpTy6bod.mjs";
16
+ import { n as verifyCollectorOwnership } from "./ownership-hC7xvvxF.mjs";
17
17
  import { hostedAndroidDeviceName, hostedAndroidRecords, hostedIosRecords, hostedNativeRecords, isJsonObject, parseHostedNativePlacement } from "@stim-cli/core/state";
18
18
  import chalk from "chalk";
19
19
  //#region src/commands/stop.ts
@@ -1,8 +1,8 @@
1
- import { D as ownership_claim_exports, S as process_identity_exports, u as withWorkspaceProcessLock } from "./exec-aULwtNly.mjs";
2
- import { E as workspaceDir, d as writeWorkspaceState, l as withWorkspaceStateLockAsync } from "./workspace-state-3bF4TB8P.mjs";
3
- import { a as macosRuntimeClaim, o as requiredMacosRecord } from "./state-CiflgxTP.mjs";
4
- import { A as runningBundleInstancesAsync, j as runningInstancesInAsync, k as hostedBundleDirs } from "./workspaces-C59v9bpD.mjs";
5
- import { n as stopHostedMacos } from "./hosted-macos-B4byscei.mjs";
1
+ import { D as ownership_claim_exports, T as process_identity_exports, p as withWorkspaceProcessLock } from "./exec-CGuDzt40.mjs";
2
+ import { E as workspaceDir, d as writeWorkspaceState, l as withWorkspaceStateLockAsync } from "./workspace-state-BdZ-QgmB.mjs";
3
+ import { a as macosRuntimeClaim, o as requiredMacosRecord } from "./state-DSOUqO-o.mjs";
4
+ import { A as runningBundleInstancesAsync, j as runningInstancesInAsync, k as hostedBundleDirs } from "./workspaces-B3ahAHZc.mjs";
5
+ import { n as stopHostedMacos } from "./hosted-macos-D0DDQxvl.mjs";
6
6
  import { readMacosRecord } from "@stim-cli/core/state";
7
7
  //#region src/macos/stop.ts
8
8
  const APP_EXIT_MS = 5e3;
@@ -1,20 +1,20 @@
1
- import { S as process_identity_exports, u as withWorkspaceProcessLock } from "./exec-aULwtNly.mjs";
2
- import { c as withWorkspaceStateLock, d as writeWorkspaceState, j as workspaceStateFile$1, k as workspaceLogsDir$1, n as clearWorkspaceStateKeys, o as updateWorkspaceState, r as readWorkspaceState$1 } from "./workspace-state-3bF4TB8P.mjs";
3
- import { E as setSupervisor, K as projectDeviceSlots, W as parseDeviceSlotKey, at as parseMachine$1, m as getProject, o as clearSupervisor } from "./config-D5qNWJEP.mjs";
4
- import { $ as runnableMetroCommand, X as resolveProjectSettings } from "./settings-C6UTYW2K.mjs";
5
- import { D as clearExpoMetroTunnel, E as MODE_EXPO, N as readPidFile, R as writePidFile, T as MODE_COMMAND, d as nativeProjectIntegration, j as clearWorkspaceSupervisor, v as detectIsExpo, w as MODE_BARE } from "./project-Crtcbfl0.mjs";
6
- import { K as ownedAvdSerialResolver } from "./android-DsEj2CCs.mjs";
1
+ import { T as process_identity_exports, p as withWorkspaceProcessLock } from "./exec-CGuDzt40.mjs";
2
+ import { c as withWorkspaceStateLock, d as writeWorkspaceState, j as workspaceStateFile$1, k as workspaceLogsDir$1, n as clearWorkspaceStateKeys, o as updateWorkspaceState, r as readWorkspaceState$1 } from "./workspace-state-BdZ-QgmB.mjs";
3
+ import { E as setSupervisor, U as parseMachine$1, ht as projectDeviceSlots, m as getProject, o as clearSupervisor, pt as parseDeviceSlotKey } from "./config-BW0fAtoK.mjs";
4
+ import { $ as runnableMetroCommand, X as resolveProjectSettings } from "./settings-B5IBDfTx.mjs";
5
+ import { D as clearExpoMetroTunnel, E as MODE_EXPO, N as readPidFile, R as writePidFile, T as MODE_COMMAND, d as nativeProjectIntegration, j as clearWorkspaceSupervisor, v as detectIsExpo, w as MODE_BARE } from "./project-DWEXiBA9.mjs";
6
+ import { K as ownedAvdSerialResolver } from "./android-Iq0M2t2d.mjs";
7
7
  import { i as createNdjsonWriter } from "./ndjson-CrjIsGzw.mjs";
8
- import { C as devServerStopLevel, O as vanishedSupervisorMessage, w as devServerStopRecord, x as describeDevServerStop } from "./ccache-BrwGIxmV.mjs";
9
- import { d as parseWatchRoots, l as parseSubscriberNames, m as runWatchman, u as parseTriggerCount } from "./eas-session-ledger-B-nTfdfk.mjs";
10
- import { B as workspaceBuildInProgress, v as withIdleWorkspace } from "./workspaces-C59v9bpD.mjs";
11
- import { S as parseLease, _ as workspaceDeviceLastUseAt, b as leaseIsExpired, r as createActivityReader, v as deviceLeasePath, w as parseWorkspaceLeases } from "./activity-yjH7Q3zn.mjs";
8
+ import { C as devServerStopLevel, O as vanishedSupervisorMessage, w as devServerStopRecord, x as describeDevServerStop } from "./ccache-BXtzEL6M.mjs";
9
+ import { d as parseWatchRoots, l as parseSubscriberNames, m as runWatchman, u as parseTriggerCount } from "./eas-session-ledger-Bspy-VJQ.mjs";
10
+ import { B as workspaceBuildInProgress, v as withIdleWorkspace } from "./workspaces-B3ahAHZc.mjs";
11
+ import { S as parseLease, _ as workspaceDeviceLastUseAt, b as leaseIsExpired, r as createActivityReader, v as deviceLeasePath, w as parseWorkspaceLeases } from "./activity-C8kBq9w0.mjs";
12
12
  import { t as describeError } from "./errors-DHm_U5gv.mjs";
13
- import { d as hostConnector, p as probeHostedSession } from "./hosted-client-Hs-fD4L3.mjs";
14
- import { s as watchWorkspaceState, t as clearHostedMetro } from "./metro-request-DODHNXCN.mjs";
15
- import { t as relaunchWithLogFile } from "./detached-entry-BPlSaCwC.mjs";
16
- import { n as dueIdleDevices, r as shutDownIdleDevices } from "./idle-shutdown-BaeCo4ps.mjs";
17
- import { t as triggerMaintenance } from "./trigger-CfnOfpDd.mjs";
13
+ import { f as hostConnector, m as probeHostedSession } from "./hosted-client-D19Lv0tg.mjs";
14
+ import { s as watchWorkspaceState, t as clearHostedMetro } from "./metro-request-2LmFpC1z.mjs";
15
+ import { t as relaunchWithLogFile } from "./detached-entry-tfrgGVWb.mjs";
16
+ import { n as dueIdleDevices, r as shutDownIdleDevices } from "./idle-shutdown-6i8CHoNq.mjs";
17
+ import { t as triggerMaintenance } from "./trigger-BtB4kbe0.mjs";
18
18
  import { existsSync, readFileSync, realpathSync, statSync } from "node:fs";
19
19
  import { dirname, isAbsolute, join, resolve, sep } from "node:path";
20
20
  import { LOG_ROTATE_BYTES } from "@stim-cli/core";
@@ -894,7 +894,7 @@ async function runSupervisor({ root, port, tunnel = false, resetCache = false, i
894
894
  try {
895
895
  let start;
896
896
  if (command) {
897
- const startServer = startCommand ?? (await import("./server-command-BMyKtnjH.mjs")).startCommandServer;
897
+ const startServer = startCommand ?? (await import("./server-command-BC0EgMfY.mjs")).startCommandServer;
898
898
  start = (opts) => startServer({
899
899
  ...opts,
900
900
  command
@@ -1,9 +1,10 @@
1
- import { t as getExecutor } from "./exec-aULwtNly.mjs";
2
- import { a as killOnAbort } from "./operation-exec-Dp4FuIGR.mjs";
3
- import { D as extractEmulatorFailure, E as emulatorProbeSession, O as findBuildTool, Q as pickDefaultSystemImage, T as emulatorFailureRemedy, c as androidPoolNoCandidatesRefusal, et as profileNeedsFoldFeature, j as hostSystemImageArch, l as androidSystemImageAbi, o as androidHome, s as androidPoolCandidates, w as emulatorDiskSpaceRemedy } from "./android-DsEj2CCs.mjs";
4
- import { yn as pickDevClientScheme } from "./ccache-BrwGIxmV.mjs";
5
- import { m as unknownAndroidSystemImageRefusal, p as unknownAndroidDeviceProfileRefusal, u as layerNote } from "./device-capacity-Bki6B-7h.mjs";
6
- import { t as devClientScheme } from "./dev-client-eDZy6RoX.mjs";
1
+ import { t as getExecutor } from "./exec-CGuDzt40.mjs";
2
+ import { a as killOnAbort } from "./operation-exec-DKlBcKAL.mjs";
3
+ import { D as extractEmulatorFailure, E as emulatorProbeSession, O as findBuildTool, Q as pickDefaultSystemImage, T as emulatorFailureRemedy, c as androidPoolNoCandidatesRefusal, et as profileNeedsFoldFeature, j as hostSystemImageArch, l as androidSystemImageAbi, o as androidHome, s as androidPoolCandidates, w as emulatorDiskSpaceRemedy } from "./android-Iq0M2t2d.mjs";
4
+ import { yn as pickDevClientScheme } from "./ccache-BXtzEL6M.mjs";
5
+ import { m as unknownAndroidSystemImageRefusal, p as unknownAndroidDeviceProfileRefusal, u as layerNote } from "./device-capacity-BAkETfIl.mjs";
6
+ import { n as decideSystemImage } from "./android-image-DFk26aY6.mjs";
7
+ import { t as devClientScheme } from "./dev-client-ChsHwgrn.mjs";
7
8
  import { existsSync, readFileSync, readdirSync } from "node:fs";
8
9
  import { relative } from "node:path";
9
10
  //#region src/commands/android/support.ts
@@ -36,7 +37,7 @@ function remoteAvdFlagRefusal({ systemImageFlag, deviceProfileFlag, remoteBacken
36
37
  remedy: `Drop ${given} for a remote run. For a local owned emulator, drop --remote and unset android.remote with \`stim settings unset android.remote --scope <machine|workspace|repo|committed>\`.`
37
38
  };
38
39
  }
39
- function systemImageRefusal({ slot, flag, resolved, origin = null, physical, remoteBackend, listImages }) {
40
+ function systemImageRefusal({ slot, flag, resolved, origin = null, physical, remoteBackend, listImages, installImages }) {
40
41
  if (slot && slot !== "default" && remoteBackend) return {
41
42
  code: "STIM_BAD_ARG",
42
43
  message: "Named slots currently support local simulators and physical devices.",
@@ -61,7 +62,16 @@ function systemImageRefusal({ slot, flag, resolved, origin = null, physical, rem
61
62
  }
62
63
  const refusal = unknownAndroidSystemImageRefusal(resolved, images);
63
64
  if (!refusal) return null;
64
- const { message, remedy } = layerNote(refusal, "android.systemImage", flag, origin);
65
+ const decided = decideSystemImage({
66
+ requested: resolved,
67
+ installed: images,
68
+ policy: installImages
69
+ });
70
+ if (decided.kind !== "refuse") return null;
71
+ const { message, remedy } = layerNote({
72
+ message: refusal.message,
73
+ remedy: decided.remedy
74
+ }, "android.systemImage", flag, origin);
65
75
  return {
66
76
  code: "STIM_BAD_ARG",
67
77
  message,
@@ -1,13 +1,13 @@
1
- import { k as workspaceLogsDir } from "./workspace-state-3bF4TB8P.mjs";
2
- import { h as shortUdid, l as phaseLine } from "./command-output-CfPW1bKP.mjs";
3
- import { _ as inertSettingWarning, a as SETTING_SHAPE_REMEDY, b as iosProjectDirSetting, p as cacheProviderSettingError, rt as settingShapeErrors, st as unknownSettingKeys, x as iosProjectDirSettingError } from "./settings-C6UTYW2K.mjs";
4
- import { J as describeDiagnostic } from "./toolchain-Bnm8vUCV.mjs";
5
- import { P as parseIosSimulatorApp } from "./ios-CdAV4-1E.mjs";
1
+ import { k as workspaceLogsDir } from "./workspace-state-BdZ-QgmB.mjs";
2
+ import { h as shortUdid, l as phaseLine } from "./command-output-DWI9tGPU.mjs";
3
+ import { _ as inertSettingWarning, a as SETTING_SHAPE_REMEDY, b as iosProjectDirSetting, p as cacheProviderSettingError, rt as settingShapeErrors, st as unknownSettingKeys, x as iosProjectDirSettingError } from "./settings-B5IBDfTx.mjs";
4
+ import { J as describeDiagnostic } from "./toolchain-s5ZmG42Z.mjs";
5
+ import { P as parseIosSimulatorApp } from "./ios-BdZdNsAj.mjs";
6
6
  import { p as resolveOptimizations } from "./errors-DHm_U5gv.mjs";
7
- import { d as resolveBuildPlacement } from "./selection-C4ZQz_ER.mjs";
8
- import { l as parseDeviceWait } from "./device-lease-run-DeNGjJZM.mjs";
9
- import { g as unknownIosRuntimeRefusal, h as unknownIosDeviceTypeRefusal, t as DEFAULT_DEVICE_SLOT_WAIT_MS, u as layerNote } from "./device-capacity-Bki6B-7h.mjs";
10
- import { t as IosDeviceMismatchError } from "./device-ios-TE5ejeXx.mjs";
7
+ import { d as resolveBuildPlacement } from "./selection-xS50Mt0V.mjs";
8
+ import { l as parseDeviceWait } from "./device-lease-run-DpiCnRbZ.mjs";
9
+ import { g as unknownIosRuntimeRefusal, h as unknownIosDeviceTypeRefusal, t as DEFAULT_DEVICE_SLOT_WAIT_MS, u as layerNote } from "./device-capacity-BAkETfIl.mjs";
10
+ import { t as IosDeviceMismatchError } from "./device-ios-DFaYFdar.mjs";
11
11
  import { basename, join } from "node:path";
12
12
  import chalk from "chalk";
13
13
  function buildLogFile(root) {
@@ -1,8 +1,8 @@
1
- import { t as getExecutor } from "./exec-aULwtNly.mjs";
2
- import { s as gitAsync } from "./operation-exec-Dp4FuIGR.mjs";
3
- import { n as buildCacheKey } from "./build-cache-BsKim4V7.mjs";
1
+ import { t as getExecutor } from "./exec-CGuDzt40.mjs";
2
+ import { s as gitAsync } from "./operation-exec-DKlBcKAL.mjs";
3
+ import { n as buildCacheKey } from "./build-cache-Cqj4FGnX.mjs";
4
4
  import { n as fingerprintNativeInputs, r as manifestDigest } from "./native-inputs-TRTTTRxt.mjs";
5
- import { a as sourceManifest, r as nativeFileDigest } from "./native-source-D1AzWiuP.mjs";
5
+ import { a as sourceManifest, r as nativeFileDigest } from "./native-source-ChAGj7R1.mjs";
6
6
  import { createHash } from "node:crypto";
7
7
  import { join, relative, resolve, sep } from "node:path";
8
8
  import { isJsonObject } from "@stim-cli/core/state";
@@ -1,15 +1,15 @@
1
- import { T as trackReportResource, _ as spawnDeclared, t as getExecutor } from "./exec-aULwtNly.mjs";
2
- import { y as sharedBuildCache } from "./workspace-state-3bF4TB8P.mjs";
3
- import { J as resolveCacheProviderConfig, Vt as repoRootAsync, it as settingValueAt, z as projectSettingsContextAsync } from "./settings-C6UTYW2K.mjs";
4
- import { r as register } from "./cache-manifest-CfiEny4T.mjs";
5
- import { h as macosToolchainAsync, st as runCancellationSignal } from "./toolchain-Bnm8vUCV.mjs";
6
- import "./build-cache-BsKim4V7.mjs";
1
+ import { a as trackReportResource, b as spawnDeclared, t as getExecutor } from "./exec-CGuDzt40.mjs";
2
+ import { y as sharedBuildCache } from "./workspace-state-BdZ-QgmB.mjs";
3
+ import { J as resolveCacheProviderConfig, Vt as repoRootAsync, it as settingValueAt, z as projectSettingsContextAsync } from "./settings-B5IBDfTx.mjs";
4
+ import { r as register } from "./cache-manifest-8JX9S1QJ.mjs";
5
+ import { h as macosToolchainAsync, st as runCancellationSignal } from "./toolchain-s5ZmG42Z.mjs";
6
+ import "./build-cache-Cqj4FGnX.mjs";
7
7
  import { l as artifactCachePolicy, p as resolveOptimizations } from "./errors-DHm_U5gv.mjs";
8
- import { r as nativeFileDigest } from "./native-source-D1AzWiuP.mjs";
9
- import { a as validateInfoPlist, i as stageBundle, n as resolveBundleExtras, r as setBundleName, t as reidentifyBundle } from "./stage-Cf9uSM1a.mjs";
10
- import { t as validateMacosArtifactPlatform } from "./artifact-platform-BO2Uvk_A.mjs";
11
- import { t as logLines } from "./run-2CHAJ9Oj.mjs";
12
- import { n as swiftpmArtifactInputs, r as swiftpmArtifactSnapshot, t as readSwiftpmArtifactToolchain } from "./swiftpm-artifact-inputs-yp8D5LE4.mjs";
8
+ import { r as nativeFileDigest } from "./native-source-ChAGj7R1.mjs";
9
+ import { a as validateInfoPlist, i as stageBundle, n as resolveBundleExtras, r as setBundleName, t as reidentifyBundle } from "./stage-DKC6tDXu.mjs";
10
+ import { t as validateMacosArtifactPlatform } from "./artifact-platform-DqCWUieN.mjs";
11
+ import { t as logLines } from "./run-N-BbRxnC.mjs";
12
+ import { n as swiftpmArtifactInputs, r as swiftpmArtifactSnapshot, t as readSwiftpmArtifactToolchain } from "./swiftpm-artifact-inputs-uq5oV7xR.mjs";
13
13
  import { createHash } from "node:crypto";
14
14
  import { createReadStream, createWriteStream, existsSync, realpathSync } from "node:fs";
15
15
  import { tmpdir } from "node:os";
@@ -1,2 +1,2 @@
1
- import { h as macosToolchainAsync, m as macosToolchain } from "./toolchain-Bnm8vUCV.mjs";
1
+ import { h as macosToolchainAsync, m as macosToolchain } from "./toolchain-s5ZmG42Z.mjs";
2
2
  export { macosToolchain, macosToolchainAsync };
@@ -1,12 +1,12 @@
1
- import { D as ownership_claim_exports, _ as spawnDeclared, b as operationState, g as signalDeclaredSpawns, h as refuseDeclaredSpawns, m as declareSpawnsOn, p as allowDeclaredSpawns, t as getExecutor, u as withWorkspaceProcessLock, v as stopDeclaringSpawnsOn, y as isTermination } from "./exec-aULwtNly.mjs";
2
- import { E as workspaceDir, T as workspaceDerivedData, l as withWorkspaceStateLockAsync, o as updateWorkspaceState, r as readWorkspaceState$1, t as clearWorkspaceStateKey } from "./workspace-state-3bF4TB8P.mjs";
1
+ import { C as operationState, D as ownership_claim_exports, S as isTermination, _ as declareSpawnsOn, b as spawnDeclared, g as allowDeclaredSpawns, p as withWorkspaceProcessLock, t as getExecutor, v as refuseDeclaredSpawns, x as stopDeclaringSpawnsOn, y as signalDeclaredSpawns } from "./exec-CGuDzt40.mjs";
2
+ import { E as workspaceDir, T as workspaceDerivedData, l as withWorkspaceStateLockAsync, o as updateWorkspaceState, r as readWorkspaceState$1, t as clearWorkspaceStateKey } from "./workspace-state-BdZ-QgmB.mjs";
3
3
  import { n as stripAnsi, r as waitForChild, t as createLineReader } from "./process-output-Fpl8PYi8.mjs";
4
- import { a as formatElapsed, l as phaseLine } from "./command-output-CfPW1bKP.mjs";
5
- import { a as killOnAbort } from "./operation-exec-Dp4FuIGR.mjs";
6
- import { o as androidHome } from "./android-DsEj2CCs.mjs";
4
+ import { a as formatElapsed, l as phaseLine } from "./command-output-DWI9tGPU.mjs";
5
+ import { a as killOnAbort } from "./operation-exec-DKlBcKAL.mjs";
6
+ import { o as androidHome } from "./android-Iq0M2t2d.mjs";
7
7
  import { t as canonicalPath } from "./paths-BsJMoPP2.mjs";
8
8
  import { p as resolveOptimizations } from "./errors-DHm_U5gv.mjs";
9
- import { t as cleanLine } from "./server-expo-BLxcN2x2.mjs";
9
+ import { t as cleanLine } from "./server-expo-15RjL0ir.mjs";
10
10
  import { createRequire } from "node:module";
11
11
  import { createHash } from "node:crypto";
12
12
  import { existsSync, mkdirSync, mkdtempSync, readFileSync, readdirSync, realpathSync, rmSync, statSync, writeFileSync } from "node:fs";
@@ -2195,10 +2195,16 @@ function jdkInstall(major, os) {
2195
2195
  }
2196
2196
  function androidMismatches(local, requires, worker) {
2197
2197
  const out = [];
2198
- if ((!local.jdk || worker.jdk !== local.jdk) && !(local.jdk && worker.jdks?.includes(local.jdk))) out.push({
2198
+ if (!local.jdk) {
2199
+ if (!worker.jdk) out.push({
2200
+ code: "jdk",
2201
+ reason: "no JDK there",
2202
+ ...jdkInstall("17", worker.os)
2203
+ });
2204
+ } else if (worker.jdk !== local.jdk && !worker.jdks?.includes(local.jdk)) out.push({
2199
2205
  code: "jdk",
2200
- reason: `JDK ${worker.jdk ?? "none"} there, ${local.jdk ?? "none"} here`,
2201
- ...local.jdk && worker.jdks ? jdkInstall(local.jdk, worker.os) : {}
2206
+ reason: `JDK ${worker.jdk ?? "none"} there, ${local.jdk} here`,
2207
+ ...worker.jdks ? jdkInstall(local.jdk, worker.os) : {}
2202
2208
  });
2203
2209
  const sdk = worker.androidSdk;
2204
2210
  if (!sdk) return [...out, {
@@ -2249,8 +2255,8 @@ function cocoapodsDifference(target, worker) {
2249
2255
  }
2250
2256
  /**
2251
2257
  * What a build on the worker does beyond the match: the SDK packages it lacks and Gradle downloads on the first build,
2252
- * because its SDK licenses are accepted and the project allows the download. None of them stops the build. For iOS, the
2253
- * CocoaPods difference a named machine is sent the build despite.
2258
+ * because its SDK licenses are accepted and the project allows the download, and the JDK it builds on for a client with
2259
+ * none. None of them stops the build. For iOS, the CocoaPods difference a named machine is sent the build despite.
2254
2260
  */
2255
2261
  function toolchainNotes(target, worker) {
2256
2262
  if (target.platform === "ios") {
@@ -2260,14 +2266,19 @@ function toolchainNotes(target, worker) {
2260
2266
  reason: `${pods.reason}; its pod install runs anyway and a failure is reported`
2261
2267
  }] : [];
2262
2268
  }
2263
- if (target.platform !== "android" || !worker.androidSdk || !gradleDownloads(target.requires, worker)) return [];
2269
+ if (target.platform !== "android") return [];
2270
+ const jdk = !target.local.jdk && worker.jdk ? [{
2271
+ code: "jdk",
2272
+ reason: `this machine has no JDK, so the build runs on JDK ${worker.jdk} there`
2273
+ }] : [];
2274
+ if (!worker.androidSdk || !gradleDownloads(target.requires, worker)) return jdk;
2264
2275
  const sdkManager = sdkManagerPath(worker);
2265
- return sdkGaps(target.requires, worker.androidSdk).map((gap) => ({
2276
+ return [...jdk, ...sdkGaps(target.requires, worker.androidSdk).map((gap) => ({
2266
2277
  code: gap.code,
2267
2278
  reason: `${gap.label} is not installed there; Gradle downloads it on the first build${gap.size ? ` (${gap.size})` : ""}`,
2268
2279
  commands: [`${sdkManager} "${gap.id}"`],
2269
2280
  lead: "install the package now so the first build does not download it"
2270
- }));
2281
+ }))];
2271
2282
  }
2272
2283
  function versionMismatch(tool, there, here) {
2273
2284
  const side = (version) => version ? version.startsWith(tool) ? version : `${tool} ${version}` : `no ${tool}`;
@@ -1,7 +1,7 @@
1
- import { t as getExecutor } from "./exec-aULwtNly.mjs";
1
+ import { t as getExecutor } from "./exec-CGuDzt40.mjs";
2
2
  import { t as resolveMaintenanceSettings } from "./settings-D9LtQaUw.mjs";
3
3
  import { t as spawnEntry } from "./spawn-entry-jw19m8Nl.mjs";
4
- import { n as windowsLauncherArgs } from "./detached-entry-BPlSaCwC.mjs";
4
+ import { n as windowsLauncherArgs } from "./detached-entry-tfrgGVWb.mjs";
5
5
  import { n as stampAttempt, r as due, t as capChildLog } from "./attempt-ClyJlZPT.mjs";
6
6
  import { readClaimSet } from "@stim-cli/core/ownership-claim";
7
7
  import { closeSync, openSync } from "node:fs";
@@ -0,0 +1,2 @@
1
+ import { t as triggerMaintenance } from "./trigger-BtB4kbe0.mjs";
2
+ export { triggerMaintenance };
@@ -1,9 +1,9 @@
1
- import { D as ownership_claim_exports, E as debugLog, l as WorkspaceProcessCleanupError, n as isTimeoutError, t as getExecutor } from "./exec-aULwtNly.mjs";
2
- import { E as workspaceDir, M as withDirLock, _ as ensureWorkspaceStorage, h as discoverAgentSessions, m as attributeAgentSessions, o as updateWorkspaceState, p as agentKey } from "./workspace-state-3bF4TB8P.mjs";
3
- import { l as gitQuietAsync, o as git$1, s as gitAsync } from "./operation-exec-Dp4FuIGR.mjs";
4
- import { Ct as gitCommonDirOnDisk, Ot as linkedWorktreesOnDisk } from "./settings-C6UTYW2K.mjs";
5
- import { U as ownedAvdDirectory } from "./android-DsEj2CCs.mjs";
6
- import { s as pullRequestLookups } from "./pull-request-BzLmzAIQ.mjs";
1
+ import { D as ownership_claim_exports, E as debugLog, f as WorkspaceProcessCleanupError, n as isTimeoutError, t as getExecutor } from "./exec-CGuDzt40.mjs";
2
+ import { E as workspaceDir, M as withDirLock, _ as ensureWorkspaceStorage, h as discoverAgentSessions, m as attributeAgentSessions, o as updateWorkspaceState, p as agentKey } from "./workspace-state-BdZ-QgmB.mjs";
3
+ import { l as gitQuietAsync, o as git$1, s as gitAsync } from "./operation-exec-DKlBcKAL.mjs";
4
+ import { Ct as gitCommonDirOnDisk, Ot as linkedWorktreesOnDisk } from "./settings-B5IBDfTx.mjs";
5
+ import { U as ownedAvdDirectory } from "./android-Iq0M2t2d.mjs";
6
+ import { s as pullRequestLookups } from "./pull-request-BpMTNkMB.mjs";
7
7
  import { clearClaimChild, markClaimChildPending, releaseClaim, setClaimChild, tryAcquireClaim } from "@stim-cli/core/ownership-claim";
8
8
  import { randomUUID } from "node:crypto";
9
9
  import { existsSync, mkdirSync, readdirSync, realpathSync, renameSync, rmSync, statSync, writeFileSync } from "node:fs";
@@ -1,12 +1,12 @@
1
- import { i as recordWorkspaceUse, k as workspaceLogsDir } from "./workspace-state-3bF4TB8P.mjs";
2
- import { D as upsertProject, k as withConfigLockAsync, m as getProject } from "./config-D5qNWJEP.mjs";
3
- import { f as refuseNoProject, l as phaseLine } from "./command-output-CfPW1bKP.mjs";
4
- import { Z as resolveProjectSettingsAsync, a as SETTING_SHAPE_REMEDY, rt as settingShapeErrors } from "./settings-C6UTYW2K.mjs";
5
- import { f as projectRegistry, n as findCommandWorkspace } from "./project-Crtcbfl0.mjs";
6
- import { a as workspaceLinkLine, o as workspaceLinks } from "./stim-desktop-1XxET4S8.mjs";
7
- import { o as readWebRecord, r as cdpEndpoint } from "./state-CM_HvvkS.mjs";
8
- import { t as liveWebRecord } from "./page-CQJlcj3x.mjs";
9
- import { n as ensureWorkspaceStorageSafely } from "./native-runtime-DQfxW5Au.mjs";
1
+ import { i as recordWorkspaceUse, k as workspaceLogsDir } from "./workspace-state-BdZ-QgmB.mjs";
2
+ import { f as refuseNoProject, l as phaseLine } from "./command-output-DWI9tGPU.mjs";
3
+ import { D as upsertProject, k as withConfigLockAsync, m as getProject } from "./config-BW0fAtoK.mjs";
4
+ import { Z as resolveProjectSettingsAsync, a as SETTING_SHAPE_REMEDY, rt as settingShapeErrors } from "./settings-B5IBDfTx.mjs";
5
+ import { f as projectRegistry, n as findCommandWorkspace } from "./project-DWEXiBA9.mjs";
6
+ import { a as workspaceLinkLine, o as workspaceLinks } from "./stim-desktop-_WTria-r.mjs";
7
+ import { o as readWebRecord, r as cdpEndpoint } from "./state-CtmYTRWm.mjs";
8
+ import { t as liveWebRecord } from "./page-Dj8IqvGM.mjs";
9
+ import { n as ensureWorkspaceStorageSafely } from "./native-runtime-e1OU8gEN.mjs";
10
10
  import chalk from "chalk";
11
11
  //#region src/commands/web.ts
12
12
  const printNote = (line) => console.error(line);
@@ -0,0 +1,2 @@
1
+ import { n as webCommand, t as runWeb } from "./web-DwYCTFdh.mjs";
2
+ export { webCommand as default, runWeb };
package/dist/web-run.mjs CHANGED
@@ -1,12 +1,12 @@
1
- import { D as ownership_claim_exports, S as process_identity_exports, o as cancellableSleep, t as getExecutor } from "./exec-aULwtNly.mjs";
2
- import { Dt as recordCreatedDevice } from "./android-DsEj2CCs.mjs";
3
- import { f as signalProcessTree } from "./metro-mKHEMO-a.mjs";
1
+ import { D as ownership_claim_exports, T as process_identity_exports, l as cancellableSleep, t as getExecutor } from "./exec-CGuDzt40.mjs";
2
+ import { Dt as recordCreatedDevice } from "./android-Iq0M2t2d.mjs";
3
+ import { f as signalProcessTree } from "./metro-B5PVz0Wv.mjs";
4
4
  import { i as createNdjsonWriter } from "./ndjson-CrjIsGzw.mjs";
5
- import { c as webClaimRoot, f as webLogFile, g as chromeProcessState, h as writeWebRecord, i as clearWebRecord, l as webDir, n as browserLogFile, p as webProfileDir, s as updateWebRecord, v as liveProfileHolder, y as removeSingletonFiles } from "./state-CM_HvvkS.mjs";
6
- import { l as probeWebDrivers } from "./activity-yjH7Q3zn.mjs";
7
- import { t as connectOwnedBrowser } from "./cdp-C3svvXiE.mjs";
8
- import { t as relaunchWithLogFile } from "./detached-entry-BPlSaCwC.mjs";
9
- import { i as chromeArgs, n as DESKTOP_PAGE, r as PHONE_SCREEN } from "./chrome-DyDWurWG.mjs";
5
+ import { c as webClaimRoot, f as webLogFile, g as chromeProcessState, h as writeWebRecord, i as clearWebRecord, l as webDir, n as browserLogFile, p as webProfileDir, s as updateWebRecord, v as liveProfileHolder, y as removeSingletonFiles } from "./state-CtmYTRWm.mjs";
6
+ import { l as probeWebDrivers } from "./activity-C8kBq9w0.mjs";
7
+ import { t as connectOwnedBrowser } from "./cdp-C216kOAn.mjs";
8
+ import { t as relaunchWithLogFile } from "./detached-entry-tfrgGVWb.mjs";
9
+ import { i as chromeArgs, n as DESKTOP_PAGE, r as PHONE_SCREEN } from "./chrome-C8sC5tdl.mjs";
10
10
  import { existsSync, mkdirSync, openSync, realpathSync } from "node:fs";
11
11
  import { isAbsolute, resolve } from "node:path";
12
12
  import { LOG_ROTATE_BYTES } from "@stim-cli/core";
@@ -1,4 +1,4 @@
1
- import { t as getExecutor } from "./exec-aULwtNly.mjs";
1
+ import { t as getExecutor } from "./exec-CGuDzt40.mjs";
2
2
  import { writeFileSync } from "node:fs";
3
3
  //#region bin/windows-report.ts
4
4
  const request = JSON.parse(process.env.STIM_REPORT_CHILD ?? "");
@@ -1,6 +1,6 @@
1
- import { S as process_identity_exports, t as getExecutor } from "./exec-aULwtNly.mjs";
2
- import { A as writeConfigSetting, h as getProjectSettings, j as writeConfigSettingAsync } from "./config-D5qNWJEP.mjs";
3
- import { lt as workspaceHiddenSetting } from "./settings-C6UTYW2K.mjs";
1
+ import { T as process_identity_exports, t as getExecutor } from "./exec-CGuDzt40.mjs";
2
+ import { A as writeConfigSetting, h as getProjectSettings, j as writeConfigSettingAsync } from "./config-BW0fAtoK.mjs";
3
+ import { lt as workspaceHiddenSetting } from "./settings-B5IBDfTx.mjs";
4
4
  import { existsSync, mkdirSync, readFileSync, realpathSync, renameSync, rmSync, writeFileSync } from "node:fs";
5
5
  import { homedir } from "node:os";
6
6
  import { dirname, isAbsolute, join, relative } from "node:path";
@@ -1,18 +1,18 @@
1
- import { D as ownership_claim_exports, S as process_identity_exports, b as operationState, c as throwIfCancelled, d as workspaceProcessLockError, f as workspaceProcessLockPath, l as WorkspaceProcessCleanupError, m as declareSpawnsOn, o as cancellableSleep, t as getExecutor, u as withWorkspaceProcessLock, v as stopDeclaringSpawnsOn } from "./exec-aULwtNly.mjs";
2
- import { A as workspaceName$1, E as workspaceDir, l as withWorkspaceStateLockAsync, o as updateWorkspaceState, r as readWorkspaceState$1, t as clearWorkspaceStateKey, u as workspaceLastUsed, w as workspaceAgentDeviceDir } from "./workspace-state-3bF4TB8P.mjs";
3
- import { F as formatBytes, I as isOnMountedVolume, K as projectDeviceSlots, L as listMountedVolumes, M as acquireAvdClaim, O as withConfigLock$1, R as measuredDirectorySizeAsync, U as deviceSlotPlatforms, _ as isPathPrefix$1, d as getConfigDir, k as withConfigLockAsync$1, m as getProject, v as loadConfig$1 } from "./config-D5qNWJEP.mjs";
1
+ import { C as operationState, D as ownership_claim_exports, T as process_identity_exports, _ as declareSpawnsOn, d as throwIfCancelled, f as WorkspaceProcessCleanupError, h as workspaceProcessLockPath, l as cancellableSleep, m as workspaceProcessLockError, p as withWorkspaceProcessLock, t as getExecutor, x as stopDeclaringSpawnsOn } from "./exec-CGuDzt40.mjs";
2
+ import { A as workspaceName$1, E as workspaceDir, l as withWorkspaceStateLockAsync, o as updateWorkspaceState, r as readWorkspaceState$1, t as clearWorkspaceStateKey, u as workspaceLastUsed, w as workspaceAgentDeviceDir } from "./workspace-state-BdZ-QgmB.mjs";
4
3
  import { t as createLineReader } from "./process-output-Fpl8PYi8.mjs";
5
- import { a as formatElapsed, d as quotedPath$1, l as phaseLine, o as formatLongDuration, u as plural } from "./command-output-CfPW1bKP.mjs";
6
- import { c as gitQuiet, l as gitQuietAsync, t as runOperationFile } from "./operation-exec-Dp4FuIGR.mjs";
7
- import { Pt as lockReason, Vt as repoRootAsync, Xt as worktreeLockAsync, Yt as worktreeLock, pt as resolveTailscaleBinary } from "./settings-C6UTYW2K.mjs";
8
- import { a as macosRuntimeClaim, n as macosDir } from "./state-CiflgxTP.mjs";
9
- import { B as listOrphanedAvdDirectories, C as deleteAvd, Dt as recordCreatedDevice, Et as readCreatedDevices$1, J as ownedAvdSystemImage, K as ownedAvdSerialResolver, M as isEmulatorToolAbsent, P as listAdbDevicesAsync, St as removeParkedAfter, Tt as forgetCreatedDeviceAsync, U as ownedAvdDirectory, W as ownedAvdMatchesConfiguration, _t as eraseParkedAfter, dt as wipeAvdUserData, ft as isStimOwnedAvd, g as avdPathExists, it as resolveOwnedAvdSerialAsync, lt as waitForAndroidEmulatorShutdown, ot as shutdownAndroidEmulator, p as assertOwnedAvdStoppedAsync, q as ownedAvdSerialResolverAsync, v as avdStorageExists, wt as forgetCreatedDevice, xt as readParked, y as avdStorageRoots, yt as parkSim } from "./android-DsEj2CCs.mjs";
10
- import { c as pidExists, f as signalProcessTree, p as signalProcessTreeAsync } from "./metro-mKHEMO-a.mjs";
11
- import { _ as chromeProcessStateAsync, c as webClaimRoot, i as clearWebRecord, o as readWebRecord, p as webProfileDir, t as CDP_PORT_LABEL, u as webFacts, v as liveProfileHolder, y as removeSingletonFiles } from "./state-CM_HvvkS.mjs";
4
+ import { a as formatElapsed, d as quotedPath$1, l as phaseLine, o as formatLongDuration, u as plural } from "./command-output-DWI9tGPU.mjs";
5
+ import { M as acquireAvdClaim, O as withConfigLock$1, _ as isPathPrefix$1, at as isOnMountedVolume, d as getConfigDir, ft as deviceSlotPlatforms, ht as projectDeviceSlots, k as withConfigLockAsync$1, m as getProject, ot as listMountedVolumes, rt as formatBytes, st as measuredDirectorySizeAsync, v as loadConfig$1 } from "./config-BW0fAtoK.mjs";
6
+ import { c as gitQuiet, l as gitQuietAsync, t as runOperationFile } from "./operation-exec-DKlBcKAL.mjs";
7
+ import { Pt as lockReason, Vt as repoRootAsync, Xt as worktreeLockAsync, Yt as worktreeLock, pt as resolveTailscaleBinary } from "./settings-B5IBDfTx.mjs";
8
+ import { a as macosRuntimeClaim, n as macosDir } from "./state-DSOUqO-o.mjs";
9
+ import { B as listOrphanedAvdDirectories, C as deleteAvd, Dt as recordCreatedDevice, Et as readCreatedDevices$1, J as ownedAvdSystemImage, K as ownedAvdSerialResolver, M as isEmulatorToolAbsent, P as listAdbDevicesAsync, St as removeParkedAfter, Tt as forgetCreatedDeviceAsync, U as ownedAvdDirectory, W as ownedAvdMatchesConfiguration, _t as eraseParkedAfter, dt as wipeAvdUserData, ft as isStimOwnedAvd, g as avdPathExists, it as resolveOwnedAvdSerialAsync, lt as waitForAndroidEmulatorShutdown, ot as shutdownAndroidEmulator, p as assertOwnedAvdStoppedAsync, q as ownedAvdSerialResolverAsync, v as avdStorageExists, wt as forgetCreatedDevice, xt as readParked, y as avdStorageRoots, yt as parkSim } from "./android-Iq0M2t2d.mjs";
10
+ import { c as pidExists, f as signalProcessTree, p as signalProcessTreeAsync } from "./metro-B5PVz0Wv.mjs";
11
+ import { _ as chromeProcessStateAsync, c as webClaimRoot, i as clearWebRecord, o as readWebRecord, p as webProfileDir, t as CDP_PORT_LABEL, u as webFacts, v as liveProfileHolder, y as removeSingletonFiles } from "./state-CtmYTRWm.mjs";
12
12
  import { t as canonicalPath } from "./paths-BsJMoPP2.mjs";
13
- import { N as listBuildLocks, d as readAgentDeviceRecords, i as createActivityReaderAsync, r as createActivityReader, s as idleForMs, t as agentDeviceDaemon } from "./activity-yjH7Q3zn.mjs";
14
- import { C as renameIosSim, D as resolveOwnedIosSim, c as eraseIosSim, f as listAllIosSimsAsync, k as shutdownIosSim, o as deleteIosSim, p as listIosDeviceTypesAsync, s as deleteParkedIosSim, v as parkedSimName, y as parseRuntimeVersion } from "./ios-CdAV4-1E.mjs";
15
- import { r as releaseBrowserPort } from "./named-ports-B0hCk2v-.mjs";
13
+ import { N as listBuildLocks, d as readAgentDeviceRecords, i as createActivityReaderAsync, r as createActivityReader, s as idleForMs, t as agentDeviceDaemon } from "./activity-C8kBq9w0.mjs";
14
+ import { C as renameIosSim, D as resolveOwnedIosSim, c as eraseIosSim, f as listAllIosSimsAsync, k as shutdownIosSim, o as deleteIosSim, p as listIosDeviceTypesAsync, s as deleteParkedIosSim, v as parkedSimName, y as parseRuntimeVersion } from "./ios-BdZdNsAj.mjs";
15
+ import { r as releaseBrowserPort } from "./named-ports-CA0nB9Yw.mjs";
16
16
  import { createHash, randomUUID } from "node:crypto";
17
17
  import { closeSync, existsSync, lstatSync, mkdirSync, openSync, readFileSync, readdirSync, realpathSync, renameSync, rmSync, rmdirSync, statSync, unlinkSync, watch, writeFileSync } from "node:fs";
18
18
  import { isDeepStrictEqual } from "node:util";
@@ -21,9 +21,9 @@ import { basename, dirname, isAbsolute, join, relative, resolve, sep } from "nod
21
21
  import { ambientContext, ambientEnv, ambientWrite, withDirLock, workspaceName } from "@stim-cli/core";
22
22
  import { BUILD_HISTORY_KEY, BUILD_HISTORY_LIMIT, BUILD_LEDGER_CAP, BUILD_PHASES, LAST_BUILD_KEYS, STATS_VERSION, buildLedgerFile, buildLedgerLock, buildSlotsDir, decodeStats, hostedAppAttempt, hostedNativeRecords, isJsonObject, lastNativeUseFrom, loadPerCore, macosAppState, parseHostedNativePlacement, parseMissReason, readJsonFile, readMacosRecord, readRunEstimates, readStats as readStats$1, requireAutomaticMachine, statsFile, statsProjectKey as statsProjectKey$1, trace, trimCapacityRefusals, trimCapacityWaits, trimSamples, tryAcquireBuildSlotClaim, unreadableHostedNative, wholePhases, workspaceBuildDetailFile } from "@stim-cli/core/state";
23
23
  import { basename as basename$1, dirname as dirname$1, isAbsolute as isAbsolute$1, join as join$1, relative as relative$1 } from "path";
24
- import { request } from "node:https";
25
24
  import chalk from "chalk";
26
25
  import { existsSync as existsSync$1, lstatSync as lstatSync$1, readdirSync as readdirSync$1, statSync as statSync$1 } from "fs";
26
+ import { request } from "node:https";
27
27
  import { lstat, readFile, readdir, rm, stat, unlink } from "node:fs/promises";
28
28
  import { resolve4 } from "node:dns/promises";
29
29
  //#region src/commands/gc/limited.ts