matrix-org / matrix-org/matrix-spec

Missing knock->join transition on membership transition graph and table

Open
#2,053 0 comments 0 reactions 0 assignees View on GitHub
spec-bug
Dominant language
HTML
Stars
330
Forks
150
Avg merge
2h 21m
Merged PRs (30d)
3

Description

**Link to problem area**:

https://spec.matrix.org/v1.13/client-server-api/#room-membership, https://spec.matrix.org/v1.13/client-server-api/#mroommember

**Issue**

According to [auth rules](https://spec.matrix.org/v1.13/rooms/v11/#authorization-rules) 4.3.5.3 and 4.3.6 it is legit to transition from `knock` to `join` if either (a) the join rule is `restricted` or `knock_restricted` and the join request satisfies the restrictions, or (b) the join rule is now `public`. (In other words, the same as a transition from `leave` to `join`.)

This transition is missing from the membership transition graph at https://spec.matrix.org/v1.13/client-server-api/#room-membership; furthermore the table at https://spec.matrix.org/v1.13/client-server-api/#mroommember states "Must never happen" which is flat out wrong.

**Expected behaviour**

Update the knock -> join transition to be the same as the leave -> join transition.

Contributor guide

Open the contributing guide

Research direction

Start with the room membership and authorization-rule sections linked in the issue, then locate the source for the membership transition graph and the m.room.member transition table. Update the knock-to-join transition to match leave-to-join, and verify that the table no longer says this transition must never happen.

Written by the indexing model from the issue text.

Assessment

Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.