When I change my Display Name, Spaces don't get updated
Summary: This is a bug I'm deliberately introducing in the Experiment Mode branch, because the existing way we deal with it is idiotic. Figure out something better.
Previously, we had a OldUserSpaceSession.whenStateReady()
handler, which was called on every State change, which found the current user's local identity, checked the Display Name, and rewrote it if it wasn't correct. That's insanely inefficient, and broadly horrible.
We could apply different, somewhat more efficient hacks, such as doing this check when I load the Space. That potentially misses changing my display name in Spaces that are currently loaded, but it would eventually deal with.
But really, as the comment in that function points out, the implication is that our current handling of Display Names is pretty dumb. If we're hard-syncing it to your Identity like this, we should just delegate the Display Name to the Identity in some fashion. That isn't necessarily practical, since Identities aren't part of the Space data -- we don't want to add zillions of roundtrips to the IdentityCache for this. But we should consider the fact that this Display Name is simply a cache of the actual Identity's Display Name, and seek a better way to do this.