From e96550780a65715946fc505b3e34416d573bfd02 Mon Sep 17 00:00:00 2001 From: Patrick Cloke Date: Thu, 2 Sep 2021 09:55:38 -0400 Subject: [PATCH 1/3] Room version 9. --- proposals/3375-room-v9.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 proposals/3375-room-v9.md diff --git a/proposals/3375-room-v9.md b/proposals/3375-room-v9.md new file mode 100644 index 00000000000..4eff8e3629b --- /dev/null +++ b/proposals/3375-room-v9.md @@ -0,0 +1,28 @@ +# MSC3375: Room Version 9 + +A new room version, `9`, is proposed using [room version 8](https://spec.matrix.org/unstable/rooms/v8/) +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 +and room version `8` shall be considered unstable. No other room versions are +affected by this MSC. + +## Background + +The redaction of this key was missing in [MSC3083](https://github.com/matrix-org/matrix-doc/blob/main/proposals/3083-restricted-rooms.md), +but without 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). From 228b90ba16e72044480e9b72b96d289135e0fef1 Mon Sep 17 00:00:00 2001 From: Patrick Cloke Date: Thu, 2 Sep 2021 10:21:23 -0400 Subject: [PATCH 2/3] Fix text which was swapped. --- proposals/3375-room-v9.md | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/proposals/3375-room-v9.md b/proposals/3375-room-v9.md index 4eff8e3629b..3d21aeb2edf 100644 --- a/proposals/3375-room-v9.md +++ b/proposals/3375-room-v9.md @@ -17,12 +17,11 @@ affected by this MSC. ## Background -The redaction of this key was missing in [MSC3083](https://github.com/matrix-org/matrix-doc/blob/main/proposals/3083-restricted-rooms.md), -but without 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. +Protecting this key from redaction was missing in [MSC3083](https://github.com/matrix-org/matrix-doc/blob/main/proposals/3083-restricted-rooms.md). +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). From 549444c82708d5c5a16985fcf1b2bb4040e6e26b Mon Sep 17 00:00:00 2001 From: Patrick Cloke Date: Thu, 2 Sep 2021 11:02:02 -0400 Subject: [PATCH 3/3] Update stability. --- proposals/3375-room-v9.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/proposals/3375-room-v9.md b/proposals/3375-room-v9.md index 3d21aeb2edf..0cd1e219a7c 100644 --- a/proposals/3375-room-v9.md +++ b/proposals/3375-room-v9.md @@ -11,9 +11,8 @@ Though other MSCs are capable of being included in this version, they do not hav 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 -and room version `8` shall be considered unstable. No other room versions are -affected by this MSC. +Room version `9` upon being added to the specification shall be considered stable. +No other room versions are affected by this MSC. ## Background