This is a discussion thread for the proposed FEP-03c1: Actors without acct-URI.
Please use this thread to discuss the proposed FEP and any potential problems
or improvements that can be addressed.
Summary
Most current Fediverse applications use an acct-URI as unique display name
for actors. Usually, this display is done by displaying acct:user@domain.example
as @user@domain.example. This FEP states that if there is no
acct-URI associated with an actor, the actor should be displayed
as its id. So the actor with id https://actor.example/path will be
displayed as https://actor.example/path.
In addition to the example below, we wish to point out that further independence of webfinger will enable new features such as using domain names as handles.
I donât really understand why we would have a FEP to describe a lack-of-a-feature. This is the default behavior in the spec, making a specification simply to say itâs allowed is very confusing.
Is it really necessary to display a unique identifier, in the first place? In the case of RSS feeds (which the FEP takes as an example), I think itâs common for feed readers to only display the feedâs <title>.
And more generally, it doesnât feel quite right to me to forge a âusernameâ for a user who doesnât have a âpreferred usernameâ. A âusernameâ is a short human-readable representation of the user, whereas a URI is not always short nor human readable (consider a URI with a UUID, for example).
I think thatâs especially the case for automatically-generated actors as demonstrated by the FEP itself. Clients donât want to display a long URI like https://rss.example/actor?feed=https%3A%2F%2Fpypi.org%2Frss%2Fproject%2Fbovine%2Freleases.xml. They would rather display an ellipsized form like https://rss.example/actor?feed=âŚ, which would be only useful for telling the domain name and few boilerplate path components.
On the other hand, the ability to mention the user is still important. But I think we can just use the actor URI (or url if present) for that purpose, as the FEP requires for the displying purpose. You can even make it a proper Mention like the following:
However, I believe that care should be taken to not add to/cc without the post authorâs explicit action, since itâs not usually the userâs intention to âmentionâ another user by just including a URL of that user in the post, while adding to/cc means that the post is delivered to the referent actor even if the post is supposed to be private.
I think prefixing the actor URI with @ may be a good indicator of the userâs intention to mention the referent actor.
By the way, there is a Mastodon issue relevant to this FEP:
Also, this may be a good topic for the ActivityPub and WebFinger Community Group Report:
Previously webfinger addresses were used as primary identifiers, but that was undesirable for several reasons, so I switched to actor IDs. Now webfinger addresses are mutable, and that might lead to a conflict if two actors use the same address. If conflict occurs, the server removes address from the conflicting actor. Webfinger addresses are still used everywhere in the UI but when address is not present, the actor ID is displayed in its place.
Nice illustration! Consider adding it to the proposal
Unique identifier should be displayed because there might be accounts with the same display name. Often such accounts belong to the same person, but it also could be a case of impersonation, or unintentional name clash.
I agree that usernames should be displayed for actors with canonical acct: URIs. But today, normal users do have canonical acct: URIs, and I think confusion/impersonation issues are less relevant for supposed use cases of the FEP like automatically generated actors.
I think itâs a viable recommendation for servers to always assign unique usernames to normal users who should be protected from impersonation.
Edit: But, yes, it may still be better to display the actor URI rather than nothing, even if itâs ellipsized, so that itâs explicit to the user that the actor has no username.