matrix-org / matrix-org/mjolnir
Notify moderators of new abuse reports with m.text messages
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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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