Once persistent threads were implemented, the UI started exposing a bunch of race conditions.
Switching:
Thread A → Thread B
could briefly show Thread A's messages inside Thread B before correcting itself.
Sometimes the wrong thread remained selected.