Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MSC4119: Voluntary content flagging #4119

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

turt2live
Copy link
Member

Rendered

In line with matrix-org/matrix-spec#1700, the following disclosure applies:

I am Director of Standards Development at The Matrix.org Foundation C.I.C., Matrix Spec Core Team (SCT) member, employed by Element, and operate the t2bot.io service. This proposal is written and published under my Element hat as a member of the Trust & Safety team, allocated to the Foundation.

@turt2live turt2live added client-server Client-Server API kind:core MSC which is critical to the protocol's success needs-implementation This MSC does not have a qualifying implementation for the SCT to review. The MSC cannot enter FCP. labels Mar 13, 2024
@turt2live turt2live changed the title MSC: Voluntary content flagging MSC4119: Voluntary content flagging Mar 13, 2024
@turt2live turt2live added the proposal A matrix spec change proposal label Mar 13, 2024
@turt2live turt2live marked this pull request as ready for review March 13, 2024 22:22
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Implementation requirements:

  • Client sends context events per MSC
  • Client reacts to context events in an intelligent way (doesn't just require a single event before minimizing - at least 2 should be required ;)

Comment on lines +64 to +71
* If a "trusted" user flags content, the client applies the above actions immediately without waiting
for further confirmation. If the sender is partially trusted, the client may require a couple more
confirmations before actually minimizing the content. "Trusted" has a range of values:

* Untrusted - default value.
* Partially trusted - sender has a DM with the user.
* Trusted - user has explicitly listed the sender as a trusted person, or has cross-sign verified
the user.
Copy link
Contributor

@Gnuxie Gnuxie Mar 13, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we make it clear that this is an example of how to define a trusted user? Since that needs to be completely subjective. And it really shouldn't be based on having a DM or cross signing with them, since you have those already with people you don't trust. (for example, you can have DMs with people who you are explaining a ban to, or they just might not be very nice).

This is something that is way out of scope for this MSC and can't be bodged in on the side

@@ -0,0 +1,114 @@
# MSC4119: Voluntary content flagging

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if this could be worded better? "Voluntary content flagging" sounds more like content warnings/content notices and spoilers.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggestions are welcome. There is an amount of that in here as well.

@@ -0,0 +1,114 @@
# MSC4119: Voluntary content flagging

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What was the design process behind this proposal? Was there research done to make sure that the proposal solves problems users have and does so in an adequate way? Was any research conducted on prior art? This RFC mentions Twitter community notes as a future extension, but it would be interesting to also mention Discourse's community flagging feature.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This proposal is part of the design process: all MSCs are evaluated for usefulness as part of regular review, and can be accepted or rejected accordingly later in the process.

The history here is someone brought up a concern in the spec room about being able to hide reported content in their clients, but the spec obviously doesn't have that feature right now. It was realized that my half-written community notes MSC could be tweaked a bit to serve the purpose, and so I did that and opened it.

As this proposal is early in the review process, more research is certainly required. It starts with community notes because that was most familiar, but an evaluation of Discourse's community flagging feature would be good as well. I suspect that it'd still be kicked to a future MSC though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
client-server Client-Server API kind:core MSC which is critical to the protocol's success needs-implementation This MSC does not have a qualifying implementation for the SCT to review. The MSC cannot enter FCP. proposal A matrix spec change proposal
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants