Due to the (pending) removal of the ContextManager – see
GPII-3117 – the LifecycleManager now tracks the name of the set of preferences currently in use in its session.model.activePrefsSetName.
At the same time, preferences use "contexts": blocks to list a set of preferences that users can switch among. See, for example, the multi_context.json5 preferences set that lists gpii-default, bright, noise, and brightandnoise contexts (or preferences sets)
Ideally, the "contexts": blocks should use "prefsSets": to be consistent with the new code. However, the work needed to make this change is problematic. It is problematic because:
1. There are 400+ instances of "contexts": to be replaced
2. The user preferences stored in the production database currently use "contexts": requiring a migration of the records in the database to the new data structure.
3. This change is not backward compatible, and amounts a new version of the preferences data structure. Put another way: a new schema that describes the structure of preferences is needed.
At the 06-Nov-2019 architecture meeting (line 142), it was decided to create this JIRA and do the work at some future time.