matrix-org / matrix-org/matrix-spec
Missing knock->join transition on membership transition graph and table
- 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
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