stim 1.20.0 → 1.20.2
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.
- package/README.md +6 -3
- package/dist/{activity-BrGh9EAI.mjs → activity-BSV745Kz.mjs} +4 -4
- package/dist/{agent-device-usage-output-DVyv_hWj.mjs → agent-device-usage-output-Dzgv6lgR.mjs} +5 -6
- package/dist/{android-Brx6EKvJ.mjs → android-DCKZrNvV.mjs} +37 -38
- package/dist/{android-0vv-OruW.mjs → android-Dlzxshgp.mjs} +5 -5
- package/dist/{android-CK3fpEyZ.mjs → android-HqP1_vB_.mjs} +3 -3
- package/dist/{android-BsYNR81W.mjs → android-Mz_Inn3w.mjs} +12 -12
- package/dist/{android-cas-DCAuXryb.mjs → android-cas-Bl-cLJBk.mjs} +4 -4
- package/dist/android-cas-compiler.mjs +1 -1
- package/dist/{api-zuX3ynYN.mjs → api-qvOzWyfO.mjs} +1 -1
- package/dist/api-run.mjs +19 -21
- package/dist/api.mjs +1 -1
- package/dist/{app-install-0LgaQRT7.mjs → app-install-BIKtMfPq.mjs} +71 -48
- package/dist/{artifact-DClXJNWx.mjs → artifact-D3czlUvT.mjs} +13 -13
- package/dist/{artifact-CnC0mfov.mjs → artifact-HSwkIWEQ.mjs} +12 -12
- package/dist/{browser-web-CzBmhmgs.mjs → browser-web-CA-F1GQo.mjs} +18 -18
- package/dist/{budget-BONq9vXY.mjs → budget-f7516Zk0.mjs} +23 -26
- package/dist/{build-BixRI6sB.mjs → build-DYDbfkk5.mjs} +28 -33
- package/dist/{build-plan-CP0tckNU.mjs → build-plan-B7SZsc2N.mjs} +17 -17
- package/dist/{cache-manifest-qA3dT2x2.mjs → cache-manifest-XH-fvDUj.mjs} +10 -5
- package/dist/cache-manifest.mjs +1 -1
- package/dist/cancellation-C_22VQTH.mjs +24 -0
- package/dist/{ccache-CjHQ5F8g.mjs → ccache-zdKiYQ3E.mjs} +7 -7
- package/dist/{chrome-Dp2lMLBe.mjs → chrome-BnzZMqsR.mjs} +1 -1
- package/dist/{cli-B2R8wH1F.mjs → cli-CLP3diBm.mjs} +20 -20
- package/dist/cli.mjs +1 -1
- package/dist/{client-BLy1Pw2V.mjs → client-qQAaXSUs.mjs} +21 -29
- package/dist/collector-run.d.mts +7 -6
- package/dist/collector-run.mjs +6 -7
- package/dist/{command-output-BjPN99ZB.mjs → command-output-BTy8hZ0F.mjs} +1 -1
- package/dist/{config-D0LhTY3S.mjs → config-BYDxlMY3.mjs} +43 -5
- package/dist/{created-devices-HU_DAb_Q.mjs → created-devices-Dzd5C2LF.mjs} +2 -2
- package/dist/{dependency-state-B2m8eqsS.mjs → dependency-state-DG0p31-y.mjs} +2 -2
- package/dist/{detached-entry-BXq4fIl-.mjs → detached-entry-B9C_zeQC.mjs} +1 -1
- package/dist/{dev-client-ClATaJoH.mjs → dev-client-DAWVIGBu.mjs} +2 -2
- package/dist/{device-DVCwAFlX.mjs → device-BECOiufl.mjs} +13 -14
- package/dist/{device-B7lsC0K1.mjs → device-DuiPJQSn.mjs} +8 -8
- package/dist/{device-capacity-Ca_ke1LE.mjs → device-capacity-CBUAcRyQ.mjs} +10 -11
- package/dist/device-host-worker.mjs +16 -17
- package/dist/{device-ios-CRUqPxKw.mjs → device-ios-COSi6oS1.mjs} +12 -15
- package/dist/{device-lease-DHOBXGgS.mjs → device-lease-BX1sJQ2E.mjs} +15 -18
- package/dist/{device-lease-run-CvDeHTkG.mjs → device-lease-run-Cw2M4z51.mjs} +4 -4
- package/dist/{device-pool-L2-5GxMy.mjs → device-pool-Bf-pOhSw.mjs} +3 -3
- package/dist/{device-remote-Bmg42063.mjs → device-remote-xRT0Vmo9.mjs} +14 -14
- package/dist/{doctor-C2MSuMMg.mjs → doctor-CB8oZKCk.mjs} +13 -13
- package/dist/{doctor-DPAqhVCK.mjs → doctor-kfMBnUw6.mjs} +78 -69
- package/dist/{doctor-watchman-CB4NnVZm.mjs → doctor-watchman-BRyV2adA.mjs} +9 -10
- package/dist/{eas-build-Dw_ec2Km.mjs → eas-build-JyfqyHfC.mjs} +5 -5
- package/dist/{eas-session-ledger-DZlC-Fq3.mjs → eas-session-ledger-Cm0Gwq2F.mjs} +6 -4
- package/dist/{error-diagnostics-Du7I_GuY.mjs → error-diagnostics-BR677IDM.mjs} +10 -10
- package/dist/{exec-B81Qodjn.mjs → exec-DqKo9GKJ.mjs} +22 -8
- package/dist/{gc-PWp34zGb.mjs → gc-qWOMdnER.mjs} +75 -24
- package/dist/git-DDfFzkMm.mjs +45 -0
- package/dist/{gradle-C2OEKCCI.mjs → gradle-DSrXb6lG.mjs} +6 -6
- package/dist/{guide-Dai9lphv.mjs → guide-G9cAbVAc.mjs} +81 -178
- package/dist/{hosted-android-DQ-Agsd8.mjs → hosted-android-C3MHGld1.mjs} +3 -3
- package/dist/{hosted-client-Io01s5By.mjs → hosted-client-ZEKpS9vw.mjs} +19 -11
- package/dist/{hosted-ios-DIxFnYp-.mjs → hosted-ios-l-o3iM9J.mjs} +1 -1
- package/dist/{hosted-logs-DP-ABU_M.mjs → hosted-logs-EzQM7-3Z.mjs} +7 -7
- package/dist/{hosted-macos-Aziw9T_9.mjs → hosted-macos-BACVAVqE.mjs} +10 -8
- package/dist/{hosted-native-BdAQi21M.mjs → hosted-native-A4s1QPXe.mjs} +13 -11
- package/dist/{idle-shutdown-DdMqoSUB.mjs → idle-shutdown-DtxhPTKe.mjs} +7 -7
- package/dist/{ios-BZ9dg2Fr.mjs → ios-BwVCF7oA.mjs} +8 -8
- package/dist/{ios-CZuv6gRv.mjs → ios-Ce7bc7br.mjs} +29 -29
- package/dist/{ios-CXLIUxXJ.mjs → ios-RkW4pnQf.mjs} +21 -17
- package/dist/{ios-device-B1B14xND.mjs → ios-device-B5veSDDQ.mjs} +1 -1
- package/dist/{ios-device-BreZOpM0.mjs → ios-device-D7pi2Sca.mjs} +14 -14
- package/dist/{ios-VGvNdsv2.mjs → ios-nOLJGVdy.mjs} +1 -1
- package/dist/{ios-project-B9drt_aY.mjs → ios-project-K9hY_Jab.mjs} +8 -8
- package/dist/{ios-state-CjrL2qv-.mjs → ios-state-CBLe1xYw.mjs} +1 -1
- package/dist/{js-swap-C8icNYIY.mjs → js-swap-Bb3nsS07.mjs} +13 -13
- package/dist/{launch-YrbqaIFj.mjs → launch-C3qJ6Agb.mjs} +46 -45
- package/dist/{launch-DxH0THLP.mjs → launch-F4sOqAhB.mjs} +21 -21
- package/dist/{launch-verify-BzRdbuO1.mjs → launch-verify-B6Q8hZP-.mjs} +11 -11
- package/dist/{logs-DHaRNfg7.mjs → logs-BGrEUaEs.mjs} +10 -11
- package/dist/{macos-V_3Ui7g4.mjs → macos-Ch5VJmcS.mjs} +40 -24
- package/dist/macos-D7uDvO-z.mjs +2 -0
- package/dist/macos-run.mjs +1 -1
- package/dist/maintenance-run.mjs +7 -7
- package/dist/{metro-D_j9sN-B.mjs → metro-DnCEjCxs.mjs} +8 -9
- package/dist/{metro-gateway-BBJldOdi.mjs → metro-gateway-CX9Xlkq2.mjs} +3 -3
- package/dist/{miss-reason-BPAzZS0r.mjs → miss-reason-mKzZ4VvN.mjs} +3 -3
- package/dist/{named-ports-C2lvoPsb.mjs → named-ports-4WopRPg-.mjs} +4 -5
- package/dist/{native-android-lHzaew7r.mjs → native-android-D5qc3-_v.mjs} +10 -10
- package/dist/{native-gradle-inputs-BQnIdAlL.mjs → native-gradle-inputs-BsLRrl7u.mjs} +3 -10
- package/dist/{native-runtime-BRmWL7ru.mjs → native-runtime-k8dTIrbK.mjs} +7 -8
- package/dist/{native-xcode-inputs-eutS19jU.mjs → native-xcode-inputs-CykopJdM.mjs} +7 -9
- package/dist/{native-xcode-ios-DP3cHLwu.mjs → native-xcode-ios-Bbf30Gm0.mjs} +15 -15
- package/dist/offload-worker.mjs +34 -38
- package/dist/{ownership-DXzMMSx6.mjs → ownership-DCtw_2IA.mjs} +3 -3
- package/dist/{page-Bv9s2KwY.mjs → page-DRHy329N.mjs} +1 -1
- package/dist/{placement-log-reFbjqEr.mjs → placement-log-MOfPVgaM.mjs} +1 -1
- package/dist/{plan-BDk2AeY_.mjs → plan-C4TjdPsR.mjs} +10 -10
- package/dist/{plan-placement-D_YYlE6N.mjs → plan-placement-V0TdzYXp.mjs} +3 -3
- package/dist/{ports-jzvAJXXL.mjs → ports-DdSUicVo.mjs} +3 -3
- package/dist/{prebuild-Bw44QxVh.mjs → prebuild-DYbucPXy.mjs} +7 -8
- package/dist/{preview-BaBJ72Al.mjs → preview-78a9kR_-.mjs} +31 -24
- package/dist/{project-B8_duAzW.mjs → project-_phNIJfs.mjs} +110 -47
- package/dist/{pull-request-vOhLNmIb.mjs → pull-request-CQ8sPbZa.mjs} +5 -18
- package/dist/pull-requests.mjs +1 -1
- package/dist/{react-native-android-chm1DMlA.mjs → react-native-android-CM1XRDwv.mjs} +34 -30
- package/dist/{react-native-build-oAw6gQeW.mjs → react-native-build-CtCccJtb.mjs} +6 -6
- package/dist/{react-native-doctor-DYXoh-6I.mjs → react-native-doctor-CfRnFfjs.mjs} +5 -5
- package/dist/{react-native-ios-SCTK_CT5.mjs → react-native-ios-Dhq_eiYQ.mjs} +14 -14
- package/dist/{recordings-Bk-VivUV.mjs → recordings-D0d5aQt0.mjs} +1 -1
- package/dist/{reload-D34GkY78.mjs → reload-C8JhxjSh.mjs} +17 -17
- package/dist/{remote-BU9UyhCJ.mjs → remote-BiR6aYjy.mjs} +7 -7
- package/dist/{remote-cache-Bsts6f6Y.mjs → remote-cache-OyOyVIS3.mjs} +4 -4
- package/dist/{result-BDoRk1k3.mjs → result-CaJg5Iat.mjs} +8 -8
- package/dist/{run-qvff78hv.mjs → run-BtPgpKks.mjs} +3 -3
- package/dist/{server-bare-dWjAarki.mjs → server-bare-R2m_gsH8.mjs} +3 -3
- package/dist/{server-command-7XIKlWtO.mjs → server-command-CTtCkmcQ.mjs} +5 -5
- package/dist/server-expo-Bigriskl.mjs +2 -0
- package/dist/{server-expo-CsYu2aKL.mjs → server-expo-DsguMGUF.mjs} +5 -10
- package/dist/{settings-Bbztm4oV.mjs → settings-B717odTD.mjs} +74 -115
- package/dist/{settings-CT3E71-i.mjs → settings-BORNaaCO.mjs} +5 -5
- package/dist/settings.schema.json +1 -1
- package/dist/{simslim-ChMfe8rg.mjs → simslim-CCr3rE-A.mjs} +2 -3
- package/dist/{slot-launch-B9hn96wd.mjs → slot-launch-DPt0m9Nd.mjs} +6 -6
- package/dist/{spawn-claims-Kqiifsk2.mjs → spawn-claims-DVS5RkMS.mjs} +1 -1
- package/dist/{stage-BNKKdDNc.mjs → stage-KNTQopqv.mjs} +9 -9
- package/dist/{start-CdvcTaXr.mjs → start-BWqzODpb.mjs} +19 -20
- package/dist/{start-CbQCSnXQ.mjs → start-TXeMmmO2.mjs} +1 -1
- package/dist/{state-Boo0IMJq.mjs → state-CG_OFoaA.mjs} +2 -2
- package/dist/{state-DI84A-uu.mjs → state-D1Icyjlu.mjs} +8 -7
- package/dist/{stats-BIIDrjA8.mjs → stats-BoY5sEPU.mjs} +5 -5
- package/dist/{status-BDGHwkCs.mjs → status-BTA7kKiQ.mjs} +1 -1
- package/dist/{status-DARMkc9q.mjs → status-WgFbkRzj.mjs} +30 -47
- package/dist/{status-watch-DvmI3SmN.mjs → status-watch-C23ILtf9.mjs} +4 -4
- package/dist/{stim-desktop-8GQX2OV8.mjs → stim-desktop-BzBN2Em2.mjs} +1 -1
- package/dist/{stop-iNemHsJC.mjs → stop-BNmBMi1F.mjs} +18 -19
- package/dist/{stop-WQPQHLuy.mjs → stop-DPEhunlw.mjs} +6 -6
- package/dist/{stop-CCZS-C9m.mjs → stop-DR6VoDIk.mjs} +2 -2
- package/dist/supervisor-run.mjs +16 -17
- package/dist/{support-DCco5fut.mjs → support-CwjbFs9H.mjs} +9 -9
- package/dist/{support-CnE_SIjt.mjs → support-DMTqj3Hm.mjs} +6 -6
- package/dist/{swiftpm-macos-afeNUExW.mjs → swiftpm-macos-DRNVJWlb.mjs} +9 -9
- package/dist/{tailnet-CoJUb2tB.mjs → tailnet-Dh-qiYzG.mjs} +5 -5
- package/dist/toolchain-BFkAcstd.mjs +2 -0
- package/dist/{toolchain-DqyDXs30.mjs → toolchain-DxSsNssu.mjs} +10 -10
- package/dist/trigger-9_USgmxz.mjs +2 -0
- package/dist/{trigger-C0MWBi8O.mjs → trigger-CigAYjeL.mjs} +2 -2
- package/dist/{warm-progress-C3ASD6z5.mjs → warm-progress-BuY-Fvfn.mjs} +43 -61
- package/dist/{watchman-CQl51YZu.mjs → watchman-CPQFZLXY.mjs} +6 -6
- package/dist/{web-B3eldHFH.mjs → web-BDBMxDpx.mjs} +9 -9
- package/dist/web-Dq-i3wzJ.mjs +2 -0
- package/dist/web-run.mjs +14 -14
- package/dist/{workspace-state-CSIFuuDa.mjs → workspace-state-DJt_MMvf.mjs} +16 -6
- package/dist/{workspaces-D2xSHBDY.mjs → workspaces-C36s2jb9.mjs} +15 -16
- package/dist/{worktree-BxDqaTev.mjs → worktree-CgvJYJ-Q.mjs} +96 -89
- package/dist/{worktree-q7_OZNY0.mjs → worktree-DpLdCHga.mjs} +1 -1
- package/package.json +6 -7
- package/dist/macos-C0iljhsN.mjs +0 -2
- package/dist/process-identity-Biv3arCO.mjs +0 -40
- package/dist/server-expo-DV43vep4.mjs +0 -2
- package/dist/toolchain-BIupIro1.mjs +0 -2
- package/dist/trigger-SHLOWJ4O.mjs +0 -2
- package/dist/web-BLXpOe6b.mjs +0 -2
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { n as debugLog, t as getExecutor } from "./exec-
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
1
|
+
import { j as ownership_claim_exports } from "./config-BYDxlMY3.mjs";
|
|
2
|
+
import { n as isTimeoutError, r as debugLog, t as getExecutor } from "./exec-DqKo9GKJ.mjs";
|
|
3
|
+
import { n as gitAsync, r as gitQuiet, t as git } from "./git-DDfFzkMm.mjs";
|
|
4
|
+
import { gt as gitCommonDirOnDisk, xt as linkedWorktreesOnDisk } from "./settings-B717odTD.mjs";
|
|
5
|
+
import { D as withDirLock, a as updateWorkspaceState, d as discoverAgentSessions, l as agentKey, p as ensureWorkspaceStorage, u as attributeAgentSessions, x as workspaceDir } from "./workspace-state-DJt_MMvf.mjs";
|
|
6
|
+
import { I as ownedAvdDirectory } from "./android-Mz_Inn3w.mjs";
|
|
7
|
+
import { o as pullRequestLookups } from "./pull-request-CQ8sPbZa.mjs";
|
|
7
8
|
import { existsSync, mkdirSync, readdirSync, realpathSync, renameSync, rmSync, statSync, writeFileSync } from "node:fs";
|
|
8
9
|
import { basename, dirname, join, sep } from "node:path";
|
|
9
10
|
import { ENDED_AGENT_RETENTION_MS, READY_PHASE_MS, WARM_KEY, agentSessionsCacheFile, diskUsageCacheFile, diskUsageFailureFile, diskUsageWalkClaims, pullRequestCacheFile, readAgentSessionsCache, readDiskUsage, readDiskUsageFailure, readEndedAgentSessions, readPullRequestCache, readWarmRecord, readWorkspaceAgent, readWorkspaceState, workspaceEndedAgentsFile, workspaceEndedAgentsLock } from "@stim-cli/core/state";
|
|
@@ -23,9 +24,7 @@ function failure(error) {
|
|
|
23
24
|
return text.split("\n")[0] ?? text;
|
|
24
25
|
}
|
|
25
26
|
function fetchedRecently(repo, now) {
|
|
26
|
-
const path =
|
|
27
|
-
"-C",
|
|
28
|
-
repo,
|
|
27
|
+
const path = gitQuiet(repo, [
|
|
29
28
|
"rev-parse",
|
|
30
29
|
"--path-format=absolute",
|
|
31
30
|
"--git-path",
|
|
@@ -42,10 +41,7 @@ function fetchedRecently(repo, now) {
|
|
|
42
41
|
* prompting for credentials. It skips the fetch when the checkout fetched anything in the last 10 minutes.
|
|
43
42
|
*/
|
|
44
43
|
function fetchDefaultBranch(repo, now = Date.now()) {
|
|
45
|
-
const
|
|
46
|
-
const ref = exec.runFileQuiet("git", [
|
|
47
|
-
"-C",
|
|
48
|
-
repo,
|
|
44
|
+
const ref = gitQuiet(repo, [
|
|
49
45
|
"symbolic-ref",
|
|
50
46
|
"--quiet",
|
|
51
47
|
"refs/remotes/origin/HEAD"
|
|
@@ -57,9 +53,7 @@ function fetchDefaultBranch(repo, now = Date.now()) {
|
|
|
57
53
|
name: `origin/${branch}`
|
|
58
54
|
};
|
|
59
55
|
try {
|
|
60
|
-
|
|
61
|
-
"-C",
|
|
62
|
-
repo,
|
|
56
|
+
git(repo, [
|
|
63
57
|
"fetch",
|
|
64
58
|
"--quiet",
|
|
65
59
|
"--no-tags",
|
|
@@ -67,6 +61,7 @@ function fetchDefaultBranch(repo, now = Date.now()) {
|
|
|
67
61
|
"origin",
|
|
68
62
|
`+refs/heads/${branch}:${ref}`
|
|
69
63
|
], {
|
|
64
|
+
write: true,
|
|
70
65
|
timeoutMs: FETCH_TIMEOUT_MS,
|
|
71
66
|
env: { GIT_TERMINAL_PROMPT: "0" }
|
|
72
67
|
});
|
|
@@ -85,42 +80,33 @@ function notMerged(detail) {
|
|
|
85
80
|
detail
|
|
86
81
|
};
|
|
87
82
|
}
|
|
88
|
-
function currentBranch(
|
|
89
|
-
const ref =
|
|
90
|
-
"-C",
|
|
91
|
-
path,
|
|
83
|
+
function currentBranch(probe) {
|
|
84
|
+
const ref = probe([
|
|
92
85
|
"symbolic-ref",
|
|
93
86
|
"--quiet",
|
|
94
87
|
"HEAD"
|
|
95
88
|
])?.trim();
|
|
96
89
|
return ref?.startsWith("refs/heads/") ? ref : null;
|
|
97
90
|
}
|
|
98
|
-
function upstreamGone(
|
|
91
|
+
function upstreamGone(probe, branch) {
|
|
99
92
|
if (!branch) return false;
|
|
100
|
-
const [upstream, state] = (
|
|
101
|
-
"-C",
|
|
102
|
-
path,
|
|
93
|
+
const [upstream, state] = (probe([
|
|
103
94
|
"for-each-ref",
|
|
104
95
|
"--format=%(upstream)%00%(upstream:track)",
|
|
105
96
|
branch
|
|
106
97
|
]) ?? "").trim().split("\0");
|
|
107
98
|
return Boolean(upstream) && state === "[gone]";
|
|
108
99
|
}
|
|
109
|
-
function committedOn(
|
|
100
|
+
function committedOn(probe, branch, head) {
|
|
110
101
|
if (!branch) return false;
|
|
111
|
-
|
|
112
|
-
return (exec.runFileQuiet("git", [
|
|
113
|
-
"-C",
|
|
114
|
-
path,
|
|
102
|
+
return (probe([
|
|
115
103
|
"reflog",
|
|
116
104
|
"show",
|
|
117
105
|
"--format=%H %gs",
|
|
118
106
|
branch
|
|
119
107
|
]) ?? "").split("\n").some((entry) => {
|
|
120
108
|
const [sha = "", ...subject] = entry.split(" ");
|
|
121
|
-
return /^(commit|cherry-pick|rebase|revert)\b/.test(subject.join(" ")) &&
|
|
122
|
-
"-C",
|
|
123
|
-
path,
|
|
109
|
+
return /^(commit|cherry-pick|rebase|revert)\b/.test(subject.join(" ")) && probe([
|
|
124
110
|
"merge-base",
|
|
125
111
|
"--is-ancestor",
|
|
126
112
|
sha,
|
|
@@ -143,32 +129,30 @@ function committedOn(path, branch, head) {
|
|
|
143
129
|
* upstream branch was deleted: its commits exist only locally, but their change is on the default branch.
|
|
144
130
|
*/
|
|
145
131
|
function mergeState(path, { ref, name }, { timeoutMs = GIT_TIMEOUT_MS$1, maxCommits = MAX_MERGE_STATE_COMMITS } = {}) {
|
|
146
|
-
const git = (args, input) =>
|
|
147
|
-
"--literal-pathspecs",
|
|
148
|
-
"-C",
|
|
149
|
-
path,
|
|
150
|
-
...args
|
|
151
|
-
], {
|
|
132
|
+
const git$1 = (args, input) => git(path, ["--literal-pathspecs", ...args], {
|
|
152
133
|
timeoutMs,
|
|
153
134
|
input
|
|
154
135
|
});
|
|
155
|
-
const patch = (args, input) =>
|
|
156
|
-
"--literal-pathspecs",
|
|
157
|
-
"-C",
|
|
158
|
-
path,
|
|
159
|
-
...args
|
|
160
|
-
], {
|
|
136
|
+
const patch = (args, input) => git(path, ["--literal-pathspecs", ...args], {
|
|
161
137
|
timeoutMs,
|
|
162
138
|
input,
|
|
163
139
|
untrimmed: true
|
|
164
140
|
});
|
|
165
|
-
const
|
|
141
|
+
const probe = (args) => {
|
|
142
|
+
try {
|
|
143
|
+
return git(path, args, { timeoutMs });
|
|
144
|
+
} catch (error) {
|
|
145
|
+
if (isTimeoutError(error)) throw error;
|
|
146
|
+
return null;
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
const patchIdCommits = (text) => new Map(text ? git$1(["patch-id", "--verbatim"], text).split("\n").flatMap((line) => {
|
|
166
150
|
const [id, commit] = line.split(" ");
|
|
167
151
|
return id && commit ? [[id, commit]] : [];
|
|
168
152
|
}) : []);
|
|
169
153
|
const patchIds = (text) => [...patchIdCommits(text).keys()];
|
|
170
154
|
const committedAt = (commits) => {
|
|
171
|
-
const times = commits.length ? git([
|
|
155
|
+
const times = commits.length ? git$1([
|
|
172
156
|
"log",
|
|
173
157
|
"--no-walk",
|
|
174
158
|
"--stdin",
|
|
@@ -180,30 +164,30 @@ function mergeState(path, { ref, name }, { timeoutMs = GIT_TIMEOUT_MS$1, maxComm
|
|
|
180
164
|
const diffOptions = ["--no-color", "--no-ext-diff"];
|
|
181
165
|
const noOwnCommits = notMerged(`no commits of its own beyond ${name}`);
|
|
182
166
|
try {
|
|
183
|
-
const head = git([
|
|
167
|
+
const head = git$1([
|
|
184
168
|
"rev-parse",
|
|
185
169
|
"--verify",
|
|
186
170
|
"HEAD^{commit}"
|
|
187
171
|
]);
|
|
188
|
-
const base = git([
|
|
172
|
+
const base = git$1([
|
|
189
173
|
"merge-base",
|
|
190
174
|
head,
|
|
191
175
|
ref
|
|
192
176
|
]);
|
|
193
|
-
const branch = currentBranch(
|
|
177
|
+
const branch = currentBranch(probe);
|
|
194
178
|
if (base === head) {
|
|
195
|
-
if (git(["rev-parse", ref]) === head || git([
|
|
179
|
+
if (git$1(["rev-parse", ref]) === head || git$1([
|
|
196
180
|
"rev-list",
|
|
197
181
|
"--first-parent",
|
|
198
182
|
"--parents",
|
|
199
183
|
`${head}..${ref}`
|
|
200
|
-
]).split("\n").some((line) => line.split(" ")[1] === head) || !committedOn(
|
|
201
|
-
const descendants = new Set(git([
|
|
184
|
+
]).split("\n").some((line) => line.split(" ")[1] === head) || !committedOn(probe, branch, head)) return noOwnCommits;
|
|
185
|
+
const descendants = new Set(git$1([
|
|
202
186
|
"rev-list",
|
|
203
187
|
"--ancestry-path",
|
|
204
188
|
`${head}..${ref}`
|
|
205
189
|
]).split("\n"));
|
|
206
|
-
const landed = git([
|
|
190
|
+
const landed = git$1([
|
|
207
191
|
"rev-list",
|
|
208
192
|
"--first-parent",
|
|
209
193
|
"--reverse",
|
|
@@ -218,7 +202,7 @@ function mergeState(path, { ref, name }, { timeoutMs = GIT_TIMEOUT_MS$1, maxComm
|
|
|
218
202
|
mergedAt: committedAt([landed])
|
|
219
203
|
};
|
|
220
204
|
}
|
|
221
|
-
const aheadCount = Number(git([
|
|
205
|
+
const aheadCount = Number(git$1([
|
|
222
206
|
"rev-list",
|
|
223
207
|
"--count",
|
|
224
208
|
`${base}..${head}`
|
|
@@ -228,7 +212,7 @@ function mergeState(path, { ref, name }, { timeoutMs = GIT_TIMEOUT_MS$1, maxComm
|
|
|
228
212
|
unknown: true,
|
|
229
213
|
detail: `merge state unknown: ${aheadCount} commits of its own ahead of the merge base with ${name} exceeds the ${maxCommits}-commit limit`
|
|
230
214
|
};
|
|
231
|
-
const files = git([
|
|
215
|
+
const files = git$1([
|
|
232
216
|
"diff",
|
|
233
217
|
"--name-only",
|
|
234
218
|
"--no-renames",
|
|
@@ -250,7 +234,7 @@ function mergeState(path, { ref, name }, { timeoutMs = GIT_TIMEOUT_MS$1, maxComm
|
|
|
250
234
|
merged: true,
|
|
251
235
|
into: name,
|
|
252
236
|
head,
|
|
253
|
-
coversUnpushed: upstreamGone(
|
|
237
|
+
coversUnpushed: upstreamGone(probe, branch),
|
|
254
238
|
mergedAt: committedAt(ids.map((id) => upstream.get(id)))
|
|
255
239
|
});
|
|
256
240
|
const squash = patchIds(patch([
|
|
@@ -260,7 +244,7 @@ function mergeState(path, { ref, name }, { timeoutMs = GIT_TIMEOUT_MS$1, maxComm
|
|
|
260
244
|
head
|
|
261
245
|
]));
|
|
262
246
|
if (squash.length === 1 && upstream.has(squash[0])) return patchEquivalent(squash);
|
|
263
|
-
if (!git([
|
|
247
|
+
if (!git$1([
|
|
264
248
|
"rev-list",
|
|
265
249
|
"--merges",
|
|
266
250
|
`${base}..${head}`
|
|
@@ -270,7 +254,7 @@ function mergeState(path, { ref, name }, { timeoutMs = GIT_TIMEOUT_MS$1, maxComm
|
|
|
270
254
|
}
|
|
271
255
|
return notMerged(`not merged into ${name}`);
|
|
272
256
|
} catch (error) {
|
|
273
|
-
const timedOut = error
|
|
257
|
+
const timedOut = isTimeoutError(error) ? { timedOut: true } : {};
|
|
274
258
|
return {
|
|
275
259
|
merged: false,
|
|
276
260
|
unknown: true,
|
|
@@ -611,9 +595,7 @@ function createStatusMeasurer({ updated, now = Date.now }) {
|
|
|
611
595
|
}
|
|
612
596
|
async function branchHead(repository, branch) {
|
|
613
597
|
try {
|
|
614
|
-
return (await
|
|
615
|
-
"-C",
|
|
616
|
-
repository,
|
|
598
|
+
return (await gitAsync(repository, [
|
|
617
599
|
"rev-parse",
|
|
618
600
|
"--verify",
|
|
619
601
|
`refs/heads/${branch}`
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { y as workspaceAgentDeviceDir } from "./workspace-state-
|
|
4
|
-
import { a as formatElapsed, o as formatLongDuration, r as clockTime, u as plural } from "./command-output-
|
|
5
|
-
import { n as isInsideProject } from "./metro-
|
|
6
|
-
import { r as cdpEndpoint } from "./state-
|
|
1
|
+
import { B as deviceSlotKey, W as projectDeviceSlots } from "./config-BYDxlMY3.mjs";
|
|
2
|
+
import { t as getExecutor } from "./exec-DqKo9GKJ.mjs";
|
|
3
|
+
import { y as workspaceAgentDeviceDir } from "./workspace-state-DJt_MMvf.mjs";
|
|
4
|
+
import { a as formatElapsed, o as formatLongDuration, r as clockTime, u as plural } from "./command-output-BTy8hZ0F.mjs";
|
|
5
|
+
import { n as isInsideProject } from "./metro-DnCEjCxs.mjs";
|
|
6
|
+
import { r as cdpEndpoint } from "./state-D1Icyjlu.mjs";
|
|
7
7
|
import { basename, sep } from "path";
|
|
8
8
|
import { ACTIVITY_RECENCY_BASES } from "@stim-cli/core/state";
|
|
9
9
|
//#region src/status.ts
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { E as upsertProject, p as getProject } from "./config-
|
|
2
|
-
import { K as resolveProjectSettings, Q as settingShapeErrors, a as SETTING_SHAPE_REMEDY } from "./settings-
|
|
3
|
-
import { i as recordWorkspaceUse, w as workspaceLogsDir } from "./workspace-state-
|
|
4
|
-
import { f as refuseNoProject, l as phaseLine } from "./command-output-
|
|
5
|
-
import { d as projectRegistry, n as findCommandWorkspace } from "./project-
|
|
6
|
-
import { a as workspaceLinks, i as workspaceLinkLine } from "./stim-desktop-
|
|
7
|
-
import { o as readWebRecord, r as cdpEndpoint } from "./state-
|
|
8
|
-
import { n as ensureWorkspaceStorageSafely } from "./native-runtime-
|
|
9
|
-
import { t as liveWebRecord } from "./page-
|
|
1
|
+
import { E as upsertProject, p as getProject } from "./config-BYDxlMY3.mjs";
|
|
2
|
+
import { K as resolveProjectSettings, Q as settingShapeErrors, a as SETTING_SHAPE_REMEDY } from "./settings-B717odTD.mjs";
|
|
3
|
+
import { i as recordWorkspaceUse, w as workspaceLogsDir } from "./workspace-state-DJt_MMvf.mjs";
|
|
4
|
+
import { f as refuseNoProject, l as phaseLine } from "./command-output-BTy8hZ0F.mjs";
|
|
5
|
+
import { d as projectRegistry, n as findCommandWorkspace } from "./project-_phNIJfs.mjs";
|
|
6
|
+
import { a as workspaceLinks, i as workspaceLinkLine } from "./stim-desktop-BzBN2Em2.mjs";
|
|
7
|
+
import { o as readWebRecord, r as cdpEndpoint } from "./state-D1Icyjlu.mjs";
|
|
8
|
+
import { n as ensureWorkspaceStorageSafely } from "./native-runtime-k8dTIrbK.mjs";
|
|
9
|
+
import { t as liveWebRecord } from "./page-DRHy329N.mjs";
|
|
10
10
|
import chalk from "chalk";
|
|
11
11
|
//#region src/commands/web.ts
|
|
12
12
|
const printNote = (line) => console.error(line);
|
package/dist/web-run.mjs
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as getExecutor } from "./exec-
|
|
3
|
-
import { r as recordCreatedDevice } from "./created-devices-
|
|
4
|
-
import { d as signalProcessTree } from "./metro-
|
|
1
|
+
import { j as ownership_claim_exports, k as process_identity_exports } from "./config-BYDxlMY3.mjs";
|
|
2
|
+
import { t as getExecutor } from "./exec-DqKo9GKJ.mjs";
|
|
3
|
+
import { r as recordCreatedDevice } from "./created-devices-Dzd5C2LF.mjs";
|
|
4
|
+
import { d as signalProcessTree } from "./metro-DnCEjCxs.mjs";
|
|
5
|
+
import { t as cancellableSleep } from "./cancellation-C_22VQTH.mjs";
|
|
5
6
|
import { r as createNdjsonWriter } from "./ndjson-GOnbyvso.mjs";
|
|
6
|
-
import { t as relaunchWithLogFile } from "./detached-entry-
|
|
7
|
-
import { _ as removeSingletonFiles, c as webClaimRoot, d as webLogFile, f as webProfileDir, g as liveProfileHolder, h as chromeProcessState, i as clearWebRecord, l as webDir, m as writeWebRecord, n as browserLogFile, s as updateWebRecord } from "./state-
|
|
8
|
-
import { c as probeWebDrivers } from "./activity-
|
|
7
|
+
import { t as relaunchWithLogFile } from "./detached-entry-B9C_zeQC.mjs";
|
|
8
|
+
import { _ as removeSingletonFiles, c as webClaimRoot, d as webLogFile, f as webProfileDir, g as liveProfileHolder, h as chromeProcessState, i as clearWebRecord, l as webDir, m as writeWebRecord, n as browserLogFile, s as updateWebRecord } from "./state-D1Icyjlu.mjs";
|
|
9
|
+
import { c as probeWebDrivers } from "./activity-BSV745Kz.mjs";
|
|
9
10
|
import { t as connectOwnedBrowser } from "./cdp-Dq_ypAlJ.mjs";
|
|
10
|
-
import { i as chromeArgs, n as DESKTOP_PAGE, r as PHONE_SCREEN } from "./chrome-
|
|
11
|
+
import { i as chromeArgs, n as DESKTOP_PAGE, r as PHONE_SCREEN } from "./chrome-BnzZMqsR.mjs";
|
|
11
12
|
import { existsSync, mkdirSync, openSync, realpathSync } from "node:fs";
|
|
12
13
|
import { isAbsolute, resolve } from "node:path";
|
|
13
14
|
import { WEB_VIEWPORTS } from "@stim-cli/core/state";
|
|
@@ -385,7 +386,6 @@ const DEVTOOLS_WAIT_MS = 2e4;
|
|
|
385
386
|
const ROUTE_THROTTLE_MS = 250;
|
|
386
387
|
const CHROME_EXIT_WAIT_MS = 5e3;
|
|
387
388
|
const POLL_MS = 50;
|
|
388
|
-
const sleep = (ms) => new Promise((done) => setTimeout(done, ms));
|
|
389
389
|
function describe(error) {
|
|
390
390
|
return error instanceof Error ? error.message : String(error);
|
|
391
391
|
}
|
|
@@ -480,17 +480,17 @@ async function runWebSupervisor(options, { onExit = (code) => process.exit(code)
|
|
|
480
480
|
const stopChrome = async () => {
|
|
481
481
|
stopping = true;
|
|
482
482
|
try {
|
|
483
|
-
await Promise.race([cdp?.send("Browser.close"),
|
|
483
|
+
await Promise.race([cdp?.send("Browser.close"), cancellableSleep(3e3)]);
|
|
484
484
|
} catch {}
|
|
485
485
|
const deadline = Date.now() + CHROME_EXIT_WAIT_MS;
|
|
486
|
-
while (!chromeGone() && Date.now() < deadline) await
|
|
486
|
+
while (!chromeGone() && Date.now() < deadline) await cancellableSleep(POLL_MS);
|
|
487
487
|
const state = chromeRecord ? chromeProcessState(chromeRecord, profile) : "gone";
|
|
488
488
|
if (chromeRecord && (state === "running" || state === "lingering")) {
|
|
489
489
|
try {
|
|
490
490
|
signalProcessTree(chromeRecord.pid, "SIGKILL", { group: true });
|
|
491
491
|
} catch {}
|
|
492
492
|
const killDeadline = Date.now() + 2e3;
|
|
493
|
-
while (!chromeGone() && Date.now() < killDeadline) await
|
|
493
|
+
while (!chromeGone() && Date.now() < killDeadline) await cancellableSleep(POLL_MS);
|
|
494
494
|
}
|
|
495
495
|
};
|
|
496
496
|
for (const signal of ["SIGTERM", "SIGINT"]) process.on(signal, () => {
|
|
@@ -548,7 +548,7 @@ async function runWebSupervisor(options, { onExit = (code) => process.exit(code)
|
|
|
548
548
|
if (stopping) return;
|
|
549
549
|
(async () => {
|
|
550
550
|
const deadline = Date.now() + 2e3;
|
|
551
|
-
while (!chromeGone() && Date.now() < deadline) await
|
|
551
|
+
while (!chromeGone() && Date.now() < deadline) await cancellableSleep(POLL_MS);
|
|
552
552
|
finish(1, "error", "web_browser_exited", `Chrome exited (${signal ? `signal ${signal}` : `exit code ${code}`}); see ${browserLogFile(root)}`);
|
|
553
553
|
})();
|
|
554
554
|
});
|
|
@@ -560,7 +560,7 @@ async function runWebSupervisor(options, { onExit = (code) => process.exit(code)
|
|
|
560
560
|
connection = await connectOwnedBrowser(options.port, pid);
|
|
561
561
|
} catch (error) {
|
|
562
562
|
lastError = error;
|
|
563
|
-
await
|
|
563
|
+
await cancellableSleep(100);
|
|
564
564
|
}
|
|
565
565
|
if (!connection) throw new Error(`Chrome did not open DevTools on port ${options.port} within ${DEVTOOLS_WAIT_MS / 1e3}s: ${describe(lastError)}`);
|
|
566
566
|
cdp = connection;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as getExecutor } from "./exec-
|
|
1
|
+
import { O as writeConfigSetting, k as process_identity_exports, m as getProjectSettings } from "./config-BYDxlMY3.mjs";
|
|
2
|
+
import { t as getExecutor } from "./exec-DqKo9GKJ.mjs";
|
|
3
|
+
import { it as workspaceHiddenSetting } from "./settings-B717odTD.mjs";
|
|
3
4
|
import { existsSync, mkdirSync, readFileSync, realpathSync, renameSync, rmSync, writeFileSync } from "node:fs";
|
|
4
5
|
import { dirname, isAbsolute, join, relative } from "node:path";
|
|
5
6
|
import { join as join$1, resolve as resolve$1 } from "path";
|
|
6
|
-
import { WORKSPACE_AGENT_KEY, emulatorLogFile, readJsonObject, readWorkspaceState, readWorkspaceState as readWorkspaceState$1, sharedCcache as sharedCcache$1, sharedCompilationCache as sharedCompilationCache$1, supervisorLogFile, supervisorPidFile, workspaceAgentDeviceDir, workspaceDerivedData, workspaceLastUsed, workspaceLogErrorIndex, workspaceLogsDir as workspaceLogsDir$1, workspaceMetadataFile, workspaceStateFile, workspaceStateLock } from "@stim-cli/core/state";
|
|
7
|
+
import { WORKSPACE_AGENT_KEY, emulatorLogFile, isJsonObject, readJsonObject, readWorkspaceState, readWorkspaceState as readWorkspaceState$1, sharedCcache as sharedCcache$1, sharedCompilationCache as sharedCompilationCache$1, supervisorLogFile, supervisorPidFile, workspaceAgentDeviceDir, workspaceDerivedData, workspaceLastUsed, workspaceLogErrorIndex, workspaceLogsDir as workspaceLogsDir$1, workspaceMetadataFile, workspaceStateFile, workspaceStateLock } from "@stim-cli/core/state";
|
|
7
8
|
import { buildCacheRoot as sharedBuildCache, ensurePrivateDir, withDirLock as withDirLock$1, workspaceId as workspaceId$1, workspaceName as workspaceName$1, workspaceStateDir as workspaceDir } from "@stim-cli/core";
|
|
8
9
|
import { homedir } from "node:os";
|
|
9
10
|
import { readFile, readdir } from "node:fs/promises";
|
|
@@ -85,9 +86,9 @@ function agentFromEnv(env) {
|
|
|
85
86
|
* or absolute cwd. The format is Claude Code's own and undocumented, so every other field is optional.
|
|
86
87
|
*/
|
|
87
88
|
function parseClaudeSession(entry, apps) {
|
|
88
|
-
if (!
|
|
89
|
+
if (!isJsonObject(entry)) return null;
|
|
89
90
|
const raw = entry;
|
|
90
|
-
if (!Number.isSafeInteger(raw.pid) || raw.pid <= 0) return null;
|
|
91
|
+
if (typeof raw.pid !== "number" || !Number.isSafeInteger(raw.pid) || raw.pid <= 0) return null;
|
|
91
92
|
if (typeof raw.sessionId !== "string" || !SESSION_ID.test(raw.sessionId)) return null;
|
|
92
93
|
if (typeof raw.cwd !== "string" || !isAbsolute(raw.cwd)) return null;
|
|
93
94
|
const host = raw.hostSessionId;
|
|
@@ -349,7 +350,10 @@ function clearWorkspaceStateKey(root, key, shouldClear) {
|
|
|
349
350
|
return true;
|
|
350
351
|
});
|
|
351
352
|
}
|
|
352
|
-
/**
|
|
353
|
+
/**
|
|
354
|
+
* Records a command's use of the workspace, and the agent session whose shell ran it when there is one, and
|
|
355
|
+
* clears `workspace.hidden`.
|
|
356
|
+
*/
|
|
353
357
|
function recordWorkspaceUse(root, now = /* @__PURE__ */ new Date(), env = process.env) {
|
|
354
358
|
const agent = agentFromEnv(env);
|
|
355
359
|
let cwd = process.cwd();
|
|
@@ -366,6 +370,12 @@ function recordWorkspaceUse(root, now = /* @__PURE__ */ new Date(), env = proces
|
|
|
366
370
|
} } : {}
|
|
367
371
|
});
|
|
368
372
|
} catch {}
|
|
373
|
+
try {
|
|
374
|
+
if (workspaceHiddenSetting(getProjectSettings(root))) writeConfigSetting({
|
|
375
|
+
scope: "workspace",
|
|
376
|
+
projectPath: root
|
|
377
|
+
}, "workspace.hidden", void 0);
|
|
378
|
+
} catch {}
|
|
369
379
|
}
|
|
370
380
|
//#endregion
|
|
371
381
|
export { workspaceLogErrorIndex as C, withDirLock$1 as D, workspaceStateFile as E, workspaceId$1 as S, workspaceName$1 as T, supervisorLogFile as _, updateWorkspaceState as a, workspaceDerivedData as b, writeWorkspaceState as c, discoverAgentSessions as d, emulatorLogFile as f, sharedCompilationCache$1 as g, sharedCcache$1 as h, recordWorkspaceUse as i, agentKey as l, sharedBuildCache as m, clearWorkspaceStateKeys as n, withWorkspaceStateLock as o, ensureWorkspaceStorage as p, readWorkspaceState$1 as r, workspaceLastUsed as s, clearWorkspaceStateKey as t, attributeAgentSessions as u, supervisorPidFile as v, workspaceLogsDir$1 as w, workspaceDir as x, workspaceAgentDeviceDir as y };
|
|
@@ -1,20 +1,19 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as getExecutor } from "./exec-
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { T as workspaceName, r as readWorkspaceState$1, s as workspaceLastUsed, x as workspaceDir, y as workspaceAgentDeviceDir } from "./workspace-state-CSIFuuDa.mjs";
|
|
1
|
+
import { A as acquireAvdClaim, D as withConfigLock$1, F as listMountedVolumes, I as measuredDirectorySize, N as formatBytes, P as isOnMountedVolume, V as deviceSlotPlatforms, W as projectDeviceSlots, _ as loadConfig$1, d as getConfigDir, g as isPathPrefix, j as ownership_claim_exports, k as process_identity_exports, p as getProject } from "./config-BYDxlMY3.mjs";
|
|
2
|
+
import { t as getExecutor } from "./exec-DqKo9GKJ.mjs";
|
|
3
|
+
import { Dt as repoRoot, ct as resolveTailscaleBinary } from "./settings-B717odTD.mjs";
|
|
4
|
+
import { h as listBuildLocks } from "./device-lease-BX1sJQ2E.mjs";
|
|
5
|
+
import { T as workspaceName, r as readWorkspaceState$1, s as workspaceLastUsed, x as workspaceDir, y as workspaceAgentDeviceDir } from "./workspace-state-DJt_MMvf.mjs";
|
|
7
6
|
import { t as createLineReader } from "./process-output-Fpl8PYi8.mjs";
|
|
8
|
-
import { a as formatElapsed, l as phaseLine } from "./command-output-
|
|
9
|
-
import { B as ownedAvdSystemImage, I as ownedAvdDirectory, J as resolveOwnedAvdSerial, L as ownedAvdMatchesConfiguration, M as listOrphanedAvdDirectories, O as listAdbDevices, X as shutdownAndroidEmulator, Z as sleepSync, _ as avdStorageRoots, ct as eraseParkedAfter, et as waitForAndroidEmulatorShutdown, f as assertOwnedAvdStopped, ft as readParked, h as avdPathExists, nt as wipeAvdUserData, pt as removeParkedAfter, rt as isStimOwnedAvd, ut as parkSim, x as deleteAvd } from "./android-
|
|
10
|
-
import { n as readCreatedDevices$1, r as recordCreatedDevice, t as forgetCreatedDevice } from "./created-devices-
|
|
11
|
-
import { d as signalProcessTree, s as pidExists } from "./metro-
|
|
12
|
-
import { n as declareSpawnsOn, o as stopDeclaringSpawnsOn } from "./spawn-claims-
|
|
13
|
-
import { a as withWorkspaceProcessLock, o as workspaceProcessLockError, r as releaseBrowserPort, s as workspaceProcessLockPath } from "./named-ports-
|
|
14
|
-
import { _ as removeSingletonFiles, c as webClaimRoot, f as webProfileDir, g as liveProfileHolder, h as chromeProcessState, i as clearWebRecord, o as readWebRecord, t as CDP_PORT_LABEL, u as webFacts } from "./state-
|
|
15
|
-
import { t as agentDeviceDaemon, u as readAgentDeviceRecords } from "./activity-
|
|
16
|
-
import { E as resolveOwnedIosSim, O as shutdownIosSim, S as renameIosSim, c as eraseIosSim, o as deleteIosSim, p as listIosDeviceTypes, s as deleteParkedIosSim, v as parkedSimName, y as parseRuntimeVersion } from "./ios-
|
|
17
|
-
import { a as macosRuntimeClaim, n as macosDir } from "./state-
|
|
7
|
+
import { a as formatElapsed, l as phaseLine } from "./command-output-BTy8hZ0F.mjs";
|
|
8
|
+
import { B as ownedAvdSystemImage, I as ownedAvdDirectory, J as resolveOwnedAvdSerial, L as ownedAvdMatchesConfiguration, M as listOrphanedAvdDirectories, O as listAdbDevices, X as shutdownAndroidEmulator, Z as sleepSync, _ as avdStorageRoots, ct as eraseParkedAfter, et as waitForAndroidEmulatorShutdown, f as assertOwnedAvdStopped, ft as readParked, h as avdPathExists, nt as wipeAvdUserData, pt as removeParkedAfter, rt as isStimOwnedAvd, ut as parkSim, x as deleteAvd } from "./android-Mz_Inn3w.mjs";
|
|
9
|
+
import { n as readCreatedDevices$1, r as recordCreatedDevice, t as forgetCreatedDevice } from "./created-devices-Dzd5C2LF.mjs";
|
|
10
|
+
import { d as signalProcessTree, s as pidExists } from "./metro-DnCEjCxs.mjs";
|
|
11
|
+
import { n as declareSpawnsOn, o as stopDeclaringSpawnsOn } from "./spawn-claims-DVS5RkMS.mjs";
|
|
12
|
+
import { a as withWorkspaceProcessLock, o as workspaceProcessLockError, r as releaseBrowserPort, s as workspaceProcessLockPath } from "./named-ports-4WopRPg-.mjs";
|
|
13
|
+
import { _ as removeSingletonFiles, c as webClaimRoot, f as webProfileDir, g as liveProfileHolder, h as chromeProcessState, i as clearWebRecord, o as readWebRecord, t as CDP_PORT_LABEL, u as webFacts } from "./state-D1Icyjlu.mjs";
|
|
14
|
+
import { t as agentDeviceDaemon, u as readAgentDeviceRecords } from "./activity-BSV745Kz.mjs";
|
|
15
|
+
import { E as resolveOwnedIosSim, O as shutdownIosSim, S as renameIosSim, c as eraseIosSim, o as deleteIosSim, p as listIosDeviceTypes, s as deleteParkedIosSim, v as parkedSimName, y as parseRuntimeVersion } from "./ios-RkW4pnQf.mjs";
|
|
16
|
+
import { a as macosRuntimeClaim, n as macosDir } from "./state-CG_OFoaA.mjs";
|
|
18
17
|
import { closeSync, existsSync, lstatSync, mkdirSync, openSync, readFileSync, readdirSync, realpathSync, renameSync, rmSync, rmdirSync, statSync, unlinkSync } from "node:fs";
|
|
19
18
|
import { basename, dirname, isAbsolute, join, relative, resolve, sep } from "node:path";
|
|
20
19
|
import { basename as basename$1, isAbsolute as isAbsolute$1, join as join$1, relative as relative$1, resolve as resolve$1 } from "path";
|