matrix-doc/proposals/3375-room-v9.md

1.3 KiB

MSC3375: Room Version 9

A new room version, 9, is proposed using room version 8 as a base and incorporating the following:

The redaction rules for room version 9 are updated, such that m.room.member events allow the join_authorised_via_users_server key in addition to the membership key.

Though other MSCs are capable of being included in this version, they do not have sufficient implementation to be considered for this room version. A future room version may include them.

Room version 9 upon being added to the specification shall be considered stable. No other room versions are affected by this MSC.

Background

Protecting this key from redaction was missing in MSC3083. By redacting it, new servers which join a room are unable to properly authorise m.room.member events which include the join_authorised_via_users_server key and have been redacted. This can cause a split-brained room where some servers believe a member is joined and other servers do not see the member in the room.

Note that a new room version is necessary since this will change that event ID calculation of the m.room.member event (and thus is not backwards compatible).