Okay. So. Help me understand how (if at all) the Lemmyverse interacts with the Mastoverse.
Per the original promise of ActivityPub, and according to claims from other Mastodon users, you should be able to read Lemmy from Mastodon (if awkwardly). You should be able to follow a Lemmy user, you should be able to subscribe to a Lemmy community, you should be able to see a Lemmy post as a Mastodon status & reply to it and that reply should show up in the Lemmy community.
I *cannot figure out how*.
So, here is an example:
I would like to "boost" this post on my Mastodon account. I can't… figure out how. With Mastodon statuses on remote servers, I can paste an URL in the "Search or paste URL" box. That doesn't work. So I don't know what else to do.
So, if I (a relative power user who builds her own bespoke Mastodon Android client) can't figure this out, the ActivityPub interop promise is failing. But, never mind that. Is there a cheat code to make this work?
BTW: I think I am going to try to stop speaking of "The Fediverse". Until/unless there's proper interop between different branches of the Fediverse tree (meaning not just "comms between ActivityPub apps can technically work" but "people understand how to do it"), I think it makes sense to talk of there being a series of verses. There's the Mastodon-verse, the Peertube-verse, the Lemmy-verse. Within a "verse", servers interop and content is "legible" (in the postmodernist/James C. Scott sense).
Okay. So that's interesting.
https://mastodon.social/@RGrunblatt@sciences.re/110526706984031278
Users on mastodon server sciences.re can see https://lemmy.film/post/11983 via the "paste URL" box. I, on mastodon.social cannot. I can see the poster @gzrrt and some of their posts, and I can see @nyc (which m.s even identifies as a "group"!) (but not any of its posts). Is this because:
- Mastodon.social is not "federated" with one of lemmy.ml/lemmy.film/feddit.de
- No one on m.s has ever subscribed to @nyc?
Making things more confusing: It appears the "true" URL of https://lemmy.film/post/11983 is https://lemmy.ml/post/1181677. This is the standard conceptual problem with ActivityPub where post https://social.sciences.re/@RGrunblatt/110526706866414891 can also be accessed from https://mastodon.social/@RGrunblatt@sciences.re/110526706984031278 , but that second URL doesn't work for some purposes because it's not the "true" URL just a mirror on m.s. Mastodon has an "open original page" verb to clarify this, but Lemmy doesn't, and IMO it needs it yesterday (so I could have used it today).
Oh… no, wait. Lemmy does have "Open Original Page" but rather than it being an item named "Open Original Page" it appears to be, uh… this icon*. In my opinion that is not good UX.
* I'm not even sure how it's displaying it, they're somehow showing an invisible layer with id "icon-fedilink" within https://lemmy.film/static/assets/symbols.svg . They're on some galaxy brain SVG spritesheet shit
Anyway until such time as it becomes as straightforward to reply to Lemmy content from Mastodon as it is from a proper Lemmy/KBin ("Threadiverse"?) server, this is my Lemmy address (on the treehouse server created by the users of Reddit /r/synthesizers) @mcc@waveform.social https://waveform.social/u/mcc
EDIT: LOL, seems to be no federation path from here to there at all as of now, m.s doesn't even recognize @mcc@waveform.social as a handle.
@mcc I'm pretty sure at some point in the past I did interact with something from Lemmy, but I'm having a lot of problems now, both with that and kbin. I suspect at least part of it is that servers are overloaded. I tried opening that link and it 404ed _in the browser_ with a timeout error
@oblomov @mcc I copied https://feddit.de/post/774342 to the search bar of my instance and it's there :
@RGrunblatt @oblomov @mcc That's a lot of step just to share a post
@RGrunblatt @oblomov @mcc I guess one question comes to mind - this is with both Mastodon and Lemmy being on a desktop browser?
Mainly asking because I'm on Tusky, and I'm getting the feeling the Interop doesn't seem to work at all there (Unless it's the server *I'm* on that's the issue.).
@AT1ST @RGrunblatt @oblomov As a Tusky developer, if you can identify a specific situation where it works with the Mastodon server but not in Tusky, please file that as a bug. Tusky does not do ActivityPub directly, it uses the Mastodon API to display content from the instance, so it should be able to do exactly what the server can, no more no less.
@mcc @RGrunblatt @oblomov Ah, I'll keep it in mind - haven't encountered anything directly, but I was mostly curious if there's things I wouldn't see because of using an API versus ActivityPub.
I tried with Tusky too, as it generally does a good job at importing AP-compatible content, but in my case it opened the link in browser, which usually only happens for non-AP content. This might be related to the 400 response as pointed out elsewhere in the thread.
@RGrunblatt @oblomov @mcc This design does not make sense. Each post should be identified by a unique URL, the original URL, which should be shared by each instance inside the feed.
@buercher @RGrunblatt @oblomov I agree it does not make sense, but it may be the de facto design the Fediverse has wound up, though accident of organic growth, following
@mcc that's how I feel about it right now too. you can kinda get them to talk to each other but it's non-obvious and when you do get it working the user experience is generally sub-par.
@curved_ruler @mcc @gzrrt @nyc I would bet that there's some latency in the m.s sync queue, possibly combined with responsiveness issues on the Lemmy end (I'm betting they're hitting load scaling issues with the user influx), that's causing oddities with the UX when trying to view content across ActivityPub service instances.
@mcc Does Lemmy respond with the post's JSON-LD if you request that URL with the an Accept header that asks for it? If not, then resolving posts by URL is not possible and you can only look them up if they're already known internally e.g. from a user subscription, would be my guess.
@mcc I just tried making such a request for both URLs you mentioned, both respond with HTTP 400 and the message "Object not local, fetch it from original instance". Looking at the page, the original actually seems to be from feddit.de, not lemmy.ml, but the UI is pretty confusing.
@Gargron From your perspective as someone who understands both Mastodon and AP more than me, what do you think is causing the *technical* problem here? Is it the lack of JSON-LD?
If the answer is something straightforward and at Lemmy's end (like "no JSON-LD"), do you think you could file a bug at https://github.com/LemmyNet/lemmy (I think that's right) informing them what they need to do for compatibility?
Alternately, would you be willing to help me understand the problem enough I can file such a bug?
@KevinMarks @Gargron Is it responding with 400s because of an implementation defect or because the server appears to be swamped as a result of new users fleeing Reddit?
Now it's 400 Bad Request for the object non-local, which I agree with @KevinMarks should be 301. Earlier there was definitely a server load issue, and the error message was different.
FWIW
they seem to report everything through a LemmyError object. I haven't delved into the code deep, but 400 is probably the (default? only?) error code they report.
@mcc @Gargron Here is a post I was able to paste into the search box of my local Mastodon instance, and see as a search result:
I really think the problem is that you have to use "original" URLs to get working results, but it's hard to figure out what the original URL is.
feddit.de seems to be exploding with error 500 so I wasn't able to find the original post you were looking for.
@mcc for what @LemmyDev's federation does do, I find it a remarkable accomplishment in interop. Reading your thread, it doesn't do what you expect and that could be a big oversight.
Their federation is centered on the groups. So you can search and follow groups, eg @ memes @ lemmy.ml. You'll get all the threads and replies in your masto feed. You can reply to add comments that appear in the Lemmy thread. You can even mention the group to start a new thread on Lemmy from right here in masto
@mcc i think right now a lot of stuff isn't working just because those servers are getting absolutely hammered and they didn't have anywhere near as much investment put into scaling federation as mastodon did when it had its big corporate-fuck-up moment. Right now i can't even get to the post you're using as an example.
@mcc it is really weird that I can't see your @mcc@waveform.social account from treehouse.social though since I would assume neither of those would be aggressively behind ddos protection like kbin.social is, or blocking each other?
Poking at webfinger on waveform.social seems to show you existing with just pure unauthenticated curl but searching from treehouse gives me nada.
@mcc @ariadne @kouhai oh actually..
if I curl -H "Accept: application/activity+json" https://waveform.social/u/mcc
(which is where the webfinger points) I get back the html page, so it might be a static content cache that's not set to vary based on Accept headers? That would be a problem on the waveform.social side.
(edit: corrected http to html -- however, this appears to work now so I dunno what's up)
@mcc meanwhile kbin.social is just giving the cloudfront bot-detect page even for their webfinger url...
@megmac @ariadne @kouhai Is this a flaw in *waveform.social* or is it a flaw in *Lemmy* (ie https://github.com/LemmyNet/lemmy )?
I can report it to either one, but I need to know which one to report it to.
@mcc my instinct is it's a problem with waveform.social's frontend load balancer/cache. I don't see how lemmy could function at all with even other lemmy instances without this working correctly?
@mcc but I only have observations to go on.
@megmac What do you make of this (comment by WrathIO?) https://waveform.social/comment/118
@mcc no, I definitely wasn't doing http:// -- and I meant html not http. That said it does seem to work correctly now so maybe I did something else weird or something else got fixed somewhere.
That said, treehouse still doesn't seem to see any activitypub actors on waveform.social for some reason even though they look fine to me now so I'm not sure what's up?
Like, I should be able to reply to that post from here, ideally, I think? But as you pointed out in your initial posts it won't show up from the search on here.
@kouhai @mcc apparently lemmy doesn't support authorized fetch (or at least didn't as of feb, according to this https://socialhub.activitypub.rocks/t/help-improving-federation-between-lemmy-and-other-projects/2308/38) -- but that would only affect the other way around (someone from lemmy following someone from here) right? And mastodon.social doesn't require it anyways I think?
@mcc I really think fediverse interop needs to not require multiple accounts even for more serious interactions.
I should be able to post my photos to PixelFed authenticating using my Mastodon account and vice-versa.
@mcc
The https://feddit.de/post/775711 link works for me as well, the rest not so much. Get an error when trying to follow the user. Indeed not what seems to have been the Activitypub idea. Had succes with peertube though.
@mcc Pasting nyc@lemmy.ml into the search box shows the community as an account you can follow from mastodon. No idea why the instructions tell you to precede it with an exclamation mark.
You can then boost any posts you see in mastodon.
@mcc there seems to be a tiny fediverse logo on that page which links to (the original?) post, and pasting that link into tusky's post search found something when I tried
(feels like a step which should not be needed)
@mcc further experimentation may be impacted by that URL erroring at the moment:
> 404: FetchError: invalid json response body at http://lemmy:8536/api/v3/site? reason: Unexpected token 'T', "Timeout oc"... is not valid JSON
@mcc My workaround was that I used my account on lemmy.one to post at the group at lemmy.film. Then my post can be boosted from Mastodon and GotoSocial.
@mcc I guess you put their Lemmy fully qualified name (@whoever@wherever.tld) into search on Mastodon and it should appear? never used Lemmy though.
@gsuberland Yeah, I pasted in @gzrrt and saw a number of posts but not that one.
@mcc @gzrrt hmm, I bet that getting it to federate the post over requires someone on your instance to follow them on Lemmy, or directly access the post URL, but if directly accessing the post URL isn't working or the sync is kinda slow (maybe .social is deprioritising sync from non-Mastodon services under load for perf reasons?) then it ends up being kinda jank
@mcc I’ve read that once groups will be a thing on mastodon- coming soon - the compatibility with the threadiverse will be better. By the way I saw you on kbin yesterday. One of your thread was posted on m/random.
@aroom Also that's interesting, I'm scrolling down https://kbin.social/m/random but I can't seem to find anything linking to me?
Have a whole thread here trying to figure out the relationship between Fediverse, server types interoperability, server type instances and their server/client APIs, server type client interoperability - https://mastodon.social/@dahukanna/110526737229130840