Not sure if this belongs here or in plotly, so let me know if this should be moved.
I was trying to add uirevision to preserve legend selections on a barchart, so I set uirevision=0 and left it unchanged. The chart continued to reset the selections back to the default when the chart was updated.
However, if the value of uirevision is changed to 1, and left unchanged, then it works as expected.
According to this post, uirevision can be set to any value, and the chart should only reset the ui state when the value is changed.