My scenario is this: I have a couple of Unity UI sliders that I want to control values with for a given game object that the user has selected. Kind of like having one set of sliders to control happiness and age for characters, one at a time, based on what character is selected by the user. I have set up the sliders to read and write data from/to a Context on a ContextHolder on the canvas. When the user selects a character I set the Context on the ContextHolder to one stored on that character, to let the user control and see the same type of values for that character instead. You can set the sliders and the values in the current context update as expected, and if updating the values of the context manually in the inspector for the ContextHolder the sliders move accordingly. However each time I swap Context on the ContextHolder the values in the previous context get reset so that when I switch back later all sliders are are at 0.
It is not clearly defined how the data flow works when the context is swapped. Right now it leads to a data loss which is not acceptable.