matrix-org / matrix-org/mjolnir

Notify moderators of new abuse reports with m.text messages

Open
#311 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
445
Forks
75
Avg merge
2d 44m
Merged PRs (30d)
3

Description

Is your feature request related to a problem? Please describe.

When a new abuse reports lands in the Mjolnir command room, it is sent as a m.notice message. Most clients don't allow users to set bot messages to "silent" in general and to set a per-room "noisy notifications" for the bot messages.

As a result, even with noisy notifications turned on for the room, abuse reports don't ping the moderators.

Describe the solution you'd like

Spec says:

The m.notice type is primarily intended for responses from automated clients. An m.notice message must be treated the same way as a regular m.text message with two exceptions. Firstly, clients should present m.notice messages to users in a distinct manner, and secondly, m.notice messages must never be automatically responded to. This helps to prevent infinite-loop situations where two automated clients continuously exchange messages.

I believe sending the reports as a regular m.text message and the responses to button clicking as m.notice would make sense, and would allow moderators to be more reactive. It would also have the benefit of being less noisy (only reports send pings, not confirmation requests).

Describe alternatives you've considered

Allow more flexibility in clients to be able to make m.notice messages noisy per-room.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No file or test is named in the issue. Start by locating the abuse-report notification handling and the code that constructs the m.notice messages; done means new abuse reports use m.text while button-click responses remain m.notice, with coverage for both message types.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
backend
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.