-
Notifications
You must be signed in to change notification settings - Fork 1
fix(migration): pickup pending orders for fulfillment #593
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
Fixes scenario: User pays for a channel order in RN, migrates to Native before the channel opens → App doesn't know the order is paid & pending fulfillment → channel never opens.
This comment has been minimized.
This comment has been minimized.
|
@ben-kaufman AFAIU the changes from commit 1c21784 are needed in iOS as well 🙏🏻 Could you tackle the iOS side please? |
|
Yes, will do |
Dunno if iOS has the same mechanism, but if not it should: Then the actual migration only needs to ensure the |
|
Note to reviewer Please test the migration scenario and do not merge until that's done. I will test myself too on actual prod mainnet release build, didn't because most of the refactorings were suggestions from Android Studio. |
fix: recover channel orders during migration
This comment has been minimized.
This comment has been minimized.
|
Tested the migration scenario, works as expected -> pending channel is visible and opens eventually after confirmation. 👍 The scenario fails in the restoration scenario:
Here, the pending channel is still not visible after restoration and ultimately never opens. |
This comment was marked as outdated.
This comment was marked as outdated.
|
The restore without migration worked. I'll test now on RN side |
Also worked, so the issue is in RN restore mapping |
worked on #595 |
|
Worked for me on both scenarios. For the restore from mnemonic, before deleting the app please go to backup in settings to make sure it synced, as in case the app is deleted before backup is synced there's nothing we can do. |
Ok, worked after making sure it synced. 👍 |
piotr-iohk
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Fixes scenario: User pays for a channel order in RN, migrates to Native before the channel opens → App doesn't know the order is paid & pending fulfillment → channel never opens.
Note
This was a bug I found by being more creative than the crew during the mainnet testing session of this week when we were testing the migration. Would love more creativity from everyone especially wrt. mainnet testing.
Description
paidOrdersbackup data is a map oforderId -> txId, not just a list of IDscacheStore.addPaidOrder(orderId, txId), the native app can now recognize pending paid orders and fulfill them when block confirmation is receivedRefactorings
Preview
N/A - No UI changes
QA Notes
Test: Migrating pending channel order from RN to Native