309
UI Idea for one-click Lemmy account migration
(lemmy.world)
A community to talk about the Fediverse and all it's related services using ActivityPub (Mastodon, Lemmy, KBin, etc).
If you wanted to get help with moderating your own community then head over to !moderators@lemmy.world!
Learn more at these websites: Join The Fediverse Wiki, Fediverse.info, Wikipedia Page, The Federation Info (Stats), FediDB (Stats), Sub Rehab (Reddit Migration), Search Lemmy
It really needs to be everything - posts, comments, subscriptions, upvotes/downvotes, blocks, and mod status. It needs to be such that signing in to your account on the new instance is the same as signing into on the old one. It should be so seamless that you can just switch instances just to try out a new one and switch back again if it isn't for you.
It won’t be anything even close.
Indexes are unique to each instance. Post ID, Comment ID, Vote ID. There’s no way to correlate this information between two instances other than to do a full text match, post by post, comment by comment, vote by vote, to determine if what is being imported already exists on the new instance or is “new”.
Even if you go that route, then there’s the quandaries that follow… if you import what is effectively a “new” post to your new instance, do the comments (which aren’t yours) come along, or do you simply end up importing your post with no interaction history.
Then there is identity. You most likely have a non-local identity on your new server, as a result of federation, how does the new instance know that you are who you say you are, givimg you ownership of any of that existing content as it binds it to your, now, local identity?
That’s just off the top of my head.
If you’re lucky you’ll get to keep your cake day.
Posts and comments have a canonical URL (i.e. the original submission's URL that's linked to via the Fediverse pentagram), so that can be used as a foreign key when comparing.
I think identify claiming would need to have been designed into the original spec with something like a public/private key for account ownership to allow moving of related data in a safe way, or e.g. editing a post from a different instance than originally posted it.
Like I said, I was just running of the top of my head.
While it’s true they have canonical URLs, there still remains that there’s no apparent method for integrity checks. No way to validate a correlation between the “new user” and the post or comment that can prevent abuse.
Yeah, I wasn't arguing, just thinking out loud too. I think the whole decentralised aspect of the fediverse means that ownership has to have a cryptographic answer because there's no central source of truth that everyone can agree on.
I think moving accounts is a little easier than you think, apart from who gets to say that something should move. It'd be better to have a "pull" than something like the "push" solution that currently exists on Mastodon - there you can forward an account to a new place, as long as the old instance exists and cooperates (big ifs).
I'm mostly thinking about moving accounts (+ communities) in the case of when an instance suddenly vanishes.
Agreed. It really comes down to what is enough to satisfy most people. Exporting subscriptions is an easy implementation. Saved/favorited posts, slightly less easy but very achievable. Each of these could be safely done as a user initiated export/import.
Once you start getting into any type of ownership type work, votes, comments, etc. then it's starts getting hairy due to integrity concerns. How do we trust that this activity actually belongs to the person claiming it.