I think homebase switches should be more intuitive and less disruptive.
Currently, you get an entirely new “contact” due to them switching their homebase.
Also, I don’t really like that my client has to do some magic to automatically accept invites just because someone else switched their homebase. I don’t know how this detection works to figure out if an invite should be accepted automatically but it seems dangerous. Can’t I just send manipulated invites to trick the other party into automatically accepting?
I would prefer if the change was even more seamless, and e.g. the original room would be reused.
The “old account” could invite the “new account” to all chats and rooms before leaving. Those leave and join messages could then be displayed as “Person X switched to new homebase Y”.
This should even work for encrypted chat histories as long as the decryption keys of the “old account” are kept around.
But it could also lead to persons
2 while both being on homebase
A having their direct chat on homebase
B. So also not a perfect solution.
So in total:
- Lower risk of misuse
- Improved experience for other parties
- no new contact
- no need to recategorize (see here)
- keeps chat history
- Might result in chat on “random” homebase