-
Notifications
You must be signed in to change notification settings - Fork 380
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add knocking to the spec #3154
Add knocking to the spec #3154
Conversation
----------------------------------------------+ +----------------------+ | ||
/ban | ||
``` | ||
![membership-flow-diagram](/diagrams/membership.png) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No love for Scalable Vector Graphics?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
one day maybe, but for now I'm not confident in our CSP or our SVG abilities to properly maintain this.
description: |- | ||
The servers to attempt to knock on the room through. One of the servers | ||
must be participating in the room. | ||
x-example: ["matrix.org", "elsewhere.ca"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm. We seem to have lost examples for path/query params in the new spec. https://github.com/matrix-org/matrix-doc/issues/3158
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
hmm, will fix this out of band
Co-authored-by: Hubert Chathi <[email protected]>
If type is `m.room.member`: | ||
|
||
... | ||
|
||
* If `membership` is `ban`: | ||
|
||
... | ||
|
||
* If `membership` is `knock`: | ||
|
||
i. If the `join_rule` is anything other than `knock`, reject. | ||
|
||
ii. If `sender` does not match `state_key`, reject. | ||
|
||
iii. If the `sender`'s current membership is not `ban`, `invite`, or `join`, allow. | ||
|
||
iv. Otherwise, reject. | ||
|
||
... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This section is being rendered as a code block in the preview because it's indented. I don't think that's what you wanted.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That was intended
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Context is v6 was the first to introduce a diff-style view of auth rules, but in the transition to the new spec platform we lost diff styling. One day I'd just like to fix it properly, so this is fine for now.
…-there Add knocking to the spec
…-there Add knocking to the spec
Spec for #2998
Spec for #2403
This deliberately does not help towards fixing #3153 in order to remain consistent with prior room versions, and to keep the diff smaller on this change. A future change will address room version legibility.