CHW User Experience with CHT Core Upgrades

The topic of upgrades came up recently in a conversation I was having with someone managing a large, national deployment of the CHT Core. The question was posed:

What exactly does the CHW experience when upgrading the CHT Core? Is there any difference between a CHT Core upgrade and a workflow change? Is the CHW prevented from working while the server is upgrading?

To help better understand this topic, I made a short video recording the process both the CHT Core upgrade process as well as a workflow update using an actual physical phone to accurately capture the CHW user experience (UX).

The CHT is carefully engineered to not ever block a CHW from working. While especially true when the user is offline, intentionally or when there’s no connectivity available, the user can always opt out of the upgrade when they’re online. They’ll be prompted again in 2 hours. There is no difference UX difference between a workflow change or a CHT Core upgrade.


Specifically… changes to the DDoc and User Context will result in an update modal:

watchUserContextChanges() includes:

  • org.couchdb.user:${}

watchDDocChanges() includes:

  • _design/medic
  • _design/medic-client
  • service-worker-meta
  • settings

Thanks @michael ! Great to know specifically what specifically causes the “Update available” modal.