Maestro flows: full audit, bug fixes, and happy/negative-path coverage expansion#6948
Draft
Copilot wants to merge 2 commits into
Draft
Maestro flows: full audit, bug fixes, and happy/negative-path coverage expansion#6948Copilot wants to merge 2 commits into
Copilot wants to merge 2 commits into
Conversation
…ion coverage Agent-Logs-Url: https://github.com/KeeperCommunity/bitcoin-keeper/sessions/7964f9a0-2a82-4212-9530-f20d1aa79019 Co-authored-by: cakesoft-swati <62699947+cakesoft-swati@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Add Maestro testing cases for Bitcoin Keeper app
Maestro flows: full audit, bug fixes, and happy/negative-path coverage expansion
May 11, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PR #6945 only added thin
runFlowwrapper files and left all legacy flows unfixed, with no negative-path coverage, no cross-platform hardening, and changes outsideflows/. This PR supersedes it with a complete audit and expansion — all changes scoped toflows/only.Bugs fixed in existing flows
appsettings.yaml— broken selectorbtn_App_Backup}(stray}); space-prefixed IDview_ KeeperTelegramexportseed.yaml— samebtn_App_Backup}typo; passcode was1-2-3-4but app PIN is1-1-1-1(would always fail auth gate)setpin.yaml— only 1 of 4 required digits re-entered after mismatch+clear; straytapOn: 'Create'that couldn't succeedcopywalletaddress.yaml— loop condition inverted:repeat while visible 'Address Copied Successfully'kept tapping copy while the success toast was showing, potentially looping foreversubscription.yaml— after tappingbtn_choosePlan, flow incorrectly tapped into the key management screen instead of the subscription screenRobustness improvements
receive.yaml,buyBTC.yaml— replaced unboundedrepeat while icon_unconfirmed_0 visiblepolling loops (no termination guarantee) withextendedWaitUntil notVisible(60 s ceiling) or simplified direct navigationwalletSetting.yaml— added assertions + back navigation; previously entered settings and left app in a broken state for subsequent flowsviewwallet.yaml— first-run info modal is now dismissed conditionally (runFlow when: visible); removed hardcoded wallet-name text assertions that break after any rename or re-runsend.yaml— annotated Android-specific camera permission conditional to clarify iOS behaviourNew negative-path flows
login_wrong_pin.yamlsend_invalid_address.yamlsend_empty_amount.yamlsend_cancel.yamlexportseed_wrong_pin.yamlwallet_creation_cancel.yamlsetpin_mismatch.yamlNew happy-path flows
receive_address_display.yaml— receive screen + copy address +Address Copied Successfullytoastappsettings_toggles.yaml— dark-mode toggle round-tripOrchestration & documentation
regression_full.yaml— single entry point that runs all major happy-path flows followed by all negative-path flows in sequenceflows/COVERAGE.md— documents what is covered, what remains missing, and what cannot be reliably automated with Maestro alone (hardware signers, biometrics, QR scanning, real transactions, OS-level permission matrixes, clipboard verification, in-app purchase dialogs)Original prompt
Create a new pull request in
KeeperCommunity/bitcoin-keeperagainst branchfeat/openspec-integrationthat fully addresses the user's Maestro testing request and supersedes the limited scope of PR #6945.Repository focus:
flows/folder.https://github.com/KeeperCommunity/bitcoin-keeper/tree/feat/openspec-integration/flows.flows/.User's required outcome:
flows/, fix broken/brittle YAML where needed, and improve reliability.Important context from prior review:
Detailed requirements:
flows/and correct syntax or logic issues that would prevent Maestro execution or cause avoidable flakiness.flows/only.Deliverable expectations:
flows/.If possible, close the gaps identified in the review of PR #6945, especially:
flows/Create the PR with a title that makes clear this is the fuller Maestro flow audit/coverage expansion.
The following is the prior conversation context from the user's chat exploration (may be truncated):
User: I want you to generate maestro test cases for bitcoin keeper app.
Assistant: I’m waiting for your response to the approval dialog so I can continue creating the new Maestro test cases.
User: @copilot Accepted Confirmation: Confirm agent session
Assistant: Started — I’ve kicked off the work to generate the new Maestro test cases for
KeeperCommunity/bitcoin-keeperfromfeat/openspec-integration.You can track progress here:
https://github.com/copilot/tasks/pull/PR_kwDOHBFs3s7Zg8kt?session_id=5100fc9e-9d6a-401b-abce-3be0faf0ea61
User: olease cover all possible test cases using maestro
Assistant: I’ve already started the PR task on
KeeperCommunity/bitcoin-keeperfor generating Maestro tests.Your latest scope update is clear: cover as many app flows as reasonably possible with Maestro. I can’t modify the already-running task in place from here, but the active r...
This pull request was created from Copilot chat.