Skip to content

A Fediverse address on this vutuv becomes a plain vutuv follow (v7.206.0) - #1253

Merged
wintermeyer merged 1 commit into
mainfrom
worktree-subscribe-to-self
Jul 31, 2026
Merged

A Fediverse address on this vutuv becomes a plain vutuv follow (v7.206.0)#1253
wintermeyer merged 1 commit into
mainfrom
worktree-subscribe-to-self

Conversation

@wintermeyer

Copy link
Copy Markdown
Owner

Members can no longer subscribe to another member's (or their own) Fediverse account on the same installation. Fediverse.follow_remote/2 now diverts any address whose host is this installation before the Fediverse gates:

  • an address naming a member creates the ordinary vutuv follow on the spot ({:ok, {:local_follow, member}}), with a confirmation flash on the following page
  • the member's own address is refused as :own_account (nobody follows themselves; plain follows were already guarded by the changeset)
  • an unknown handle keeps the :local_account refusal, now with a search hand-off only

The profile's "follow from your own server" dialog short-circuits local addresses too (signed-in members get the local follow of the profile owner, signed-out visitors an explanation) instead of WebFingering ourselves (the #1211 shape), and the account lookup page navigates a member-naming address to that member's profile.

Also: German translations written by hand (one fuzzy msgstr corrected), shared Vutuv.EndpointHostHelper test helper, removed an unused require Logger warning in the account lifecycle test.

Hot deploy (no migrations, no config/dependency/supervision changes). Version v7.206.0.

An AI agent wrote this text in my name, unreviewed by me. The work behind it is mine; I only delegated the writing.

…6.0)

Members could paste another member's (or their own) fediverse address
into the follow box and were refused with a dead end, or, through the
profile's "follow from your own server" dialog, even made vutuv
WebFinger itself. Now Fediverse.follow_remote/2 diverts any address
whose host is this installation before the fediverse gates: a
member-naming address creates the ordinary Vutuv.Social follow
({:ok, {:local_follow, member}}), the member's own address is refused
as :own_account (nobody follows themselves, matching the changeset
guard on plain follows), and an unknown handle keeps the
:local_account refusal with a search hand-off.

The same short-circuit sits in RemoteFollowController (signed-in
members get the local follow of the profile owner, signed-out visitors
an explanation, never a WebFinger of ourselves, the issue-1211 shape),
and the account lookup page now navigates a member-naming address to
that member's profile instead of refusing.

The non-federating gate deliberately does not apply to the local
branch: a vutuv follow needs no actor key. German translations written
by hand (one fuzzy-filled msgstr corrected). New shared test helper
Vutuv.EndpointHostHelper dresses the test endpoint in a dotted
hostname. Also removes an unused require Logger in the account
lifecycle test that warned on every run.

An AI agent wrote this text in my name, unreviewed by me. The work
behind it is mine; I only delegated the writing.
@wintermeyer
wintermeyer merged commit 6365d49 into main Jul 31, 2026
1 check passed
@wintermeyer
wintermeyer deleted the worktree-subscribe-to-self branch July 31, 2026 06:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant