[INFO ] MAESTRO - ---- System Info ---- [INFO ] MAESTRO - Maestro Version: 1.38.1 [INFO ] MAESTRO - CI: Undefined [INFO ] MAESTRO - OS Name: Mac OS X [INFO ] MAESTRO - OS Version: 15.5 [INFO ] MAESTRO - Architecture: aarch64 [INFO ] MAESTRO - Java Version: 17 [INFO ] MAESTRO - Xcode Version: 16.0 [INFO ] MAESTRO - Flutter Version: Undefined [INFO ] MAESTRO - Flutter Channel: Undefined [INFO ] MAESTRO - --------------------- [INFO ] maestro.Maestro - Getting device info [INFO ] m.cli.runner.MaestroCommandRunner - Define variables RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=}, label=null), runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Define variables COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null), openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null), applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Launching app com.stripe.react.native [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "More payment scenarios" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "More payment scenarios" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=More payment scenarios, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=More payment scenarios, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,410][1080,467], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=410, width=1080, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (540, 438) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "More payment scenarios" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "PaymentSheet with PMO SFU" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "PaymentSheet with PMO SFU" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=PaymentSheet with PMO SFU, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=PaymentSheet with PMO SFU, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,1314][1038,1371], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=1314, width=954, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (561, 1342) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "PaymentSheet with PMO SFU" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Checkout" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Checkout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Checkout, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Checkout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[451,431][629,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=451, y=431, width=178, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (540, 459) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Checkout" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null), assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) "Card" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=true, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) "Card" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms., idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null), assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Taking screenshot [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible FAILED [ERROR] m.cli.session.MaestroSessionManager - Failed to record heartbeat java.lang.InterruptedException: sleep interrupted at java.base/java.lang.Thread.sleep(Native Method) at maestro.cli.session.MaestroSessionManager.newSession$lambda$0(MaestroSessionManager.kt:73) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:840) [INFO ] MAESTRO - ---- System Info ---- [INFO ] MAESTRO - Maestro Version: 1.38.1 [INFO ] MAESTRO - CI: Undefined [INFO ] MAESTRO - OS Name: Mac OS X [INFO ] MAESTRO - OS Version: 15.5 [INFO ] MAESTRO - Architecture: aarch64 [INFO ] MAESTRO - Java Version: 17 [INFO ] MAESTRO - Xcode Version: 16.0 [INFO ] MAESTRO - Flutter Version: Undefined [INFO ] MAESTRO - Flutter Channel: Undefined [INFO ] MAESTRO - --------------------- [INFO ] maestro.Maestro - Getting device info [INFO ] m.cli.runner.MaestroCommandRunner - Define variables RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=}, label=null), runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Define variables COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null), openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null), applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Launching app com.stripe.react.native [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "More payment scenarios" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "More payment scenarios" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=More payment scenarios, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=More payment scenarios, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,410][1080,467], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=410, width=1080, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (540, 438) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "More payment scenarios" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "PaymentSheet with PMO SFU" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "PaymentSheet with PMO SFU" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=PaymentSheet with PMO SFU, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=PaymentSheet with PMO SFU, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,1314][1038,1371], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=1314, width=954, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (561, 1342) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "PaymentSheet with PMO SFU" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Checkout" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Checkout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Checkout, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Checkout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[451,431][629,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=451, y=431, width=178, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (540, 459) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Checkout" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null), assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) "Card" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=true, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) "Card" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms., idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null), assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Card number" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Card number" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Card number, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Card number, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[98,794][302,843], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=98, y=794, width=204, height=49)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (200, 818) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Card number" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Input text 4242424242424242 RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Input text 4242424242424242 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=InputTextCommand(text=4242424242424242, label=null), inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Inputting text: 4242424242424242 [INFO ] m.cli.runner.MaestroCommandRunner - Input text 4242424242424242 COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) "MM / YY" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) "MM / YY" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=MM / YY, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=true, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) "MM / YY" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Input text 0145 RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Input text 0145 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=InputTextCommand(text=0145, label=null), inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Inputting text: 0145 [INFO ] m.cli.runner.MaestroCommandRunner - Input text 0145 COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Input text 123 RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Input text 123 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=InputTextCommand(text=123, label=null), inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Inputting text: 123 [INFO ] m.cli.runner.MaestroCommandRunner - Input text 123 COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) id: primary_button RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) id: primary_button metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=true, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/primary_button, clickable=true, bounds=[53,1148][1027,1274], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=53, y=1148, width=974, height=126)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (540, 1211) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Screenshots are not different enough (d=0.0) [INFO ] maestro.Maestro - Nothing changed in the UI. [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by screenshot (d=0.012408277). Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) id: primary_button COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) "purchase!" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) "purchase!" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=true, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) "purchase!" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Success" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Success" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Success, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null), assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Taking screenshot [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Success" is visible FAILED 17:17:06.710 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 17:17:06.711 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 17:17:06.711 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 17:17:06.711 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 17:17:06.711 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 17:17:06.711 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 17:17:06.711 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 17:17:06.831 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 17:17:06.837 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 17:17:06.843 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 17:17:06.843 [ INFO] MAESTRO.logSystemInfo: --------------------- 17:17:07.433 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/payment-sheet-pmo-sfu.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 17:17:09.181 [ INFO] maestro.Maestro.invoke: Getting device info 17:17:09.337 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 17:17:09.394 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 17:17:09.397 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=payment-sheet-pmo-sfu}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:09.402 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 17:17:09.405 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 17:17:09.408 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:09.410 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 17:17:09.411 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 17:17:09.415 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:10.291 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 17:17:10.423 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 17:17:10.426 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" RUNNING 17:17:10.428 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=More payment scenarios, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:13.401 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=More payment scenarios, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,410][1080,467], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=410, width=1080, height=57)) 17:17:14.190 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:17:14.191 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 438) using hierarchy based logic for wait 17:17:14.191 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:17:14.191 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:17:15.160 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:17:15.160 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" COMPLETED 17:17:15.162 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" RUNNING 17:17:15.164 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=PaymentSheet with PMO SFU, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:15.256 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=PaymentSheet with PMO SFU, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,1314][1038,1371], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=1314, width=954, height=57)) 17:17:16.053 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:17:16.053 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 1342) using hierarchy based logic for wait 17:17:16.053 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:17:16.053 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:17:17.868 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:17:17.868 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" COMPLETED 17:17:17.870 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" RUNNING 17:17:17.872 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Checkout, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:17.910 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Checkout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[451,431][629,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=451, y=431, width=178, height=57)) 17:17:18.716 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:17:18.716 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 459) using hierarchy based logic for wait 17:17:18.716 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:17:18.716 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:17:21.253 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:17:21.254 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" COMPLETED 17:17:21.255 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 17:17:21.256 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:21.308 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 17:17:21.309 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" RUNNING 17:17:21.310 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:28.361 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: Card 17:17:28.362 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: Card, level=WARNING), aiReasoning=null, labeledCommand=null) 17:17:28.365 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" WARNED 17:17:28.368 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 17:17:28.368 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:17:28.427 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible RUNNING 17:17:28.428 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms., idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:28.490 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible COMPLETED 17:17:28.492 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" RUNNING 17:17:28.494 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card number, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:28.514 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Card number, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[98,794][302,843], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=98, y=794, width=204, height=49)) 17:17:29.327 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:17:29.328 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (200, 818) using hierarchy based logic for wait 17:17:29.328 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:17:29.328 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:17:31.142 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:17:31.143 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" COMPLETED 17:17:31.145 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 RUNNING 17:17:31.146 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=4242424242424242, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:31.148 [ INFO] maestro.Maestro.inputText: Inputting text: 4242424242424242 17:17:33.458 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 COMPLETED 17:17:33.460 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" RUNNING 17:17:33.461 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=MM / YY, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:40.630 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: MM / YY 17:17:40.631 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=MM / YY, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: MM / YY, level=WARNING), aiReasoning=null, labeledCommand=null) 17:17:40.633 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" WARNED 17:17:40.635 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 17:17:40.635 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:17:40.702 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 RUNNING 17:17:40.704 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=0145, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:40.705 [ INFO] maestro.Maestro.inputText: Inputting text: 0145 17:17:41.814 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 COMPLETED 17:17:41.815 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 RUNNING 17:17:41.816 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=123, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:41.816 [ INFO] maestro.Maestro.inputText: Inputting text: 123 17:17:43.473 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 COMPLETED 17:17:43.475 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until id: primary_button is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled RUNNING 17:17:43.476 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until id: primary_button is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(scrollUntilVisibleCommand=ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:43.680 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Scrolling try count: 0, DeviceWidth: 1080, DeviceWidth: 1920 17:17:43.680 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Element bounds: Bounds(x=53, y=1148, width=974, height=126) 17:17:43.681 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Visibility Percent: 0 17:17:43.681 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Command centerElement: ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true).centerElement 17:17:43.681 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: visibilityPercentageNormalized: 1.0 17:17:43.681 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until id: primary_button is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled COMPLETED 17:17:43.682 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled RUNNING 17:17:43.682 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(scrollUntilVisibleCommand=ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:17:44.327 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 17:17:44.330 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 17:17:45.908 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 17:17:45.912 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 17:17:47.332 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 17:17:47.335 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 17:17:48.883 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 17:17:48.887 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 17:17:50.398 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 17:17:50.442 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 17:17:51.926 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 17:17:51.929 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 17:17:53.466 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 17:17:53.468 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 17:17:54.925 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 17:17:54.929 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 17:17:56.546 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 17:17:56.549 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 17:17:58.075 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 17:17:58.078 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 17:17:59.595 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 17:17:59.598 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 17:18:01.478 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 17:18:01.481 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 17:18:03.033 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 17:18:03.037 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 17:18:04.067 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: No visible element found: "purchase!" 17:18:04.068 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(scrollUntilVisibleCommand=ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true)), logMessages=[], insight=Insight(message=No visible element found: "purchase!", level=WARNING), aiReasoning=null, labeledCommand=null) 17:18:04.068 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled WARNED 17:18:04.070 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 17:18:04.070 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:18:04.150 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button RUNNING 17:18:04.151 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:18:04.256 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/primary_button, clickable=true, bounds=[53,933][1027,1059], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/label, clickable=false, bounds=[64,955][1016,1036], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=androidx.compose.ui.platform.ComposeView}, children=[TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[64,955][1016,1036], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false)], clickable=false, enabled=true, focused=false, checked=false, selected=false), TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/lock_icon, clickable=false, bounds=[969,980][995,1012], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.ImageView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false)], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=53, y=933, width=974, height=126)) 17:18:05.101 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:18:05.101 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 996) using hierarchy based logic for wait 17:18:05.102 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:18:05.102 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:18:06.310 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:18:06.311 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button COMPLETED 17:18:06.313 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" RUNNING 17:18:06.315 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:18:13.344 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: purchase! 17:18:13.345 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: purchase!, level=WARNING), aiReasoning=null, labeledCommand=null) 17:18:13.346 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" WARNED 17:18:13.347 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 17:18:13.347 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:18:13.419 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible RUNNING 17:18:13.420 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Success, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:18:13.477 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible COMPLETED 17:18:13.478 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 17:18:13.480 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=OK, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:18:13.532 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=OK, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=android:id/button1, clickable=true, bounds=[810,1029][978,1155], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=810, y=1029, width=168, height=126)) 17:18:14.344 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:18:14.344 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 17:18:14.345 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:18:14.345 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:18:15.224 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:18:15.225 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 13:44:53.911 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 13:44:53.912 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 13:44:53.912 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 13:44:53.912 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 13:44:53.912 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 13:44:53.912 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 13:44:53.912 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 13:44:54.206 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 13:44:54.211 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 13:44:54.216 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 13:44:54.216 [ INFO] MAESTRO.logSystemInfo: --------------------- 13:44:55.002 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/payment-sheet-pmo-sfu.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 13:44:56.700 [ INFO] maestro.Maestro.invoke: Getting device info 13:44:56.844 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 13:44:56.891 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 13:44:56.893 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=payment-sheet-pmo-sfu}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:44:56.897 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 13:44:56.899 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 13:44:56.902 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:44:56.904 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 13:44:56.905 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 13:44:56.908 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:44:57.704 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 13:44:57.843 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 13:44:57.852 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" RUNNING 13:44:57.854 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=More payment scenarios, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:44:59.196 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=More payment scenarios, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,347][1080,404], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=347, width=1080, height=57)) 13:45:00.347 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 13:45:00.351 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 438) using hierarchy based logic for wait 13:45:00.352 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 13:45:00.352 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 13:45:01.463 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 13:45:01.463 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" COMPLETED 13:45:01.466 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" RUNNING 13:45:01.468 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=PaymentSheet with PMO SFU, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:45:01.551 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=PaymentSheet with PMO SFU, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,1314][1038,1371], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=1314, width=954, height=57)) 13:45:02.341 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 13:45:02.341 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 1342) using hierarchy based logic for wait 13:45:02.341 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 13:45:02.341 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 13:45:03.931 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 13:45:03.932 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" COMPLETED 13:45:03.935 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" RUNNING 13:45:03.937 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Checkout, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:45:04.012 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Checkout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[451,431][629,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=451, y=431, width=178, height=57)) 13:45:04.777 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 13:45:04.778 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 459) using hierarchy based logic for wait 13:45:04.778 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 13:45:04.778 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 13:45:06.840 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 13:45:06.840 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" COMPLETED 13:45:06.842 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 13:45:06.843 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:45:06.940 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 13:45:06.942 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" RUNNING 13:45:06.943 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:45:13.875 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: Card 13:45:13.875 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: Card, level=WARNING), aiReasoning=null, labeledCommand=null) 13:45:13.877 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" WARNED 13:45:13.879 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 13:45:13.879 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 13:45:13.947 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "New card" RUNNING 13:45:13.948 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "New card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=New card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:45:14.051 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=New card, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[180,1433][332,1482], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=180, y=1433, width=152, height=49)) 13:45:14.866 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 13:45:14.867 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (256, 1457) using hierarchy based logic for wait 13:45:14.867 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 13:45:14.867 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 13:45:16.935 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 13:45:16.936 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "New card" COMPLETED 13:45:16.939 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible RUNNING 13:45:16.941 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms., idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:45:16.979 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible COMPLETED 13:45:16.981 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" RUNNING 13:45:16.982 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card number, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:45:17.050 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Card number, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[98,794][302,843], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=98, y=794, width=204, height=49)) 13:45:17.868 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 13:45:17.868 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (200, 818) using hierarchy based logic for wait 13:45:17.868 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 13:45:17.868 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 13:45:19.372 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 13:45:19.372 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" COMPLETED 13:45:19.374 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 RUNNING 13:45:19.374 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=4242424242424242, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:45:19.376 [ INFO] maestro.Maestro.inputText: Inputting text: 4242424242424242 13:45:22.214 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 COMPLETED 13:45:22.215 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" RUNNING 13:45:22.216 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=MM / YY, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:45:29.297 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: MM / YY 13:45:29.298 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=MM / YY, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: MM / YY, level=WARNING), aiReasoning=null, labeledCommand=null) 13:45:29.299 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" WARNED 13:45:29.300 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 13:45:29.301 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 13:45:29.362 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 RUNNING 13:45:29.363 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=0145, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:45:29.363 [ INFO] maestro.Maestro.inputText: Inputting text: 0145 13:45:31.021 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 COMPLETED 13:45:31.023 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 RUNNING 13:45:31.025 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=123, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:45:31.027 [ INFO] maestro.Maestro.inputText: Inputting text: 123 13:45:32.600 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 COMPLETED 13:45:32.602 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until id: primary_button is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled RUNNING 13:45:32.604 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until id: primary_button is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(scrollUntilVisibleCommand=ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:45:32.670 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Scrolling try count: 0, DeviceWidth: 1080, DeviceWidth: 1920 13:45:32.670 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Element bounds: Bounds(x=53, y=1563, width=974, height=126) 13:45:32.670 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Visibility Percent: 0 13:45:32.670 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Command centerElement: ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true).centerElement 13:45:32.670 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: visibilityPercentageNormalized: 1.0 13:45:32.670 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until id: primary_button is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled COMPLETED 13:45:32.671 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled RUNNING 13:45:32.672 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(scrollUntilVisibleCommand=ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:45:33.254 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 13:45:33.256 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 13:45:34.574 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 13:45:34.576 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 13:45:36.442 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 13:45:36.489 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 13:45:38.360 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 13:45:38.405 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 13:45:40.177 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 13:45:40.191 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 13:45:41.930 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 13:45:41.978 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 13:45:43.737 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 13:45:43.747 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 13:45:45.507 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 13:45:45.520 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 13:45:47.214 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 13:45:47.262 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 13:45:49.136 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 13:45:49.155 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 13:45:51.203 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 13:45:51.249 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 13:45:53.050 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 13:45:53.098 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 13:45:54.226 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: No visible element found: "purchase!" 13:45:54.226 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(scrollUntilVisibleCommand=ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true)), logMessages=[], insight=Insight(message=No visible element found: "purchase!", level=WARNING), aiReasoning=null, labeledCommand=null) 13:45:54.227 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled WARNED 13:45:54.228 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 13:45:54.228 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 13:45:54.453 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button RUNNING 13:45:54.454 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:45:54.575 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/primary_button, clickable=true, bounds=[53,1563][1027,1689], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/label, clickable=false, bounds=[64,1585][1016,1666], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=androidx.compose.ui.platform.ComposeView}, children=[TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[64,1585][1016,1666], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false)], clickable=false, enabled=true, focused=false, checked=false, selected=false), TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/lock_icon, clickable=false, bounds=[969,1610][995,1642], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.ImageView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false)], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=53, y=1563, width=974, height=126)) 13:45:55.429 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 13:45:55.429 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 1626) using hierarchy based logic for wait 13:45:55.429 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 13:45:55.429 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 13:45:58.116 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 13:45:58.116 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button COMPLETED 13:45:58.118 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" RUNNING 13:45:58.120 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:46:05.335 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: purchase! 13:46:05.337 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: purchase!, level=WARNING), aiReasoning=null, labeledCommand=null) 13:46:05.340 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" WARNED 13:46:05.341 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 13:46:05.342 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 13:46:05.612 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible RUNNING 13:46:05.614 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Success, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 13:46:15.382 [ERROR] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandFailed: Assertion is false: "Success" is visible 13:46:15.384 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 13:46:15.384 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 13:46:15.622 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible FAILED 13:46:16.061 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 13:46:16.061 [ERROR] maestro.cli.session.MaestroSessionManager.newSession$lambda$0: Failed to record heartbeat java.lang.InterruptedException: sleep interrupted at java.base/java.lang.Thread.sleep(Native Method) at maestro.cli.session.MaestroSessionManager.newSession$lambda$0(MaestroSessionManager.kt:93) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:840) 13:46:21.061 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 13:46:21.062 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 13:46:21.062 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 13:46:21.062 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 13:46:21.062 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 13:46:21.062 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 13:46:21.644 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 13:46:21.644 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 13:46:21.644 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 13:46:21.644 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 13:46:21.645 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 20:28:22.606 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 20:28:22.607 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 20:28:22.607 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 20:28:22.607 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 20:28:22.607 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 20:28:22.607 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 20:28:22.607 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 20:28:22.837 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 20:28:22.842 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 20:28:22.847 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 20:28:22.847 [ INFO] MAESTRO.logSystemInfo: --------------------- 20:28:23.428 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/payment-sheet-pmo-sfu.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 20:28:28.947 [ INFO] maestro.Maestro.invoke: Getting device info 20:28:29.149 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 20:28:29.219 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 20:28:29.223 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=payment-sheet-pmo-sfu}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:28:29.227 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 20:28:29.229 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 20:28:29.232 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:28:29.234 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 20:28:29.237 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 20:28:29.239 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:28:31.726 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 20:28:32.178 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 20:28:32.183 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" RUNNING 20:28:32.187 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=More payment scenarios, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:28:39.650 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=More payment scenarios, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,410][1080,467], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=410, width=1080, height=57)) 20:28:41.217 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:28:41.218 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 438) using hierarchy based logic for wait 20:28:41.219 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:28:41.219 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:28:42.685 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:28:42.686 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" COMPLETED 20:28:42.689 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" RUNNING 20:28:42.691 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=PaymentSheet with PMO SFU, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:28:42.873 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=PaymentSheet with PMO SFU, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,1314][1038,1371], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=1314, width=954, height=57)) 20:28:43.842 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:28:43.842 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 1342) using hierarchy based logic for wait 20:28:43.842 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:28:43.842 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:28:46.582 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:28:46.583 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" COMPLETED 20:28:46.586 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" RUNNING 20:28:46.589 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Checkout, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:28:46.752 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Checkout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[451,431][629,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=451, y=431, width=178, height=57)) 20:28:47.726 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:28:47.727 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 459) using hierarchy based logic for wait 20:28:47.730 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:28:47.730 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:28:52.753 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:28:52.755 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" COMPLETED 20:28:52.758 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 20:28:52.761 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:28:53.030 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 20:28:53.034 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" RUNNING 20:28:53.036 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:29:00.233 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: Card 20:29:00.234 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: Card, level=WARNING), aiReasoning=null, labeledCommand=null) 20:29:00.238 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" WARNED 20:29:00.242 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 20:29:00.242 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:29:00.475 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "New card" RUNNING 20:29:00.477 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "New card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=New card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:29:00.677 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: New card 20:29:00.678 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "New card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=New card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: New card, level=WARNING), aiReasoning=null, labeledCommand=null) 20:29:00.681 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "New card" WARNED 20:29:00.684 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 20:29:00.684 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:29:00.929 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible RUNNING 20:29:00.931 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms., idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:29:01.209 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible COMPLETED 20:29:01.212 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" RUNNING 20:29:01.215 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card number, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:29:01.345 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Card number, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[98,794][302,843], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=98, y=794, width=204, height=49)) 20:29:02.263 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:29:02.263 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (200, 818) using hierarchy based logic for wait 20:29:02.264 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:29:02.264 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:29:05.563 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:29:05.563 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" COMPLETED 20:29:05.566 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 RUNNING 20:29:05.568 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=4242424242424242, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:29:05.573 [ INFO] maestro.Maestro.inputText: Inputting text: 4242424242424242 20:29:10.141 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 COMPLETED 20:29:10.143 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" RUNNING 20:29:10.145 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=MM / YY, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:29:17.606 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: MM / YY 20:29:17.607 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=MM / YY, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: MM / YY, level=WARNING), aiReasoning=null, labeledCommand=null) 20:29:17.610 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" WARNED 20:29:17.612 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 20:29:17.613 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:29:17.902 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 RUNNING 20:29:17.904 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=0145, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:29:17.908 [ INFO] maestro.Maestro.inputText: Inputting text: 0145 20:29:20.511 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 COMPLETED 20:29:20.515 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 RUNNING 20:29:20.517 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=123, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:29:20.521 [ INFO] maestro.Maestro.inputText: Inputting text: 123 20:29:22.341 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 COMPLETED 20:29:22.344 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until id: primary_button is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled RUNNING 20:29:22.346 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until id: primary_button is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(scrollUntilVisibleCommand=ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:29:22.557 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Scrolling try count: 0, DeviceWidth: 1080, DeviceWidth: 1920 20:29:22.557 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Element bounds: Bounds(x=53, y=1563, width=974, height=126) 20:29:22.557 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Visibility Percent: 0 20:29:22.558 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Command centerElement: ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true).centerElement 20:29:22.558 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: visibilityPercentageNormalized: 1.0 20:29:22.558 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until id: primary_button is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled COMPLETED 20:29:22.559 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled RUNNING 20:29:22.561 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(scrollUntilVisibleCommand=ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:29:23.432 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 20:29:23.488 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 20:29:25.312 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 20:29:25.366 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 20:29:26.942 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 20:29:26.980 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 20:29:28.774 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 20:29:28.785 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 20:29:30.681 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 20:29:30.699 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 20:29:32.536 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 20:29:32.571 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 20:29:34.280 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 20:29:34.336 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 20:29:35.934 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 20:29:35.953 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 20:29:37.870 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 20:29:37.912 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 20:29:39.742 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 20:29:39.803 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 20:29:41.783 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 20:29:41.799 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 20:29:43.107 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: No visible element found: "purchase!" 20:29:43.108 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(scrollUntilVisibleCommand=ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true)), logMessages=[], insight=Insight(message=No visible element found: "purchase!", level=WARNING), aiReasoning=null, labeledCommand=null) 20:29:43.110 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled WARNED 20:29:43.113 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 20:29:43.114 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:29:43.394 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button RUNNING 20:29:43.396 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:29:43.596 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/primary_button, clickable=true, bounds=[53,1563][1027,1689], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/label, clickable=false, bounds=[64,1585][1016,1666], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=androidx.compose.ui.platform.ComposeView}, children=[TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[64,1585][1016,1666], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false)], clickable=false, enabled=true, focused=false, checked=false, selected=false), TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/lock_icon, clickable=false, bounds=[969,1610][995,1642], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.ImageView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false)], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=53, y=1563, width=974, height=126)) 20:29:44.571 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:29:44.573 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 1626) using hierarchy based logic for wait 20:29:44.573 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:29:44.573 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:29:48.715 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:29:48.716 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button COMPLETED 20:29:48.717 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" RUNNING 20:29:48.717 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:29:55.886 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: purchase! 20:29:55.887 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: purchase!, level=WARNING), aiReasoning=null, labeledCommand=null) 20:29:55.890 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" WARNED 20:29:55.893 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 20:29:55.893 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:29:56.133 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible RUNNING 20:29:56.136 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Success, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:29:56.242 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible COMPLETED 20:29:56.244 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 20:29:56.247 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=OK, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:29:56.334 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=OK, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=android:id/button1, clickable=true, bounds=[810,1029][978,1155], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=810, y=1029, width=168, height=126)) 20:29:57.189 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:29:57.190 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 20:29:57.190 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:29:57.190 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:29:58.323 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:29:58.323 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 20:29:58.624 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 20:30:03.636 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 20:30:03.636 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 20:30:03.637 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 20:30:03.637 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 20:30:03.637 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 20:30:03.637 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 20:30:04.413 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 20:30:04.413 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 20:30:04.414 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 20:30:04.414 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 20:30:04.417 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 22:07:38.269 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 22:07:38.270 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 22:07:38.271 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 22:07:38.271 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 22:07:38.271 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 22:07:38.271 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 22:07:38.271 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 22:07:38.433 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 22:07:38.438 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 22:07:38.442 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 22:07:38.442 [ INFO] MAESTRO.logSystemInfo: --------------------- 22:07:38.544 [DEBUG] io.micrometer.common.util.internal.logging.InternalLoggerFactory.newDefaultFactory: Using SLF4J as the default logging framework 22:07:38.954 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/payment-sheet-pmo-sfu.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 22:07:42.732 [ INFO] maestro.Maestro.invoke: Getting device info 22:07:42.933 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 22:07:42.995 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 22:07:42.998 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=payment-sheet-pmo-sfu}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:07:43.002 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 22:07:43.006 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 22:07:43.009 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:07:43.012 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 22:07:43.013 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 22:07:43.015 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:07:44.861 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 22:07:45.240 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 22:07:45.245 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" RUNNING 22:07:45.255 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=More payment scenarios, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:07:51.820 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=More payment scenarios, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,410][1080,467], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=410, width=1080, height=57)) 22:07:52.946 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:07:52.950 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 438) using hierarchy based logic for wait 22:07:52.950 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:07:52.950 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:07:54.340 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:07:54.341 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" COMPLETED 22:07:54.344 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" RUNNING 22:07:54.346 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=PaymentSheet with PMO SFU, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:07:54.458 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=PaymentSheet with PMO SFU, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,1314][1038,1371], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=1314, width=954, height=57)) 22:07:55.388 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:07:55.390 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 1342) using hierarchy based logic for wait 22:07:55.390 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:07:55.390 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:07:57.945 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:07:57.946 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" COMPLETED 22:07:57.949 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" RUNNING 22:07:57.951 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Checkout, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:07:58.025 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Checkout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[451,431][629,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=451, y=431, width=178, height=57)) 22:07:58.899 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:07:58.900 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 459) using hierarchy based logic for wait 22:07:58.901 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:07:58.901 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:08:03.010 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:08:03.010 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" COMPLETED 22:08:03.013 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 22:08:03.016 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:08:03.246 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 22:08:03.249 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" RUNNING 22:08:03.251 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:08:10.347 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: Card 22:08:10.348 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: Card, level=WARNING), aiReasoning=null, labeledCommand=null) 22:08:10.352 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" WARNED 22:08:10.355 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 22:08:10.356 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:08:10.590 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "New card" RUNNING 22:08:10.593 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "New card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=New card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:08:10.761 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: New card 22:08:10.761 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "New card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=New card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: New card, level=WARNING), aiReasoning=null, labeledCommand=null) 22:08:10.763 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "New card" WARNED 22:08:10.765 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 22:08:10.765 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:08:10.958 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible RUNNING 22:08:10.959 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms., idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:08:11.056 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible COMPLETED 22:08:11.057 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" RUNNING 22:08:11.059 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card number, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:08:11.158 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Card number, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[98,933][302,982], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=98, y=933, width=204, height=49)) 22:08:12.047 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:08:12.048 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (200, 957) using hierarchy based logic for wait 22:08:12.048 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:08:12.048 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:08:14.478 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:08:14.479 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" COMPLETED 22:08:14.480 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 RUNNING 22:08:14.482 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=4242424242424242, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:08:14.484 [ INFO] maestro.Maestro.inputText: Inputting text: 4242424242424242 22:08:18.067 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 COMPLETED 22:08:18.069 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" RUNNING 22:08:18.071 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=MM / YY, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:08:25.337 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: MM / YY 22:08:25.341 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=MM / YY, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: MM / YY, level=WARNING), aiReasoning=null, labeledCommand=null) 22:08:25.344 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" WARNED 22:08:25.346 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 22:08:25.347 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:08:25.570 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 RUNNING 22:08:25.571 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=0145, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:08:25.573 [ INFO] maestro.Maestro.inputText: Inputting text: 0145 22:08:27.668 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 COMPLETED 22:08:27.672 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 RUNNING 22:08:27.675 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=123, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:08:27.679 [ INFO] maestro.Maestro.inputText: Inputting text: 123 22:08:29.468 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 COMPLETED 22:08:29.470 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until id: primary_button is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled RUNNING 22:08:29.472 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until id: primary_button is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(scrollUntilVisibleCommand=ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:08:29.653 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Scrolling try count: 0, DeviceWidth: 1080, DeviceWidth: 1920 22:08:29.654 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Element bounds: Bounds(x=53, y=1626, width=974, height=126) 22:08:29.654 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Visibility Percent: 0 22:08:29.654 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Command centerElement: ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true).centerElement 22:08:29.654 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: visibilityPercentageNormalized: 1.0 22:08:29.654 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until id: primary_button is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled COMPLETED 22:08:29.656 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled RUNNING 22:08:29.658 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(scrollUntilVisibleCommand=ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:08:30.402 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:08:30.409 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:08:32.102 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:08:32.109 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:08:33.818 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:08:33.834 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:08:35.289 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:08:35.297 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:08:36.768 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:08:36.773 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:08:38.304 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:08:38.311 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:08:39.738 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:08:39.751 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:08:41.125 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:08:41.131 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:08:42.642 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:08:42.649 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:08:44.031 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:08:44.037 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:08:45.433 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:08:45.443 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:08:46.930 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:08:46.937 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:08:48.439 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:08:48.458 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:08:49.822 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: No visible element found: "purchase!" 22:08:49.822 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(scrollUntilVisibleCommand=ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true)), logMessages=[], insight=Insight(message=No visible element found: "purchase!", level=WARNING), aiReasoning=null, labeledCommand=null) 22:08:49.824 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled WARNED 22:08:49.825 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 22:08:49.825 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:08:50.054 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button RUNNING 22:08:50.055 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:08:50.149 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/primary_button, clickable=true, bounds=[53,1626][1027,1752], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/label, clickable=false, bounds=[64,1648][1016,1729], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=androidx.compose.ui.platform.ComposeView}, children=[TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[64,1648][1016,1729], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false)], clickable=false, enabled=true, focused=false, checked=false, selected=false), TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/lock_icon, clickable=false, bounds=[969,1673][995,1705], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.ImageView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false)], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=53, y=1626, width=974, height=126)) 22:08:50.985 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:08:50.985 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 1689) using hierarchy based logic for wait 22:08:50.985 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:08:50.985 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:08:52.134 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:08:52.135 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button COMPLETED 22:08:52.136 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" RUNNING 22:08:52.139 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:08:59.287 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: purchase! 22:08:59.287 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: purchase!, level=WARNING), aiReasoning=null, labeledCommand=null) 22:08:59.290 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" WARNED 22:08:59.291 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 22:08:59.291 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:08:59.435 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible RUNNING 22:08:59.437 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Success, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:08:59.510 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible COMPLETED 22:08:59.512 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 22:08:59.514 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=OK, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:08:59.568 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=OK, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=android:id/button1, clickable=true, bounds=[810,1029][978,1155], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=810, y=1029, width=168, height=126)) 22:09:00.425 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:09:00.426 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 22:09:00.426 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:09:00.426 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:09:01.507 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:09:01.507 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 22:09:01.808 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 22:09:06.820 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 22:09:06.820 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 22:09:06.820 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 22:09:06.820 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 22:09:06.820 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 22:09:06.820 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 22:09:07.584 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 22:09:07.584 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 22:09:07.584 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 22:09:07.584 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 22:09:07.587 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 22:52:15.614 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 22:52:15.614 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 22:52:15.615 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 22:52:15.615 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 22:52:15.615 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 22:52:15.615 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 22:52:15.615 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 22:52:15.821 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 22:52:15.824 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 22:52:15.828 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 22:52:15.828 [ INFO] MAESTRO.logSystemInfo: --------------------- 22:52:16.415 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/payment-sheet-pmo-sfu.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 22:52:20.486 [ INFO] maestro.Maestro.invoke: Getting device info 22:52:20.678 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 22:52:20.736 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 22:52:20.738 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=payment-sheet-pmo-sfu}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:52:20.742 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 22:52:20.746 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 22:52:20.749 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:52:20.752 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 22:52:20.753 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 22:52:20.755 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:52:22.666 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 22:52:23.024 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 22:52:23.026 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" RUNNING 22:52:23.027 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=More payment scenarios, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:52:27.998 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=More payment scenarios, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,410][1080,467], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=410, width=1080, height=57)) 22:52:28.926 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:52:28.929 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 438) using hierarchy based logic for wait 22:52:28.930 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:52:28.930 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:52:30.632 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:52:30.633 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" COMPLETED 22:52:30.635 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" RUNNING 22:52:30.638 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=PaymentSheet with PMO SFU, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:52:30.748 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=PaymentSheet with PMO SFU, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,1314][1038,1371], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=1314, width=954, height=57)) 22:52:31.676 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:52:31.677 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 1342) using hierarchy based logic for wait 22:52:31.677 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:52:31.677 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:52:34.160 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:52:34.161 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" COMPLETED 22:52:34.163 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" RUNNING 22:52:34.164 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Checkout, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:52:34.411 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Checkout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[451,431][629,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=451, y=431, width=178, height=57)) 22:52:35.295 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:52:35.295 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 459) using hierarchy based logic for wait 22:52:35.295 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:52:35.295 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:52:39.439 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:52:39.439 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" COMPLETED 22:52:39.441 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 22:52:39.442 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:52:39.543 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 22:52:39.546 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" RUNNING 22:52:39.547 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:52:46.558 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: Card 22:52:46.559 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: Card, level=WARNING), aiReasoning=null, labeledCommand=null) 22:52:46.563 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" WARNED 22:52:46.566 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 22:52:46.567 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:52:46.754 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "New card" RUNNING 22:52:46.757 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "New card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=New card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:52:47.115 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: New card 22:52:47.116 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "New card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=New card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: New card, level=WARNING), aiReasoning=null, labeledCommand=null) 22:52:47.118 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "New card" WARNED 22:52:47.120 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 22:52:47.120 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:52:47.279 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible RUNNING 22:52:47.282 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms., idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:52:47.385 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible COMPLETED 22:52:47.387 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" RUNNING 22:52:47.388 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card number, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:52:47.478 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Card number, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[98,933][302,982], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=98, y=933, width=204, height=49)) 22:52:48.292 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:52:48.293 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (200, 957) using hierarchy based logic for wait 22:52:48.293 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:52:48.293 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:52:51.133 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:52:51.133 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" COMPLETED 22:52:51.135 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 RUNNING 22:52:51.138 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=4242424242424242, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:52:51.140 [ INFO] maestro.Maestro.inputText: Inputting text: 4242424242424242 22:52:54.065 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 COMPLETED 22:52:54.066 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" RUNNING 22:52:54.067 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=MM / YY, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:53:01.271 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: MM / YY 22:53:01.272 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=MM / YY, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: MM / YY, level=WARNING), aiReasoning=null, labeledCommand=null) 22:53:01.276 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" WARNED 22:53:01.277 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 22:53:01.278 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:53:01.528 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 RUNNING 22:53:01.530 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=0145, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:53:01.534 [ INFO] maestro.Maestro.inputText: Inputting text: 0145 22:53:02.994 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 COMPLETED 22:53:02.996 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 RUNNING 22:53:02.997 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=123, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:53:02.997 [ INFO] maestro.Maestro.inputText: Inputting text: 123 22:53:04.548 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 COMPLETED 22:53:04.551 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until id: primary_button is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled RUNNING 22:53:04.554 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until id: primary_button is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(scrollUntilVisibleCommand=ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:53:04.639 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Scrolling try count: 0, DeviceWidth: 1080, DeviceWidth: 1920 22:53:04.640 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Element bounds: Bounds(x=53, y=1626, width=974, height=126) 22:53:04.640 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Visibility Percent: 0 22:53:04.640 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: Command centerElement: ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true).centerElement 22:53:04.641 [ INFO] maestro.orchestra.Orchestra.scrollUntilVisible: visibilityPercentageNormalized: 1.0 22:53:04.641 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until id: primary_button is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled COMPLETED 22:53:04.643 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled RUNNING 22:53:04.645 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(scrollUntilVisibleCommand=ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:53:05.407 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:53:05.424 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:53:06.987 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:53:06.996 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:53:08.626 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:53:08.637 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:53:10.069 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:53:10.081 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:53:11.616 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:53:11.668 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:53:13.183 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:53:13.192 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:53:14.640 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:53:14.645 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:53:16.071 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:53:16.086 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:53:17.582 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:53:17.633 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:53:19.226 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:53:19.279 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:53:20.802 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:53:20.813 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:53:22.542 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:53:22.558 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:53:24.044 [ERROR] maestro.orchestra.Orchestra.scrollUntilVisible: Error: maestro.MaestroException$ElementNotFound: Element not found: Text matching regex: purchase! 22:53:24.096 [ INFO] maestro.Maestro.swipeFromCenter: Swiping UP from center 22:53:25.309 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: No visible element found: "purchase!" 22:53:25.309 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(scrollUntilVisibleCommand=ScrollUntilVisibleCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), direction=DOWN, scrollDuration=601, visibilityPercentage=100, timeout=20000, waitToSettleTimeoutMs=null, centerElement=false, originalSpeedValue=40, label=null, optional=true)), logMessages=[], insight=Insight(message=No visible element found: "purchase!", level=WARNING), aiReasoning=null, labeledCommand=null) 22:53:25.310 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Scrolling DOWN until "purchase!" is visible with speed 40, visibility percentage 100%, timeout 20000 ms, with centering disabled WARNED 22:53:25.311 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 22:53:25.311 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:53:25.511 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button RUNNING 22:53:25.512 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:53:25.602 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/primary_button, clickable=true, bounds=[53,1626][1027,1752], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/label, clickable=false, bounds=[64,1648][1016,1729], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=androidx.compose.ui.platform.ComposeView}, children=[TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[64,1648][1016,1729], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false)], clickable=false, enabled=true, focused=false, checked=false, selected=false), TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/lock_icon, clickable=false, bounds=[969,1673][995,1705], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.ImageView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false)], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=53, y=1626, width=974, height=126)) 22:53:26.446 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:53:26.446 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 1689) using hierarchy based logic for wait 22:53:26.446 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:53:26.446 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:53:27.485 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:53:27.486 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button COMPLETED 22:53:27.487 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" RUNNING 22:53:27.488 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:53:34.558 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: purchase! 22:53:34.559 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: purchase!, level=WARNING), aiReasoning=null, labeledCommand=null) 22:53:34.561 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" WARNED 22:53:34.562 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 22:53:34.563 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:53:34.767 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible RUNNING 22:53:34.769 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Success, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:53:34.826 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible COMPLETED 22:53:34.828 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 22:53:34.830 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=OK, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:53:34.890 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=OK, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=android:id/button1, clickable=true, bounds=[810,1029][978,1155], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=810, y=1029, width=168, height=126)) 22:53:35.719 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:53:35.720 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 22:53:35.721 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:53:35.721 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:53:37.154 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:53:37.154 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 22:53:37.445 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 22:53:37.444 [ERROR] maestro.cli.session.MaestroSessionManager.newSession$lambda$0: Failed to record heartbeat java.lang.InterruptedException: sleep interrupted at java.base/java.lang.Thread.sleep(Native Method) at maestro.cli.session.MaestroSessionManager.newSession$lambda$0(MaestroSessionManager.kt:93) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:840) 22:53:42.456 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 22:53:42.456 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 22:53:42.456 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 22:53:42.456 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 22:53:42.456 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 22:53:42.457 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 22:53:42.925 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 22:53:42.925 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 22:53:42.925 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 22:53:42.925 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 22:53:42.929 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 11:29:38.540 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 11:29:38.541 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 11:29:38.541 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 11:29:38.541 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 11:29:38.541 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 11:29:38.541 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 11:29:38.541 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 11:29:38.657 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 11:29:38.662 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 11:29:38.668 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 11:29:38.668 [ INFO] MAESTRO.logSystemInfo: --------------------- 11:29:38.697 [DEBUG] io.micrometer.common.util.internal.logging.InternalLoggerFactory.newDefaultFactory: Using SLF4J as the default logging framework 11:29:39.302 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/payment-sheet-pmo-sfu.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 11:29:43.756 [ INFO] maestro.Maestro.invoke: Getting device info 11:29:43.984 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 11:29:44.035 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 11:29:44.038 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=payment-sheet-pmo-sfu}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:29:44.042 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 11:29:44.044 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 11:29:44.046 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:29:44.048 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 11:29:44.049 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 11:29:44.051 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:29:46.198 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 11:29:46.562 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 11:29:46.565 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" RUNNING 11:29:46.568 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=More payment scenarios, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:29:52.985 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=More payment scenarios, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,410][1080,467], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=410, width=1080, height=57)) 11:29:54.530 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:29:54.532 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 438) using hierarchy based logic for wait 11:29:54.532 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:29:54.532 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:29:56.114 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:29:56.114 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" COMPLETED 11:29:56.116 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" RUNNING 11:29:56.118 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=PaymentSheet with PMO SFU, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:29:56.286 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=PaymentSheet with PMO SFU, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,1314][1038,1371], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=1314, width=954, height=57)) 11:29:57.179 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:29:57.179 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 1342) using hierarchy based logic for wait 11:29:57.179 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:29:57.180 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:29:59.418 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:29:59.418 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" COMPLETED 11:29:59.426 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" RUNNING 11:29:59.427 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Checkout, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:29:59.486 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Checkout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[451,431][629,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=451, y=431, width=178, height=57)) 11:30:00.326 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:30:00.327 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 459) using hierarchy based logic for wait 11:30:00.327 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:30:00.327 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:30:04.546 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:30:04.547 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" COMPLETED 11:30:04.549 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 11:30:04.551 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:30:04.783 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 11:30:04.786 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" RUNNING 11:30:04.787 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:30:11.610 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: Card 11:30:11.611 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: Card, level=WARNING), aiReasoning=null, labeledCommand=null) 11:30:11.614 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" WARNED 11:30:11.615 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 11:30:11.616 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:30:11.852 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible RUNNING 11:30:11.854 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms., idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:30:12.131 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible COMPLETED 11:30:12.133 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" RUNNING 11:30:12.135 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card number, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:30:12.203 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Card number, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[98,933][302,982], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=98, y=933, width=204, height=49)) 11:30:13.163 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:30:13.163 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (200, 957) using hierarchy based logic for wait 11:30:13.163 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:30:13.164 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:30:15.717 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:30:15.717 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" COMPLETED 11:30:15.719 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 RUNNING 11:30:15.720 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=4242424242424242, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:30:15.722 [ INFO] maestro.Maestro.inputText: Inputting text: 4242424242424242 11:30:19.587 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 COMPLETED 11:30:19.590 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" RUNNING 11:30:19.592 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=MM / YY, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:30:26.811 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: MM / YY 11:30:26.812 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=MM / YY, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: MM / YY, level=WARNING), aiReasoning=null, labeledCommand=null) 11:30:26.813 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" WARNED 11:30:26.815 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 11:30:26.815 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:30:27.151 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 RUNNING 11:30:27.153 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=0145, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:30:27.157 [ INFO] maestro.Maestro.inputText: Inputting text: 0145 11:30:29.161 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 COMPLETED 11:30:29.164 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 RUNNING 11:30:29.165 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=123, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:30:29.167 [ INFO] maestro.Maestro.inputText: Inputting text: 123 11:30:30.920 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 COMPLETED 11:30:30.923 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button RUNNING 11:30:30.924 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:30:31.100 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/primary_button, clickable=true, bounds=[53,1626][1027,1752], enabled=true, focused=true, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/label, clickable=false, bounds=[64,1648][1016,1729], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=androidx.compose.ui.platform.ComposeView}, children=[TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[64,1648][1016,1729], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false)], clickable=false, enabled=true, focused=false, checked=false, selected=false), TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/lock_icon, clickable=false, bounds=[969,1673][995,1705], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.ImageView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false)], clickable=true, enabled=true, focused=true, checked=false, selected=false), bounds=Bounds(x=53, y=1626, width=974, height=126)) 11:30:32.092 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:30:32.093 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 1689) using hierarchy based logic for wait 11:30:32.093 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:30:32.093 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:30:34.352 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:30:34.352 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button COMPLETED 11:30:34.353 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" RUNNING 11:30:34.355 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:30:41.444 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: purchase! 11:30:41.445 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: purchase!, level=WARNING), aiReasoning=null, labeledCommand=null) 11:30:41.447 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" WARNED 11:30:41.449 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 11:30:41.449 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:30:41.672 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible RUNNING 11:30:41.673 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Success, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:30:41.761 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible COMPLETED 11:30:41.763 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 11:30:41.765 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=OK, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:30:41.799 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=OK, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=android:id/button1, clickable=true, bounds=[810,1029][978,1155], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=810, y=1029, width=168, height=126)) 11:30:42.631 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:30:42.632 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 11:30:42.632 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:30:42.632 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:30:43.652 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:30:43.652 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 11:30:43.935 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 11:30:48.945 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 11:30:48.946 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 11:30:48.946 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 11:30:48.946 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 11:30:48.946 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 11:30:48.946 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 11:30:49.351 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 11:30:49.351 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 11:30:49.352 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 11:30:49.352 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 11:30:49.354 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 16:55:52.472 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 16:55:52.473 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 16:55:52.476 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 16:55:52.476 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 16:55:52.476 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 16:55:52.476 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 16:55:52.477 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 16:55:52.714 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 16:55:52.722 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 16:55:52.731 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 16:55:52.732 [ INFO] MAESTRO.logSystemInfo: --------------------- 16:55:53.681 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/payment-sheet-pmo-sfu.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 16:55:55.333 [ INFO] maestro.Maestro.invoke: Getting device info 16:55:55.485 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 16:55:55.535 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 16:55:55.538 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=payment-sheet-pmo-sfu}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:55:55.541 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 16:55:55.542 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 16:55:55.545 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:55:55.546 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 16:55:55.548 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 16:55:55.549 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:55:56.239 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 16:55:56.330 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 16:55:56.331 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" RUNNING 16:55:56.332 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=More payment scenarios, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:55:58.358 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=More payment scenarios, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,410][1080,467], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=410, width=1080, height=57)) 16:55:59.214 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 16:55:59.216 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 438) using hierarchy based logic for wait 16:55:59.216 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:55:59.216 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:56:00.775 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 16:56:00.775 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "More payment scenarios" COMPLETED 16:56:00.779 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" RUNNING 16:56:00.781 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=PaymentSheet with PMO SFU, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:56:00.835 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=PaymentSheet with PMO SFU, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,1314][1038,1371], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=1314, width=954, height=57)) 16:56:01.683 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 16:56:01.683 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 1342) using hierarchy based logic for wait 16:56:01.684 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:56:01.684 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:56:03.329 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 16:56:03.330 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "PaymentSheet with PMO SFU" COMPLETED 16:56:03.333 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" RUNNING 16:56:03.335 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Checkout, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:56:03.369 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Checkout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[451,431][629,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=451, y=431, width=178, height=57)) 16:56:04.176 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 16:56:04.176 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 459) using hierarchy based logic for wait 16:56:04.176 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:56:04.176 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:56:06.278 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 16:56:06.279 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" COMPLETED 16:56:06.280 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 16:56:06.282 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:56:06.346 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 16:56:06.348 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" RUNNING 16:56:06.349 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:56:13.313 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: Card 16:56:13.314 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: Card, level=WARNING), aiReasoning=null, labeledCommand=null) 16:56:13.317 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" WARNED 16:56:13.320 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 16:56:13.321 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:56:13.377 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible RUNNING 16:56:13.379 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms., idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:56:13.439 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "By providing your card information, you allow Example Inc. to charge your card for future payments in accordance with their terms." is visible COMPLETED 16:56:13.441 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" RUNNING 16:56:13.441 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card number, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:56:13.504 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Card number, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[98,933][302,982], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=98, y=933, width=204, height=49)) 16:56:14.274 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 16:56:14.275 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (200, 957) using hierarchy based logic for wait 16:56:14.275 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:56:14.276 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:56:16.088 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 16:56:16.088 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" COMPLETED 16:56:16.089 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 RUNNING 16:56:16.090 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=4242424242424242, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:56:16.090 [ INFO] maestro.Maestro.inputText: Inputting text: 4242424242424242 16:56:18.443 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 4242424242424242 COMPLETED 16:56:18.445 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" RUNNING 16:56:18.447 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=MM / YY, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:56:25.514 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: MM / YY 16:56:25.515 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=MM / YY, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: MM / YY, level=WARNING), aiReasoning=null, labeledCommand=null) 16:56:25.517 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "MM / YY" WARNED 16:56:25.518 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 16:56:25.518 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:56:25.586 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 RUNNING 16:56:25.588 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=0145, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:56:25.589 [ INFO] maestro.Maestro.inputText: Inputting text: 0145 16:56:26.680 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 0145 COMPLETED 16:56:26.681 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 RUNNING 16:56:26.682 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(inputTextCommand=InputTextCommand(text=123, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:56:26.682 [ INFO] maestro.Maestro.inputText: Inputting text: 123 16:56:27.817 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Input text 123 COMPLETED 16:56:27.819 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button RUNNING 16:56:27.821 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=null, idRegex=primary_button, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:56:27.885 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/primary_button, clickable=true, bounds=[53,1626][1027,1752], enabled=true, focused=true, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/label, clickable=false, bounds=[64,1648][1016,1729], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=androidx.compose.ui.platform.ComposeView}, children=[TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[64,1648][1016,1729], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false)], clickable=false, enabled=true, focused=false, checked=false, selected=false), TreeNode(attributes={text=, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=com.stripe.react.native:id/lock_icon, clickable=false, bounds=[969,1673][995,1705], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.ImageView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false)], clickable=true, enabled=true, focused=true, checked=false, selected=false), bounds=Bounds(x=53, y=1626, width=974, height=126)) 16:56:28.701 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 16:56:28.702 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 1689) using hierarchy based logic for wait 16:56:28.702 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:56:28.702 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:56:29.609 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 16:56:29.609 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) id: primary_button COMPLETED 16:56:29.611 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" RUNNING 16:56:29.613 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:56:36.720 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: purchase! 16:56:36.722 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=purchase!, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: purchase!, level=WARNING), aiReasoning=null, labeledCommand=null) 16:56:36.724 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "purchase!" WARNED 16:56:36.727 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 16:56:36.727 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:56:36.796 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible RUNNING 16:56:36.801 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Success, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:56:36.815 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Success" is visible COMPLETED 16:56:36.816 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 16:56:36.817 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=OK, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:56:36.828 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=OK, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=android:id/button1, clickable=true, bounds=[810,1029][978,1155], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=810, y=1029, width=168, height=126)) 16:56:37.589 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 16:56:37.589 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 16:56:37.589 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:56:37.589 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:56:38.445 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 16:56:38.445 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 16:56:39.052 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 16:56:39.052 [ERROR] maestro.cli.session.MaestroSessionManager.newSession$lambda$0: Failed to record heartbeat java.lang.InterruptedException: sleep interrupted at java.base/java.lang.Thread.sleep(Native Method) at maestro.cli.session.MaestroSessionManager.newSession$lambda$0(MaestroSessionManager.kt:93) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:840) 16:56:44.067 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 16:56:44.077 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 16:56:44.079 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 16:56:44.080 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 16:56:44.080 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 16:56:44.080 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 16:56:44.467 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 16:56:44.467 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 16:56:44.467 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 16:56:44.468 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 16:56:44.470 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel