As discussed here have implemented a terms of service (TOS) workflow in this and this issue.
We never really tested the transition from one TOS version to the next. Let's do this on this ticket!
Expected behaviour and some open questions:
- adjust terms of service and increase version (or do whatever is needed to roll out new TOS)
- Email goes out to all accounts with information about new TOS that are valid from date X and link (with token) to new terms of service.
- Is it currently implemented that way? Or is the emai. only sent out once the TOS have already been updated?
- When user clicks on the link, can they see the new TOS and accept them on this page (without the need to log in, handled by token).
- When user opens that link again, they see the version of the TOS that they have accepted previously? -> Imagine the case that the user have accepted the new TOS before the deadline (old TOS are still in place) and on https://staging.opensensemap.org/terms there is still the old version.
- User does not accept TOS via link (yet) and the date of the new TOS taking effect arrives: https://staging.opensensemap.org/terms does now show the new TOS.
- Is the token link from the email above still valid and users can users accept the new TOS (that are now in effect) still via the link?
- What happens to the users / devices API calls if the new TOS are in effect but the user has not accepted them? If I remember correctly, we can block certain routes for that case. Should we block data upload, device creation and device editing?
- Do we give users a (pretty long?) waiting period during which they can still use the OSEM in a limited way (= upload data and not much else, see above)? If yes, how long is that waiting period?
- If users don't accept inside waiting period: Automatic account deletion and orphanization of devices.
- Do we need to handle the case that when the TOS are updated again while users still have not accepted the previous TOS (and are still in the waiting period)?
- Waiting period is almost over (e.g. 7 days beforeend of waiting period): Do we want to send out another automatic email reminder that their account will be deleted in X days?
- Does any of the points above requiere us to have multiple TOS accessible at the same time?
Misc:
Please test the TOS update workflow as it is at the moment and document the findings. What works? What is not yet implemented? What should happen before the release? Also incorporate the questions I wrote down above.
As discussed here have implemented a terms of service (TOS) workflow in this and this issue.
We never really tested the transition from one TOS version to the next. Let's do this on this ticket!
Expected behaviour and some open questions:
Misc:
seed-tos-script that we have updated here?Please test the TOS update workflow as it is at the moment and document the findings. What works? What is not yet implemented? What should happen before the release? Also incorporate the questions I wrote down above.