execbro 2.3.0 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/__tests__/helpers/fake-cdp-server.d.ts +0 -12
- package/build/__tests__/helpers/fake-cdp-server.d.ts.map +1 -1
- package/build/__tests__/helpers/fake-cdp-server.js +0 -22
- package/build/__tests__/helpers/fake-cdp-server.js.map +1 -1
- package/build/__tests__/helpers/tap-test-helpers.d.ts +0 -23
- package/build/__tests__/helpers/tap-test-helpers.d.ts.map +1 -1
- package/build/__tests__/helpers/tap-test-helpers.js +2 -29
- package/build/__tests__/helpers/tap-test-helpers.js.map +1 -1
- package/build/__tests__/integration/auto-reconnect.test.js +4 -14
- package/build/__tests__/integration/auto-reconnect.test.js.map +1 -1
- package/build/__tests__/integration/connection-health.test.js +1 -10
- package/build/__tests__/integration/connection-health.test.js.map +1 -1
- package/build/__tests__/integration/execute-in-app.test.js +1 -11
- package/build/__tests__/integration/execute-in-app.test.js.map +1 -1
- package/build/__tests__/integration/native-logs.test.js +0 -5
- package/build/__tests__/integration/native-logs.test.js.map +1 -1
- package/build/__tests__/integration/per-call-timeout.test.js +1 -5
- package/build/__tests__/integration/per-call-timeout.test.js.map +1 -1
- package/build/__tests__/integration/socket-close-midflight.test.js +2 -12
- package/build/__tests__/integration/socket-close-midflight.test.js.map +1 -1
- package/build/__tests__/integration/stale-target-probe.test.js +2 -17
- package/build/__tests__/integration/stale-target-probe.test.js.map +1 -1
- package/build/__tests__/integration/tap-strategies.test.js +2 -36
- package/build/__tests__/integration/tap-strategies.test.js.map +1 -1
- package/build/__tests__/integration/text-input.test.js +0 -39
- package/build/__tests__/integration/text-input.test.js.map +1 -1
- package/build/__tests__/integration/tools.test.js +1 -7
- package/build/__tests__/integration/tools.test.js.map +1 -1
- package/build/__tests__/setup.js +0 -2
- package/build/__tests__/setup.js.map +1 -1
- package/build/__tests__/unit/androidEmulatorAvds.test.js +0 -10
- package/build/__tests__/unit/androidEmulatorAvds.test.js.map +1 -1
- package/build/__tests__/unit/appContext.test.js +0 -2
- package/build/__tests__/unit/appContext.test.js.map +1 -1
- package/build/__tests__/unit/appRequest.test.js +0 -3
- package/build/__tests__/unit/appRequest.test.js.map +1 -1
- package/build/__tests__/unit/buildToken.test.js +0 -6
- package/build/__tests__/unit/buildToken.test.js.map +1 -1
- package/build/__tests__/unit/burst.test.js +0 -1
- package/build/__tests__/unit/burst.test.js.map +1 -1
- package/build/__tests__/unit/clearLogsNative.test.js +0 -8
- package/build/__tests__/unit/clearLogsNative.test.js.map +1 -1
- package/build/__tests__/unit/componentFormatNaming.test.js +0 -13
- package/build/__tests__/unit/componentFormatNaming.test.js.map +1 -1
- package/build/__tests__/unit/componentSource.test.js +0 -4
- package/build/__tests__/unit/componentSource.test.js.map +1 -1
- package/build/__tests__/unit/componentSourceResolve.test.js +0 -1
- package/build/__tests__/unit/componentSourceResolve.test.js.map +1 -1
- package/build/__tests__/unit/contextWiring.test.js +0 -3
- package/build/__tests__/unit/contextWiring.test.js.map +1 -1
- package/build/__tests__/unit/coordinateMiss.test.js +0 -16
- package/build/__tests__/unit/coordinateMiss.test.js.map +1 -1
- package/build/__tests__/unit/deviceDiscovery.test.js +0 -4
- package/build/__tests__/unit/deviceDiscovery.test.js.map +1 -1
- package/build/__tests__/unit/deviceResolution.test.js +0 -2
- package/build/__tests__/unit/deviceResolution.test.js.map +1 -1
- package/build/__tests__/unit/deviceResolver.test.js +0 -1
- package/build/__tests__/unit/deviceResolver.test.js.map +1 -1
- package/build/__tests__/unit/deviceResolverStaleRetry.test.js +0 -8
- package/build/__tests__/unit/deviceResolverStaleRetry.test.js.map +1 -1
- package/build/__tests__/unit/epochRender.test.js +0 -3
- package/build/__tests__/unit/epochRender.test.js.map +1 -1
- package/build/__tests__/unit/errorCategorization.test.js +0 -18
- package/build/__tests__/unit/errorCategorization.test.js.map +1 -1
- package/build/__tests__/unit/exec.test.js +0 -1
- package/build/__tests__/unit/exec.test.js.map +1 -1
- package/build/__tests__/unit/executor.test.js +0 -15
- package/build/__tests__/unit/executor.test.js.map +1 -1
- package/build/__tests__/unit/findElementTreeReuse.test.js +0 -12
- package/build/__tests__/unit/findElementTreeReuse.test.js.map +1 -1
- package/build/__tests__/unit/fingerprint.test.js +0 -4
- package/build/__tests__/unit/fingerprint.test.js.map +1 -1
- package/build/__tests__/unit/focusedInputTools.test.js +0 -4
- package/build/__tests__/unit/focusedInputTools.test.js.map +1 -1
- package/build/__tests__/unit/getLogsEmptyContract.test.js +0 -30
- package/build/__tests__/unit/getLogsEmptyContract.test.js.map +1 -1
- package/build/__tests__/unit/getLogsNativeSource.test.js +0 -22
- package/build/__tests__/unit/getLogsNativeSource.test.js.map +1 -1
- package/build/__tests__/unit/graphqlOperation.test.d.ts +2 -0
- package/build/__tests__/unit/graphqlOperation.test.d.ts.map +1 -0
- package/build/__tests__/unit/graphqlOperation.test.js +107 -0
- package/build/__tests__/unit/graphqlOperation.test.js.map +1 -0
- package/build/__tests__/unit/inputTarget.test.js +0 -16
- package/build/__tests__/unit/inputTarget.test.js.map +1 -1
- package/build/__tests__/unit/inputTextTool.test.js +0 -3
- package/build/__tests__/unit/inputTextTool.test.js.map +1 -1
- package/build/__tests__/unit/jsLogEvents.test.js +0 -3
- package/build/__tests__/unit/jsLogEvents.test.js.map +1 -1
- package/build/__tests__/unit/keyboardMetrics.test.js +0 -2
- package/build/__tests__/unit/keyboardMetrics.test.js.map +1 -1
- package/build/__tests__/unit/keyboardRaise.test.js +0 -2
- package/build/__tests__/unit/keyboardRaise.test.js.map +1 -1
- package/build/__tests__/unit/licenseGrace.test.js +1 -4
- package/build/__tests__/unit/licenseGrace.test.js.map +1 -1
- package/build/__tests__/unit/logEventFormat.test.js +0 -27
- package/build/__tests__/unit/logEventFormat.test.js.map +1 -1
- package/build/__tests__/unit/logEvents.test.js +1 -5
- package/build/__tests__/unit/logEvents.test.js.map +1 -1
- package/build/__tests__/unit/logGrouping.test.js +0 -2
- package/build/__tests__/unit/logGrouping.test.js.map +1 -1
- package/build/__tests__/unit/logOwnership.test.js +0 -11
- package/build/__tests__/unit/logOwnership.test.js.map +1 -1
- package/build/__tests__/unit/logRelevance.test.js +0 -6
- package/build/__tests__/unit/logRelevance.test.js.map +1 -1
- package/build/__tests__/unit/logSourceAndroid.test.js +0 -4
- package/build/__tests__/unit/logSourceAndroid.test.js.map +1 -1
- package/build/__tests__/unit/logSourceIos.test.js +0 -5
- package/build/__tests__/unit/logSourceIos.test.js.map +1 -1
- package/build/__tests__/unit/logs.test.js +0 -1
- package/build/__tests__/unit/logs.test.js.map +1 -1
- package/build/__tests__/unit/measureComponentTools.test.js +0 -1
- package/build/__tests__/unit/measureComponentTools.test.js.map +1 -1
- package/build/__tests__/unit/metro.test.js +0 -2
- package/build/__tests__/unit/metro.test.js.map +1 -1
- package/build/__tests__/unit/nativeInputValue.test.js +0 -4
- package/build/__tests__/unit/nativeInputValue.test.js.map +1 -1
- package/build/__tests__/unit/nativeLogs.test.js +1 -23
- package/build/__tests__/unit/nativeLogs.test.js.map +1 -1
- package/build/__tests__/unit/navigateVerify.test.js +0 -6
- package/build/__tests__/unit/navigateVerify.test.js.map +1 -1
- package/build/__tests__/unit/navigation.test.js +0 -5
- package/build/__tests__/unit/navigation.test.js.map +1 -1
- package/build/__tests__/unit/networkInterceptor.test.js +0 -2
- package/build/__tests__/unit/networkInterceptor.test.js.map +1 -1
- package/build/__tests__/unit/overlayGuard.test.d.ts +2 -0
- package/build/__tests__/unit/overlayGuard.test.d.ts.map +1 -0
- package/build/__tests__/unit/overlayGuard.test.js +123 -0
- package/build/__tests__/unit/overlayGuard.test.js.map +1 -0
- package/build/__tests__/unit/pendingExecutions.test.js +0 -6
- package/build/__tests__/unit/pendingExecutions.test.js.map +1 -1
- package/build/__tests__/unit/probe.test.js +0 -1
- package/build/__tests__/unit/probe.test.js.map +1 -1
- package/build/__tests__/unit/projectMemory.test.js +6 -7
- package/build/__tests__/unit/projectMemory.test.js.map +1 -1
- package/build/__tests__/unit/projectStore.test.js +2 -2
- package/build/__tests__/unit/projectStore.test.js.map +1 -1
- package/build/__tests__/unit/reloadAppAutoConnect.test.js +0 -9
- package/build/__tests__/unit/reloadAppAutoConnect.test.js.map +1 -1
- package/build/__tests__/unit/rnGlobalsBootstrap.test.js +3 -3
- package/build/__tests__/unit/rnGlobalsBootstrap.test.js.map +1 -1
- package/build/__tests__/unit/routeHistory.test.d.ts +2 -0
- package/build/__tests__/unit/routeHistory.test.d.ts.map +1 -0
- package/build/__tests__/unit/routeHistory.test.js +136 -0
- package/build/__tests__/unit/routeHistory.test.js.map +1 -0
- package/build/__tests__/unit/screenSpace.test.js +30 -13
- package/build/__tests__/unit/screenSpace.test.js.map +1 -1
- package/build/__tests__/unit/screenState.test.js +3 -6
- package/build/__tests__/unit/screenState.test.js.map +1 -1
- package/build/__tests__/unit/screenStateInputValue.test.js +0 -7
- package/build/__tests__/unit/screenStateInputValue.test.js.map +1 -1
- package/build/__tests__/unit/screenStateKeyboard.test.js +0 -1
- package/build/__tests__/unit/screenStateKeyboard.test.js.map +1 -1
- package/build/__tests__/unit/screenshot-diff.test.js +0 -6
- package/build/__tests__/unit/screenshot-diff.test.js.map +1 -1
- package/build/__tests__/unit/sdkMirrorPoller.test.js +0 -8
- package/build/__tests__/unit/sdkMirrorPoller.test.js.map +1 -1
- package/build/__tests__/unit/settleAndDiff.test.js +0 -11
- package/build/__tests__/unit/settleAndDiff.test.js.map +1 -1
- package/build/__tests__/unit/signedVerdict.test.js +0 -5
- package/build/__tests__/unit/signedVerdict.test.js.map +1 -1
- package/build/__tests__/unit/swipeDirection.test.js +6 -9
- package/build/__tests__/unit/swipeDirection.test.js.map +1 -1
- package/build/__tests__/unit/symbolicate.test.js +0 -1
- package/build/__tests__/unit/symbolicate.test.js.map +1 -1
- package/build/__tests__/unit/tap.test.js +2 -40
- package/build/__tests__/unit/tap.test.js.map +1 -1
- package/build/__tests__/unit/textEntry.test.js +0 -27
- package/build/__tests__/unit/textEntry.test.js.map +1 -1
- package/build/__tests__/unit/toolDescriptions.test.js +0 -40
- package/build/__tests__/unit/toolDescriptions.test.js.map +1 -1
- package/build/__tests__/unit/toolsJson.test.js +0 -10
- package/build/__tests__/unit/toolsJson.test.js.map +1 -1
- package/build/__tests__/unit/transportClassify.test.js +0 -20
- package/build/__tests__/unit/transportClassify.test.js.map +1 -1
- package/build/__tests__/unit/truncate.test.js +0 -5
- package/build/__tests__/unit/truncate.test.js.map +1 -1
- package/build/__tests__/unit/usageCache.test.js +0 -3
- package/build/__tests__/unit/usageCache.test.js.map +1 -1
- package/build/__tests__/unit/usageGate.test.js +1 -1
- package/build/__tests__/unit/usageGate.test.js.map +1 -1
- package/build/__tests__/unit/visibility.test.js +0 -8
- package/build/__tests__/unit/visibility.test.js.map +1 -1
- package/build/__tests__/unit/waitForMeasurements.test.js +2 -7
- package/build/__tests__/unit/waitForMeasurements.test.js.map +1 -1
- package/build/bin.js +0 -18
- package/build/bin.js.map +1 -1
- package/build/core/android.d.ts +0 -120
- package/build/core/android.d.ts.map +1 -1
- package/build/core/android.js +4 -259
- package/build/core/android.js.map +1 -1
- package/build/core/appContext.d.ts +0 -50
- package/build/core/appContext.d.ts.map +1 -1
- package/build/core/appContext.js +0 -50
- package/build/core/appContext.js.map +1 -1
- package/build/core/appDetection.d.ts +0 -16
- package/build/core/appDetection.d.ts.map +1 -1
- package/build/core/appDetection.js +0 -36
- package/build/core/appDetection.js.map +1 -1
- package/build/core/appRequest.d.ts +0 -12
- package/build/core/appRequest.d.ts.map +1 -1
- package/build/core/appRequest.js +0 -15
- package/build/core/appRequest.js.map +1 -1
- package/build/core/bufferConfig.d.ts +0 -2
- package/build/core/bufferConfig.d.ts.map +1 -1
- package/build/core/bufferConfig.js +0 -2
- package/build/core/bufferConfig.js.map +1 -1
- package/build/core/bundle.js +0 -40
- package/build/core/bundle.js.map +1 -1
- package/build/core/componentSearch.d.ts +0 -19
- package/build/core/componentSearch.d.ts.map +1 -1
- package/build/core/componentSearch.js +1 -22
- package/build/core/componentSearch.js.map +1 -1
- package/build/core/componentSource.d.ts +0 -21
- package/build/core/componentSource.d.ts.map +1 -1
- package/build/core/componentSource.js +0 -27
- package/build/core/componentSource.js.map +1 -1
- package/build/core/componentTree.js +0 -12
- package/build/core/componentTree.js.map +1 -1
- package/build/core/config.d.ts +0 -8
- package/build/core/config.d.ts.map +1 -1
- package/build/core/config.js +0 -10
- package/build/core/config.js.map +1 -1
- package/build/core/connection.d.ts +0 -76
- package/build/core/connection.d.ts.map +1 -1
- package/build/core/connection.js +15 -340
- package/build/core/connection.js.map +1 -1
- package/build/core/connectionState.d.ts +0 -78
- package/build/core/connectionState.d.ts.map +1 -1
- package/build/core/connectionState.js +4 -92
- package/build/core/connectionState.js.map +1 -1
- package/build/core/debugGlobals.js +0 -68
- package/build/core/debugGlobals.js.map +1 -1
- package/build/core/deviceDiscovery.d.ts +0 -5
- package/build/core/deviceDiscovery.d.ts.map +1 -1
- package/build/core/deviceDiscovery.js +0 -12
- package/build/core/deviceDiscovery.js.map +1 -1
- package/build/core/deviceResolver.d.ts +0 -10
- package/build/core/deviceResolver.d.ts.map +1 -1
- package/build/core/deviceResolver.js +0 -54
- package/build/core/deviceResolver.js.map +1 -1
- package/build/core/epochRender.d.ts +0 -12
- package/build/core/epochRender.d.ts.map +1 -1
- package/build/core/epochRender.js +0 -12
- package/build/core/epochRender.js.map +1 -1
- package/build/core/errorScreenParser.d.ts +0 -21
- package/build/core/errorScreenParser.d.ts.map +1 -1
- package/build/core/errorScreenParser.js +0 -50
- package/build/core/errorScreenParser.js.map +1 -1
- package/build/core/errors.d.ts +0 -15
- package/build/core/errors.d.ts.map +1 -1
- package/build/core/errors.js +0 -15
- package/build/core/errors.js.map +1 -1
- package/build/core/escapeNonAscii.d.ts +0 -9
- package/build/core/escapeNonAscii.d.ts.map +1 -1
- package/build/core/escapeNonAscii.js +1 -43
- package/build/core/escapeNonAscii.js.map +1 -1
- package/build/core/exec.d.ts +0 -12
- package/build/core/exec.d.ts.map +1 -1
- package/build/core/exec.js +2 -14
- package/build/core/exec.js.map +1 -1
- package/build/core/executor.js +0 -3
- package/build/core/executor.js.map +1 -1
- package/build/core/fastRefreshRecorder.js +0 -4
- package/build/core/fastRefreshRecorder.js.map +1 -1
- package/build/core/fastRefreshTools.js +0 -3
- package/build/core/fastRefreshTools.js.map +1 -1
- package/build/core/feedback.js +0 -4
- package/build/core/feedback.js.map +1 -1
- package/build/core/graphqlOperation.d.ts +13 -0
- package/build/core/graphqlOperation.d.ts.map +1 -0
- package/build/core/graphqlOperation.js +80 -0
- package/build/core/graphqlOperation.js.map +1 -0
- package/build/core/guides.d.ts +0 -10
- package/build/core/guides.d.ts.map +1 -1
- package/build/core/guides.js +0 -10
- package/build/core/guides.js.map +1 -1
- package/build/core/iconSemantics.d.ts +0 -15
- package/build/core/iconSemantics.d.ts.map +1 -1
- package/build/core/iconSemantics.js +0 -31
- package/build/core/iconSemantics.js.map +1 -1
- package/build/core/index.js +4 -47
- package/build/core/index.js.map +1 -1
- package/build/core/injected/visibility.d.ts +0 -30
- package/build/core/injected/visibility.d.ts.map +1 -1
- package/build/core/injected/visibility.js +0 -33
- package/build/core/injected/visibility.js.map +1 -1
- package/build/core/injectedFilters.d.ts +0 -28
- package/build/core/injectedFilters.d.ts.map +1 -1
- package/build/core/injectedFilters.js +0 -28
- package/build/core/injectedFilters.js.map +1 -1
- package/build/core/inputTarget.d.ts +1 -34
- package/build/core/inputTarget.d.ts.map +1 -1
- package/build/core/inputTarget.js +0 -26
- package/build/core/inputTarget.js.map +1 -1
- package/build/core/inputTargetTools.d.ts +0 -7
- package/build/core/inputTargetTools.d.ts.map +1 -1
- package/build/core/inputTargetTools.js +0 -7
- package/build/core/inputTargetTools.js.map +1 -1
- package/build/core/inspector.d.ts +0 -33
- package/build/core/inspector.d.ts.map +1 -1
- package/build/core/inspector.js +27 -40
- package/build/core/inspector.js.map +1 -1
- package/build/core/ios.d.ts +11 -122
- package/build/core/ios.d.ts.map +1 -1
- package/build/core/ios.js +32 -299
- package/build/core/ios.js.map +1 -1
- package/build/core/jsExecute.d.ts +0 -100
- package/build/core/jsExecute.d.ts.map +1 -1
- package/build/core/jsExecute.js +0 -261
- package/build/core/jsExecute.js.map +1 -1
- package/build/core/jsLogEvents.d.ts +0 -8
- package/build/core/jsLogEvents.d.ts.map +1 -1
- package/build/core/jsLogEvents.js +0 -8
- package/build/core/jsLogEvents.js.map +1 -1
- package/build/core/keyboardMetrics.js +0 -8
- package/build/core/keyboardMetrics.js.map +1 -1
- package/build/core/keyboardRaise.d.ts +0 -8
- package/build/core/keyboardRaise.d.ts.map +1 -1
- package/build/core/keyboardRaise.js +0 -23
- package/build/core/keyboardRaise.js.map +1 -1
- package/build/core/license.d.ts +0 -4
- package/build/core/license.d.ts.map +1 -1
- package/build/core/license.js +2 -55
- package/build/core/license.js.map +1 -1
- package/build/core/logDiagnosis.d.ts +0 -34
- package/build/core/logDiagnosis.d.ts.map +1 -1
- package/build/core/logDiagnosis.js +0 -15
- package/build/core/logDiagnosis.js.map +1 -1
- package/build/core/logEventFormat.d.ts +0 -1
- package/build/core/logEventFormat.d.ts.map +1 -1
- package/build/core/logEventFormat.js +0 -30
- package/build/core/logEventFormat.js.map +1 -1
- package/build/core/logEvents.d.ts +0 -54
- package/build/core/logEvents.d.ts.map +1 -1
- package/build/core/logEvents.js +0 -37
- package/build/core/logEvents.js.map +1 -1
- package/build/core/logGrouping.d.ts +0 -9
- package/build/core/logGrouping.d.ts.map +1 -1
- package/build/core/logGrouping.js +0 -17
- package/build/core/logGrouping.js.map +1 -1
- package/build/core/logOwnership.d.ts +0 -17
- package/build/core/logOwnership.d.ts.map +1 -1
- package/build/core/logOwnership.js +0 -34
- package/build/core/logOwnership.js.map +1 -1
- package/build/core/logRelevance.d.ts +0 -8
- package/build/core/logRelevance.d.ts.map +1 -1
- package/build/core/logRelevance.js +0 -15
- package/build/core/logRelevance.js.map +1 -1
- package/build/core/logSourceAndroid.d.ts +0 -8
- package/build/core/logSourceAndroid.d.ts.map +1 -1
- package/build/core/logSourceAndroid.js +0 -11
- package/build/core/logSourceAndroid.js.map +1 -1
- package/build/core/logSourceIos.d.ts +0 -8
- package/build/core/logSourceIos.d.ts.map +1 -1
- package/build/core/logSourceIos.js +1 -24
- package/build/core/logSourceIos.js.map +1 -1
- package/build/core/logbox.d.ts +0 -30
- package/build/core/logbox.d.ts.map +1 -1
- package/build/core/logbox.js +0 -43
- package/build/core/logbox.js.map +1 -1
- package/build/core/logs.d.ts +0 -6
- package/build/core/logs.d.ts.map +1 -1
- package/build/core/logs.js +0 -19
- package/build/core/logs.js.map +1 -1
- package/build/core/metro.d.ts +0 -14
- package/build/core/metro.d.ts.map +1 -1
- package/build/core/metro.js +1 -32
- package/build/core/metro.js.map +1 -1
- package/build/core/moduleRegistry.d.ts +0 -17
- package/build/core/moduleRegistry.d.ts.map +1 -1
- package/build/core/moduleRegistry.js +0 -17
- package/build/core/moduleRegistry.js.map +1 -1
- package/build/core/nativeInputValue.d.ts +0 -29
- package/build/core/nativeInputValue.d.ts.map +1 -1
- package/build/core/nativeInputValue.js +0 -18
- package/build/core/nativeInputValue.js.map +1 -1
- package/build/core/nativeLogs.d.ts +0 -47
- package/build/core/nativeLogs.d.ts.map +1 -1
- package/build/core/nativeLogs.js +0 -82
- package/build/core/nativeLogs.js.map +1 -1
- package/build/core/nativeOnlyHints.js +0 -4
- package/build/core/nativeOnlyHints.js.map +1 -1
- package/build/core/navigate.d.ts +0 -15
- package/build/core/navigate.d.ts.map +1 -1
- package/build/core/navigate.js +0 -22
- package/build/core/navigate.js.map +1 -1
- package/build/core/navigation.d.ts +0 -60
- package/build/core/navigation.d.ts.map +1 -1
- package/build/core/navigation.js +0 -60
- package/build/core/navigation.js.map +1 -1
- package/build/core/network.d.ts +0 -5
- package/build/core/network.d.ts.map +1 -1
- package/build/core/network.js +10 -31
- package/build/core/network.js.map +1 -1
- package/build/core/networkInterceptor.d.ts +0 -19
- package/build/core/networkInterceptor.d.ts.map +1 -1
- package/build/core/networkInterceptor.js +3 -27
- package/build/core/networkInterceptor.js.map +1 -1
- package/build/core/ocr.d.ts +0 -31
- package/build/core/ocr.d.ts.map +1 -1
- package/build/core/ocr.js +1 -71
- package/build/core/ocr.js.map +1 -1
- package/build/core/paths.js +0 -1
- package/build/core/paths.js.map +1 -1
- package/build/core/posthog.js +0 -7
- package/build/core/posthog.js.map +1 -1
- package/build/core/pressables.d.ts +0 -25
- package/build/core/pressables.d.ts.map +1 -1
- package/build/core/pressables.js +0 -37
- package/build/core/pressables.js.map +1 -1
- package/build/core/probe.d.ts +0 -9
- package/build/core/probe.d.ts.map +1 -1
- package/build/core/probe.js +0 -9
- package/build/core/probe.js.map +1 -1
- package/build/core/projectMemory.d.ts +0 -2
- package/build/core/projectMemory.d.ts.map +1 -1
- package/build/core/projectMemory.js +2 -7
- package/build/core/projectMemory.js.map +1 -1
- package/build/core/projectStore.d.ts +0 -18
- package/build/core/projectStore.d.ts.map +1 -1
- package/build/core/projectStore.js +0 -19
- package/build/core/projectStore.js.map +1 -1
- package/build/core/promiseHandles.d.ts +0 -13
- package/build/core/promiseHandles.d.ts.map +1 -1
- package/build/core/promiseHandles.js +0 -25
- package/build/core/promiseHandles.js.map +1 -1
- package/build/core/register.js +0 -44
- package/build/core/register.js.map +1 -1
- package/build/core/rnGlobalsBootstrap.d.ts +0 -13
- package/build/core/rnGlobalsBootstrap.d.ts.map +1 -1
- package/build/core/rnGlobalsBootstrap.js +0 -22
- package/build/core/rnGlobalsBootstrap.js.map +1 -1
- package/build/core/routeHistory.d.ts +24 -0
- package/build/core/routeHistory.d.ts.map +1 -0
- package/build/core/routeHistory.js +186 -0
- package/build/core/routeHistory.js.map +1 -0
- package/build/core/screenLayout.d.ts +0 -11
- package/build/core/screenLayout.d.ts.map +1 -1
- package/build/core/screenLayout.js +24 -61
- package/build/core/screenLayout.js.map +1 -1
- package/build/core/screenSpace.d.ts +32 -44
- package/build/core/screenSpace.d.ts.map +1 -1
- package/build/core/screenSpace.js +80 -46
- package/build/core/screenSpace.js.map +1 -1
- package/build/core/screenSpaceDevice.d.ts +0 -8
- package/build/core/screenSpaceDevice.d.ts.map +1 -1
- package/build/core/screenSpaceDevice.js +31 -14
- package/build/core/screenSpaceDevice.js.map +1 -1
- package/build/core/screenState.d.ts +2 -74
- package/build/core/screenState.d.ts.map +1 -1
- package/build/core/screenState.js +204 -145
- package/build/core/screenState.js.map +1 -1
- package/build/core/sdkBridge.js +0 -8
- package/build/core/sdkBridge.js.map +1 -1
- package/build/core/sdkMirrorPoller.d.ts +0 -18
- package/build/core/sdkMirrorPoller.d.ts.map +1 -1
- package/build/core/sdkMirrorPoller.js +0 -47
- package/build/core/sdkMirrorPoller.js.map +1 -1
- package/build/core/selectionBuffer.d.ts +0 -6
- package/build/core/selectionBuffer.d.ts.map +1 -1
- package/build/core/selectionBuffer.js +0 -5
- package/build/core/selectionBuffer.js.map +1 -1
- package/build/core/signedVerdict.js +0 -6
- package/build/core/signedVerdict.js.map +1 -1
- package/build/core/state.d.ts +0 -31
- package/build/core/state.d.ts.map +1 -1
- package/build/core/state.js +0 -57
- package/build/core/state.js.map +1 -1
- package/build/core/symbolicate.js +0 -11
- package/build/core/symbolicate.js.map +1 -1
- package/build/core/telemetry.d.ts +0 -47
- package/build/core/telemetry.d.ts.map +1 -1
- package/build/core/telemetry.js +1 -173
- package/build/core/telemetry.js.map +1 -1
- package/build/core/textEntry.d.ts +0 -34
- package/build/core/textEntry.d.ts.map +1 -1
- package/build/core/textEntry.js +0 -73
- package/build/core/textEntry.js.map +1 -1
- package/build/core/toolHelpers.d.ts +0 -12
- package/build/core/toolHelpers.d.ts.map +1 -1
- package/build/core/toolHelpers.js +2 -47
- package/build/core/toolHelpers.js.map +1 -1
- package/build/core/truncate.d.ts +0 -17
- package/build/core/truncate.d.ts.map +1 -1
- package/build/core/truncate.js +0 -32
- package/build/core/truncate.js.map +1 -1
- package/build/core/types.d.ts +0 -6
- package/build/core/types.d.ts.map +1 -1
- package/build/core/usageCache.js +0 -12
- package/build/core/usageCache.js.map +1 -1
- package/build/index.js +0 -18
- package/build/index.js.map +1 -1
- package/build/pro/coordinateMiss.d.ts +0 -30
- package/build/pro/coordinateMiss.d.ts.map +1 -1
- package/build/pro/coordinateMiss.js +0 -17
- package/build/pro/coordinateMiss.js.map +1 -1
- package/build/pro/overlayGuard.d.ts +27 -0
- package/build/pro/overlayGuard.d.ts.map +1 -0
- package/build/pro/overlayGuard.js +103 -0
- package/build/pro/overlayGuard.js.map +1 -0
- package/build/pro/screenshot-diff.js +4 -6
- package/build/pro/screenshot-diff.js.map +1 -1
- package/build/pro/tap.d.ts +0 -55
- package/build/pro/tap.d.ts.map +1 -1
- package/build/pro/tap.js +72 -316
- package/build/pro/tap.js.map +1 -1
- package/build/pro/usageGate.js +0 -9
- package/build/pro/usageGate.js.map +1 -1
- package/build/pro/usageNotifications.js +1 -13
- package/build/pro/usageNotifications.js.map +1 -1
- package/build/pro/verifyAction.d.ts +0 -13
- package/build/pro/verifyAction.d.ts.map +1 -1
- package/build/pro/verifyAction.js +0 -45
- package/build/pro/verifyAction.js.map +1 -1
- package/build/tools/_deviceArg.d.ts +0 -35
- package/build/tools/_deviceArg.d.ts.map +1 -1
- package/build/tools/_deviceArg.js +0 -35
- package/build/tools/_deviceArg.js.map +1 -1
- package/build/tools/accountTools.js +2 -2
- package/build/tools/accountTools.js.map +1 -1
- package/build/tools/bundleTools.js +0 -16
- package/build/tools/bundleTools.js.map +1 -1
- package/build/tools/componentTools.d.ts.map +1 -1
- package/build/tools/componentTools.js +47 -53
- package/build/tools/componentTools.js.map +1 -1
- package/build/tools/connectionTools.js +1 -59
- package/build/tools/connectionTools.js.map +1 -1
- package/build/tools/deviceTools.js +0 -11
- package/build/tools/deviceTools.js.map +1 -1
- package/build/tools/executionTools.js +1 -18
- package/build/tools/executionTools.js.map +1 -1
- package/build/tools/interactionTools.d.ts +0 -10
- package/build/tools/interactionTools.d.ts.map +1 -1
- package/build/tools/interactionTools.js +0 -57
- package/build/tools/interactionTools.js.map +1 -1
- package/build/tools/logTools.d.ts +0 -13
- package/build/tools/logTools.d.ts.map +1 -1
- package/build/tools/logTools.js +2 -126
- package/build/tools/logTools.js.map +1 -1
- package/build/tools/metaTools.js +0 -10
- package/build/tools/metaTools.js.map +1 -1
- package/build/tools/networkTools.js +4 -43
- package/build/tools/networkTools.js.map +1 -1
- package/build/tools/requestTools.js +0 -5
- package/build/tools/requestTools.js.map +1 -1
- package/build/tools/screenshotTools.js +5 -111
- package/build/tools/screenshotTools.js.map +1 -1
- package/package.json +2 -2
- package/tools.json +1 -0
package/build/core/telemetry.js
CHANGED
|
@@ -7,15 +7,8 @@ import { connectedApps } from "./state.js";
|
|
|
7
7
|
import { getPostHogClient } from "./posthog.js";
|
|
8
8
|
import { CONFIG_DIR } from "./paths.js";
|
|
9
9
|
import { API_BASE_URL, ACCOUNTS_API_KEY } from "./config.js";
|
|
10
|
-
// ============================================================================
|
|
11
|
-
// Configuration
|
|
12
|
-
// ============================================================================
|
|
13
10
|
const TELEMETRY_ENDPOINT = "https://rn-debugger-telemetry.500griven.workers.dev";
|
|
14
11
|
const TELEMETRY_API_KEY = "6a630181cb391ed5c42a188428cc2d2623dfe9333ec048193bb711ab58afe85e";
|
|
15
|
-
// Replaced at npm-publish time by scripts/inject-build-token.mjs, which
|
|
16
|
-
// rewrites the compiled build/index.js. A source checkout (any fork) keeps
|
|
17
|
-
// this literal — the telemetry Worker compares it to its own secret and
|
|
18
|
-
// resolves a non-match to a fork. Never store/commit the real value here.
|
|
19
12
|
const BUILD_TOKEN = "8d755bc6f2da14077192795c2e3053a3123dc05a523e872bcfef26aa30068422";
|
|
20
13
|
export function getTelemetryEndpoint() { return TELEMETRY_ENDPOINT; }
|
|
21
14
|
export function getTelemetryApiKey() { return TELEMETRY_API_KEY; }
|
|
@@ -23,7 +16,6 @@ export function getMeteringEndpoint() { return `${API_BASE_URL}/api/usage/report
|
|
|
23
16
|
const REQUEST_TIMEOUT_MS = 5_000;
|
|
24
17
|
const CONFIG_FILE = join(CONFIG_DIR, "telemetry.json");
|
|
25
18
|
export const TELEMETRY_JSONL_PATH = "/tmp/rn-devtools-telemetry.jsonl";
|
|
26
|
-
// Read version from package.json dynamically
|
|
27
19
|
export function getServerVersion() {
|
|
28
20
|
try {
|
|
29
21
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
@@ -35,7 +27,6 @@ export function getServerVersion() {
|
|
|
35
27
|
return "unknown";
|
|
36
28
|
}
|
|
37
29
|
}
|
|
38
|
-
// Read package name from package.json — differentiates canonical vs mirror publishes
|
|
39
30
|
export function getPackageName() {
|
|
40
31
|
try {
|
|
41
32
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
@@ -47,32 +38,17 @@ export function getPackageName() {
|
|
|
47
38
|
return "unknown";
|
|
48
39
|
}
|
|
49
40
|
}
|
|
50
|
-
// ============================================================================
|
|
51
|
-
// Error Categorization
|
|
52
|
-
// ============================================================================
|
|
53
41
|
export function categorizeError(errorMessage, errorContext) {
|
|
54
42
|
const lower = errorMessage.toLowerCase();
|
|
55
|
-
// UI driver not installed — must be checked before 'validation' which matches 'missing'/'install'.
|
|
56
|
-
// Covers iOS (idb/axe) and Android (adb): on Android, ADB plays the same role as a UI driver
|
|
57
|
-
// (required for accessibility enumeration, screenshots, and input). Treating it identically keeps
|
|
58
|
-
// the "driver_missing" bucket platform-agnostic and prevents these from polluting tap-tool error rates.
|
|
59
43
|
if (lower.includes('not installed') && (lower.includes('idb') || lower.includes('axe') || lower.includes('ui driver') || lower.includes('adb'))) {
|
|
60
44
|
return 'driver_missing';
|
|
61
45
|
}
|
|
62
|
-
// Strategy chain may contain driver-missing signals even when the primary error
|
|
63
|
-
// message doesn't (e.g., strategies skipped due to missing driver, last-resort
|
|
64
|
-
// strategy fails with "No element found" or "timed out")
|
|
65
46
|
if (errorContext) {
|
|
66
47
|
const ctxLower = errorContext.toLowerCase();
|
|
67
48
|
if (ctxLower.includes('ios ui driver is not instal') || ctxLower.includes('idb is not instal') || ctxLower.includes('adb is not installed') || ctxLower.includes('adb is not in path')) {
|
|
68
49
|
return 'driver_missing';
|
|
69
50
|
}
|
|
70
51
|
}
|
|
71
|
-
// Genuine JS runtime faults — the only signal that means "something actually
|
|
72
|
-
// broke at runtime". Checked before 'network' because that rule matches the
|
|
73
|
-
// bare substring 'fetch', which would swallow "TypeError: fetch is not a
|
|
74
|
-
// function", and before the Hermes guards below so a real fault inside an
|
|
75
|
-
// evaluated expression is not mistaken for an unsupported-syntax rejection.
|
|
76
52
|
if (lower.includes('typeerror') || lower.includes('referenceerror') || lower.includes('rangeerror') ||
|
|
77
53
|
lower.includes('is not a function') || lower.includes('is not defined') ||
|
|
78
54
|
lower.includes('cannot read propert') || lower.includes('maximum call stack') ||
|
|
@@ -85,42 +61,23 @@ export function categorizeError(errorMessage, errorContext) {
|
|
|
85
61
|
if (lower.includes('timeout') || lower.includes('timed out')) {
|
|
86
62
|
return 'timeout';
|
|
87
63
|
}
|
|
88
|
-
// Hermes eval guards. These reject an unsupported expression before anything
|
|
89
|
-
// runs, so they are agent-input mistakes, not runtime faults — but they say
|
|
90
|
-
// "Hermes Runtime.evaluate", which the generic execution rule below matches.
|
|
91
|
-
// In the 30d window ending 2026-08-01 that misfire was the *entire* contents
|
|
92
|
-
// of the execution category (203 events), hiding real faults in 'unknown'.
|
|
93
64
|
if (lower.includes('hermes') && (lower.includes('not supported') || lower.includes('not available'))) {
|
|
94
65
|
return 'validation';
|
|
95
66
|
}
|
|
96
|
-
// Check connection errors before validation (since "no debuggable devices found" contains "no")
|
|
97
67
|
if (lower.includes('no apps connected') || lower.includes('scan_metro') || lower.includes('not connected') ||
|
|
98
68
|
lower.includes('no debuggable devices') || lower.includes('no metro server') || lower.includes('connection failed')) {
|
|
99
69
|
return 'connection';
|
|
100
70
|
}
|
|
101
|
-
// App-state / environment problems: the tooling is fine, the app or device
|
|
102
|
-
// is not in a usable state. Grouped with 'connection' rather than earning a
|
|
103
|
-
// new category so the existing dashboard blob6 mapping stays valid.
|
|
104
71
|
if (lower.includes('react devtools hook') || lower.includes('no android device connected') ||
|
|
105
72
|
lower.includes('no ios device connected') || lower.includes('app is not available')) {
|
|
106
73
|
return 'connection';
|
|
107
74
|
}
|
|
108
|
-
// A native helper ran and failed (as opposed to being absent — driver_missing
|
|
109
|
-
// above already claimed that case). Real execution faults, and the ones most
|
|
110
|
-
// likely to be environment-specific and unreproducible locally.
|
|
111
75
|
if (lower.includes('command failed:')) {
|
|
112
76
|
return 'execution';
|
|
113
77
|
}
|
|
114
|
-
// Syntax/compilation errors in JS code
|
|
115
78
|
if (lower.includes('compiling js failed') || lower.includes('syntaxerror')) {
|
|
116
79
|
return 'validation';
|
|
117
80
|
}
|
|
118
|
-
// Agent-input and UI-state guards: the tool refused before doing anything
|
|
119
|
-
// because the request did not describe a reachable target. Placed after the
|
|
120
|
-
// connection checks so "No connected device matches …" only lands here when
|
|
121
|
-
// devices *are* connected and the name simply did not match — when nothing
|
|
122
|
-
// is connected the message carries the scan_metro hint and is a connection
|
|
123
|
-
// problem instead.
|
|
124
81
|
if (lower.includes('no focused textinput') || lower.includes('must provide at least one') ||
|
|
125
82
|
lower.includes('not visible on screen') || lower.includes('no component found') ||
|
|
126
83
|
lower.includes('no connected device matches') || lower.includes('redux-shaped store')) {
|
|
@@ -132,22 +89,15 @@ export function categorizeError(errorMessage, errorContext) {
|
|
|
132
89
|
if (lower.includes('evaluate') || lower.includes('execution') || lower.includes('runtime')) {
|
|
133
90
|
return 'execution';
|
|
134
91
|
}
|
|
135
|
-
// Tap element-not-found errors
|
|
136
92
|
if (lower.includes('no element found') || lower.includes('no pressable') || lower.includes('no focusable')) {
|
|
137
93
|
return 'validation';
|
|
138
94
|
}
|
|
139
|
-
// Tap connection errors (different message format from other tools)
|
|
140
95
|
if (lower.includes('no connected app') || lower.includes('connect_metro first') || lower.includes('auto-connect failed')) {
|
|
141
96
|
return 'connection';
|
|
142
97
|
}
|
|
143
98
|
return 'unknown';
|
|
144
99
|
}
|
|
145
|
-
// ============================================================================
|
|
146
|
-
// State
|
|
147
|
-
// ============================================================================
|
|
148
100
|
let telemetryEnabled = true;
|
|
149
|
-
// Metering heartbeat: the counted tool_invocation signal required to run the
|
|
150
|
-
// free tier. Stays on under the analytics opt-out; only disabled in dev/unconfigured.
|
|
151
101
|
let meteringEnabled = true;
|
|
152
102
|
export function isMeteringEnabled() {
|
|
153
103
|
return meteringEnabled;
|
|
@@ -158,28 +108,21 @@ let sessionId = null;
|
|
|
158
108
|
let isFirstRunSession = false;
|
|
159
109
|
let sessionStarted = false;
|
|
160
110
|
let lastToolTimestamp = null;
|
|
161
|
-
const SESSION_INACTIVITY_MS = 10 * 60 * 1000;
|
|
162
|
-
// ============================================================================
|
|
163
|
-
// Configuration Management
|
|
164
|
-
// ============================================================================
|
|
111
|
+
const SESSION_INACTIVITY_MS = 10 * 60 * 1000;
|
|
165
112
|
function loadOrCreateConfig() {
|
|
166
113
|
if (config)
|
|
167
114
|
return config;
|
|
168
|
-
// Try to load existing config
|
|
169
115
|
try {
|
|
170
116
|
if (existsSync(CONFIG_FILE)) {
|
|
171
117
|
const data = readFileSync(CONFIG_FILE, "utf-8");
|
|
172
118
|
const parsed = JSON.parse(data);
|
|
173
|
-
// Mark as not first run for subsequent sessions
|
|
174
119
|
config = { ...parsed, isFirstRun: false };
|
|
175
120
|
isFirstRunSession = false;
|
|
176
121
|
return config;
|
|
177
122
|
}
|
|
178
123
|
}
|
|
179
124
|
catch {
|
|
180
|
-
// Config file corrupted or unreadable, create new one
|
|
181
125
|
}
|
|
182
|
-
// Create new installation
|
|
183
126
|
const newConfig = {
|
|
184
127
|
_comment: "machine-managed by execbro — do not edit",
|
|
185
128
|
installationId: randomUUID(),
|
|
@@ -191,8 +134,6 @@ function loadOrCreateConfig() {
|
|
|
191
134
|
mkdirSync(CONFIG_DIR, { recursive: true });
|
|
192
135
|
}
|
|
193
136
|
writeFileSync(CONFIG_FILE, JSON.stringify(newConfig, null, 2));
|
|
194
|
-
// Re-read to handle race condition with concurrent sessions
|
|
195
|
-
// The file on disk is the source of truth
|
|
196
137
|
try {
|
|
197
138
|
const data = readFileSync(CONFIG_FILE, "utf-8");
|
|
198
139
|
const persistedConfig = JSON.parse(data);
|
|
@@ -201,14 +142,12 @@ function loadOrCreateConfig() {
|
|
|
201
142
|
return config;
|
|
202
143
|
}
|
|
203
144
|
catch {
|
|
204
|
-
// If re-read fails, use the config we created
|
|
205
145
|
config = newConfig;
|
|
206
146
|
isFirstRunSession = true;
|
|
207
147
|
return config;
|
|
208
148
|
}
|
|
209
149
|
}
|
|
210
150
|
catch {
|
|
211
|
-
// Failed to save config, continue with in-memory config
|
|
212
151
|
config = newConfig;
|
|
213
152
|
isFirstRunSession = true;
|
|
214
153
|
return config;
|
|
@@ -221,22 +160,6 @@ function isFirstRun() {
|
|
|
221
160
|
loadOrCreateConfig();
|
|
222
161
|
return isFirstRunSession;
|
|
223
162
|
}
|
|
224
|
-
// ============================================================================
|
|
225
|
-
// Telemetry Control
|
|
226
|
-
// ============================================================================
|
|
227
|
-
/**
|
|
228
|
-
* Pure decision function for the analytics/metering split. Kept side-effect
|
|
229
|
-
* free so it can be unit-tested without touching env vars, disk config, or
|
|
230
|
-
* the network.
|
|
231
|
-
*
|
|
232
|
-
* Rules:
|
|
233
|
-
* - Unconfigured endpoint or dev mode: both off (no telemetry of any kind
|
|
234
|
-
* should leave a dev/unconfigured install).
|
|
235
|
-
* - Env opt-out (EXECBRO_TELEMETRY=false|0|off): analytics off, but metering
|
|
236
|
-
* stays on — the free-tier cap requires the counted signal regardless of
|
|
237
|
-
* the user's analytics preference.
|
|
238
|
-
* - Otherwise: both on.
|
|
239
|
-
*/
|
|
240
163
|
export function resolveTelemetryModes(opts) {
|
|
241
164
|
if (!opts.endpointConfigured || opts.devMode) {
|
|
242
165
|
return { telemetryEnabled: false, meteringEnabled: false };
|
|
@@ -247,36 +170,26 @@ export function resolveTelemetryModes(opts) {
|
|
|
247
170
|
return { telemetryEnabled: true, meteringEnabled: true };
|
|
248
171
|
}
|
|
249
172
|
export function initTelemetry() {
|
|
250
|
-
// Check environment variable for opt-out
|
|
251
173
|
const envValue = process.env.EXECBRO_TELEMETRY ?? process.env.RN_DEBUGGER_TELEMETRY;
|
|
252
174
|
const envOptOut = envValue === "false" || envValue === "0" || envValue === "off";
|
|
253
|
-
// Check if dev mode is enabled in config (for local development)
|
|
254
175
|
const cfg = loadOrCreateConfig();
|
|
255
|
-
// Check if endpoint is configured (placeholder detection)
|
|
256
176
|
const endpointConfigured = !TELEMETRY_ENDPOINT.includes("YOUR_SUBDOMAIN") && !TELEMETRY_API_KEY.includes("YOUR_API_KEY");
|
|
257
177
|
const modes = resolveTelemetryModes({ envOptOut, devMode: !!cfg.devMode, endpointConfigured });
|
|
258
178
|
telemetryEnabled = modes.telemetryEnabled;
|
|
259
179
|
meteringEnabled = modes.meteringEnabled;
|
|
260
180
|
if (!meteringEnabled) {
|
|
261
|
-
// Dev mode or unconfigured endpoint — no telemetry of any kind.
|
|
262
181
|
return;
|
|
263
182
|
}
|
|
264
183
|
if (envOptOut) {
|
|
265
184
|
console.error("[execbro] Product analytics disabled via EXECBRO_TELEMETRY. Usage metering (required for the free tier) remains active.");
|
|
266
185
|
}
|
|
267
|
-
// Load/create config (generates installation ID) — needed for metering
|
|
268
|
-
// dispatch even when analytics is opted out.
|
|
269
186
|
loadOrCreateConfig();
|
|
270
187
|
sessionId = randomUUID();
|
|
271
188
|
if (telemetryEnabled) {
|
|
272
|
-
// Track that an AI agent session loaded our MCP server (regardless of tool usage)
|
|
273
189
|
trackEvent("session_start", {
|
|
274
190
|
isFirstRun: isFirstRun()
|
|
275
191
|
});
|
|
276
192
|
}
|
|
277
|
-
// Track session end on SIGINT/SIGTERM. Each event is dispatched immediately
|
|
278
|
-
// with keepalive, so no flush is needed — the OS completes the request even
|
|
279
|
-
// if the process exits right after.
|
|
280
193
|
const handleExit = () => {
|
|
281
194
|
if (telemetryEnabled && sessionStarted && sessionStartTime) {
|
|
282
195
|
trackEvent("session_end", {
|
|
@@ -291,7 +204,6 @@ export function initTelemetry() {
|
|
|
291
204
|
export function isTelemetryEnabled() {
|
|
292
205
|
return telemetryEnabled;
|
|
293
206
|
}
|
|
294
|
-
/** Check if the MCP server is running in dev mode (config-based). */
|
|
295
207
|
export function isDevMode() {
|
|
296
208
|
try {
|
|
297
209
|
const cfg = loadOrCreateConfig();
|
|
@@ -301,9 +213,6 @@ export function isDevMode() {
|
|
|
301
213
|
return false;
|
|
302
214
|
}
|
|
303
215
|
}
|
|
304
|
-
// ============================================================================
|
|
305
|
-
// Event Tracking
|
|
306
|
-
// ============================================================================
|
|
307
216
|
function trackEvent(name, properties) {
|
|
308
217
|
if (!telemetryEnabled)
|
|
309
218
|
return;
|
|
@@ -315,7 +224,6 @@ function trackEvent(name, properties) {
|
|
|
315
224
|
});
|
|
316
225
|
}
|
|
317
226
|
export function trackToolInvocation(toolName, success, durationMs, errorMessage, errorContext, inputTokens, outputTokens, targetPlatform, emptyResult, meaningful, changeRate, tapStrategy, iosDriver, responsePreview, emptyReason, artifactKey, ocrClosestMatch, fiberPressableCount, accessibilityMatchCount, appRoute, errorOrigin) {
|
|
318
|
-
// Append to local JSONL file for local dashboard (dev mode only)
|
|
319
227
|
if (isDevMode())
|
|
320
228
|
try {
|
|
321
229
|
const localEvent = {
|
|
@@ -332,8 +240,6 @@ export function trackToolInvocation(toolName, success, durationMs, errorMessage,
|
|
|
332
240
|
if (errorOrigin)
|
|
333
241
|
localEvent.errorOrigin = errorOrigin;
|
|
334
242
|
}
|
|
335
|
-
// Always propagate errorContext when provided — unmeaningful taps are success=true
|
|
336
|
-
// but still carry triage context (predicate, strategy chain) that must reach blob8.
|
|
337
243
|
if (errorContext)
|
|
338
244
|
localEvent.errorContext = errorContext.substring(0, 150);
|
|
339
245
|
if (targetPlatform)
|
|
@@ -365,22 +271,12 @@ export function trackToolInvocation(toolName, success, durationMs, errorMessage,
|
|
|
365
271
|
appendFileSync(TELEMETRY_JSONL_PATH, JSON.stringify(localEvent) + "\n");
|
|
366
272
|
}
|
|
367
273
|
catch {
|
|
368
|
-
// Non-critical — local file sink failure should never affect tool execution
|
|
369
274
|
}
|
|
370
|
-
// Metering (the counted dispatch below) fires whenever meteringEnabled is
|
|
371
|
-
// true, even if the user opted out of analytics via EXECBRO_TELEMETRY.
|
|
372
|
-
// Only bail out entirely when both are off (dev mode / unconfigured
|
|
373
|
-
// endpoint) — nothing downstream has anything to do in that case.
|
|
374
275
|
if (!meteringEnabled && !telemetryEnabled)
|
|
375
276
|
return;
|
|
376
277
|
const now = Date.now();
|
|
377
|
-
// Start a new session on first tool use or after inactivity gap. This is
|
|
378
|
-
// analytics bookkeeping only — trackEvent/trackAppDetection/trackLicenseCheck
|
|
379
|
-
// each internally no-op when telemetryEnabled is false, so this block has
|
|
380
|
-
// no effect on opted-out users beyond harmless local state updates.
|
|
381
278
|
if (!sessionStarted || (lastToolTimestamp && (now - lastToolTimestamp) > SESSION_INACTIVITY_MS)) {
|
|
382
279
|
if (sessionStarted) {
|
|
383
|
-
// End previous session before starting a new one
|
|
384
280
|
trackEvent("session_end", {
|
|
385
281
|
duration: lastToolTimestamp - sessionStartTime
|
|
386
282
|
});
|
|
@@ -392,18 +288,13 @@ export function trackToolInvocation(toolName, success, durationMs, errorMessage,
|
|
|
392
288
|
isFirstRun: isFirstRun(),
|
|
393
289
|
firstTool: toolName
|
|
394
290
|
});
|
|
395
|
-
// Re-emit app_detected for any already-connected RN apps so the dashboard's
|
|
396
|
-
// period-scoped platform classification keeps working on long-lived sessions.
|
|
397
|
-
// Uses cached detection; no CDP round-trip.
|
|
398
291
|
for (const app of connectedApps.values()) {
|
|
399
292
|
if (app.appDetection)
|
|
400
293
|
trackAppDetection(app.appDetection);
|
|
401
294
|
}
|
|
402
|
-
// Lazy license check — runs once per session, tracked as tool_invocation for analytics
|
|
403
295
|
ensureLicense().then(({ source, status, durationMs }) => {
|
|
404
296
|
trackLicenseCheck(source, status.tier, durationMs);
|
|
405
297
|
}).catch(() => {
|
|
406
|
-
// License check failed — not critical, don't break tool flow
|
|
407
298
|
});
|
|
408
299
|
}
|
|
409
300
|
lastToolTimestamp = now;
|
|
@@ -421,8 +312,6 @@ export function trackToolInvocation(toolName, success, durationMs, errorMessage,
|
|
|
421
312
|
if (errorOrigin)
|
|
422
313
|
event.errorOrigin = errorOrigin;
|
|
423
314
|
}
|
|
424
|
-
// Always propagate errorContext when provided — unmeaningful taps are success=true
|
|
425
|
-
// but still carry triage context (predicate, strategy chain) that must reach blob8.
|
|
426
315
|
if (errorContext) {
|
|
427
316
|
event.errorContext = errorContext.substring(0, 150);
|
|
428
317
|
}
|
|
@@ -454,17 +343,10 @@ export function trackToolInvocation(toolName, success, durationMs, errorMessage,
|
|
|
454
343
|
event.accessibilityMatchCount = accessibilityMatchCount;
|
|
455
344
|
if (appRoute)
|
|
456
345
|
event.appRoute = appRoute;
|
|
457
|
-
// Counted signal: this is the metering heartbeat the free-tier cap relies
|
|
458
|
-
// on. Fires whenever meteringEnabled — including when the user opted out
|
|
459
|
-
// of analytics — so opting out of PostHog/analytics can never freeze
|
|
460
|
-
// (bypass) the usage count.
|
|
461
346
|
if (meteringEnabled) {
|
|
462
347
|
dispatchMetering(event);
|
|
463
348
|
}
|
|
464
349
|
if (telemetryEnabled) {
|
|
465
|
-
// Mirror tool_invocation to PostHog so insights/cohort filters can count
|
|
466
|
-
// per-tool usage natively. Cloudflare remains the source of truth; PostHog
|
|
467
|
-
// gets a parallel stream keyed on the same installation id.
|
|
468
350
|
try {
|
|
469
351
|
const client = getPostHogClient();
|
|
470
352
|
if (client) {
|
|
@@ -511,22 +393,15 @@ export function trackToolInvocation(toolName, success, durationMs, errorMessage,
|
|
|
511
393
|
}
|
|
512
394
|
}
|
|
513
395
|
catch {
|
|
514
|
-
// PostHog errors must never affect tool flow.
|
|
515
396
|
}
|
|
516
397
|
}
|
|
517
|
-
// Increment local usage counter — powers the live 80% warning, so it must
|
|
518
|
-
// run whenever the counted dispatch runs, regardless of analytics opt-out.
|
|
519
398
|
if (meteringEnabled) {
|
|
520
399
|
incrementLocalUsage();
|
|
521
400
|
}
|
|
522
401
|
if (telemetryEnabled) {
|
|
523
|
-
// Mirror platform-cohort signal to PostHog for native users.
|
|
524
|
-
// Mirrors the infra's native-user inference (backend/worker.ts:deriveNativePlatform)
|
|
525
|
-
// so PostHog cohort filters match the Cloudflare dashboard.
|
|
526
402
|
mirrorNativeCohortToPostHog(toolName);
|
|
527
403
|
}
|
|
528
404
|
}
|
|
529
|
-
// Track what we've already sent to PostHog so we don't re-identify on every tool call.
|
|
530
405
|
let _nativeKindSet = false;
|
|
531
406
|
let _lastNativePlatformSent = null;
|
|
532
407
|
function mirrorNativeCohortToPostHog(toolName) {
|
|
@@ -537,7 +412,6 @@ function mirrorNativeCohortToPostHog(toolName) {
|
|
|
537
412
|
: null;
|
|
538
413
|
if (!platform)
|
|
539
414
|
return;
|
|
540
|
-
// Skip when nothing new to send
|
|
541
415
|
if (_nativeKindSet && _lastNativePlatformSent === platform)
|
|
542
416
|
return;
|
|
543
417
|
try {
|
|
@@ -548,8 +422,6 @@ function mirrorNativeCohortToPostHog(toolName) {
|
|
|
548
422
|
const set = {};
|
|
549
423
|
const setOnce = {};
|
|
550
424
|
if (!_nativeKindSet) {
|
|
551
|
-
// $set_once: RN users keep platform_kind="rn" (set by trackAppDetection);
|
|
552
|
-
// native-only users get "native" the first time a platform-prefixed tool fires.
|
|
553
425
|
setOnce.platform_kind = "native";
|
|
554
426
|
_nativeKindSet = true;
|
|
555
427
|
}
|
|
@@ -566,13 +438,8 @@ function mirrorNativeCohortToPostHog(toolName) {
|
|
|
566
438
|
});
|
|
567
439
|
}
|
|
568
440
|
catch {
|
|
569
|
-
// PostHog errors must never affect tool flow.
|
|
570
441
|
}
|
|
571
442
|
}
|
|
572
|
-
/**
|
|
573
|
-
* Records _license_check as a tool_invocation event without triggering session logic.
|
|
574
|
-
* Called from the ensureLicense() callback inside trackToolInvocation.
|
|
575
|
-
*/
|
|
576
443
|
function trackLicenseCheck(source, tier, durationMs) {
|
|
577
444
|
if (!telemetryEnabled)
|
|
578
445
|
return;
|
|
@@ -586,23 +453,11 @@ function trackLicenseCheck(source, tier, durationMs) {
|
|
|
586
453
|
errorContext: `${source}:${tier}`
|
|
587
454
|
});
|
|
588
455
|
}
|
|
589
|
-
/**
|
|
590
|
-
* Record auto-reconnect outcome for the CDP wrapper.
|
|
591
|
-
*
|
|
592
|
-
* Emits as a 'tool_invocation' row (so existing dashboards count it) with a
|
|
593
|
-
* synthetic toolName '_auto_reconnect' and `errorContext` carrying the
|
|
594
|
-
* outcome + originating toolName + transportPattern. Does not start a session
|
|
595
|
-
* or affect license counting.
|
|
596
|
-
*/
|
|
597
456
|
export function trackAutoReconnect(outcome, originatingToolName, transportPattern) {
|
|
598
457
|
if (!telemetryEnabled)
|
|
599
458
|
return;
|
|
600
|
-
// No-op outcomes ('not_needed') account for ~98% of events and carry zero
|
|
601
|
-
// signal — only emit when the wrapper actually attempted a reconnect.
|
|
602
459
|
if (outcome === "not_needed")
|
|
603
460
|
return;
|
|
604
|
-
// Skip events fired before a session_id is assigned (e.g. first
|
|
605
|
-
// executeInApp before session_start) — they're un-attributable.
|
|
606
461
|
if (!sessionId)
|
|
607
462
|
return;
|
|
608
463
|
dispatch({
|
|
@@ -636,13 +491,8 @@ export function trackAutoReconnect(outcome, originatingToolName, transportPatter
|
|
|
636
491
|
}
|
|
637
492
|
}
|
|
638
493
|
catch {
|
|
639
|
-
// PostHog errors must never affect tool flow.
|
|
640
494
|
}
|
|
641
495
|
}
|
|
642
|
-
/**
|
|
643
|
-
* Records app detection result as an app_detected event.
|
|
644
|
-
* Called from appDetection.ts after successful detection.
|
|
645
|
-
*/
|
|
646
496
|
export function trackAppDetection(detection) {
|
|
647
497
|
if (!telemetryEnabled)
|
|
648
498
|
return;
|
|
@@ -660,7 +510,6 @@ export function trackAppDetection(detection) {
|
|
|
660
510
|
}),
|
|
661
511
|
targetPlatform: detection.appPlatform,
|
|
662
512
|
});
|
|
663
|
-
// Mirror to PostHog so insights/cohort filters can use kind + platform without custom queries.
|
|
664
513
|
try {
|
|
665
514
|
const client = getPostHogClient();
|
|
666
515
|
if (client) {
|
|
@@ -680,7 +529,6 @@ export function trackAppDetection(detection) {
|
|
|
680
529
|
package_name: getPackageName(),
|
|
681
530
|
},
|
|
682
531
|
});
|
|
683
|
-
// Person properties so cohort filters work natively in PostHog insights.
|
|
684
532
|
client.identify({
|
|
685
533
|
distinctId,
|
|
686
534
|
properties: {
|
|
@@ -695,16 +543,8 @@ export function trackAppDetection(detection) {
|
|
|
695
543
|
}
|
|
696
544
|
}
|
|
697
545
|
catch {
|
|
698
|
-
// PostHog errors must never affect tool flow.
|
|
699
546
|
}
|
|
700
547
|
}
|
|
701
|
-
/**
|
|
702
|
-
* Records a Fast Refresh recorder install event. Fired once per
|
|
703
|
-
* device-session by getRefreshStatus when the executor lazy-installs the
|
|
704
|
-
* recorder or detects an install failure. SDK-side installs (which happen
|
|
705
|
-
* before the executor sees the app) surface here as via != null with
|
|
706
|
-
* justInstalled = false on the first observation.
|
|
707
|
-
*/
|
|
708
548
|
export function trackFastRefreshInstall(detection) {
|
|
709
549
|
if (!telemetryEnabled)
|
|
710
550
|
return;
|
|
@@ -720,13 +560,6 @@ export function trackFastRefreshInstall(detection) {
|
|
|
720
560
|
}),
|
|
721
561
|
});
|
|
722
562
|
}
|
|
723
|
-
// ============================================================================
|
|
724
|
-
// Event Dispatch
|
|
725
|
-
// ============================================================================
|
|
726
|
-
// One event per HTTP request, fired immediately. `keepalive: true` (undici,
|
|
727
|
-
// Node 18+) tells the runtime to complete the request even if the process
|
|
728
|
-
// exits right after — the Node equivalent of navigator.sendBeacon. No queue,
|
|
729
|
-
// no flush timer, no data loss on abrupt exit.
|
|
730
563
|
function buildPayload(event) {
|
|
731
564
|
return {
|
|
732
565
|
installationId: getInstallationId(),
|
|
@@ -750,12 +583,8 @@ function dispatch(event) {
|
|
|
750
583
|
keepalive: true,
|
|
751
584
|
signal: AbortSignal.timeout(REQUEST_TIMEOUT_MS),
|
|
752
585
|
}).catch(() => {
|
|
753
|
-
// Silent: telemetry must never impact the user.
|
|
754
586
|
});
|
|
755
587
|
}
|
|
756
|
-
// Counted metering signal. Goes to the API domain (relayed server-side to the
|
|
757
|
-
// same Analytics Engine dataset) so that blocking metering also blocks license
|
|
758
|
-
// validation — reachability of one implies countability by the other.
|
|
759
588
|
function dispatchMetering(event) {
|
|
760
589
|
fetch(getMeteringEndpoint(), {
|
|
761
590
|
method: "POST",
|
|
@@ -767,7 +596,6 @@ function dispatchMetering(event) {
|
|
|
767
596
|
keepalive: true,
|
|
768
597
|
signal: AbortSignal.timeout(REQUEST_TIMEOUT_MS),
|
|
769
598
|
}).catch(() => {
|
|
770
|
-
// Silent: metering must never impact the user.
|
|
771
599
|
});
|
|
772
600
|
}
|
|
773
601
|
//# sourceMappingURL=telemetry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../src/core/telemetry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../src/core/telemetry.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,25 +2,19 @@ import type { InputCandidate, InputOp, InputQuery, InputResult } from "./inputTa
|
|
|
2
2
|
import type { RaiseResult } from "./keyboardRaise.js";
|
|
3
3
|
import { type NativeFieldsResult } from "./nativeInputValue.js";
|
|
4
4
|
export type EnterTextArgs = {
|
|
5
|
-
/** The text to write. */
|
|
6
5
|
text: string;
|
|
7
6
|
testID?: string;
|
|
8
7
|
component?: string;
|
|
9
|
-
/** Matches value, placeholder, accessibilityLabel or the visible field label. */
|
|
10
8
|
textMatch?: string;
|
|
11
|
-
/** Choice among matches when a target is not unique. */
|
|
12
9
|
index?: number;
|
|
13
|
-
/** Replace the field's contents instead of appending. */
|
|
14
10
|
replace?: boolean;
|
|
15
11
|
device?: string;
|
|
16
12
|
};
|
|
17
|
-
/** How the text was written. See the branch in `write` for why each exists. */
|
|
18
13
|
export type WritePath = "react" | "hid" | "native";
|
|
19
14
|
export type TextEntryResult = {
|
|
20
15
|
success: boolean;
|
|
21
16
|
value?: string;
|
|
22
17
|
path?: WritePath;
|
|
23
|
-
/** True only when the landed text was read back and matched exactly. */
|
|
24
18
|
verified?: boolean;
|
|
25
19
|
retried?: boolean;
|
|
26
20
|
keyboard?: RaiseResult;
|
|
@@ -29,7 +23,6 @@ export type TextEntryResult = {
|
|
|
29
23
|
landed?: string | null;
|
|
30
24
|
ambiguous?: boolean;
|
|
31
25
|
candidates?: InputCandidate[];
|
|
32
|
-
/** Total inputs mounted, so a capped candidate list cannot read as complete. */
|
|
33
26
|
totalInputs?: number;
|
|
34
27
|
};
|
|
35
28
|
export type TextEntryDeps = {
|
|
@@ -39,37 +32,10 @@ export type TextEntryDeps = {
|
|
|
39
32
|
error?: string;
|
|
40
33
|
}>;
|
|
41
34
|
raise: () => Promise<RaiseResult>;
|
|
42
|
-
/**
|
|
43
|
-
* Reads the platform accessibility tree. Uncontrolled fields mirror nothing
|
|
44
|
-
* into props, so this is the only way to verify a write into one.
|
|
45
|
-
*/
|
|
46
35
|
readNativeFields?: () => Promise<NativeFieldsResult>;
|
|
47
|
-
/** Injected so the native read-back's settle poll is testable without waiting. */
|
|
48
36
|
delay?: (ms: number) => Promise<void>;
|
|
49
37
|
};
|
|
50
|
-
/**
|
|
51
|
-
* Names the likely cause of a mismatch. The field's own keyboard settings
|
|
52
|
-
* transform text on the way in, and "landed differently" alone sends the
|
|
53
|
-
* reader hunting for a bug in the write when the write was fine.
|
|
54
|
-
*/
|
|
55
38
|
export declare function diagnoseMismatch(sent: string, landed: string | null): string;
|
|
56
|
-
/**
|
|
57
|
-
* Whether the HID driver can express this text at all.
|
|
58
|
-
*
|
|
59
|
-
* AXe types US-keyboard HID keycodes: A-Z, a-z, 0-9, space and the ASCII
|
|
60
|
-
* symbols. Nothing outside that map has a keycode to send — which rules out
|
|
61
|
-
* Cyrillic and CJK, and equally Spanish accents (á, ñ, ü), a case that is easy
|
|
62
|
-
* to miss because the text otherwise looks Latin. `adb shell input text` is no
|
|
63
|
-
* better: non-ASCII throws a NullPointerException inside InputShellCommand.
|
|
64
|
-
*/
|
|
65
39
|
export declare function isHidTypeable(text: string): boolean;
|
|
66
|
-
/**
|
|
67
|
-
* Resolve -> focus -> write -> read back -> retry once -> raise keyboard.
|
|
68
|
-
*
|
|
69
|
-
* The read-back comparison is EXACT. The corruption reproduced on device is a
|
|
70
|
-
* reorder (CASEB -> CSEBA), which every loose check — length, non-empty,
|
|
71
|
-
* prefix — passes. A success from this function means the field holds the
|
|
72
|
-
* requested string, or it says it could not confirm that.
|
|
73
|
-
*/
|
|
74
40
|
export declare function enterText(args: EnterTextArgs, deps: TextEntryDeps): Promise<TextEntryResult>;
|
|
75
41
|
//# sourceMappingURL=textEntry.d.ts.map
|