Skip to content

Commit 9e66d32

Browse files
authored
Merge pull request #2414 from iinuwa/master
MSC2414: Make reason and score parameters optional for reporting content
2 parents ea5c8ba + 02512f0 commit 9e66d32

File tree

1 file changed

+45
-0
lines changed

1 file changed

+45
-0
lines changed
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# MSC2414: Make `reason` and `score` optional for reporting content
2+
3+
## Proposal
4+
5+
On the [report content endpoint](https://matrix.org/docs/spec/client_server/r0.6.1#post-matrix-client-r0-rooms-roomid-report-eventid)
6+
we remove the `required` flag for both the `reason` and `score` parameters, as
7+
well as the "may be blank" clause in the description of `reason`.
8+
9+
## Rationale
10+
11+
### `reason` Parameter
12+
13+
Currently, the spec says that the `reason` parameter on the content reporting
14+
endpoint is required, but also says that the string "may be blank." This
15+
seems to be a contradiction.
16+
17+
Note that the kicking and banning endpoints already have optional `reason`
18+
parameters. The other membership endpoints mentioned in
19+
[#2367][membership-endpoints] will also add optional `reason` parameters,
20+
so it would be more more consistent with the rest of the spec to make this
21+
optional as well.
22+
23+
### `score` Parameter
24+
25+
The spec also requires the `score` parameter, but its usefulness is limited.
26+
Offensiveness is difficult to measure and is likely not going to be applied
27+
consistently across several rooms. Because of this ambiguity, it seems, many
28+
clients [simply hard-code the integer value][hard-code].
29+
30+
To make this useful, for example, room administrators would need a way to map more
31+
specific values to the integer range and perhaps even instruct the client to
32+
display those mappings to the user. That may be possible to do in a closed
33+
client/homeserver implementation, but not generally across the Matrix protocol.
34+
35+
Making `score` optional would enable this feature to be used in specific contexts
36+
while not forcing clients to support the ambiguity it brings.
37+
38+
## Backwards Compatibility
39+
40+
Since servers currently expect these fields to be sent by all clients, making
41+
them optional is a breaking change. Clients should check the spec versions
42+
the homeserver supports to detect this change.
43+
44+
[membership-endpoints]: https://github.com/matrix-org/matrix-doc/pull/2367
45+
[hard-code]: https://github.com/matrix-org/matrix-react-sdk/pull/3290/files#diff-551ca16d6a8ffb96888b337b5246402dR66

0 commit comments

Comments
 (0)