universal IDs for threadiverse items (re kbin-core #635)
I am not sure what is correct to put in kbin-core/issues without cluttering it up with somewhat speculative requests. I have no idea how to implement this or whether it is possible. So I will post here?
It would be nice if it would have a unique ID like e3d14d6c-28d7-11ee-be56-0242ac120002 across the *verse. I can't be the first person to think of this right? Why is ity either not a good idea, or not a viable idea?
I imagine 2 variations. I am not attached to any of the particulars... Just spitballing. What do you think?
/local/uuid
/local/e3d14d6c-28d7-11ee-be56-0242ac120002 - this link would bring the user to the post on the instance where you are viewing it.
So if someone writes in a comment:
check out [this post](/local/e3d14d6c-28d7-11ee-be56-0242ac120002)!
and you are viewing it on beehaw, it renders like this:
<p>check out <a href="https://beehaw.org/post/6759290">this post</a>!</p>
if you are viewing it on kbin.social, it renders like this:
<p>check out <a href="https://kbin.social/m/firefox@fedia.io/t/237162">this post</a>!</p>
/orig/uuid
On the other hand we need a way to link to the particular item as it appears "originally". To do this, you could write:
check out [this post](/orig/e3d14d6c-28d7-11ee-be56-0242ac120002)!
And irrespective of where you are looking at it, it will render like this:
<p>check out <a href="https://fedia.io/m/firefox/t/132144">this post</a>!</p>
I am not 100% sure if the correct behaviour for this is to link to the community home instance or the poster's home instance? I went with community home but maybe there is argument for the other way, or for both.
This would be very useful. I would argue for the universal link to go to the user's home instance, where the user should already be logged in and able to interact with the post. That is if the user has a default set. Otherwise the magazine's home instance makes sense for a unknown user.
It would be a core feature on activity pub itself though, with limited use on kbin.
The impractical/implausible reason is likely because different groups of people are writing the different fediverse software and have different opinions about how objects are identified in their software. ActivityPub already requires objects to have unique IDs, so this isn't a protocol issue. But good luck getting every single developer for every single fediverse application to agree on one way to internally represent data in their apps. That's just never going to happen for a variety of reasons.
It's true! I actually took a wee peek into the ActivityPub standard earlier and saw that the ID thing is already there like you say. Which I guess is the URLs as posted above?
So that part is done & dusted I guess. :) The part that would remain now would be to make a convention to transform markdown. Markdown is already being transformed.
Does the threadiverse need to maintain perfect compatibility with the rest of the activity pub fediverse? For me, just kbin and lemmy being roughly on the same page would be great. But maybe my viewpoint is too narrow and self centred.