128ff894265f02c26752975bf4200adecb8213a5
LikeHandler.MaySee let a remote account interact with a followers-only post only when the post named it in to, cc or its mentions. Our own followers-only posts are addressed to the followers collection, never to each follower, and circle posts were not considered at all, so every like, reaction, downvote and poll vote from a follower on a followers-only post, and from a member on a circle post, was dropped as "not-visible". Likes, dislikes, reactions and poll votes now ask VisibilityPolicy.RemoteCanSee: anyone for public and unlisted posts, an addressed account for a DM, an accepted follower or an addressed account for followers-only, a foreign member for a circle post, and never a server's instance actor (SignedFetchAuthorizer's alias is for refetches only). Found by planning the town's multi-server interaction checks (G-0001). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LsXgEaXee4GCU1hwYgPJXw
Everything on, phase 1: geolocation fetches itself, the deploy signs in as @thepra, the crawler is on, sign-up by invitation
PrivaPub
A self-hosted ActivityPub server in C# (.NET 10, MongoDB) where one private login owns several unlinkable public personas. It federates with Mastodon, GoToSocial, Pleroma/Akkoma, Misskey and Lemmy.
- Live: https://privapub.thepra.dev
- Client: decePubClient, https://decepub.thepra.dev
- Architecture, conventions and deploy: CLAUDE.md
- Decisions and the plan to full ActivityPub interop: docs/ROADMAP.md
dotnet build PrivaPub.sln -c Release
Languages
C#
79.6%
Shell
14.2%
Python
5.8%
HTML
0.2%
Dockerfile
0.2%