Compare commits

...

2 commits

Author SHA1 Message Date
778e0ef196 cosmetic: adapt software name in internal actor descriptions 2024-11-23 02:46:33 +01:00
429575adb5 Don't advertise follow(er|ing) collections for internal actors
We don’t actually handle those endpoints just serving the
default frontend’s 404 HTML page, causing other servers to grumble
about it in their logs. Spec explicitly marks these as optional so
just stop pretending we have such collections.
As for real-world interop, Mastodon’s internal instance actor omits
them too, so this is fairly unlikely to cause any issues.

Notably, our built-in relay actor is not affect by this since it has
a non-nil nickname "relay" without "internal." prefix, i.e. it’s just
a regular actor with a funny ActivityPub ID.
In fact, afaict we don't have any "internal." actors
at the moment other than "internal.fetch".

Fixes: AkkomaGang/akkoma#855
2024-11-23 02:46:25 +01:00
2 changed files with 2 additions and 3 deletions

View file

@ -23,6 +23,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- AP objects with additional JSON-LD profiles beyond ActivityStreams can now be fetched
- Single-selection polls no longer expose the voter_count; MastoAPI demands it be null
and this confused some clients leading to vote distributions >100%
- Internal actors no longer pretend to have unresolvable follow(er|ing) collections
## Changed
- Refactored Rich Media to cache the content in the database. Fetching operations that could block status rendering have been eliminated.

View file

@ -39,13 +39,11 @@ def render("service.json", %{user: user}) do
%{
"id" => user.ap_id,
"type" => "Application",
"following" => "#{user.ap_id}/following",
"followers" => "#{user.ap_id}/followers",
"inbox" => "#{user.ap_id}/inbox",
"outbox" => "#{user.ap_id}/outbox",
"name" => "Pleroma",
"summary" =>
"An internal service actor for this Pleroma instance. No user-serviceable parts inside.",
"An internal service actor for this Akkoma instance. No user-serviceable parts inside.",
"url" => user.ap_id,
"manuallyApprovesFollowers" => false,
"publicKey" => %{