Federation Design Plan

(#1093) Feature Under consideration federation

Thread

Comment by @Haplo164
RexSystem 1 vote originally by @Haplo164 on GitHub 1 reply
Pretty good write up, I think it's important to clearly know where chat data is stored and having it on the Guild Instance is probably best. I also think there should be a method to signal a domain change. Matrix doesn't have a way to change a servers domain so you basically have to start a new server, and that really sucks. With encryption keys you should be able to signal that a name change has taken place and update all records to reflect that. edit: it would also be nice to allow user transfers, it might be best to limit transfers to 2 online instances where the users current Home Instance initiates the transfer and the destination Instance confirms, this would move all private chats to the new Home Instance and updates the messages associated with the transferred user to point the the new Home Instance. The old Home Instance should maintain the old username as unusable for a time and respond to any requests involving the old user with a "Transferred" status and redirect to the user on their new Home Instance.
Comment by @rennr
RexSystem 1 vote originally by @rennr on GitHub OP
Yes I agree with the user transfers bit. It was something that was discussed in the Fluxer Developers server but I didn't have a chance to put in my draft above. But I do think there should be a mechanism to transfer a user's account to another instance. I agree it should be on an approval basis or there can be Instances that are whitelisted for auto-approval. Good thinking about reserving a username for a period of time - I hadn't thought of that. It may make sense to make it permanent or extremely lengthy (like 12 months) since the discriminator is involved. It's not like you're taking away a slot from someone to a unique name.