rnxsim 0.1.354 → 0.1.356

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 (179) hide show
  1. package/cli/bridge-flow-runner.ts +117 -75
  2. package/cli/commands/inspect/settling.ts +9 -2
  3. package/cli/commands/maestro.ts +9 -4
  4. package/cli/outbound-endpoints.ts +1 -1
  5. package/detox/index.ts +144 -74
  6. package/detox/proof-frame.cjs +107 -0
  7. package/dist-cli/bin.js +5 -5
  8. package/dist-cli/chunks/{agent-FB7RPXO6.js → agent-RHSVLLYV.js} +2 -2
  9. package/dist-cli/chunks/{agent-wrapper-LFU3XEIG.js → agent-wrapper-76J2FUFC.js} +2 -2
  10. package/dist-cli/chunks/{app-fonts-FK6SETRG.js → app-fonts-NXSVJTJO.js} +2 -2
  11. package/dist-cli/chunks/{assert-3KQYZDDK.js → assert-2EYNC3CJ.js} +2 -2
  12. package/dist-cli/chunks/{auth-RFE3J27C.js → auth-BPTC5SFR.js} +2 -2
  13. package/dist-cli/chunks/{beta-XVY4WOYH.js → beta-SSB7KYRA.js} +2 -2
  14. package/dist-cli/chunks/{camera-JROBX5GM.js → camera-VVTXBQXD.js} +2 -2
  15. package/dist-cli/chunks/{chunk-YIUIFZAE.js → chunk-2UIMQVMQ.js} +2 -2
  16. package/dist-cli/chunks/{chunk-B7OMSJXC.js → chunk-3OCUYKVX.js} +2 -2
  17. package/dist-cli/chunks/{chunk-ZNABCRWX.js → chunk-3QQFGK3A.js} +2 -2
  18. package/dist-cli/chunks/{chunk-3QLERZYJ.js → chunk-3SYKCLCM.js} +2 -2
  19. package/dist-cli/chunks/{chunk-BNXXNT3I.js → chunk-4HQXS5PW.js} +2 -2
  20. package/dist-cli/chunks/{chunk-P4GCLNFM.js → chunk-4V6JMAXO.js} +2 -2
  21. package/dist-cli/chunks/{chunk-SLD2EMLZ.js → chunk-5AF3BFLN.js} +2 -2
  22. package/dist-cli/chunks/{chunk-UI2IFVHB.js → chunk-5AKKSWL5.js} +1 -1
  23. package/dist-cli/chunks/{chunk-THFM2CFT.js → chunk-5DAVGCVR.js} +1 -1
  24. package/dist-cli/chunks/{chunk-CKKDXTKV.js → chunk-6CGOQKVQ.js} +1 -1
  25. package/dist-cli/chunks/{chunk-766UIGCS.js → chunk-6TGSJGCM.js} +2 -2
  26. package/dist-cli/chunks/{chunk-ATQPDEED.js → chunk-6TWYMJCB.js} +2 -2
  27. package/dist-cli/chunks/{chunk-LRVL5MAX.js → chunk-7E22W7XX.js} +1 -1
  28. package/dist-cli/chunks/{chunk-CUK6Y2RR.js → chunk-7EAA32OO.js} +2 -2
  29. package/dist-cli/chunks/{chunk-UX6D4X6B.js → chunk-A2F5B2AB.js} +2 -2
  30. package/dist-cli/chunks/{chunk-HUU7ZUQK.js → chunk-AA7PHU2M.js} +2 -2
  31. package/dist-cli/chunks/{chunk-3RW6W3ZO.js → chunk-BMMSSIRU.js} +1 -1
  32. package/dist-cli/chunks/{chunk-JT4IMNCO.js → chunk-BNZHWG6Z.js} +2 -2
  33. package/dist-cli/chunks/{chunk-UAYXEP74.js → chunk-BXT37FPN.js} +1 -1
  34. package/dist-cli/chunks/{chunk-QQNNY43R.js → chunk-BZTXJUGV.js} +1 -1
  35. package/dist-cli/chunks/{chunk-ENPWD62S.js → chunk-CK4C6GPT.js} +2 -2
  36. package/dist-cli/chunks/{chunk-ZJUFI3R7.js → chunk-DRHNOXRS.js} +1 -1
  37. package/dist-cli/chunks/{chunk-MIK6LMG4.js → chunk-E5ALNGXA.js} +1 -1
  38. package/dist-cli/chunks/{chunk-FPH4TYZO.js → chunk-E7DVCUK4.js} +3 -3
  39. package/dist-cli/chunks/{chunk-7WANPS3W.js → chunk-EVQNKPUK.js} +2 -2
  40. package/dist-cli/chunks/{chunk-QRYTCPNO.js → chunk-FAUFZBRY.js} +2 -2
  41. package/dist-cli/chunks/chunk-FVKAF4VB.js +535 -0
  42. package/dist-cli/chunks/{chunk-JWXAXCC6.js → chunk-FWBQKEAA.js} +2 -2
  43. package/dist-cli/chunks/{chunk-IGV4KCCM.js → chunk-G2SHGCDI.js} +2 -2
  44. package/dist-cli/chunks/{chunk-PHIYWV44.js → chunk-GM6YYN6P.js} +2 -2
  45. package/dist-cli/chunks/{chunk-UVIWE3LD.js → chunk-I3G6YW6L.js} +1 -1
  46. package/dist-cli/chunks/{chunk-HIYCRDUP.js → chunk-IUQL37TT.js} +2 -2
  47. package/dist-cli/chunks/{chunk-LCPZNPIB.js → chunk-JU3ISZ7X.js} +1 -1
  48. package/dist-cli/chunks/{chunk-4OS3SXPZ.js → chunk-NPH2KUL6.js} +2 -2
  49. package/dist-cli/chunks/{chunk-77CBLMD4.js → chunk-NSEPQLZF.js} +1 -1
  50. package/dist-cli/chunks/{chunk-OKFSCCFC.js → chunk-OUMGSDHQ.js} +1 -1
  51. package/dist-cli/chunks/{chunk-IUL2WUWW.js → chunk-P5F5PM6C.js} +2 -2
  52. package/dist-cli/chunks/{chunk-GNKXRXND.js → chunk-RBQUFMLX.js} +2 -2
  53. package/dist-cli/chunks/{chunk-Y4GUWO3X.js → chunk-RFSFQUUJ.js} +1 -1
  54. package/dist-cli/chunks/{chunk-TJRKLRNP.js → chunk-RQZCBNCD.js} +1 -1
  55. package/dist-cli/chunks/{chunk-LC77IVGY.js → chunk-SZD4NAQR.js} +2 -2
  56. package/dist-cli/chunks/{chunk-37S36DFW.js → chunk-T33T5MW2.js} +1 -1
  57. package/dist-cli/chunks/{chunk-4AQCDL24.js → chunk-TLA6GLYI.js} +2 -2
  58. package/dist-cli/chunks/{chunk-JT435OOM.js → chunk-TV5LN34R.js} +2 -2
  59. package/dist-cli/chunks/{chunk-EWPX6LEN.js → chunk-UC6Y77PK.js} +2 -2
  60. package/dist-cli/chunks/{chunk-IICFLREN.js → chunk-UUD5NLLB.js} +1 -1
  61. package/dist-cli/chunks/{chunk-GYGDIT5V.js → chunk-VIEN2LIY.js} +2 -2
  62. package/dist-cli/chunks/{chunk-X2DJK3TB.js → chunk-VSADIZVW.js} +2 -2
  63. package/dist-cli/chunks/{chunk-JXNR2KAB.js → chunk-VZKPDDYL.js} +2 -2
  64. package/dist-cli/chunks/{chunk-YXBNGSG6.js → chunk-X2YH3SPS.js} +1 -1
  65. package/dist-cli/chunks/{chunk-LETVUC6M.js → chunk-XJ2LMLUP.js} +1 -1
  66. package/dist-cli/chunks/{chunk-24DA3Y2Z.js → chunk-XMNBS5CX.js} +1 -1
  67. package/dist-cli/chunks/{chunk-JJOHJNUQ.js → chunk-XT6FA7AH.js} +2 -2
  68. package/dist-cli/chunks/chunk-Z6CATT5W.js +4 -0
  69. package/dist-cli/chunks/{chunk-N3CE6AZP.js → chunk-ZK67ALEG.js} +2 -2
  70. package/dist-cli/chunks/{chunk-FEHHM2LV.js → chunk-ZME75NBJ.js} +13 -6
  71. package/dist-cli/chunks/{cleanup-F74ISXJC.js → cleanup-E7TDW64X.js} +2 -2
  72. package/dist-cli/chunks/cli-version-HUIGZMTX.js +4 -0
  73. package/dist-cli/chunks/{compat-C3RGYGXL.js → compat-ST5BY7FP.js} +2 -2
  74. package/dist-cli/chunks/{config-CDY2RB7Q.js → config-Z5NEHXI7.js} +2 -2
  75. package/dist-cli/chunks/{control-J35HAFZA.js → control-JMDFMAHT.js} +2 -2
  76. package/dist-cli/chunks/daemon-VIL2M7RE.js +4 -0
  77. package/dist-cli/chunks/{debug-3P2DUTUQ.js → debug-DO2G2BA7.js} +3 -3
  78. package/dist-cli/chunks/{desktop-XIXW34VW.js → desktop-M3UETMNI.js} +3 -3
  79. package/dist-cli/chunks/{detox-KAKTJ4P4.js → detox-7JI56JTD.js} +2 -2
  80. package/dist-cli/chunks/{device-4MAWLZMR.js → device-YTRCB26J.js} +2 -2
  81. package/dist-cli/chunks/{diagnose-A3R7HUYA.js → diagnose-BJT3RXDI.js} +2 -2
  82. package/dist-cli/chunks/{disk-cleanup-5R7JYCO6.js → disk-cleanup-HWA4ATEL.js} +2 -2
  83. package/dist-cli/chunks/drivers-HIKMT3EH.js +4 -0
  84. package/dist-cli/chunks/{film-GY5U752Q.js → film-GLGYFHGZ.js} +3 -3
  85. package/dist-cli/chunks/flow-AJT2OYLT.js +4 -0
  86. package/dist-cli/chunks/help-DSDQRHN3.js +4 -0
  87. package/dist-cli/chunks/{hidden-runtime-alias-HSGN3GN4.js → hidden-runtime-alias-A4TMRHFA.js} +2 -2
  88. package/dist-cli/chunks/{home-paths-BIUN4CBO.js → home-paths-A2ANFZHA.js} +2 -2
  89. package/dist-cli/chunks/inspect-NXE6LUT6.js +4 -0
  90. package/dist-cli/chunks/install-desktop-DMTXQF3R.js +4 -0
  91. package/dist-cli/chunks/{login-WKNMS4GG.js → login-OWD44PHN.js} +2 -2
  92. package/dist-cli/chunks/{logout-6UFUOESK.js → logout-WV5QPIUW.js} +2 -2
  93. package/dist-cli/chunks/{maestro-SJGV7B3W.js → maestro-AQ342FXT.js} +18 -13
  94. package/dist-cli/chunks/{maestro-generate-PMF2LLKX.js → maestro-generate-AUTBK5QS.js} +3 -3
  95. package/dist-cli/chunks/{mode-MN7LZCLB.js → mode-XICLRQZH.js} +2 -2
  96. package/dist-cli/chunks/{optional-demo-registry-HFA27YSP.js → optional-demo-registry-FOXLAYLM.js} +2 -2
  97. package/dist-cli/chunks/{perf-XGANSJT3.js → perf-PUT7IITA.js} +2 -2
  98. package/dist-cli/chunks/{permissions-25UWEJKW.js → permissions-AHJWQPCL.js} +2 -2
  99. package/dist-cli/chunks/privacy-AYLEWFZX.js +4 -0
  100. package/dist-cli/chunks/{record-MA3AI752.js → record-V4MZ33XI.js} +3 -3
  101. package/dist-cli/chunks/{report-issue-4DTESWE2.js → report-issue-QBB54OJ5.js} +2 -2
  102. package/dist-cli/chunks/reset-BMGMOHRM.js +4 -0
  103. package/dist-cli/chunks/runtime-SYUM3ASK.js +4 -0
  104. package/dist-cli/chunks/{screenshot-command-JUXMWXS5.js → screenshot-command-PK54GDUY.js} +3 -3
  105. package/dist-cli/chunks/{screenshot-layers-DJF2E4PE.js → screenshot-layers-AQZK3GRM.js} +2 -2
  106. package/dist-cli/chunks/{screenshots-capture-UGZU5GOW.js → screenshots-capture-KXQDIF2S.js} +2 -2
  107. package/dist-cli/chunks/{serve-H7GNKJSM.js → serve-YPNVL33J.js} +2 -2
  108. package/dist-cli/chunks/setup-FM3JVRMY.js +4 -0
  109. package/dist-cli/chunks/{skills-4JGPOSFE.js → skills-4CBIW5IP.js} +2 -2
  110. package/dist-cli/chunks/{state-DEAQFKVP.js → state-AWM3LRRR.js} +2 -2
  111. package/dist-cli/chunks/{storage-Y6F5NTGH.js → storage-S2LC3T7Q.js} +2 -2
  112. package/dist-cli/chunks/store-SZX3GXCL.js +4 -0
  113. package/dist-cli/chunks/telemetry-ANUHW6KD.js +4 -0
  114. package/dist-cli/chunks/{timeline-HOHYYDOC.js → timeline-4AWI6M2T.js} +2 -2
  115. package/dist-cli/chunks/{upgrade-QF5YHLSG.js → upgrade-WSYVILOP.js} +2 -2
  116. package/dist-cli/chunks/upload-U2KPYBGD.js +4 -0
  117. package/dist-cli/chunks/{version-PDCKYJLB.js → version-XE4ZTCON.js} +2 -2
  118. package/dist-cli/chunks/{web-C5EUAFFW.js → web-ZS6L2NLF.js} +2 -2
  119. package/dist-cli/chunks/welcome-UE273JKY.js +5 -0
  120. package/dist-cli/chunks/{what-happened-L56ZFIMJ.js → what-happened-6AHCKADV.js} +2 -2
  121. package/dist-lib/agent-daemon-client.cjs +1 -1
  122. package/dist-lib/agent-events.cjs +1 -1
  123. package/dist-lib/agent-identity.cjs +1 -1
  124. package/dist-lib/agent-sessions.cjs +1 -1
  125. package/dist-lib/attached-projects.cjs +1 -1
  126. package/dist-lib/auth/shared-session.cjs +1 -1
  127. package/dist-lib/backend-origin.cjs +1 -1
  128. package/dist-lib/beta.cjs +1 -1
  129. package/dist-lib/beta.mjs +1 -1
  130. package/dist-lib/bridge-constants.cjs +1 -1
  131. package/dist-lib/bridge-contract.cjs +1 -1
  132. package/dist-lib/cli-constants.cjs +1 -1
  133. package/dist-lib/config.cjs +1 -1
  134. package/dist-lib/detox/index.cjs +196 -54
  135. package/dist-lib/dev-bundle-resolution.cjs +1 -1
  136. package/dist-lib/home-paths.cjs +1 -1
  137. package/dist-lib/host/bridge-host.cjs +1 -1
  138. package/dist-lib/host/fetch-proxy-handler.cjs +1 -1
  139. package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
  140. package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
  141. package/dist-lib/host/replacement-module-handler.cjs +1 -1
  142. package/dist-lib/host/websocket-proxy.cjs +1 -1
  143. package/dist-lib/index.cjs +10 -3
  144. package/dist-lib/jump-to-source-babel.cjs +1 -1
  145. package/dist-lib/menu.cjs +1 -1
  146. package/dist-lib/menu.mjs +1 -1
  147. package/dist-lib/metro-production-bundle.cjs +1 -1
  148. package/dist-lib/metro-production-bundle.mjs +1 -1
  149. package/dist-lib/metro.cjs +1 -1
  150. package/dist-lib/profiles.cjs +1 -1
  151. package/dist-lib/public-brand.cjs +1 -1
  152. package/dist-lib/react-native-host-modules.cjs +1 -1
  153. package/dist-lib/react-native-host-modules.mjs +1 -1
  154. package/dist-lib/render-mode.cjs +1 -1
  155. package/dist-lib/scripts/dev-server-scanner.cjs +1 -1
  156. package/dist-lib/sdk.cjs +10 -3
  157. package/dist-lib/sdk.mjs +10 -3
  158. package/dist-lib/skills.cjs +4778 -211
  159. package/dist-lib/vite.cjs +1 -1
  160. package/package.json +1 -1
  161. package/skills/rnx-test/SKILL.md +6 -2
  162. package/src/bridge-contract.ts +8 -2
  163. package/dist-cli/chunks/chunk-BAWV2UEF.js +0 -543
  164. package/dist-cli/chunks/chunk-YATZ7U4S.js +0 -4
  165. package/dist-cli/chunks/cli-version-VSDCFXXN.js +0 -4
  166. package/dist-cli/chunks/daemon-DLLEODJY.js +0 -4
  167. package/dist-cli/chunks/drivers-BB3BRKDS.js +0 -4
  168. package/dist-cli/chunks/flow-ALMSRBVL.js +0 -4
  169. package/dist-cli/chunks/help-3ZL7MRUX.js +0 -4
  170. package/dist-cli/chunks/inspect-RCU7XVAO.js +0 -4
  171. package/dist-cli/chunks/install-desktop-LYVKLTCU.js +0 -4
  172. package/dist-cli/chunks/privacy-SIDMP5EF.js +0 -4
  173. package/dist-cli/chunks/reset-GPHG5XN3.js +0 -4
  174. package/dist-cli/chunks/runtime-VOEIOODA.js +0 -4
  175. package/dist-cli/chunks/setup-G2WYLPM6.js +0 -4
  176. package/dist-cli/chunks/store-3EQT7VU6.js +0 -4
  177. package/dist-cli/chunks/telemetry-FANCQHKG.js +0 -4
  178. package/dist-cli/chunks/upload-QKJHFAX7.js +0 -4
  179. package/dist-cli/chunks/welcome-3CQ2GE4F.js +0 -5
package/dist-lib/vite.cjs CHANGED
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.354 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.356 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __create = Object.create;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rnxsim",
3
- "version": "0.1.354",
3
+ "version": "0.1.356",
4
4
  "description": "rnx CLI, Vite and Metro plugins, and agent skills for driving React Native apps in the browser.",
5
5
  "author": "Tamagui LLC",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -157,7 +157,7 @@ rnx maestro --env USERNAME=alice test .maestro/login.yaml
157
157
 
158
158
  ### supported verbs
159
159
 
160
- `launchApp`, `stopApp`, `clearState`, `tapOn`, `tapAtCoords`, `longPressOn`, `inputText`,
160
+ `launchApp` (including JSON `arguments`), `stopApp`, `clearState`, `tapOn`, `tapAtCoords`, `longPressOn`, `inputText`,
161
161
  `pressKey`, `dispatchKey`, `hideKeyboard`, `eraseText`, `assertVisible`,
162
162
  `assertNotVisible`, `assertTreeContains`, `waitFor`, `extendedWaitUntil`,
163
163
  `waitForAnimationToEnd`, `scroll`, `scrollUntilVisible`, `scrollTo`,
@@ -173,7 +173,11 @@ interpolation.
173
173
  if a test depends on keychain state being reset, add an explicit
174
174
  in-app "sign out" step instead.
175
175
  - `when.platform` — rnx emulates iOS; android branches are skipped.
176
- - `openLink` — navigates `window.location`; no OS-level app routing.
176
+ - `openLink`: app routing works; there is no OS-level browser fallback.
177
+
178
+ `stopApp` keeps the guest runtime stopped. The next `launchApp` starts a fresh
179
+ guest with its replacement arguments, while `openLink` starts it with the URL
180
+ available to React Native Linking during app entry.
177
181
 
178
182
  ### not yet implemented
179
183
 
@@ -8,7 +8,10 @@
8
8
  // (see its `rnxsim` dependency and its `rnxsim/bridge-constants` import), so
9
9
  // this is the direction that ships.
10
10
 
11
- import type { SootSimAgentActionDetail } from '@sootsim/globals'
11
+ import type {
12
+ SootSimAgentActionDetail,
13
+ SootSimExternalAppLifecycleOptions,
14
+ } from '@sootsim/globals'
12
15
 
13
16
  export type BridgeCommandType =
14
17
  | 'evaluate'
@@ -196,7 +199,10 @@ export interface SimStateResult {
196
199
  // claiming the fast path.
197
200
  export type ResetStrategy = 'data' | 'full'
198
201
 
199
- export interface ResetOptions {
202
+ export interface ResetOptions extends Pick<
203
+ SootSimExternalAppLifecycleOptions,
204
+ 'initialUrl' | 'launchArguments'
205
+ > {
200
206
  strategy?: ResetStrategy
201
207
  // relaunch the app after wiping. default true.
202
208
  relaunch?: boolean