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

Once a case of COVID19 has been reported, the app cannot be reverted to a normal state #46

Open
jorgej-ramos opened this issue Jan 5, 2021 · 4 comments

Comments

@jorgej-ramos
Copy link

jorgej-ramos commented Jan 5, 2021

Apparently some people are reporting that, after reporting their positive through the app, it cannot return to its normal state. Therefore, they stop sharing identifiers with other terminals, leaving the system unusable.

Some even indicate that this behavior has not been corrected in months.

Trying to look at unit tests for a way to test this functionality, I find that they are completely out of date and in fact not working due to a dependency on RxSwift.

On the other hand, it seems that the configuration server gives 72 hours of grace to go from an .infected state to a .healthy state. This is confirmed by the configuration of the TimeBetweenStatesDto model

Being impossible to test in a unitary way, I find that the file ExpositionUseCase.swift contains this expression (line 112), when the current state is .infected:

if expositionInfo.since == nil {
    expositionInfo.since = Date ()
}

Without documentation or some unit tests to track the functionality, I cannot say anything definitively, but this expression can end in an infinite cycle of .infected state, especially since this data is being saved in UserDefaults.

Could this be the reason why once a positive has been reported, the app is no longer usable?

EDIT: Here's some more documentation about the problem. Capture taken today 05/01/2021. App has been deleted and reinstalled

Eq9QsS4XMAAjxHu

EDIT 2: The user reports that, once the old contact records have been manually deleted from Settings > Exposure Notifications, the application can be activated again.

Perhaps this procedure should be explained directly in the app, or we should be able to delete the records directly from it to avoid confusion.

@pantic79
Copy link
Contributor

pantic79 commented Jan 9, 2021

Hello @jorgej-ramos,

by design, once the user has confirmed the positive result, contact tracing is stopped. Nevertheless, the application status should be restored after reinstall so we'll review your findings in order to guess what's happenning.

Thanks.

@jorgej-ramos
Copy link
Author

Thank you for your response.

I understand that this is how it is defined by design. But I think that even though it is defined that way by design, the feedback towards the average user is confusing: the application just stops working, without any kind of "what do I do now" message.

The user experience would improve significantly if clear messages were provided.

On the other hand, the only way I have found to return the application to its normal state is by entering Settings > Exposure notifications and from there delete all the information.
Even after installing and reinstalling the app several times.

In any case, asking the user to reinstall an app should never be appropriate. In my opinion a design fails somewhere if we get to this point.

I think maybe the design should be revised, since it does not meet the expectations of user experience.

Again thanks in advance

@pantic79
Copy link
Contributor

Hello @jorgej-ramos,

we are not asking the users to reinstall the APP (just talking about technical way to reset the status). It's just that the re-infection possibility was not considered at the beginning (that was uncertain) so once the case has been reported, the application is useless for contact tracing. This behaviour should be described in application FAQs. We have requested several times advisory from health perspective and the conclusion by the moment is to keep this as is (that is, not turning into green status from the app once the case has been reported). Of course, this has nothing to do with a better explanation for the final user where it's clear that something is not working fine if the user doesn't know what to do and hence we'll work on this.

Thanks.

@jorgej-ramos
Copy link
Author

Thank you for your response. So much appreciated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants