Commit graph

54 commits

Author SHA1 Message Date
Patrick Cloke
afae1083aa
Clarify what key content-specific rules match against. (#1441) 2023-03-08 13:06:06 +00:00
Andrew Morgan
c0955a6aee
Add a hyphen between third and party when used as an adjective (#1447) 2023-03-08 09:58:29 +00:00
Hubert Chathi
ad94985754
Define hkdf-hmac-sha256.v2 MAC method for SAS verification (#1412)
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2023-02-09 23:58:16 -05:00
Johannes Becker
3f3b5c39f0
Remove duplicated "Note:" from m.room.power_levels (#1355)
Remove duplicated "Note:"

Signed-off-by: Johannes Becker <j.becker@famedly.com>
2022-11-22 16:57:38 +00:00
Johannes Becker
b2c4abf567
Clarify the power levels integer range (#1169)
Signed-off-by: Johannes Becker <j.becker@famedly.com>
2022-11-22 15:45:30 +00:00
Kim Brose
8d378cfd51
add missing description to m.call.answer schema 2022-11-18 14:28:05 +01:00
Hubert Chathi
684ead8ab6
Merge pull request #1294 from uhoreg/rhul_clarifications
add some e2ee clarifications
2022-11-17 09:21:51 -05:00
Hubert Chathi
0f0caf582d more clarifications 2022-11-16 11:14:34 -05:00
Hubert Chathi
d0cbd4c8dd
Apply suggestions from code review
Co-authored-by: Denis Kasak <dkasak@termina.org.uk>
2022-11-15 18:17:20 -05:00
Richard van der Hoff
9e8360560b Uniquify some links
The link checker doesn't understand that we dynamically re-assign element IDs
at load time, so was failing for a few links that were technically valid
(though presumably still broken for any client not using JS).

Work around this by manually setting a few anchors, linking to other nearby
bits of text, or just changing heading titles.
2022-11-08 19:00:38 +00:00
Richard van der Hoff
6cbb88f9df Fix broken links
A bunch of broken links I found
2022-11-08 18:54:26 +00:00
Hubert Chathi
830f80f56a
Merge pull request #1271 from uhoreg/add_verification_request_msgtype
add in-room m.key.verification.request msgtype
2022-11-02 10:16:42 -04:00
Hubert Chathi
dd0f867fad make examples agree with schema 2022-11-01 17:56:29 -04:00
Hubert Chathi
2395dd87c0 more clarifications, and move event definitions to yaml 2022-11-01 17:49:45 -04:00
Hubert Chathi
fbbf3b81c5 add some e2ee clarifications 2022-10-18 18:02:27 -04:00
Travis Ralston
b2cc836649
Spec reference relationships (#1206)
* Spec reference relationships

MSC: https://github.com/matrix-org/matrix-spec-proposals/pull/3267

* Apply suggestions from code review

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

* Edits per code review

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2022-10-18 11:50:41 -06:00
Hubert Chathi
c0d54ab4d9
Apply suggestions from code review
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2022-10-12 09:52:04 -04:00
Hubert Chathi
191450ea73 add in-room m.key.verification.request msgtype 2022-10-04 17:49:36 -04:00
Travis Ralston
227757d499
Threads: Read receipts & notifications (#1255)
* Spec MSC3771: Threaded read receipts

Note: this builds on a (as of writing) non-existent "threading" section, which is part of a different commit.

* Spec MSC3773: Threaded notifications

* changelog

* Various clarifications per review
2022-09-28 14:49:25 -06:00
Travis Ralston
e406bd94f6
Spec MSC2285: Private read receipts (#1216)
* Convert `m.receipt.yaml` to traditional YAML

* Spec MSC2285 (private read receipts)

* Add some obvious copyright headers

* Add changelog entries

* Appease the linter

Apparently it hates it when you do this.

* Allow m.fully_read on /receipts

* Apply suggestions from code review

Co-authored-by: Matthew Hodgson <matthew@matrix.org>

Co-authored-by: Matthew Hodgson <matthew@matrix.org>
2022-09-12 16:34:51 -06:00
DeepBlueV7.X
5bf35327c6
Fix wording for globs in policy lists (#1165)
* Fix wording for globs in policy lists

The specification here does neither match how globs work in common
libraries nor do they match how they are used in practice currently or
how the MSC worded them (which said they should be like server ACLs). As
such this seems to be an issue introduced when writing the spec text.

Ref mjolnir:
- b48904bc2b/src/models/ListRule.ts (L44)

Ref matrix bot sdk (which implements the glob used above):
- 473e563236/src/helpers/MatrixGlob.ts (L26)
- f799b1fe1a/test/helpers/MatrixGlobTest.ts (L44)

Ref original MSC:
- c7b3d99853/proposals/2313-moderation-policy-rooms.md (L36)
- https://spec.matrix.org/v1.3/client-server-api/#server-access-control-lists-acls-for-rooms

fixes https://github.com/matrix-org/matrix-spec/issues/17

Signed-off-by: Nicolas Werner <nicolas.werner@hotmail.de>

* Add changelog

Signed-off-by: Nicolas Werner <nicolas.werner@hotmail.de>
2022-07-11 13:58:27 -06:00
Alexey Rusakov
6792b7a9d6
Use type: integer, format: int64 for timestamps (#1129)
* Use type: integer / format: int64 for timestamps

Closes #749.

* Changelog
2022-06-15 00:32:55 -06:00
Travis Ralston
926c6bad61
Deprecate the sender_key and device_id on Megolm events (#1101)
* Deprecate the `sender_key` and `device_id` on Megolm events

MSC: https://github.com/matrix-org/matrix-spec-proposals/pull/3700 ([Markdown](https://github.com/matrix-org/matrix-spec-proposals/blob/main/proposals/3700-deprecate-sender-key.md))

The language around `m.room.encrypted` is a bit awkward because *technically* you can use the event to represent non-Megolm events, however that's considered an edge case at this time.

* changelog

* Apply wording changes

* Remove incorrect example

* Add missing sentence
2022-06-09 02:24:41 -06:00
Travis Ralston
f14e18131b
Specify room version 10: knock_restricted and int power levels (#1099)
* Clarification on historical power level handling

* Revert "Clarification on historical power level handling"

This reverts commit f443b3d5a9afac3095b14a72ec471ba06f4cc78b.

* Clean up

* Let us try this again not using VS Code

* Markdown is full of mysteries

* Move stringy power levels to room versions

* Describe range

* Fix minor issues with previous room version stuff

* Copy/paste v9 into v10

* Describe deprecated formatting

* Paste unmodified auth rules from v8 into v10

* Move 9.1 to 9.3, add 9.1 and 9.2 for integer enforcement

* Add knock_restricted to v10 auth

* Misc cleanup and clarification for fragments

* Describe `knock_restricted` client changes

* Changelogs

* spelling

* Apply suggestions from code review

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

* Apply code review suggestions manually

* Fix v9 redactions

* Fix auth rules clarity issues

* Apply suggestions from code review

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

* Remove false integer requirements

Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2022-06-08 15:22:47 -06:00
Alexey Rusakov
61e7a73a4f
Drop lifetime from the call answer event example (#1054)
* Drop lifetime from the call answer event example

* Changelog
2022-05-10 13:40:01 -06:00
Andrew Morgan
8a5955e98f Remove 'room_id' field from m.typing, m.receipt and m.fully_read examples and schema (#3679)
The spec had an erroneous `room_id` field in a m.typing EDU entry of /sync, `m.read` receipts in `/sync`, and `m.fully_read` room account data objects in the spec. None of these are necessary nor used in practice.

Checking part of the ecosystem for whether clients look for, or homeservers include, these room_id fields, I found that:

    Element does not require them, nor does Synapse include them.
    Ruma does not include them.
    Dendrite does not include them.
    nheko/mtxclient does not look for them.

This change removes room_id from the example and OpenAPI schema in each case mentioned above. It only affects the Client-Server spec - the Server-Server spec text remains unchanged.

The field was initially introduced in 0f28f83.
2022-05-09 01:28:17 -06:00
Aaron Raimist
ac4a296e4c Remove unenforced size limit on room names (#3669)
Fixes #3641

The spec says the name field in m.room.name events must not exceed 255 bytes but no servers actually enforce this over the C-S API. Clients should probably already be truncating room names to an appropriate length for their user interface.

Signed-off-by: Aaron Raimist <aaron@raim.ist>
2022-05-09 01:28:17 -06:00
Travis Ralston
fd2340a4da Fix membership state table and diagram (#3730)
* Fix membership state table and diagram

There were 2 missing cases which are legal:
* `invite->knock` (a fairly silly thing to do, but legal under the auth rules)
* `external->leave (via /kick)` (another somewhat silly thing to do, but no different than `external->ban (via /ban)`)

The state table considered the first as illegal, which is untrue.

* Changelog

* Make the graph prettier

* Update changelogs/client_server/newsfragments/3730.clarification

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2022-05-09 01:28:17 -06:00
thomaslantern
842106d9d8 removed m.room.message.feedback 2022-04-20 22:53:53 -04:00
Richard van der Hoff
136b5c9231
Correct the default for invite in m.room.power_levels (#1021)
Per #860, this has been wrong in the spec forever.
2022-04-05 15:01:23 +01:00
Jonas Platte
17448083cf
Clarify that the url field in m.room.avatar events is not required. #987) 2022-03-22 13:33:12 +00:00
Andrew Morgan
e7adfd5ed1
Fix missed rst->md numbered list syntax for m.room.server_acl (#3681)
* Fix missed rst->md numbered list syntax
2022-02-06 12:49:56 -05:00
Richard van der Hoff
36b02edfc2
Distinguish 'client' from 'federation' events (#3658)
Fixes #3305 
Fixes #3380
 
The idea here is to better distinguish between a 'raw' event (as we send over the wire), and the 
'serialised' format, as sent in responses to the C-S api and in `PUT /_matrix/app/v1/transactions/{txnId}`.

It's made more complicated by the fact that there are _two_ serialisation formats, one used by `/sync`
and `/notifications`, and one by everything else (the difference being whether `room_id` is included).

In an ideal world, we wouldn't repeat `SerialisedEvent` every time it's used, and instead just link to the
first reference, but that's a job for another day.

Another job for another day is to get rid of things like `sync_state_event.yaml` (which is now used
only in one place, so should be inlined.)
2022-02-01 15:05:08 +00:00
Aaron Raimist
990dfec94b
Update several spots where C-S API was still using r0 APIs (#3671)
* Update several spots where C-S API was still using r0 APIs

Signed-off-by: Aaron Raimist <aaron@raim.ist>

* Add changelog

Signed-off-by: Aaron Raimist <aaron@raim.ist>
2022-01-31 17:19:56 +00:00
Travis Ralston
6c4aabd053
Room versions 8 and 9: Restricted rooms (#3387)
* Room versions 8 and 9: Restricted rooms

MSCs:
* https://github.com/matrix-org/matrix-doc/pull/3083
* https://github.com/matrix-org/matrix-doc/pull/3289
* https://github.com/matrix-org/matrix-doc/pull/3375

* Changelogs

* Capitalization

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>

* Remove verbiage for spaces because they don't exist

* Iterations on text

* Another clarification

* Make error code descriptions consistent

* Apply suggestions from code review

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

* Incorporate from merge

* Misc language update per review

* Update accuracy before splitting auth rules

* fix wtf moment

* Fix up v8 and v9 to match "fully specify room versions"

* Scope auth events selection to room version

* Apply consistency

* Add changelogs

* Review part 1

* Apply suggestions from code review

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

* Split out redaction sections

* Clarify general case of join conditions

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2022-01-18 09:55:34 -07:00
Travis Ralston
9af83dfd41
Add Spaces to the spec (#3610)
* First iteration of specifying Spaces

MSCs:
* https://github.com/matrix-org/matrix-doc/pull/3288
* https://github.com/matrix-org/matrix-doc/pull/2946
* https://github.com/matrix-org/matrix-doc/pull/1772

Note that this makes modifications to the underlying MSCs as well. These are intended to be minor edits to aid clarity/accuracy of the MSCs, as per the proposal process. Functionally, clients and servers might need to change their behaviour slightly as is expected of implementing this stuff early. Synapse has these changes (alongside backwards compatibility) here: https://github.com/matrix-org/synapse/pull/11667

* add changelogs

* Accuracy per review

* Apply suggestions from code review

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

* fully prefix new endpoints

* Fully prefix endpoint in 3616 too

* Fix ordering example

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2022-01-17 10:03:14 -07:00
Travis Ralston
56532dd688
Describe and hoist stripped state to a first-class citizen (#3606)
* Describe and hoist stripped state to a first-class citizen

Fixes https://github.com/matrix-org/matrix-doc/issues/3413
MSC: https://github.com/matrix-org/matrix-doc/pull/3173

* Add changelog

* may->can for clarity

* Update text per review
2022-01-05 10:57:59 -07:00
Richard van der Hoff
7f200c53e8
Move prev_content to unsigned (#3524) 2021-12-02 17:22:58 +00:00
Will Hunt
51d8560da9
Explicitly link to geo URI spec (#3492)
* Explicitly link to geo URI spec

* move RFC location

Co-authored-by: Travis Ralston <travisr@matrix.org>

* Create 3492.clarification

Co-authored-by: Travis Ralston <travisr@matrix.org>
2021-11-15 15:58:39 -07:00
Hubert Chathi
033038917d
remove extra type property (#3482) 2021-11-10 13:46:24 -05:00
Travis Ralston
5be0df02c5
Start annotating which version of the spec added a thing (#3425)
* Introduce a new "added-in" template and use it on endpoints

* Use "added-in" on schema properties too

* Annotate sections of the spec with their added versions

* Demo of "added-in" on a room version (to be fleshed out)

* Use clearer versioning semantics

* Update and fix validator for Swagger custom properties

* Fix docs
2021-10-14 13:23:04 -06:00
Lukas Lihotzki
91b232df48 OpenAPI: use uri format
In avatar_url, pusher url, wellknown base_url, getUrlPreview, and submit_url.

Signed-off-by: Lukas Lihotzki <lukas@lihotzki.de>
2021-08-27 19:17:17 +01:00
Will Hunt
2794fc8e29 Explicitly call replacement_room a room ID
Fixes https://github.com/matrix-org/matrix-doc/issues/3232
2021-08-27 19:17:14 +01:00
Travis Ralston
457f3995af Merge pull request #3154 from matrix-org/travis/spec/knock-knock-whos-there
Add knocking to the spec
2021-08-27 19:17:12 +01:00
Travis Ralston
fa6cc8a1ff Add knocking to the spec
Spec for https://github.com/matrix-org/matrix-doc/pull/2998
Spec for https://github.com/matrix-org/matrix-doc/pull/2403

This deliberately does not help towards fixing https://github.com/matrix-org/matrix-doc/issues/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.
2021-08-27 19:17:12 +01:00
Hubert Chathi
f9dce3dfed Add spec for verification by QR codes. 2021-08-27 19:17:11 +01:00
Hubert Chathi
b5bdfffa53 spec verification in DMs and m.key.verification.ready/done 2021-08-27 19:17:11 +01:00
Aaron Raimist
d8d84b64d5 Fix example MXC URI for m.presence
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2021-08-27 19:17:09 +01:00
Will
06983e1eb1 Remove RST comment, add bullets into list 2021-08-27 19:16:42 +01:00
Will
215b625d81 Replace csv table with GFM table 2021-08-27 19:16:42 +01:00