I think this particular one got stalled, but it did spawn some other discussions and approaches:
-
fep/fep/7888/fep-7888.md at main - fediverse/fep - Codeberg.org (discussion) uses the
context
property to specify a resolvable collection that represents the “thread” or “conversation”. It expects the owner of the collection (currently denoted byattributedTo
) toAdd
objects to that collection. This approach allows for a thread/conversation/topic/etc to be moderated separately from just “direct replies/descendants”.- One of the big problems discussed several posts up is that you can “trojan horse” your way into a conversation by replying to someone with less restrictive reply policies, if they reply to one of your posts. Using a
context
collection solves that.
- One of the big problems discussed several posts up is that you can “trojan horse” your way into a conversation by replying to someone with less restrictive reply policies, if they reply to one of your posts. Using a
-
fep/fep/7458/fep-7458.md at main - fediverse/fep - Codeberg.org (discussion) proposes always checking the
replies
collection instead of implicitly reconstructing one based on all posts you are aware of that containinReplyTo
. Under this proposal, if areplies
collection is not specified or doesn’t exist, this maps to the state of “not accepting replies” or “replies closed”. If it does exist and is specified, then you can load the replies to an object on-demand from either your local cache or the canonical origin.- Really, the cause of this entire issue of not being able to control what gets shown below your post is entirely social and conventional, not technological. Right now, most implementations simply do not care and do not check any
replies
collection. If we want to allow any sort of “control” over what gets shown, we NEED to define an “authority” who gets to exercise that control. This is the other big reason that is mentioned upthread for why 5624 got stalled – it is unclear who the “authority” is, whether that is the author of the immediate parent or the author of the “root” of the reply tree.
- Really, the cause of this entire issue of not being able to control what gets shown below your post is entirely social and conventional, not technological. Right now, most implementations simply do not care and do not check any
The astute among you may have figured out an issue with both of these above points: regardless of whether you check a context
collection for the thread, or if you check one or several replies
collections, you still have to check the collection… there is no “proof” that any given object is contained in a given collection. inReplyTo
is not enough to know that it has been added. context
is not enough to know that it has been added. Luckily, there is also:
- fep/fep/0391/fep-0391.md at main - fediverse/fep - Codeberg.org (discussion) is the latest ongoing work being done to develop the concept of a “stamp”, which is an activity that “proves” that some object is included in some special collection. Basically, if you encounter an object with
inReplyTo
orcontext
, there should be some way to:- navigate up to the Create activity that created the object, which should have the
result
pointing to anAdd
activity that was caused by the Create - alternatively, take an
inReplyToProof
orcontextProof
property pointing to anAdd
activity where thetarget
isinReplyTo.replies
orcontext
- navigate up to the Create activity that created the object, which should have the
I would appreciate any feedback and advise anyone who wants to move forward on the general concept of “reply controls” to participate in any of these discussions, and also call for implementers to change the way that they handle these things. I repeat that it is a matter of convention, not technology, that is causing the issue. Put another way, the issue is not so much of “reply control” as much as it “reply canonicity”. Ditto for any other form of interaction – we have special collections such as likes
and shares
that share the same logic expressed in this post. In order to be able to decide which interactions get shown, we need our software to first care for and check these collections explicitly instead of relying on implicit reconstruction.