Fix: private replies (followers-only/DM) no longer render on the public post page
handleInbox ignored a reply's to/cc, and getInteractions rendered every stored
reply, so a followers-only or direct Note replying to a post was shown publicly.
Incoming interactions now record their AP addressing (new ap_interactions.visibility:
public/unlisted/followers/direct, derived via noteVisibility() from to/cc, also in
crawlThread); the public thread filters to public/unlisted (legacy rows count as
public). Likes/boosts stay count-only. Private replies are NOT shown on the post
page at all (no admin badge, per design decision): they reach the owner via
notifications, which already carry post context (slug+title) and the reference.
Covered by test/reply-visibility.test.js; verified in a browser that a seeded DM
reply no longer renders while a public one does. Beads: klonkt-demo-jct.
Co-Authored-By: Claude Opus 4.8 <noreply@…>