Unspecced `redacted_by` field in `unsigned`
Ran into the following event today:
{
"content": {
"membership": "join"
},
"origin_server_ts": 1595256121167,
"sender": "@redacted_user_1:example.com",
"state_key": "@redacted_user_1:example.com",
"type": "m.room.member",
"unsigned": {
"redacted_by": "$redacted_id_1",
"redacted_because": {
"content": {},
"origin_server_ts": 1595261803914,
"redacts": "$redacted_id_2",
"sender": "@redacted_user_2:example.com",
"type": "m.room.redaction",
"unsigned": {
"age": 23764322
},
"event_id": "$redacted_id_1"
}
},
"event_id": "$redacted_id_2"
}
This event contains a redacted_by property in the unsigned data, but the client-server spec makes no mention of such a field, it only mentions redacted_because.
as a general rule, the presence of a field in a response from synapse does not necessarily mean it should be added to the spec.
I'm more inclined to consider this a bug in synapse, though not a high priority one.
Hm. I was interpreting this to be an intended (spec) feature, to reduce bandwidth usage by sending only the event ID rather than the whole event (as is the case for redacted_because) - hence filing it here first. But perhaps that wasn't the intention :)
(moved this issue from matrix-doc to synapse)
I think this may be closed now as the spec now defines that field, see Redactions in v1.8
That says:
Servers should include a copy of the
m.room.redactionevent underunsignedasredacted_becausewhen serving the redacted event to clients.
Note the redacted_because instead of redacted_by, so I think there's some sort of inconsistency still?
Note the
redacted_becauseinstead ofredacted_by, so I think there's some sort of inconsistency still?
sorry, my bad, that was a read fault (while finding this issue, I was searching for redacted_because. I misread redacted_by for it in the title)