feat(stellar-wallet-snap): add recoverable confirmation refresh outcome - #291
Draft
khanti42 wants to merge 4 commits into
Draft
feat(stellar-wallet-snap): add recoverable confirmation refresh outcome#291khanti42 wants to merge 4 commits into
khanti42 wants to merge 4 commits into
Conversation
|
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.



Explanation
Today, confirmation refresh treats all transaction re-validation failures as
halt: omit the security scan, show a banner, and stop auto-cron. That is correct for hard failures (insufficient balance, trustline, etc.), but SEP-29RequiresMemois different — the user can fix it in-dialog (add a memo) and the UI needs to re-trigger refresh + scan without reconstructingsecurityScanRequest.This PR adds a first-class
recoverable?: booleanonConfirmationContextRefreshResult:halt— hard validation failure; omit scan this cycle; do not auto-reschedule; banner error.recoverable— soft validation failure (currentlyRequiresMemoException); same omit-scan + pause auto-cron + banner behavior, but keepsecurityScanRequestintact so a later UIscheduleBackgroundEventcan rebuild and re-scan.halt: true.haltorrecoverable, and does not auto-reschedule in either case.No confirm UI / MemoEdit changes here — this is the platform primitive so memo confirm UI can land on top cleanly.
References
haltconfirmation refresh)Checklist