stim 1.20.0 → 1.20.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{activity-BrGh9EAI.mjs → activity-BaMpUQ4-.mjs} +2 -2
- package/dist/{agent-device-usage-output-DVyv_hWj.mjs → agent-device-usage-output-VPaOgGaF.mjs} +3 -3
- package/dist/{android-Brx6EKvJ.mjs → android-CLbBJ2ve.mjs} +34 -34
- package/dist/{android-CK3fpEyZ.mjs → android-CZh6ElG5.mjs} +1 -1
- package/dist/{android-BsYNR81W.mjs → android-DE8-JfGW.mjs} +4 -4
- package/dist/{android-cas-DCAuXryb.mjs → android-cas-BFpS84v2.mjs} +1 -1
- package/dist/{android-0vv-OruW.mjs → android-eXfIjKJr.mjs} +5 -5
- package/dist/api-run.mjs +13 -13
- package/dist/{app-install-0LgaQRT7.mjs → app-install-Cg9YJy3x.mjs} +1 -1
- package/dist/{artifact-CnC0mfov.mjs → artifact-Ctb2jpw6.mjs} +11 -11
- package/dist/{artifact-DClXJNWx.mjs → artifact-DXk_Fle_.mjs} +12 -12
- package/dist/{browser-web-CzBmhmgs.mjs → browser-web-xQWC2RWl.mjs} +10 -10
- package/dist/{budget-BONq9vXY.mjs → budget-RFbwFpG5.mjs} +11 -11
- package/dist/{build-BixRI6sB.mjs → build-COBA1tBc.mjs} +19 -19
- package/dist/{build-plan-CP0tckNU.mjs → build-plan-CRjAA6Qi.mjs} +14 -14
- package/dist/{ccache-CjHQ5F8g.mjs → ccache-CtbqWxIC.mjs} +3 -3
- package/dist/{cli-B2R8wH1F.mjs → cli-sGqlPu1n.mjs} +17 -17
- package/dist/cli.mjs +1 -1
- package/dist/{client-BLy1Pw2V.mjs → client-zqjFd79D.mjs} +4 -4
- package/dist/collector-run.mjs +3 -3
- package/dist/{command-output-BjPN99ZB.mjs → command-output-CPDq_90S.mjs} +1 -1
- package/dist/{created-devices-HU_DAb_Q.mjs → created-devices-CXBMtoj5.mjs} +1 -1
- package/dist/{dev-client-ClATaJoH.mjs → dev-client-BqYjMIaC.mjs} +2 -2
- package/dist/{device-B7lsC0K1.mjs → device-BgNj-qVj.mjs} +7 -7
- package/dist/{device-DVCwAFlX.mjs → device-D4DqjSZZ.mjs} +9 -9
- package/dist/{device-capacity-Ca_ke1LE.mjs → device-capacity-DrwHwR97.mjs} +8 -8
- package/dist/device-host-worker.mjs +11 -11
- package/dist/{device-ios-CRUqPxKw.mjs → device-ios-DE8KJd3b.mjs} +7 -7
- package/dist/{device-lease-DHOBXGgS.mjs → device-lease-C309csaB.mjs} +5 -4
- package/dist/{device-lease-run-CvDeHTkG.mjs → device-lease-run-Baelt3nc.mjs} +3 -3
- package/dist/{device-pool-L2-5GxMy.mjs → device-pool-DtK9S6AD.mjs} +2 -2
- package/dist/{device-remote-Bmg42063.mjs → device-remote-DjsNw8DD.mjs} +11 -11
- package/dist/{doctor-C2MSuMMg.mjs → doctor-DiP9HsIP.mjs} +10 -10
- package/dist/{doctor-DPAqhVCK.mjs → doctor-Dunu3Nv1.mjs} +17 -17
- package/dist/{doctor-watchman-CB4NnVZm.mjs → doctor-watchman-XJzT8tK-.mjs} +5 -4
- package/dist/{eas-build-Dw_ec2Km.mjs → eas-build-0gadvrca.mjs} +3 -3
- package/dist/{eas-session-ledger-DZlC-Fq3.mjs → eas-session-ledger-DJDeL4Uq.mjs} +1 -1
- package/dist/{error-diagnostics-Du7I_GuY.mjs → error-diagnostics-BhQtoLrZ.mjs} +7 -7
- package/dist/{gc-PWp34zGb.mjs → gc-D5cz5G0k.mjs} +17 -17
- package/dist/{gradle-C2OEKCCI.mjs → gradle-CZZo1TSA.mjs} +4 -4
- package/dist/{guide-Dai9lphv.mjs → guide-DakjcoUt.mjs} +31 -166
- package/dist/{hosted-android-DQ-Agsd8.mjs → hosted-android-C-D8Dj0_.mjs} +3 -3
- package/dist/{hosted-client-Io01s5By.mjs → hosted-client--hNFgixu.mjs} +2 -2
- package/dist/{hosted-ios-DIxFnYp-.mjs → hosted-ios-Chx9XQyI.mjs} +1 -1
- package/dist/{hosted-logs-DP-ABU_M.mjs → hosted-logs-Bkz0Hxzh.mjs} +5 -5
- package/dist/{hosted-macos-Aziw9T_9.mjs → hosted-macos-ckTjN-0V.mjs} +4 -4
- package/dist/{hosted-native-BdAQi21M.mjs → hosted-native-3KXZ5-qn.mjs} +5 -5
- package/dist/{idle-shutdown-DdMqoSUB.mjs → idle-shutdown-DhAUyf5s.mjs} +6 -6
- package/dist/{ios-BZ9dg2Fr.mjs → ios-BDBN-xpf.mjs} +8 -8
- package/dist/{ios-CZuv6gRv.mjs → ios-CQ8bHQXB.mjs} +27 -27
- package/dist/{ios-device-BreZOpM0.mjs → ios-device-BWHKGaJq.mjs} +1 -1
- package/dist/{ios-CXLIUxXJ.mjs → ios-o896T9PE.mjs} +17 -13
- package/dist/{ios-project-B9drt_aY.mjs → ios-project-BeOXKPt2.mjs} +7 -7
- package/dist/{ios-state-CjrL2qv-.mjs → ios-state-BsXMwo5y.mjs} +1 -1
- package/dist/{js-swap-C8icNYIY.mjs → js-swap-Z_mSuRrx.mjs} +2 -2
- package/dist/{launch-YrbqaIFj.mjs → launch-BootbMk4.mjs} +34 -34
- package/dist/{launch-DxH0THLP.mjs → launch-V1zqiOYn.mjs} +17 -17
- package/dist/{launch-verify-BzRdbuO1.mjs → launch-verify-Dl78EVgR.mjs} +2 -2
- package/dist/{logs-DHaRNfg7.mjs → logs-Bh4eqCCc.mjs} +9 -9
- package/dist/{macos-V_3Ui7g4.mjs → macos-D7irBW3A.mjs} +14 -14
- package/dist/macos-kivF8qKz.mjs +2 -0
- package/dist/macos-run.mjs +1 -1
- package/dist/maintenance-run.mjs +4 -4
- package/dist/{metro-D_j9sN-B.mjs → metro-_ZIE3Axg.mjs} +1 -1
- package/dist/{metro-gateway-BBJldOdi.mjs → metro-gateway-BzlQZQmU.mjs} +2 -2
- package/dist/{miss-reason-BPAzZS0r.mjs → miss-reason-SuTptY-I.mjs} +2 -2
- package/dist/{named-ports-C2lvoPsb.mjs → named-ports-O1TIl7tx.mjs} +1 -1
- package/dist/{native-android-lHzaew7r.mjs → native-android-D94RlJ-X.mjs} +7 -7
- package/dist/{native-runtime-BRmWL7ru.mjs → native-runtime-D024BAvm.mjs} +5 -5
- package/dist/{native-xcode-inputs-eutS19jU.mjs → native-xcode-inputs-UElfGs59.mjs} +2 -3
- package/dist/{native-xcode-ios-DP3cHLwu.mjs → native-xcode-ios-CjS-nDVY.mjs} +12 -12
- package/dist/offload-worker.mjs +12 -12
- package/dist/{ownership-DXzMMSx6.mjs → ownership-BrjepDiv.mjs} +2 -2
- package/dist/{placement-log-reFbjqEr.mjs → placement-log-BItXET1x.mjs} +1 -1
- package/dist/{plan-BDk2AeY_.mjs → plan-Jwu_vr-F.mjs} +8 -8
- package/dist/{plan-placement-D_YYlE6N.mjs → plan-placement-B466UYMU.mjs} +3 -3
- package/dist/{ports-jzvAJXXL.mjs → ports-BFRL6JTj.mjs} +2 -2
- package/dist/{prebuild-Bw44QxVh.mjs → prebuild-DB_zLOLc.mjs} +3 -3
- package/dist/{preview-BaBJ72Al.mjs → preview-BRLFRhTz.mjs} +10 -10
- package/dist/{project-B8_duAzW.mjs → project-DX8fXyw_.mjs} +107 -43
- package/dist/{react-native-android-chm1DMlA.mjs → react-native-android-CuXM3QS8.mjs} +21 -21
- package/dist/{react-native-build-oAw6gQeW.mjs → react-native-build-JUF31S8U.mjs} +5 -5
- package/dist/{react-native-doctor-DYXoh-6I.mjs → react-native-doctor-BQHqiXaQ.mjs} +4 -4
- package/dist/{react-native-ios-SCTK_CT5.mjs → react-native-ios-DtVO4qf2.mjs} +13 -13
- package/dist/{reload-D34GkY78.mjs → reload-D9V7D8gP.mjs} +12 -12
- package/dist/{remote-BU9UyhCJ.mjs → remote-CZiTijxG.mjs} +5 -5
- package/dist/{remote-cache-Bsts6f6Y.mjs → remote-cache-fxcl5C-L.mjs} +3 -3
- package/dist/{result-BDoRk1k3.mjs → result-BrfgXtdO.mjs} +7 -7
- package/dist/{run-qvff78hv.mjs → run-ClC8UVB5.mjs} +1 -1
- package/dist/{server-command-7XIKlWtO.mjs → server-command-DnJYLnr4.mjs} +3 -3
- package/dist/{server-expo-CsYu2aKL.mjs → server-expo-CUuzP9Mp.mjs} +1 -1
- package/dist/server-expo-Dvkd7JcF.mjs +2 -0
- package/dist/{settings-CT3E71-i.mjs → settings-BuKMOANA.mjs} +1 -1
- package/dist/settings.schema.json +1 -1
- package/dist/{slot-launch-B9hn96wd.mjs → slot-launch-CeCRr6MK.mjs} +5 -5
- package/dist/{start-CdvcTaXr.mjs → start-CRkG-mZ7.mjs} +8 -8
- package/dist/{start-CbQCSnXQ.mjs → start-mh6bS27z.mjs} +1 -1
- package/dist/{state-Boo0IMJq.mjs → state-BUpAmt2r.mjs} +1 -1
- package/dist/{state-DI84A-uu.mjs → state-lqxdOH_g.mjs} +5 -4
- package/dist/{stats-BIIDrjA8.mjs → stats-CaB1MxMi.mjs} +3 -3
- package/dist/{status-DARMkc9q.mjs → status-C7vzkInu.mjs} +20 -20
- package/dist/{status-watch-DvmI3SmN.mjs → status-watch-ZaVqRdtW.mjs} +3 -3
- package/dist/{stop-iNemHsJC.mjs → stop-BO80KJoT.mjs} +16 -16
- package/dist/{stop-CCZS-C9m.mjs → stop-BU7JaFCg.mjs} +2 -2
- package/dist/{stop-WQPQHLuy.mjs → stop-Cftw_sXJ.mjs} +5 -5
- package/dist/supervisor-run.mjs +13 -13
- package/dist/{support-CnE_SIjt.mjs → support-Ca6PZbpr.mjs} +4 -4
- package/dist/{support-DCco5fut.mjs → support-Co0wk8Cv.mjs} +8 -8
- package/dist/{swiftpm-macos-afeNUExW.mjs → swiftpm-macos-siFSkmCO.mjs} +2 -2
- package/dist/{tailnet-CoJUb2tB.mjs → tailnet-D7-tE_ug.mjs} +3 -3
- package/dist/toolchain-B12psPA2.mjs +2 -0
- package/dist/{toolchain-DqyDXs30.mjs → toolchain-SqehyPLw.mjs} +4 -4
- package/dist/{warm-progress-C3ASD6z5.mjs → warm-progress-5FAXkXIg.mjs} +2 -2
- package/dist/{watchman-CQl51YZu.mjs → watchman-CqmaGcIb.mjs} +4 -4
- package/dist/{web-B3eldHFH.mjs → web-BTjzE8mc.mjs} +5 -5
- package/dist/web-CHN5gh34.mjs +2 -0
- package/dist/web-run.mjs +4 -4
- package/dist/{workspace-state-CSIFuuDa.mjs → workspace-state-CvgTFe-h.mjs} +3 -3
- package/dist/{workspaces-D2xSHBDY.mjs → workspaces-C4kqIOlx.mjs} +11 -11
- package/dist/{worktree-q7_OZNY0.mjs → worktree-Cgnm6vZt.mjs} +1 -1
- package/dist/{worktree-BxDqaTev.mjs → worktree-DtRsh6go.mjs} +23 -23
- package/package.json +6 -7
- package/dist/macos-C0iljhsN.mjs +0 -2
- package/dist/server-expo-DV43vep4.mjs +0 -2
- package/dist/toolchain-BIupIro1.mjs +0 -2
- package/dist/web-BLXpOe6b.mjs +0 -2
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as ANDROID_AVD_CONFIG_HELP } from "./settings-Bbztm4oV.mjs";
|
|
2
|
-
import { r as findProjectRoot } from "./project-
|
|
3
|
-
import { s as RECENT_LAUNCH_MS } from "./watchman-
|
|
4
|
-
import { o as guideStatus, t as WATCHMAN_NESTED_WORKTREES } from "./doctor-watchman-
|
|
5
|
-
import "./status-watch-
|
|
2
|
+
import { r as findProjectRoot } from "./project-DX8fXyw_.mjs";
|
|
3
|
+
import { s as RECENT_LAUNCH_MS } from "./watchman-CqmaGcIb.mjs";
|
|
4
|
+
import { o as guideStatus, t as WATCHMAN_NESTED_WORKTREES } from "./doctor-watchman-XJzT8tK-.mjs";
|
|
5
|
+
import "./status-watch-ZaVqRdtW.mjs";
|
|
6
6
|
import { SETTINGS, SETTINGS_SCHEMA_URL, TUTORIAL_VERSION } from "@stim-cli/core/state";
|
|
7
7
|
import chalk from "chalk";
|
|
8
8
|
//#region src/guide/agent.ts
|
|
@@ -405,7 +405,7 @@ FULL TOPIC LIST
|
|
|
405
405
|
stim guide cleanup # what reclaims a device, and what deletes
|
|
406
406
|
stim guide cleanup collector # an unproven collector pid; why the app on a phone closed
|
|
407
407
|
stim guide cleanup memory # watchman and Gradle daemon memory; gc --cache watchman
|
|
408
|
-
stim guide tutorial # tutorial sections
|
|
408
|
+
stim guide tutorial # tutorial sections
|
|
409
409
|
stim guide tutorial run # create the app and build in a tour worktree
|
|
410
410
|
stim guide settings # configuration files and supported keys`
|
|
411
411
|
};
|
|
@@ -10260,139 +10260,13 @@ const TUTORIAL_RESTART_PROMPT = "Restart the Stim tutorial.";
|
|
|
10260
10260
|
const TUTORIAL_ASKS = {
|
|
10261
10261
|
begin: `Clone ${TUTORIAL_REPO} into {base} and follow stim guide tutorial run.`,
|
|
10262
10262
|
build: "Make the title purple in the Stim tutorial app and check it on the simulator.",
|
|
10263
|
-
|
|
10263
|
+
parallel: "While that builds, make the Tap me button green in a new worktree and check it on the simulator.",
|
|
10264
10264
|
finish: "I'm done with these experiments in {base} and don't need the changes. Stop the apps and remove the worktrees {worktrees}, and keep the clone. Follow stim guide tutorial finish.",
|
|
10265
10265
|
delete: "Remove the Stim tutorial: remove its worktrees and the clone at {base} with stim worktree remove, then delete {base}. Follow stim guide tutorial delete.",
|
|
10266
10266
|
share: `Open a pull request to ${TUTORIAL_REPO} with my title color change, with before and after screenshots from the simulator. See stim guide tutorial share.`,
|
|
10267
10267
|
retry: "The first iOS build of the tutorial app in {tour} failed. Find out why and run it on iOS again."
|
|
10268
10268
|
};
|
|
10269
|
-
|
|
10270
|
-
{
|
|
10271
|
-
id: "begin",
|
|
10272
|
-
title: "Get the Test App",
|
|
10273
|
-
who: "agent",
|
|
10274
|
-
optional: false,
|
|
10275
|
-
ask: TUTORIAL_ASKS.begin,
|
|
10276
|
-
section: "run",
|
|
10277
|
-
commands: []
|
|
10278
|
-
},
|
|
10279
|
-
{
|
|
10280
|
-
id: "build",
|
|
10281
|
-
title: "Make a Change",
|
|
10282
|
-
who: "you",
|
|
10283
|
-
optional: false,
|
|
10284
|
-
ask: TUTORIAL_ASKS.build,
|
|
10285
|
-
section: null,
|
|
10286
|
-
commands: []
|
|
10287
|
-
},
|
|
10288
|
-
{
|
|
10289
|
-
id: "parallel",
|
|
10290
|
-
title: "Change It Again in Parallel",
|
|
10291
|
-
who: "you",
|
|
10292
|
-
optional: false,
|
|
10293
|
-
ask: null,
|
|
10294
|
-
section: null,
|
|
10295
|
-
commands: []
|
|
10296
|
-
},
|
|
10297
|
-
{
|
|
10298
|
-
id: "device",
|
|
10299
|
-
title: "Live View and Control",
|
|
10300
|
-
who: "you",
|
|
10301
|
-
optional: true,
|
|
10302
|
-
ask: null,
|
|
10303
|
-
section: null,
|
|
10304
|
-
commands: ["stim status"]
|
|
10305
|
-
},
|
|
10306
|
-
{
|
|
10307
|
-
id: "agent",
|
|
10308
|
-
title: "Agent Actions and Replay",
|
|
10309
|
-
who: "agent",
|
|
10310
|
-
optional: true,
|
|
10311
|
-
ask: TUTORIAL_ASKS.agent,
|
|
10312
|
-
section: null,
|
|
10313
|
-
commands: [
|
|
10314
|
-
"cd \"{tour}\"",
|
|
10315
|
-
"export AGENT_DEVICE_STATE_DIR=\"{stateDir}\"",
|
|
10316
|
-
`agent-device open ${TUTORIAL_BUNDLE_ID} --platform ios --udid {udid}`,
|
|
10317
|
-
"agent-device screenshot tutorial.png",
|
|
10318
|
-
"agent-device close",
|
|
10319
|
-
"stim logs --source agent --tail 10"
|
|
10320
|
-
]
|
|
10321
|
-
},
|
|
10322
|
-
{
|
|
10323
|
-
id: "logs",
|
|
10324
|
-
title: "App Logs",
|
|
10325
|
-
who: "you",
|
|
10326
|
-
optional: true,
|
|
10327
|
-
ask: null,
|
|
10328
|
-
section: null,
|
|
10329
|
-
commands: ["stim logs --errors", "stim logs --grep stim:tutorial"]
|
|
10330
|
-
},
|
|
10331
|
-
{
|
|
10332
|
-
id: "phone",
|
|
10333
|
-
title: "Watch on Your Phone",
|
|
10334
|
-
who: "you",
|
|
10335
|
-
optional: true,
|
|
10336
|
-
ask: null,
|
|
10337
|
-
section: null,
|
|
10338
|
-
commands: []
|
|
10339
|
-
},
|
|
10340
|
-
{
|
|
10341
|
-
id: "share",
|
|
10342
|
-
title: "Share Your Finish",
|
|
10343
|
-
who: "you",
|
|
10344
|
-
optional: true,
|
|
10345
|
-
ask: TUTORIAL_ASKS.share,
|
|
10346
|
-
section: "share",
|
|
10347
|
-
commands: [
|
|
10348
|
-
"cd \"{tour}\"",
|
|
10349
|
-
"git commit -am \"<one-line summary>\"",
|
|
10350
|
-
"mkdir -p .expo/screenshots",
|
|
10351
|
-
"git checkout origin/main -- theme.js",
|
|
10352
|
-
"xcrun simctl io {udid} screenshot .expo/screenshots/before.png",
|
|
10353
|
-
"git checkout HEAD -- theme.js",
|
|
10354
|
-
"xcrun simctl io {udid} screenshot .expo/screenshots/after.png",
|
|
10355
|
-
"cp .github/pull_request_template.md .expo/screenshots/body.md",
|
|
10356
|
-
`gh repo fork ${TUTORIAL_REPO} --remote --remote-name fork`,
|
|
10357
|
-
"git push -u fork HEAD",
|
|
10358
|
-
`gh pr create --repo ${TUTORIAL_REPO} --title "<one-line summary>" --body-file .expo/screenshots/body.md --attach ".expo/screenshots/before.png#Before" --attach ".expo/screenshots/after.png#After"`
|
|
10359
|
-
]
|
|
10360
|
-
},
|
|
10361
|
-
{
|
|
10362
|
-
id: "finish",
|
|
10363
|
-
title: "Finish and Archive",
|
|
10364
|
-
who: "agent",
|
|
10365
|
-
optional: false,
|
|
10366
|
-
ask: TUTORIAL_ASKS.finish,
|
|
10367
|
-
section: "finish",
|
|
10368
|
-
commands: [
|
|
10369
|
-
"cd \"{tour}\"",
|
|
10370
|
-
"stim stop",
|
|
10371
|
-
"cd \"{second}\"",
|
|
10372
|
-
"stim stop",
|
|
10373
|
-
"cd \"{base}\"",
|
|
10374
|
-
"stim worktree remove \"{tour}\"",
|
|
10375
|
-
"stim worktree remove \"{second}\""
|
|
10376
|
-
]
|
|
10377
|
-
},
|
|
10378
|
-
{
|
|
10379
|
-
id: "delete",
|
|
10380
|
-
title: "Delete the Test App",
|
|
10381
|
-
who: "agent",
|
|
10382
|
-
optional: true,
|
|
10383
|
-
ask: TUTORIAL_ASKS.delete,
|
|
10384
|
-
section: "delete",
|
|
10385
|
-
commands: [
|
|
10386
|
-
"cd \"{base}\"",
|
|
10387
|
-
"grep stimTutorial app.json",
|
|
10388
|
-
"git worktree list",
|
|
10389
|
-
"stim stop",
|
|
10390
|
-
"stim worktree remove \"{base}\"",
|
|
10391
|
-
"cd ..",
|
|
10392
|
-
"rm -rf \"{base}\""
|
|
10393
|
-
]
|
|
10394
|
-
}
|
|
10395
|
-
];
|
|
10269
|
+
TUTORIAL_ASKS.begin, TUTORIAL_ASKS.build, TUTORIAL_ASKS.parallel, TUTORIAL_ASKS.share, TUTORIAL_ASKS.finish, TUTORIAL_ASKS.delete;
|
|
10396
10270
|
//#endregion
|
|
10397
10271
|
//#region src/guide/tutorial.ts
|
|
10398
10272
|
const paths = `Use {base} = ~/stim-tutorial unless the user named another folder. Expand ~
|
|
@@ -10420,9 +10294,6 @@ Without agent-device, use xcrun simctl io <ios.udid> screenshot
|
|
|
10420
10294
|
never booted. Take both with the same tool so they match in size. .expo/ is
|
|
10421
10295
|
ignored and outside the native fingerprint, so the files are never committed,
|
|
10422
10296
|
never change the build, and never block stim worktree remove. Keep each PNG under 1 MB.`;
|
|
10423
|
-
function commands(id) {
|
|
10424
|
-
return TUTORIAL_STEPS.find((step) => step.id === id).commands.join("\n");
|
|
10425
|
-
}
|
|
10426
10297
|
//#endregion
|
|
10427
10298
|
//#region src/guide/index.ts
|
|
10428
10299
|
const TOPICS = {
|
|
@@ -10444,11 +10315,9 @@ const TOPICS = {
|
|
|
10444
10315
|
preamble: () => `STIM TUTORIAL
|
|
10445
10316
|
|
|
10446
10317
|
The tutorial clones ${TUTORIAL_REPO}, a tiny Expo app, into {base}; the clone is
|
|
10447
|
-
never run, and only the optional delete step removes it. The user then asks for a visual change,
|
|
10448
|
-
|
|
10449
|
-
|
|
10450
|
-
first iOS build reuses the first one's native build. Only the clone, the
|
|
10451
|
-
optional share and the cleanup need this guide: the changes are ordinary
|
|
10318
|
+
never run, and only the optional delete step removes it. The user then asks for a visual change, which runs in a
|
|
10319
|
+
linked worktree of {base} with its own simulator and Metro port. Only the clone,
|
|
10320
|
+
the optional share and the cleanup need this guide: the changes are ordinary
|
|
10452
10321
|
requests, so follow stim guide agent for them, and check each change on the
|
|
10453
10322
|
device.
|
|
10454
10323
|
|
|
@@ -10461,8 +10330,7 @@ ${local}
|
|
|
10461
10330
|
|
|
10462
10331
|
${paths}
|
|
10463
10332
|
|
|
10464
|
-
Never pair phones, approve machines, or grant access on the user's behalf
|
|
10465
|
-
For commands to type yourself, read stim guide tutorial manual.`,
|
|
10333
|
+
Never pair phones, approve machines, or grant access on the user's behalf.`,
|
|
10466
10334
|
sections: {
|
|
10467
10335
|
run: {
|
|
10468
10336
|
summary: "Clone the test app into a fresh folder and install its dependencies",
|
|
@@ -10501,10 +10369,20 @@ ${local}
|
|
|
10501
10369
|
|
|
10502
10370
|
${screenshots}
|
|
10503
10371
|
|
|
10372
|
+
Check each change on the device with agent-device in that same session, after
|
|
10373
|
+
the after screenshot, so Stim Desktop records your actions and the user can
|
|
10374
|
+
replay them: tap tap-button, toggle dark-accent-switch, type a name in
|
|
10375
|
+
name-input, then take a screenshot (agent-device screenshot
|
|
10376
|
+
.expo/screenshots/checked.png) and confirm the change. Refs expire after each
|
|
10377
|
+
action: run agent-device snapshot -i before every action and use the ref it
|
|
10378
|
+
reports for that testID. When agentDevice.installed is false in stim status
|
|
10379
|
+
--json, do not install agent-device unasked: check the change with the build
|
|
10380
|
+
result and stim logs --errors, and tell the user that agent-device would let
|
|
10381
|
+
you tap through the app.
|
|
10382
|
+
|
|
10504
10383
|
PAUSE: end the turn. Tell the user to ask for a visual change next, such as
|
|
10505
|
-
making the title purple, in their own words.
|
|
10506
|
-
|
|
10507
|
-
minutes.`
|
|
10384
|
+
making the title purple, in their own words. It runs in a new linked worktree
|
|
10385
|
+
of {base} (stim guide agent), and its first iOS build takes a few minutes.`
|
|
10508
10386
|
},
|
|
10509
10387
|
finish: {
|
|
10510
10388
|
summary: "Stop and remove the two tutorial worktrees, keeping the clone",
|
|
@@ -10518,7 +10396,13 @@ as {tour} and {second}. Never touch any other worktree, an earlier tutorial
|
|
|
10518
10396
|
clone, or the clone itself. For each, stop from its path, then remove it from
|
|
10519
10397
|
the clone:
|
|
10520
10398
|
|
|
10521
|
-
|
|
10399
|
+
cd "{tour}"
|
|
10400
|
+
stim stop
|
|
10401
|
+
cd "{second}"
|
|
10402
|
+
stim stop
|
|
10403
|
+
cd "{base}"
|
|
10404
|
+
stim worktree remove "{tour}"
|
|
10405
|
+
stim worktree remove "{second}"
|
|
10522
10406
|
|
|
10523
10407
|
Use a plain remove first. The user's finish request says they do not need the
|
|
10524
10408
|
changes, which is the consent stim guide agent asks for before worktree remove
|
|
@@ -10631,25 +10515,6 @@ path; never use --force for them. Reuse the clone at {base} only if its
|
|
|
10631
10515
|
stimTutorial marker equals ${TUTORIAL_VERSION}; otherwise follow stim guide
|
|
10632
10516
|
tutorial run into a fresh folder. Pause as run instructs. Stim Desktop starts
|
|
10633
10517
|
over: only worktrees and builds after the restart count.`
|
|
10634
|
-
},
|
|
10635
|
-
manual: {
|
|
10636
|
-
summary: "The commands behind each step, for typing yourself",
|
|
10637
|
-
body: () => `MANUAL TUTORIAL
|
|
10638
|
-
|
|
10639
|
-
${paths}
|
|
10640
|
-
|
|
10641
|
-
Replace {base}, {tour} and {second} with absolute paths: {base} is the clone,
|
|
10642
|
-
{tour} the first worktree and {second} the second. For Agent Actions, replace
|
|
10643
|
-
{stateDir} with agentDevice.stateDir from stim ios or stim status --json and
|
|
10644
|
-
{udid} with the workspace's ios.udid. Clone with git
|
|
10645
|
-
clone https://github.com/${TUTORIAL_REPO}.git into a fresh folder outside any
|
|
10646
|
-
repository. Each change runs in its own worktree of that clone (stim guide
|
|
10647
|
-
agent); the clone itself is never run. Run each worktree on iOS with
|
|
10648
|
-
stim ios --remote local --remote-build local so it stays on this Mac.
|
|
10649
|
-
|
|
10650
|
-
${TUTORIAL_STEPS.map((step) => `${step.title}${step.optional ? " (optional)" : ""}\n\n${step.commands.length ? `\`\`\`sh\n${step.commands.join("\n")}\n\`\`\`` : "Ask your agent in your own words, or observe this step in Stim Desktop."}`).join("\n\n")}
|
|
10651
|
-
|
|
10652
|
-
Finish removes only the two tutorial worktrees, never the clone; stim guide tutorial finish says when --force is allowed for them.`
|
|
10653
10518
|
}
|
|
10654
10519
|
}
|
|
10655
10520
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { o as call, s as connectHost } from "./hosted-client
|
|
2
|
-
import { i as requestHostedMetro } from "./metro-gateway-
|
|
3
|
-
import { n as prepareHostedNative, r as stopHostedNative, t as placeHostedNative } from "./hosted-native-
|
|
1
|
+
import { o as call, s as connectHost } from "./hosted-client--hNFgixu.mjs";
|
|
2
|
+
import { i as requestHostedMetro } from "./metro-gateway-BzlQZQmU.mjs";
|
|
3
|
+
import { n as prepareHostedNative, r as stopHostedNative, t as placeHostedNative } from "./hosted-native-3KXZ5-qn.mjs";
|
|
4
4
|
//#region src/device-host/hosted-android.ts
|
|
5
5
|
async function prepareHostedAndroid(machine, selectors, recorded, mode) {
|
|
6
6
|
return await prepareHostedNative(machine, selectors, recorded, "android", false, mode);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { c as pinnedEndpoint$1 } from "./tailnet-
|
|
2
|
-
import { t as BuildConnection, x as configuredMachines } from "./client-
|
|
1
|
+
import { c as pinnedEndpoint$1 } from "./tailnet-D7-tE_ug.mjs";
|
|
2
|
+
import { t as BuildConnection, x as configuredMachines } from "./client-zqjFd79D.mjs";
|
|
3
3
|
import { lstatSync, readFileSync, readdirSync, readlinkSync } from "node:fs";
|
|
4
4
|
import { join } from "node:path";
|
|
5
5
|
import { HOSTED_APP_CHUNK_BYTES, hostedMacosAppSlot, isJsonObject, readDeviceHostMachines } from "@stim-cli/core/state";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as prepareHostedNative, r as stopHostedNative, t as placeHostedNative } from "./hosted-native-
|
|
1
|
+
import { n as prepareHostedNative, r as stopHostedNative, t as placeHostedNative } from "./hosted-native-3KXZ5-qn.mjs";
|
|
2
2
|
//#region src/device-host/hosted-ios.ts
|
|
3
3
|
async function prepareHostedIos(machine, selectors, recorded, mode) {
|
|
4
4
|
return await prepareHostedNative(machine, selectors, recorded, "ios", false, mode);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { t as getExecutor } from "./exec-B81Qodjn.mjs";
|
|
2
2
|
import { L as deviceSlotFileKey, W as validateDeviceSlot } from "./config-D0LhTY3S.mjs";
|
|
3
|
-
import { w as workspaceLogsDir$1, x as workspaceDir } from "./workspace-state-
|
|
4
|
-
import { l as phaseLine } from "./command-output-
|
|
5
|
-
import { o as parseMachine$1 } from "./tailnet-
|
|
3
|
+
import { w as workspaceLogsDir$1, x as workspaceDir } from "./workspace-state-CvgTFe-h.mjs";
|
|
4
|
+
import { l as phaseLine } from "./command-output-CPDq_90S.mjs";
|
|
5
|
+
import { o as parseMachine$1 } from "./tailnet-D7-tE_ug.mjs";
|
|
6
6
|
import { r as createNdjsonWriter } from "./ndjson-GOnbyvso.mjs";
|
|
7
|
-
import { n as macosDir } from "./state-
|
|
8
|
-
import { o as call } from "./hosted-client
|
|
7
|
+
import { n as macosDir } from "./state-BUpAmt2r.mjs";
|
|
8
|
+
import { o as call } from "./hosted-client--hNFgixu.mjs";
|
|
9
9
|
import { mkdirSync, readFileSync, realpathSync, renameSync, rmSync, writeFileSync } from "node:fs";
|
|
10
10
|
import { dirname, join } from "node:path";
|
|
11
11
|
import { isJsonObject, parseHostedAgentGrant, parseHostedLogsCursor } from "@stim-cli/core/state";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { l as phaseLine } from "./command-output-
|
|
2
|
-
import { n as macosDir } from "./state-
|
|
3
|
-
import { a as bundleManifest, c as heldNoLonger, f as settle, g as upload, h as unknownSession, i as attach, l as hostedSession, m as sleep, n as PREPARE_TIMEOUT_MS, o as call, p as sha256, r as SESSION_TIMEOUT_MS, s as connectHost, t as INSTALL_TIMEOUT_MS } from "./hosted-client
|
|
4
|
-
import { i as agentAccess, r as closeAgentConnection, t as pullHostedMacosLogs } from "./hosted-logs-
|
|
1
|
+
import { l as phaseLine } from "./command-output-CPDq_90S.mjs";
|
|
2
|
+
import { n as macosDir } from "./state-BUpAmt2r.mjs";
|
|
3
|
+
import { a as bundleManifest, c as heldNoLonger, f as settle, g as upload, h as unknownSession, i as attach, l as hostedSession, m as sleep, n as PREPARE_TIMEOUT_MS, o as call, p as sha256, r as SESSION_TIMEOUT_MS, s as connectHost, t as INSTALL_TIMEOUT_MS } from "./hosted-client--hNFgixu.mjs";
|
|
4
|
+
import { i as agentAccess, r as closeAgentConnection, t as pullHostedMacosLogs } from "./hosted-logs-Bkz0Hxzh.mjs";
|
|
5
5
|
import { rmSync } from "node:fs";
|
|
6
6
|
import { join } from "node:path";
|
|
7
7
|
import { hostedMacosBundleId, parseHostedMacosDevice, validHostedAppArguments } from "@stim-cli/core/state";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { r as readWorkspaceState$1, x as workspaceDir } from "./workspace-state-
|
|
2
|
-
import { a as bundleManifest, c as heldNoLonger, d as requireHostedAppMode, f as settle, g as upload, h as unknownSession, i as attach, l as hostedSession, m as sleep, n as PREPARE_TIMEOUT_MS, o as call, p as sha256, r as SESSION_TIMEOUT_MS, s as connectHost, t as INSTALL_TIMEOUT_MS } from "./hosted-client
|
|
3
|
-
import { i as agentAccess, n as pullHostedNativeLogs, r as closeAgentConnection } from "./hosted-logs-
|
|
4
|
-
import { a as requireHostedMetro, i as requestHostedMetro, n as closeHostedMetro } from "./metro-gateway-
|
|
5
|
-
import { s as writeHostedNative } from "./ios-state-
|
|
1
|
+
import { r as readWorkspaceState$1, x as workspaceDir } from "./workspace-state-CvgTFe-h.mjs";
|
|
2
|
+
import { a as bundleManifest, c as heldNoLonger, d as requireHostedAppMode, f as settle, g as upload, h as unknownSession, i as attach, l as hostedSession, m as sleep, n as PREPARE_TIMEOUT_MS, o as call, p as sha256, r as SESSION_TIMEOUT_MS, s as connectHost, t as INSTALL_TIMEOUT_MS } from "./hosted-client--hNFgixu.mjs";
|
|
3
|
+
import { i as agentAccess, n as pullHostedNativeLogs, r as closeAgentConnection } from "./hosted-logs-Bkz0Hxzh.mjs";
|
|
4
|
+
import { a as requireHostedMetro, i as requestHostedMetro, n as closeHostedMetro } from "./metro-gateway-BzlQZQmU.mjs";
|
|
5
|
+
import { s as writeHostedNative } from "./ios-state-BsXMwo5y.mjs";
|
|
6
6
|
import { readFileSync, rmSync } from "node:fs";
|
|
7
7
|
import { join } from "node:path";
|
|
8
8
|
import { hostedNativeRecords, isJsonObject, parseHostedAndroidDevice, parseHostedChoice, parseHostedDevice, parseHostedNativeOffer, parseHostedNativePlacement, requireAutomaticMachine, unreadableHostedNative } from "@stim-cli/core/state";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { R as deviceSlotKey, _ as loadConfig$1 } from "./config-D0LhTY3S.mjs";
|
|
2
|
-
import { a as updateWorkspaceState, r as readWorkspaceState$1 } from "./workspace-state-
|
|
3
|
-
import { o as formatLongDuration } from "./command-output-
|
|
4
|
-
import { T as canonicalPath, b as teardownOwnedIosSim, v as teardownOwnedAvd } from "./workspaces-
|
|
5
|
-
import { f as collectOwnedDeviceActivity, g as workspaceBuildInProgress } from "./budget-
|
|
6
|
-
import { m as workspaceDeviceLastUseAt } from "./activity-
|
|
7
|
-
import { d as listAllIosSims } from "./ios-
|
|
2
|
+
import { a as updateWorkspaceState, r as readWorkspaceState$1 } from "./workspace-state-CvgTFe-h.mjs";
|
|
3
|
+
import { o as formatLongDuration } from "./command-output-CPDq_90S.mjs";
|
|
4
|
+
import { T as canonicalPath, b as teardownOwnedIosSim, v as teardownOwnedAvd } from "./workspaces-C4kqIOlx.mjs";
|
|
5
|
+
import { f as collectOwnedDeviceActivity, g as workspaceBuildInProgress } from "./budget-RFbwFpG5.mjs";
|
|
6
|
+
import { m as workspaceDeviceLastUseAt } from "./activity-BaMpUQ4-.mjs";
|
|
7
|
+
import { d as listAllIosSims } from "./ios-o896T9PE.mjs";
|
|
8
8
|
import { DEVICE_IDLE_SHUTDOWN_KEY, DEVICE_RECLAIM_REASON, readDeviceIdleShutdowns } from "@stim-cli/core/state";
|
|
9
9
|
//#region src/devices/idle-shutdown.ts
|
|
10
10
|
const SIM_LIST_TIMEOUT_MS = 1e4;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { h as shortUdid, i as formatDuration, l as phaseLine, m as shortHash } from "./command-output-
|
|
2
|
-
import { D as schemesFromInfoPlist, T as pickDevClientScheme } from "./app-install-
|
|
3
|
-
import { n as ensureWorkspaceStorageSafely } from "./native-runtime-
|
|
4
|
-
import { t as devClientScheme } from "./dev-client-
|
|
5
|
-
import { f as podAction, h as resolveDeviceType, i as deviceLabel, m as resolveConfiguration, n as buildLogFile, s as iosConfigurationSetting, t as appNameFromPath, u as isReleaseConfiguration, v as resolveRuntime } from "./support-
|
|
6
|
-
import { a as lastBuildRecord, i as iosFacts, n as cacheDescription, s as writeLastBuild } from "./ios-project-
|
|
7
|
-
import { n as registerIos, r as runIosOperation, t as iosCommand } from "./ios-
|
|
8
|
-
import { a as collectorEntry, o as replaceCollector } from "./launch-
|
|
1
|
+
import { h as shortUdid, i as formatDuration, l as phaseLine, m as shortHash } from "./command-output-CPDq_90S.mjs";
|
|
2
|
+
import { D as schemesFromInfoPlist, T as pickDevClientScheme } from "./app-install-Cg9YJy3x.mjs";
|
|
3
|
+
import { n as ensureWorkspaceStorageSafely } from "./native-runtime-D024BAvm.mjs";
|
|
4
|
+
import { t as devClientScheme } from "./dev-client-BqYjMIaC.mjs";
|
|
5
|
+
import { f as podAction, h as resolveDeviceType, i as deviceLabel, m as resolveConfiguration, n as buildLogFile, s as iosConfigurationSetting, t as appNameFromPath, u as isReleaseConfiguration, v as resolveRuntime } from "./support-Co0wk8Cv.mjs";
|
|
6
|
+
import { a as lastBuildRecord, i as iosFacts, n as cacheDescription, s as writeLastBuild } from "./ios-project-BeOXKPt2.mjs";
|
|
7
|
+
import { n as registerIos, r as runIosOperation, t as iosCommand } from "./ios-CQ8bHQXB.mjs";
|
|
8
|
+
import { a as collectorEntry, o as replaceCollector } from "./launch-BootbMk4.mjs";
|
|
9
9
|
export { appNameFromPath, buildLogFile, cacheDescription, collectorEntry, iosCommand as default, devClientScheme, deviceLabel, ensureWorkspaceStorageSafely, formatDuration, iosConfigurationSetting, iosFacts, isReleaseConfiguration, lastBuildRecord, phaseLine, pickDevClientScheme, podAction, registerIos, replaceCollector, resolveConfiguration, resolveDeviceType, resolveRuntime, runIosOperation, schemesFromInfoPlist, shortHash, shortUdid, writeLastBuild };
|
|
@@ -1,34 +1,34 @@
|
|
|
1
1
|
import { L as deviceSlotFileKey, V as parseDeviceSlotOption, W as validateDeviceSlot } from "./config-D0LhTY3S.mjs";
|
|
2
2
|
import { C as iosSigningIdentitySha1Setting, I as projectSettingsContext, L as publicUrlSetting, N as metroWarmupUrlSetting, S as iosSigningIdentitySettingError, _ as iosLanHostSetting, a as SETTING_SHAPE_REMEDY, g as deviceReclaimIdleMinutesSetting, j as metroPortSetting, tt as tunnelModeSetting, v as iosLanHostSettingError, w as iosSigningIdentitySha1SettingError, x as iosSigningIdentitySetting } from "./settings-Bbztm4oV.mjs";
|
|
3
|
-
import { i as recordWorkspaceUse, w as workspaceLogsDir$1 } from "./workspace-state-
|
|
4
|
-
import { _ as stepTimer, g as stepClock, i as formatDuration, l as phaseLine } from "./command-output-
|
|
5
|
-
import { I as workspaceDevServerMode, t as NO_PROJECT_REFUSAL } from "./project-
|
|
6
|
-
import { at as POOL_SETTING_REMEDY, dt as parkedMaxSetting } from "./android-
|
|
7
|
-
import { At as createRunRecorder, It as statsProjectKey$1, Ot as startBuildProgress, kt as tapBuildLog, yt as NO_BUILD_PROGRESS } from "./budget-
|
|
8
|
-
import { S as withNativeBuildRun, b as runCancellation, p as cancelledFailure, x as runCancellationSignal } from "./tailnet-
|
|
3
|
+
import { i as recordWorkspaceUse, w as workspaceLogsDir$1 } from "./workspace-state-CvgTFe-h.mjs";
|
|
4
|
+
import { _ as stepTimer, g as stepClock, i as formatDuration, l as phaseLine } from "./command-output-CPDq_90S.mjs";
|
|
5
|
+
import { I as workspaceDevServerMode, t as NO_PROJECT_REFUSAL } from "./project-DX8fXyw_.mjs";
|
|
6
|
+
import { at as POOL_SETTING_REMEDY, dt as parkedMaxSetting } from "./android-DE8-JfGW.mjs";
|
|
7
|
+
import { At as createRunRecorder, It as statsProjectKey$1, Ot as startBuildProgress, kt as tapBuildLog, yt as NO_BUILD_PROGRESS } from "./budget-RFbwFpG5.mjs";
|
|
8
|
+
import { S as withNativeBuildRun, b as runCancellation, p as cancelledFailure, x as runCancellationSignal } from "./tailnet-D7-tE_ug.mjs";
|
|
9
9
|
import { d as optimizationBuildProfile, l as artifactCachePolicy } from "./errors-DzkMYh8Q.mjs";
|
|
10
|
-
import { o as exitAfterFlush } from "./remote-cache-
|
|
11
|
-
import { d as simulatorRuntime, f as setRemoteLogSink, g as parseBuildMachineOption } from "./client-
|
|
12
|
-
import { i as createIosSimSnapshot } from "./ios-
|
|
13
|
-
import { r as DEFAULT_METRO_PORT } from "./app-install-
|
|
14
|
-
import { r as isPhysicalDeviceRequest, t as ensureDevServer } from "./native-runtime-
|
|
15
|
-
import { _ as COMPILATION_CACHE_NOT_RUN } from "./toolchain-
|
|
16
|
-
import "./dev-client-
|
|
17
|
-
import { f as waitFlagConflict, o as leaseExpiryText } from "./device-lease-run-
|
|
18
|
-
import { r as hostedMetroSettings } from "./metro-gateway-
|
|
19
|
-
import { i as writeDevicePlacement } from "./ios-state-
|
|
20
|
-
import { a as refusePlan, i as printPlan, n as planFlagRefusal } from "./build-plan-
|
|
21
|
-
import { r as siblingPlatformSlots, t as launchSlotScope } from "./slot-launch-
|
|
22
|
-
import { S as ownedSessionName, n as binOnPath } from "./device-remote-
|
|
23
|
-
import { r as isEasBuildFailure } from "./eas-build-
|
|
24
|
-
import { t as didSetUpDevice } from "./device-
|
|
10
|
+
import { o as exitAfterFlush } from "./remote-cache-fxcl5C-L.mjs";
|
|
11
|
+
import { d as simulatorRuntime, f as setRemoteLogSink, g as parseBuildMachineOption } from "./client-zqjFd79D.mjs";
|
|
12
|
+
import { i as createIosSimSnapshot } from "./ios-o896T9PE.mjs";
|
|
13
|
+
import { r as DEFAULT_METRO_PORT } from "./app-install-Cg9YJy3x.mjs";
|
|
14
|
+
import { r as isPhysicalDeviceRequest, t as ensureDevServer } from "./native-runtime-D024BAvm.mjs";
|
|
15
|
+
import { _ as COMPILATION_CACHE_NOT_RUN } from "./toolchain-SqehyPLw.mjs";
|
|
16
|
+
import "./dev-client-BqYjMIaC.mjs";
|
|
17
|
+
import { f as waitFlagConflict, o as leaseExpiryText } from "./device-lease-run-Baelt3nc.mjs";
|
|
18
|
+
import { r as hostedMetroSettings } from "./metro-gateway-BzlQZQmU.mjs";
|
|
19
|
+
import { i as writeDevicePlacement } from "./ios-state-BsXMwo5y.mjs";
|
|
20
|
+
import { a as refusePlan, i as printPlan, n as planFlagRefusal } from "./build-plan-CRjAA6Qi.mjs";
|
|
21
|
+
import { r as siblingPlatformSlots, t as launchSlotScope } from "./slot-launch-CeCRr6MK.mjs";
|
|
22
|
+
import { S as ownedSessionName, n as binOnPath } from "./device-remote-DjsNw8DD.mjs";
|
|
23
|
+
import { r as isEasBuildFailure } from "./eas-build-0gadvrca.mjs";
|
|
24
|
+
import { t as didSetUpDevice } from "./device-D4DqjSZZ.mjs";
|
|
25
25
|
import { t as unsupportedPlan } from "./project-plan-BPwbLwQu.mjs";
|
|
26
|
-
import { _ as resolveIosWait, a as deviceModelRefusal, b as resolveSimulatorAppFlag, c as iosProjectPathError, d as ownedSimFailure, g as resolveIosBuildSetup, h as resolveDeviceType, i as deviceLabel, m as resolveConfiguration, n as buildLogFile, r as createIosDeviceWaitRun, u as isReleaseConfiguration, v as resolveRuntime, x as simulatorBuildArch, y as resolveSchemeSelection } from "./support-
|
|
27
|
-
import { a as lastBuildRecord, o as reportIosResult, s as writeLastBuild } from "./ios-project-
|
|
28
|
-
import { t as acquireIosArtifact } from "./artifact-
|
|
29
|
-
import { a as iosPlacementBudget, i as hostedIosSelectors, n as connectIosTarget, o as selectIosPlacement, r as hostedIosMetroNote, t as connectIosBackend } from "./remote-
|
|
30
|
-
import { a as iosPoolCandidates, c as isWirelessIosDevice, f as resolveIosPhysicalDevice, o as iosPoolNoCandidatesRefusal, r as iosDeviceBounds } from "./ios-device-
|
|
31
|
-
import { i as DEFAULT_DEPS, l as lanOriginUrlFor, s as chooseLanAddress, t as finishIosRun } from "./launch-
|
|
26
|
+
import { _ as resolveIosWait, a as deviceModelRefusal, b as resolveSimulatorAppFlag, c as iosProjectPathError, d as ownedSimFailure, g as resolveIosBuildSetup, h as resolveDeviceType, i as deviceLabel, m as resolveConfiguration, n as buildLogFile, r as createIosDeviceWaitRun, u as isReleaseConfiguration, v as resolveRuntime, x as simulatorBuildArch, y as resolveSchemeSelection } from "./support-Co0wk8Cv.mjs";
|
|
27
|
+
import { a as lastBuildRecord, o as reportIosResult, s as writeLastBuild } from "./ios-project-BeOXKPt2.mjs";
|
|
28
|
+
import { t as acquireIosArtifact } from "./artifact-Ctb2jpw6.mjs";
|
|
29
|
+
import { a as iosPlacementBudget, i as hostedIosSelectors, n as connectIosTarget, o as selectIosPlacement, r as hostedIosMetroNote, t as connectIosBackend } from "./remote-CZiTijxG.mjs";
|
|
30
|
+
import { a as iosPoolCandidates, c as isWirelessIosDevice, f as resolveIosPhysicalDevice, o as iosPoolNoCandidatesRefusal, r as iosDeviceBounds } from "./ios-device-BWHKGaJq.mjs";
|
|
31
|
+
import { i as DEFAULT_DEPS, l as lanOriginUrlFor, s as chooseLanAddress, t as finishIosRun } from "./launch-BootbMk4.mjs";
|
|
32
32
|
import { basename, join } from "node:path";
|
|
33
33
|
import { hostedIosStatus, parseMachine } from "@stim-cli/core/state";
|
|
34
34
|
import { workspaceId } from "@stim-cli/core";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as getExecutor } from "./exec-B81Qodjn.mjs";
|
|
2
2
|
import { n as TOOL_ERROR_PREFIX } from "./ios-device-B1B14xND.mjs";
|
|
3
|
-
import { i as INSTALL_ERROR } from "./app-install-
|
|
3
|
+
import { i as INSTALL_ERROR } from "./app-install-Cg9YJy3x.mjs";
|
|
4
4
|
import { mkdtempSync, readFileSync, rmSync } from "node:fs";
|
|
5
5
|
import { join } from "node:path";
|
|
6
6
|
import { tmpdir } from "node:os";
|
|
@@ -2,11 +2,11 @@ import { t as getExecutor } from "./exec-B81Qodjn.mjs";
|
|
|
2
2
|
import { _ as loadConfig$1, j as formatBytes } from "./config-D0LhTY3S.mjs";
|
|
3
3
|
import { n as stripAnsi, r as waitForChild, t as createLineReader } from "./process-output-Fpl8PYi8.mjs";
|
|
4
4
|
import { n as settingDefault, t as STIM_DESKTOP_OPEN_OPTIONS } from "./stim-desktop-8GQX2OV8.mjs";
|
|
5
|
-
import { it as isStimOwnedSim } from "./android-
|
|
6
|
-
import { r as recordCreatedDevice, t as forgetCreatedDevice } from "./created-devices-
|
|
5
|
+
import { it as isStimOwnedSim } from "./android-DE8-JfGW.mjs";
|
|
6
|
+
import { r as recordCreatedDevice, t as forgetCreatedDevice } from "./created-devices-CXBMtoj5.mjs";
|
|
7
7
|
import { closeSync, existsSync, lstatSync, mkdtempSync, openSync, readSync, readdirSync, rmSync, writeFileSync } from "node:fs";
|
|
8
8
|
import { dirname, isAbsolute, join, resolve } from "node:path";
|
|
9
|
-
import { IOS_SIMULATOR_APPS, settingDefinition } from "@stim-cli/core/state";
|
|
9
|
+
import { IOS_SIMULATOR_APPS, isJsonObject, settingDefinition } from "@stim-cli/core/state";
|
|
10
10
|
import { createHash } from "node:crypto";
|
|
11
11
|
import { tmpdir, totalmem } from "node:os";
|
|
12
12
|
//#region src/engine/installed-artifact.ts
|
|
@@ -577,10 +577,15 @@ function listIosDeviceTypes() {
|
|
|
577
577
|
timeoutMs: 3e4,
|
|
578
578
|
killSignal: "SIGKILL"
|
|
579
579
|
});
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
580
|
+
const data = JSON.parse(out);
|
|
581
|
+
return isJsonObject(data) ? deviceTypesOf(data.devicetypes) : [];
|
|
582
|
+
}
|
|
583
|
+
function deviceTypesOf(value) {
|
|
584
|
+
if (!Array.isArray(value)) return [];
|
|
585
|
+
return value.flatMap((entry) => isJsonObject(entry) && typeof entry.identifier === "string" && typeof entry.name === "string" ? [{
|
|
586
|
+
identifier: entry.identifier,
|
|
587
|
+
name: entry.name
|
|
588
|
+
}] : []);
|
|
584
589
|
}
|
|
585
590
|
function rankIphone(name) {
|
|
586
591
|
const gen = /^iPhone\s+(\d+)/i.exec(name);
|
|
@@ -874,15 +879,14 @@ async function listIosRuntimesAsync() {
|
|
|
874
879
|
return parseIosRuntimes(await getExecutor().runFileAsync("xcrun", LIST_RUNTIMES_ARGS, LIST_RUNTIMES_OPTIONS));
|
|
875
880
|
}
|
|
876
881
|
function parseIosRuntimes(out) {
|
|
877
|
-
|
|
882
|
+
const data = JSON.parse(out);
|
|
883
|
+
if (!isJsonObject(data) || !Array.isArray(data.runtimes)) return [];
|
|
884
|
+
return data.runtimes.flatMap((r) => isJsonObject(r) && r.isAvailable === true && r.platform === "iOS" && typeof r.identifier === "string" && typeof r.name === "string" && typeof r.version === "string" ? [{
|
|
878
885
|
identifier: r.identifier,
|
|
879
886
|
name: r.name,
|
|
880
887
|
version: r.version,
|
|
881
|
-
supportedDeviceTypes: (r.supportedDeviceTypes
|
|
882
|
-
|
|
883
|
-
name: d.name
|
|
884
|
-
}))
|
|
885
|
-
}));
|
|
888
|
+
supportedDeviceTypes: deviceTypesOf(r.supportedDeviceTypes)
|
|
889
|
+
}] : []);
|
|
886
890
|
}
|
|
887
891
|
//#endregion
|
|
888
892
|
export { configuredIosSimulatorViewer as A, resetIosKeychain as C, sanitizeDeviceLabel as D, resolveOwnedIosSim as E, memoryCulpritAdvice as F, memoryCulpritFindings as I, readMemoryCulprits as L, hostMemoryPressureAdvice as M, memoryCulpritsUnder as N, shutdownIosSim as O, readHostMemoryPressure as P, deviceHoldsApk as R, renameIosSim as S, resolveIosCreation as T, ownedSimName as _, createOwnedIosSim as a, parseSimctlList as b, eraseIosSim as c, listAllIosSims as d, listAllIosSimsAsync as f, listUserApps as g, listIosRuntimesAsync as h, createIosSimSnapshot as i, parseIosSimulatorApp as j, uninstallIosApp as k, iosRuntimeMatches as l, listIosRuntimes as m, bootIosSim as n, deleteIosSim as o, listIosDeviceTypes as p, clearIosAppData as r, deleteParkedIosSim as s, IOS_BOOT_TIMEOUT_MS as t, iosSimulatorFailureAdvice as u, parkedSimName as v, resetIosPrivacy as w, pickDefaultIosCreation as x, parseRuntimeVersion as y, deviceHoldsBundle as z };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { y as workspaceAgentDeviceDir } from "./workspace-state-
|
|
2
|
-
import { i as formatDuration, l as phaseLine } from "./command-output-
|
|
1
|
+
import { y as workspaceAgentDeviceDir } from "./workspace-state-CvgTFe-h.mjs";
|
|
2
|
+
import { i as formatDuration, l as phaseLine } from "./command-output-CPDq_90S.mjs";
|
|
3
3
|
import { i as workspaceLinkLine } from "./stim-desktop-8GQX2OV8.mjs";
|
|
4
|
-
import { Dt as recordFinishedBuild } from "./budget-
|
|
5
|
-
import { a as easAuthNote, n as UPLOAD_TIMEOUT_MS, r as cacheLevel, s as isEasAuthFailureText } from "./remote-cache-
|
|
6
|
-
import "./launch-verify-
|
|
7
|
-
import { S as compilationCacheActivityLine, _ as COMPILATION_CACHE_NOT_RUN } from "./toolchain-
|
|
8
|
-
import { i as deviceLabel } from "./support-
|
|
4
|
+
import { Dt as recordFinishedBuild } from "./budget-RFbwFpG5.mjs";
|
|
5
|
+
import { a as easAuthNote, n as UPLOAD_TIMEOUT_MS, r as cacheLevel, s as isEasAuthFailureText } from "./remote-cache-fxcl5C-L.mjs";
|
|
6
|
+
import "./launch-verify-Dl78EVgR.mjs";
|
|
7
|
+
import { S as compilationCacheActivityLine, _ as COMPILATION_CACHE_NOT_RUN } from "./toolchain-SqehyPLw.mjs";
|
|
8
|
+
import { i as deviceLabel } from "./support-Co0wk8Cv.mjs";
|
|
9
9
|
import { buildDiagnostics } from "@stim-cli/core/state";
|
|
10
10
|
import chalk from "chalk";
|
|
11
11
|
//#region src/commands/ios/result.ts
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as updateWorkspaceState, r as readWorkspaceState$1 } from "./workspace-state-
|
|
1
|
+
import { a as updateWorkspaceState, r as readWorkspaceState$1 } from "./workspace-state-CvgTFe-h.mjs";
|
|
2
2
|
import { HOSTED_METRO_REQUESTS_KEY, hostedMetroRequests, hostedNativeRecords, isJsonObject, parseHostedNativePlacement, unreadableHostedNative } from "@stim-cli/core/state";
|
|
3
3
|
//#region src/device-host/ios-state.ts
|
|
4
4
|
function readHostedNative(root, platform, slot) {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as getExecutor } from "./exec-B81Qodjn.mjs";
|
|
2
2
|
import { Ft as removeTemporaryEntry, Pt as makeTemporaryDirectory } from "./settings-Bbztm4oV.mjs";
|
|
3
3
|
import { r as waitForChild, t as createLineReader } from "./process-output-Fpl8PYi8.mjs";
|
|
4
|
-
import { t as cleanLine } from "./server-expo-
|
|
5
|
-
import { M as startBuildHeartbeat, P as tailLines, y as HEARTBEAT_INTERVAL_MS } from "./toolchain-
|
|
4
|
+
import { t as cleanLine } from "./server-expo-CUuzP9Mp.mjs";
|
|
5
|
+
import { M as startBuildHeartbeat, P as tailLines, y as HEARTBEAT_INTERVAL_MS } from "./toolchain-SqehyPLw.mjs";
|
|
6
6
|
import { existsSync, mkdirSync, readFileSync, readdirSync, rmSync, writeFileSync } from "node:fs";
|
|
7
7
|
import { basename, join } from "node:path";
|
|
8
8
|
import { randomUUID } from "node:crypto";
|