-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
remove semi-verified state #15390
Comments
Just checking: will this issue also build this in for Android? If not, we can remove the Android label. |
@Miyayes Yes - the changes will be in the shared rewards engine code. |
Suggested test plan:
cc @szilardszaloki @zenparsing @Miyayes @brave/legacy_qa |
Verification in progress with the below builds. Additional notes:
Upgrade (NOT_CONNECTED) - anon/virtual BAT - PASSED
Upgrade (VERIFIED) - Verified KYC'd wallet linked - PASSED
Confirmed once brave-intl/bat-go#895 was merged I no longer received the "Your wallet is verified" notification on upgrade. The reason for receiving the notification initially was because I had been kicked back to
Upgrade (DISCONNECTED_VERIFIED) - Verified, KYC'd wallet is Disconnected prior to upgrade - PASSED (issue encountered)
Note, rec'd "Your wallet is verified" message after reconnecting. Asked about it here: https://bravesoftware.slack.com/archives/CB0KCRCQN/p1627659102017500. Per this discussion we don't want to show this message on "natural" disconnect. Logged #17278. Upgrade (a SEMI-VERIFIED state) - link 2 KYC'd Uphold accounts prior to upgrade - PASSED (encountered issue)
example logs:
example logs:
Also logged #17265 for going from
Upgrade (DISCONNECTED_NOT_VERIFIED) - pending->disconnected - PASSEDNote - this case covers having Uphold user status = pending and then simulating a natural disconnect prior to upgrade.
Upgrade (DISCONNECTED_NOT_VERIFIED) - blocked->disconnected - PASSEDNote - this case covers having Uphold user status = blocked and then simulating a natural disconnect prior to upgrade.
Upgrade (DISCONNECTED_NOT_VERIFIED) - restricted->disconnected - PASSEDNote - this case covers having Uphold user status = restricted and then simulating a natural disconnect prior to upgrade.
Upgrade (PENDING/pending) - PASSEDNote - this case covers having Uphold user status = pending (in Uphold response) prior to upgrade.
Additional note, in step 11 I was in Upgrade (PENDING/blocked) - PASSEDNote - this case covers having Uphold user status = blocked (in Uphold response) prior to upgrade.
Additional note, in step 11 I was in Upgrade (PENDING/restricted) - PASSEDNote - this case covers having Uphold user status = restricted (in Uphold response) prior to upgrade.
Additional note, in step 11 I was in Clean profile - Sign up for new Uphold account - PASSED
In the above "id" under "depositAccountProvider" has a value, so it is correctly linked on the server
New Notifications - PASSEDConfirmed each of the new notifications listed in brave/brave-core#9212 (comment) displayed in the UI.
"Learn more" URLs are listed in TCs from above for first 3 new notifications. For the BAT unavailable notification, the "Learn more" link directs me to https://support.uphold.com/hc/en-us/articles/360033020351-Brave-BAT-and-US-availability. How to trigger the above notifications:
example:
Note - make sure you have SSL Proxying enabled for api-sandbox.uphold.com or this won't work.
Clean profile - simulate natural Disconnect - PASSED (issue encountered)Scenario 1:
Scenario 2:
Simulate Upgrade from NY State Case - PASSEDPre-req, be on release channel version (1.27.111 was Release version at time of this test)
Logs:
Semi-Verified state (Upgrade) - PASSEDPre-req: Have server linking limit set to 4
Logs:
Logs:
Logs:
Semi-Verified state (Clean profile) - PASSEDPre-req: Have server linking limit set to 4
Logs:
Logs:
Additional semi-verified upgrade scenario - PASSEDAfter discussing with @hollons @Brave-Matt, I ran the additional scenario below to confirm BAT which did not move to Uphold prior to 1.29.x, would still be available to the user after upgrading to 1.29.x.
Additional Uphold functionality regression as per #15390 (comment) was completed and details can be found under https://github.com/brave/internal/issues/788#issuecomment-889075534 |
Verification passed on
Upgrade (NOT_CONNECTED) - anon/virtual BAT - PASSED
Upgrade (VERIFIED) - Verified KYC'd wallet linked - PASSED
Upgrade (DISCONNECTED_VERIFIED) - Verified, KYC'd wallet is Disconnected prior to upgrade - PASSED (issue encountered #17278 )
Upgrade (a SEMI-VERIFIED state)_PASSED
Console logs
wallet status Not connected and balance is zero in wallet info Confirmed that https://grant.rewards.bravesoftware.com/v3/wallet/linking-info?paymentId=df50aabc-a100-4ad7-82b8-a929d70d6150 returns Confirmed
Console log for max linking limit reached
Event _logs_
Confirmed wallet balance is zero and wallet is not verified due to max linking limit reached
console logs
Clean profile_Semi verified state check_PASSED
Console log for max linking limit reached
Confirmed that https://grant.rewards.bravesoftware.com/v3/wallet/linking-info?paymentId=8af2e36b-f2f6-4125-9da3-2034425a1b1f returns Confirmed
Console log for max linking limit reached
Upgrade (a SEMI-VERIFIED state) - link 2 KYC'd Uphold accounts prior to upgrade - PASSED (encountered issue)
Upgrade (DISCONNECTED_NOT_VERIFIED) - pending->disconnected - PASSEDNote - this case covers having Uphold user status = pending and then simulating a natural disconnect prior to upgrade.
Upgrade (DISCONNECTED_NOT_VERIFIED) - blocked->disconnected - PASSEDNote - this case covers having Uphold user status = blocked and then simulating a natural disconnect prior to upgrade.
Upgrade (DISCONNECTED_NOT_VERIFIED) - restricted->disconnected - PASSEDNote - this case covers having Uphold user status = restricted and then simulating a natural disconnect prior to upgrade.
Upgrade (PENDING/blocked) - PASSEDNote - this case covers having Uphold user status = blocked (in Uphold response) prior to upgrade.
Upgrade (PENDING/pending) - PASSEDNote - this case covers having Uphold user status = pending (in Uphold response) prior to upgrade.
Upgrade (PENDING/restricted) - PASSEDNote - this case covers having Uphold user status = restricted (in Uphold response) prior to upgrade.
Simulate Upgrade from NY State Case - PASSEDPre-req, be on release channel version (1.28.106 was Release version at time of this test)
Logs:
Clean profile - simulate natural Disconnect - PASSEDScenario 1:
Scenario 2:
New Notifications - PASSED[Followed the steps which @LaurenWags mentioned in the test plan above]
Clean profile - Sign up for new Uphold account - PASSED
In the above "id" under "depositAccountProvider" has a value, so it is correctly linked on the server
|
Verified
Ran the Pre-req: Have server linking limit set to 4 Steps:
|
Verification passed on Oppo Reno 5 with Android 11 running 1.29.74 x64 build Scenario 1:
|
1.28.x | 1.29.x | Tip sent on 1.29.x |
---|---|---|
Scenario 2: Upgrade (VERIFIED) - Verified KYC'd wallet linked
- Installed current release version, 1.28.106,
- Enabled Rewards and connected to a KYC wallet
- Exit browser
- Upgrade to 1.29.74 build
- Verified wallet is still connected post upgrade
- Verified able to tip a publisher post upgrade and wallet balance updates accordingly
1.28.x | 1.29.x | Tip sent on 1.29.x |
---|---|---|
Scenario 3: Upgrade (DISCONNECTED_VERIFIED) - Verified, KYC'd wallet is Disconnected prior to upgrade
- Installed current release version, 1.28.106,
- Enabled Rewards and connected to a KYC wallet
- Disconnect the wallet via Uphold, ensured panel shows disconnected message
- Exit browser
- Upgrade to 1.29.74 build
- Verified wallet is still disconnected post upgrade
- Verified able to re-connect the KYC wallet again post upgrade
- Verified able to tip a publisher post upgrade and wallet balance updates accordingly
1.28.x Disconencted | 1.29.x Disconnected | 1.29.x Re-connected | Tip sent on 1.29.x |
---|---|---|---|
Scenario 4: Upgrade (a SEMI-VERIFIED state) - link 2 KYC'd Uphold accounts prior to upgrade
- Installed current release version, 1.28.106
- Launched staging env and enable Rewards, link KYC'd Uphold wallet
- Manually disconnect from Uphold (from wallet panel)
- Verified returned to pre-link state (UI, no balance, etc)
- Linked a second KYC'd Uphold wallet
- Verified UI appears fine (UI, balance is shown), but logs show 403 error for linking
(https://grant.rewards.bravesoftware.com/v3/wallet/uphold/<paymentID>/claim)
[ REQUEST ]
> URL: https://grant.rewards.bravesoftware.com/v3/wallet/uphold/d3.......1/claim
> Method: POST
> Content: {"signedLinkingRequest":"eyJ......J9"}
> Content Type: application/json; charset=utf-8
2021-08-31 06:40:34.738 19036-19036/? V/chromium: [VERBOSE6:logging_util.cc(136)]
[ RESPONSE - OnRequest ]
> Url: https://grant.rewards.bravesoftware.com/v3/wallet/uphold/d32.......1/claim
> Result: Failure
> HTTP Code: 403
> Body: {"message":"error linking wallet: unable to link wallets: unable to match wallets: wallets do not match","code":403}
- Quit Browser
- Upgraded to 1.29.x
- Verified 2nd verified, KYC'd wallet is no longer connected
- Verified UI shows pre-link state (UI, no balance)
[ REQUEST ]
> URL: https://grant.rewards.bravesoftware.com/v3/wallet/uphold/d3.....1/claim
> Method: POST
> Content: {"signedLinkingRequest":"ey......9"}
> Content Type: application/json; charset=utf-8
2021-08-31 06:42:36.197 20591-20591/? V/chromium: [VERBOSE6:logging_util.cc(136)]
[ RESPONSE - OnRequest ]
> Url: https://grant.rewards.bravesoftware.com/v3/wallet/uphold/d3.....1/claim
> Result: Failure
> HTTP Code: 403
> Body: {"message":"error linking wallet: unable to link wallets: unable to match wallets: wallets do not match","code":403}
2021-08-31 06:42:36.205 20591-20591/? I/chromium: [INFO:post_claim_uphold.cc(123)] Forbidden
2021-08-31 06:42:36.210 20591-20591/? V/chromium: [VERBOSE1:uphold.cc(188)] Disconnecting wallet
2021-08-31 06:42:36.712 20591-20591/? V/chromium: [VERBOSE6:logging_util.cc(136)]
[ RESPONSE - OnRequest ]
> Url: https://grant.rewards.bravesoftware.com/v3/wallet/uphold/d3......1/claim
> Result: Failure
> HTTP Code: 403
> Body: {"message":"error linking wallet: unable to link wallets: unable to match wallets: wallets do not match","code":403}
2021-08-31 06:42:36.722 20591-20591/? I/chromium: [INFO:post_claim_uphold.cc(123)] Forbidden
1.28.x Acc #1 |
1.28.x Acc #2 |
1.29.76 |
---|---|---|
Scenario 5: Upgrade (DISCONNECTED_NOT_VERIFIED) - pending->disconnected
- Clean install on 1.28.x (current release)
- Enable Rewards on staging environment and close the browser
- Using Charles Proxy re-wrote Uphold user status to pending in
https://api-sandbox.uphold.com/v0/me
response - Restart 1.28.x, connect Uphold account
- Verified PENDING on brave://rewards-internals and on wallet panel
- Go to uphold site, revoke access. Confirm DISCONNECTED_NOT_VERIFIED on brave://rewards-internals page.
- Close browser
- Upgrade to 1.29.76
- Should be in DISCONNECTED_VERIFIED state after upgrade (confirm on brave://rewards-internals)
- No notification shown due to Implement wallet state notifications for Android #17780
Scenario 6: Upgrade (PENDING/blocked)
- Clean install on 1.28.x (current release)
- Enable Rewards on staging environment and close the browser
- Using Charles Proxy re-wrote Uphold user status to pending in
https://api-sandbox.uphold.com/v0/me
response - Restart 1.28.x, connect Uphold account
- Verified PENDING on brave://rewards-internals and on wallet panel
- Upgrade to 1.29.76
- Verified brave://rewards-internals shows
PENDING ==> NOT_CONNECTED
in Event logs tab - No notification shown due to Implement wallet state notifications for Android #17780
Scenario 8: Clean profile - simulate natural Disconnect
Scenario 1:
- Clean install on a non-JP region
- Enable Rewards on staging environment
- Link a KYC Uphold wallet
- Verified wallet is linked (Wallet balance updates from Uphold)
- Visited Uphold account and revoked Brave-Browser access to simulate natural disconnect
- Verified opening BR Panel shows "Disconnected" UI
Scenario 2:
- Clean install on a non-JP region
- Enable Rewards on staging environment
- Link a KYC Uphold wallet
- Verified wallet is linked (Wallet balance updates from Uphold)
- Visited Uphold account and revoked Brave-Browser access to simulate natural disconnect
- Verified BR panel shows "Disconnected", no balance is displayed
- Verified brave://rewards-internals status is "Disconnected (Verified)"
- Verified able to tap on "Disconnected" on panel and be directed to re-authorize Brave Browser
- Verified able to re-auth successful
Scenario 9: Semi-Verified state (Upgrade)
Device limit has not been tested before on Android and since its a notification that is shown it may not be implemented so will have to wait for #17780 to be done to check this one
Description
Related issues:
#15028
#13151
Notification to alert user to reaching linking limit has been implemented via above issues, however blocking the connection (for Uphold wallets) has not been added yet.
When this is implemented, any additional wallet providers should be at least spot checked to confirm their existing linkage functionality is still working as designed.
Additional details/information can be obtained from @Miyayes @zenparsing @emerick
The text was updated successfully, but these errors were encountered: