Skip to content
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

Verification UI Experience Improvements #4563

Closed
3 tasks done
nityas opened this issue Jul 29, 2020 · 3 comments
Closed
3 tasks done

Verification UI Experience Improvements #4563

nityas opened this issue Jul 29, 2020 · 3 comments
Assignees
Labels

Comments

@nityas
Copy link
Contributor

nityas commented Jul 29, 2020

Expected Behavior

  • Users should be able to enter in received text messages - restarting verification just requests more
  • Onboarding should check if I’m already verified before prompting. I have an account that I restored that is already verified to the number I entered in
  • Possible manual re-request attestation CTA (eg. button next to each import message box that requests from new issuer)
    - [ ] change mobile's expiry definition for an attestation request to 5min and re-request new attestation on resume

Addressed more fully by an ongoing Verification Enhancements Feature: figma

Current Behavior

What is the current behavior?

@nityas nityas added the wallet label Jul 29, 2020
@nityas nityas added the Priority: P1 Critical label Aug 26, 2020
mergify bot pushed a commit that referenced this issue Sep 2, 2020
)

### Description

This allows to fetch current verification state first, then give user options on how to continue and only then verification starts.

This is how current verification flows are affected:
* Onboarding via **invite** - **no changes**
* Onboarding via **backup phrase** - we check the current verification state in the end of restoring account process, then we show `VerificationEducationScreen` as previously (so it takes a little longer for user to see verification screen, but verification screen **does not show a loader**).
* User goes **to Verification screen from inside the app** - we show a loader and meanwhile we check the current verification state, then we show `VerificationEducationScreen` as previously (so it takes a little longer for user to see verification screen and verification screen **does show a loader**).

Depend on the verification state, there are following possible states:
* User has 0 completed and 0 not expired attestations - we show button `Start`
* User do not have sufficient balance to perform verification - appropriate message and button `Skip it now` would appear
*  User has `>0` completed and `0` not expired attestations - we show button `Resume`
*  User has the same amount of attestations left to complete and not expired ones, which both `>0` - we show two buttons -  `Resume` and `I already received three codes`. The difference is that we **skip the revealing step** for attestations in case of `I already received three codes` button is pressed.

### Other changes

Change right CTA on verification notification from `Remind` to `Dismiss`

### Tested

iOS simulator (have tried to cover all the flow described above)

### Related issues

- Part of #4563
- Part of https://github.com/celo-org/celo-labs/issues/566

### Backwards compatibility

Yes
@i1skn
Copy link
Contributor

i1skn commented Sep 24, 2020

@nityas do you think we can remove "change mobile's expiry definition for an attestation request to 5min and re-request new attestation on resume" in light of the recent discussions?

mergify bot pushed a commit that referenced this issue Sep 28, 2020
### Description

* Remove "I already received three codes" and merge its logic into "Resume" button on the VerificationEducation screen.
* Add "Resend N messages" on the VerificationInput screen. Button is only available after a minute since the last reveal. When pressed we will try to reveal already existing attestations first. If HTTP call to attestation-service returns anything, but `OK` we request another issuer and try to reveal the number to it. Those we increase number of actionable attestations till the limit 5, after which user need to wait until some attestations expire to request more.
* Updated text for "Do I need to confirm" dialog in English.

See [figma](https://www.figma.com/file/zt7aTQ5wuXycIwxq5oAmF9/Wallet-Refresh?node-id=7420%3A2384) for more details.

### Tested

iOS & Android with actual requesting of SMSs

### Related issues

- Part of #4563
- Closes #5216

### Backwards compatibility

Yes

### Screenshots

![Simulator Screen Shot - iPhone 11 Pro - 2020-09-22 at 16 57 36](https://user-images.githubusercontent.com/6160124/93912316-e4963580-fd03-11ea-8a05-e2680e6a9008.png)
![Simulator Screen Shot - iPhone 11 Pro - 2020-09-22 at 16 25 06](https://user-images.githubusercontent.com/6160124/93912318-e52ecc00-fd03-11ea-84c2-3624c3c28935.png)
![Simulator Screen Shot - iPhone 11 Pro - 2020-09-22 at 16 22 08](https://user-images.githubusercontent.com/6160124/93912320-e5c76280-fd03-11ea-9f8b-22ae5f735541.png)
ewilz pushed a commit to ewilz/celo-monorepo that referenced this issue Sep 29, 2020
…lo-org#4920)

### Description

This allows to fetch current verification state first, then give user options on how to continue and only then verification starts.

This is how current verification flows are affected:
* Onboarding via **invite** - **no changes**
* Onboarding via **backup phrase** - we check the current verification state in the end of restoring account process, then we show `VerificationEducationScreen` as previously (so it takes a little longer for user to see verification screen, but verification screen **does not show a loader**).
* User goes **to Verification screen from inside the app** - we show a loader and meanwhile we check the current verification state, then we show `VerificationEducationScreen` as previously (so it takes a little longer for user to see verification screen and verification screen **does show a loader**).

Depend on the verification state, there are following possible states:
* User has 0 completed and 0 not expired attestations - we show button `Start`
* User do not have sufficient balance to perform verification - appropriate message and button `Skip it now` would appear
*  User has `>0` completed and `0` not expired attestations - we show button `Resume`
*  User has the same amount of attestations left to complete and not expired ones, which both `>0` - we show two buttons -  `Resume` and `I already received three codes`. The difference is that we **skip the revealing step** for attestations in case of `I already received three codes` button is pressed.

### Other changes

Change right CTA on verification notification from `Remind` to `Dismiss`

### Tested

iOS simulator (have tried to cover all the flow described above)

### Related issues

- Part of celo-org#4563
- Part of https://github.com/celo-org/celo-labs/issues/566

### Backwards compatibility

Yes
ewilz pushed a commit to ewilz/celo-monorepo that referenced this issue Sep 29, 2020
### Description

* Remove "I already received three codes" and merge its logic into "Resume" button on the VerificationEducation screen.
* Add "Resend N messages" on the VerificationInput screen. Button is only available after a minute since the last reveal. When pressed we will try to reveal already existing attestations first. If HTTP call to attestation-service returns anything, but `OK` we request another issuer and try to reveal the number to it. Those we increase number of actionable attestations till the limit 5, after which user need to wait until some attestations expire to request more.
* Updated text for "Do I need to confirm" dialog in English.

See [figma](https://www.figma.com/file/zt7aTQ5wuXycIwxq5oAmF9/Wallet-Refresh?node-id=7420%3A2384) for more details.

### Tested

iOS & Android with actual requesting of SMSs

### Related issues

- Part of celo-org#4563
- Closes celo-org#5216

### Backwards compatibility

Yes

### Screenshots

![Simulator Screen Shot - iPhone 11 Pro - 2020-09-22 at 16 57 36](https://user-images.githubusercontent.com/6160124/93912316-e4963580-fd03-11ea-8a05-e2680e6a9008.png)
![Simulator Screen Shot - iPhone 11 Pro - 2020-09-22 at 16 25 06](https://user-images.githubusercontent.com/6160124/93912318-e52ecc00-fd03-11ea-84c2-3624c3c28935.png)
![Simulator Screen Shot - iPhone 11 Pro - 2020-09-22 at 16 22 08](https://user-images.githubusercontent.com/6160124/93912320-e5c76280-fd03-11ea-9f8b-22ae5f735541.png)
@nityas nityas added the enhancement an improvement to an existing feature label Dec 1, 2020
@i1skn
Copy link
Contributor

i1skn commented Dec 15, 2020

@nityas is there things left to do in this one?

@i1skn
Copy link
Contributor

i1skn commented Dec 23, 2020

Closing this one as it seems to be completed

@i1skn i1skn closed this as completed Dec 23, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants