Bug report: @Waveform.social accounts not visible from Mastodon
Hi. I am excited about waveform.social.
I already use have an account at mastodon.social, which is another ActivityPub application. In theory, Lemmy and Mastodon should be able to "see" each other. It should be possible to look up a Lemmy user or community from Mastodon, see the posts, and reply to them. This will be ugly in the interfaces but it is expected to work.
This is not a problem I have with other Lemmy servers. Other Lemmy servers I can at minimum look up the users and see their profiles (sometimes I cannot see the posts without following first). This makes me believe it is not a problem with the Lemmy software. Also, the problem is not limited to mastodon.social. Users on other Mastodon servers see the same problem. So this makes me believe it is not a problem with mastodon.social's moderation setup.
In a discussion on mastodon.social, we came to the conclusion this problem may be (1) on waveform.social's end, and (2) due to your frontend caching/CDN/WAF setup. Of course edge caching is a good idea. But it appears you need to configure it a certain way to be compatible with Fediverse servers. As is, waveform.social might not even be fully compatible with other Lemmy servers.
The one sentence explanation is "The webfinger URL for a user needs to know how to accept the Accept: application/activity+json header."
I do not fully understand all of these issues (my Mastodon development has been in mobile clients only) and I don't know what your server-side setup looks like. If I am describing this wrong I apologize. All I know for sure is it does not work. If you can identify that the "no visibility" problem is happening at the side of Mastodon.social or the Mastodon software, I can go raise the issue at that end. I am good at pestering the Mastodon devs :)
In a little while I should be in a position to spelunk some logs from the other side and see if there's anything explaining what it's not seeing there.
ok so the thing is that rails isn't just sending Accept: application/activity+json and your server is returning html for pretty much anything that isn't exactly that. I'm not sure what part of your stack would be doing that, but the bad behaviour can be seen by giving an accept header the way rails sends it which is:
(note: you can take text/html out of that altogether and it'll still return html, just to avoid a red herring there)
You can also see that lemmy.ml does this correctly, if you replace the url above with https://lemmy.ml/u/lemmy for eg., so it seems that lemmy is capable of doing this correctly and it might be something at your webserver level (but I guess not your cdn if that's still off?).
I don't think http/https redirects are likely to be involved, so you should probably put that back (and the cdn too if you haven't for the sake of your bank balance)