Commit Graph

1321 Commits (0061a089d6200ec2417379ab0a158e87f5b0fe1f)

Author SHA1 Message Date
Janne Mareike Koschinski 0061a089d6
Rephrase and clarify motivation
Signed-off-by: Janne Mareike Koschinski <jannemk@element.io>
2 years ago
Janne Mareike Koschinski 04ece96392
Avoid accidental double spaces
Signed-off-by: Janne Mareike Koschinski <jannemk@element.io>
2 years ago
Janne Mareike Koschinski 5afe6c31aa
MSC3874: Filtering threads from the /messages endpoint
Signed-off-by: Janne Mareike Koschinski <jannemk@element.io>
2 years ago
Travis Ralston f139eee50d
Clarify that MSC3827 also affects federation endpoints (#3858)
https://github.com/matrix-org/synapse/pull/13031 originally added support for the feature to Synapse, which although doesn't include an obvious federation route it does end up sending the field over federation.

[Here](a6895dd576/synapse/federation/transport/client.py (L481)) the server copies the search filter just before it goes over the wire, which is supplied by through a chain of function calls originating [here](c6d6176411/synapse/rest/client/room.py (L456)). 

Additionally, it is clear that this sort of feature would have included federation given the filtering is able to be proxied directly like this (as demonstrated by Synapse above).

As such, this is determined to be a clarification/minor edit to the MSC, not requiring a second MSC to add the functionality.
2 years ago
Travis Ralston dbc7937cd0
Clarify accidentally-legal `invite->knock` membership transition (#3850) 2 years ago
Travis Ralston 0d1605283c Minor spelling fixes 2 years ago
Aminda Suomalainen 43a3620edf
MSC3818: Copy room type on upgrade (#3818)
* add proposal xxxx-copy-room-type-on-upgrade.md

Signed-off-by: Aminda Suomalainen <suomalainen+git@mikaela.info>

* MSC 3818: add MSC number

Signed-off-by: Aminda Suomalainen <suomalainen+git@mikaela.info>

* msc3818: remove template text from beginning

Signed-off-by: Aminda Suomalainen <suomalainen+git@mikaela.info>

* 3818-copy-room-type-on-upgrade: refer to the current version of spec and what to change

Signed-off-by: Aminda Suomalainen <suomalainen+git@mikaela.info>

* Update proposals/3818-copy-room-type-on-upgrade.md

Signed-off-by: Aminda Suomalainen <suomalainen+git@mikaela.info>

Co-authored-by: Andy Balaam <mail@artificialworlds.net>

* Update proposals/3818-copy-room-type-on-upgrade.md

Signed-off-by: Aminda Suomalainen <suomalainen+git@mikaela.info>

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

* 3818-copy-room-type-on-upgrade.md: specify v1.2 in links

Signed-off-by: Aminda Suomalainen <suomalainen+git@mikaela.info>

* 3818-copy-room-type-on-upgrade.md: correct link for MSC3588

Signed-off-by: Aminda Suomalainen <suomalainen+git@mikaela.info>

* MSC3818: note potential issue when state events are needed

* MSC3818: note an alternative of all room types needing an MSC

Co-authored-by: Andy Balaam <mail@artificialworlds.net>
Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
2 years ago
Šimon Brandner 0f067f1548
Specify how servers detect support for MSC3827 (#3854)
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2 years ago
Travis Ralston 1ec0d5824f
MSC3844: Remove unused policy room sharing mechanism (#3844) 2 years ago
Robert Long d15a6a34d6
MSC3828: Content Repository CORP Headers (#3828) 2 years ago
Šimon Brandner 129e5e982e
MSC3827: Filtering of `/publicRooms` by room type (#3827) 2 years ago
Hubert Chathi 1bfa09cc2a MSC2676: Message editing (#2676)
* initial version of message editing proposal

* fix MSC numbers

* Fix JSON in example

Co-authored-by: Alexandre Morignot <erdnaxeli@gmail.com>

* clarifications

* remove obsolete "XXX:", and fix a typo

* Initial cleanup and restructuring

* Clarify algorithm for replacing content

* background

* More clarifications on applying edits

* Clarify behaviour of redactions

* Minor grammar fixes

* Move the section on `msgtype` down

It clutters up the initial description - let's move it down into a more
detailed section.

* Clarify how edits are ordered

- we use event_id as a tiebreaker.

We also have a section in "Future considerations" about this, so I don't think
we need the braindump in "Edge cases".

* Spec the behaviour for encrypted events

* Requirements for an edit event to be considered valid

* Collect "client behaviour" and "sever behaviour" together

... and clarify these sections.

* Clarify permalinks section

* Notes on edits of replies

* Clarify that `m.relates_to` within `m.new_content` is ignored

* Clarifications from review

* event ids are sorted lexicographically

* Clarify aggregation section

* minor clarifications

* Clarify which endpoints support edits

* move definition of latest edit

* Apply suggestions from code review

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* fix typo

* Attempt to clarify encrypted events

Co-authored-by: Alexandre Morignot <erdnaxeli@gmail.com>
Co-authored-by: Richard van der Hoff <richard@matrix.org>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2 years ago
Travis Ralston 17e3cc17bf MSC2285: Private read receipts (#2285)
* What if we let people hide their read receipts?

* Add unstable prefix

* Update proposals/2285-hidden-read-receipts.md

Co-authored-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Use a separate `receiptType` for hidden read receipts  (#3750)

* Update the way MSC2285 works

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Update proposals/2285-hidden-read-receipts.md

Co-authored-by: Travis Ralston <travpc@gmail.com>

* Clarify notification behaviour and other things

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

* Mention adding `m.fully_read` to `/receipt`

* Rename MSC to `Private read receipts`

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Apply suggestions from review

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

* Apply suggestions from review

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

* Remove trailing comma

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

* Apply suggestions from review

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Apply suggestions from review

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* `r0` -> `v3`

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Describe how to determine server support while stable

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Be more precise about the failure mode

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Improve wording

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

* Improve wording

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

* Improve wording

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Be more explicit

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Be more explicit around server support

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Simplify text

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Be more explicit about detecting server support

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Add note about consistency

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Clarify how exactly to detect support

* Try to fix clarity around precedence

* Be clearer about alternatives

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Add sentence about `/receipt` federation

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Be more explicit about adding `m.read.private` to `/receipt`

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Fix wrong RR type

Co-authored-by: Kévin Commaille <76261501+zecakeh@users.noreply.github.com>

Co-authored-by: Šimon Brandner <simon.bra.ag@gmail.com>
Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
Co-authored-by: Kévin Commaille <76261501+zecakeh@users.noreply.github.com>
2 years ago
Tulir Asokan 5788b7d4e8 MSC2832: HS -> AS authorization header (#2832)
* Proposal to fix homeserver -> appservice authorization

Signed-off-by: Tulir Asokan <tulir@maunium.net>

* Remove query parameter entirely instead of deprecating it

Signed-off-by: Tulir Asokan <tulir@maunium.net>

* Update title

Co-authored-by: Jonathan de Jong <jonathandejong02@gmail.com>

Co-authored-by: Jonathan de Jong <jonathandejong02@gmail.com>
2 years ago
Bruno Windels 3a05bd637a MSC3267: Reference relations (#3267)
* initial draft of reference relations msc

* change MSC number

* Apply formatting

* Convert to point at present rather than ideal

* Clarify that multiple relations is a thing we don't have and won't fix here

* Fix wording to match reality, again

* fix a typo

Co-authored-by: Travis Ralston <travisr@matrix.org>
Co-authored-by: Andrew Morgan <andrewm@element.io>
2 years ago
Šimon Brandner 6abe71386b
MSC3786: Add a default push rule to ignore `m.room.server_acl` events (#3786)
* Add a default push rule to ignore `m.room.server_acl` events

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Update MSC number

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Add prefix `.`

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Link to spec

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

* Be more explicit about why the rule is needed

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Clarify push rule ordering

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Don't rely on unmerged MSCs for ordering

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Be even more explicit about why we need this

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Improve wording

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

* Improve wording

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

* Improve wording

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

* Add missing period

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

* Add spec link

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

* Remove `when merged`

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

* Remove `dont_notify`

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

* Check `state_key`

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2 years ago
Travis Ralston 540fb185d5
Update MSC2175 "removed auth rule" note (#3832) 2 years ago
Richard van der Hoff 6f411413af
clarification to MSC2675 (#3829)
because this is confusing enough without outright lies
2 years ago
Patrick Cloke f6f3299b0d
MSC3816: Clarify Thread Participation (#3816)
* Clarify the current_user_participated flag from MSC3440.

* Add a better link to the definition.

* Clarifications from review.

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>
2 years ago
Travis Ralston 46ae23744e
MSC3604: Room Version 10 (#3604)
* WIP: Template out v10

* Add opt1 room version prefix

* Update 3604-rooms-v10.md

* Upgrade MSC3667

* Cut a v10

* Move MSC2176 to "not feasible" section
2 years ago
Travis Ralston d27e9e4acf
Minor clarifications to MSC2675 (#3826)
To improve understanding for purposes of spec writing.
2 years ago
Travis Ralston 0e9020aeb2
Allowing knocks to restricted rooms (#3787)
Combinatorials part 2
2 years ago
Travis Ralston 09fc322915 Trim MSC3440's lines 2 years ago
Travis Ralston 71a6e9adb4 Fix MSC3440's wording for spec release 2 years ago
Travis Ralston ffc689db27
Add an unstable room version to MSC2174 (#3788)
* Add an unstable room version to MSC2174

* Associate room version
2 years ago
Travis Ralston ebd57df4e5
Add MSC2176's undocumented unstable room version (#3789) 2 years ago
Patrick Cloke 7521fea369
Clarify serialization properties of the latest thread event. (#3785) 2 years ago
Jan Christian Grünhage 8aaf3c5129
MSC3383: Include destination in X-Matrix Auth Header (#3383)
* add proposal for adding the dest to federation auth headers

Signed-off-by: Jan Christian Grünhage <jcgruenhage@famedly.com>

* address compatibility concern regarding fed auth headers

The MSC already addressed old implementations receiving events from
newer implementations sending the additional field, but not the other
way around, which is added in here

* clarify the problem MSC3383 aims to solve

* clarify which verification msc3383 talks about

* clarify what happens with unknown destinations in msc3383
2 years ago
Patrick Cloke 919ca2f65a
MSC3666: Bundled aggregations for server side search (#3666)
* Initial commit.

* MSC number.

* Link to the current specification.

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

* Clarify that this is a change (and not part of MSC2675).

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

* Remove extra work.

Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>

* Add missing slashes and some links.

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
2 years ago
Erik Johnston d375720b1f
MSC3700: Deprecate plaintext sender key (#3700)
* Initial deprecate sender key MSC

* Formatting

* Deprecate 'sender_key' in 'm.room_key_request'

* Update proposals/3700-deprecate-sender-key.md

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

* Update proposals/3700-deprecate-sender-key.md

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

* Formatting

* Update language around looking up sessions

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2 years ago
Travis Ralston e1aa00a75d Fix numbering 2 years ago
Neil Alexander 03f8ce9c44
MSC3667: Enforce integer power levels (#3667)
* Create mscxxxx-enforce-integer-power-levels.md

* Update MSC number

* Update MSC to mention implementation

* Update proposals/msc3667-enforce-integer-power-levels.md

@uhoreg suggestion

Co-authored-by: Alexey Rusakov <Kitsune-Ral@users.sf.net>

* Update proposals/msc3667-enforce-integer-power-levels.md

Co-authored-by: Erik Johnston <erik@matrix.org>

Co-authored-by: Alexey Rusakov <Kitsune-Ral@users.sf.net>
Co-authored-by: Erik Johnston <erik@matrix.org>
2 years ago
Germain 489f8d8544
MSC3440: Threading via `m.thread` relation (#3440)
* Threading  via  relation

* Add explainer on how to handle m.in_reply_to

* Clarify wording on threading MSC

* Mention MSC3051 in the alternative section of MSC3440

* Clarify updates to MSC2675 for MSC3440

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

* Line wrap the MSC

* More line wrapping for MSC3440

* Clarify single-layer event aggregation section

* Update thread-as-rooms advantages

* Clarify backwards compatibility and incremental support

* Clarify wording and correct typos

* Splitting Cerulean and MSC2836 in alternatives section

* Add dependencies for threads MSC

* Clarify intro to threads as rooms

* Add currentUserParticipated flag

* snake_case over camelCase

* Adding dependency to MSC3567

* Add threads capability

* Fix typo

* Update syntax highlighting to use jsonc

* Add limitations when fetching thread content by relation type

* Add reply chain fallback via m.in_reply_to

* Clarity in wording and fix typo

Co-authored-by: James Salter <jamess@element.io>
Co-authored-by: Matthew Hodgson <matthew@matrix.org>

* Cosmetic changes based on pull request feedback

* Add note to allow clients to omit fallback for rich replies

* fix typo

* Clarify wording to not confuse thread answers with quote-replies

* move relations justification to alternatives section

* Clarify handling of m.in_reply_to missing rel_type:m.thread

* Fix typo

* Fix typo

* Declare MSC2781 as a dependency

* Use rich reply over quote reply

* Depend on MSC3676 rather than MSC2781

Rather than relying on fallbacks being removed outright (and all the notification complications that causes in #2781), instead depend on #3676 which makes fallbacks best effort.

* Remove full stop typo

Co-authored-by: Erik Johnston <erik@matrix.org>

* Clarify new filtering parameters.

* Fix typo.

* Update wording for client side considerations

Co-authored-by: Hubert Chathi <hubertc@matrix.org>

* Add m.in_reply_to mixin to thread fallback

* Add guidance for clients and servers for thread invalid relations

* update thread root wording

* Add better definition to reply target event

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

* Add note regarding forward compatibility

* link to MSC2674

* Update proposals/3440-threading-via-relations.md

Co-authored-by: Hubert Chathi <hubertc@matrix.org>

* Clarification on responsibilities for the reply fallback

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

* Update `/messages` API endpoint version on example

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

* Apply wording suggestions from code review

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

* Add notes on server-side invalid relation filtering

* Fix typo

* reword paragraph about forwarding m.thread relation

* Add unstable prefix for capability endpoint

* Re-order alternatives to match intro paragraph

* rework relation_senders and relation_types definition

* Apply wording suggestions from code review

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
Co-authored-by: Kim Brose <kim.brose@rwth-aachen.de>

* Clarify fallback mechanism

* Rename filter property names

* Change m.render_in to m.display_reply_fallback

* Clarify what endpoints support the new filter

* Switch from /capabilities to /versions

* remove references to Cerulean

* Update latest_event description

* Clarity in wording and fix typo

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

* rename m.display_reply_fallback to hide_reply

* remove redundant paragraph about forward compat

* Improve bundled relationship example

* Explain context on why a thread-unaware client might want to send m.thread

* Clarify `hide_reply`

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

* Rename hide_reply to show_reply

* rename show_reply to is_falling_back

* Add note about stable support.

* Update proposals/3440-threading-via-relations.md

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

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
Co-authored-by: James Salter <jamess@element.io>
Co-authored-by: Matthew Hodgson <matthew@matrix.org>
Co-authored-by: Erik Johnston <erik@matrix.org>
Co-authored-by: Patrick Cloke <patrickc@matrix.org>
Co-authored-by: Hubert Chathi <hubertc@matrix.org>
Co-authored-by: Travis Ralston <travisr@matrix.org>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
Co-authored-by: Kim Brose <kim.brose@rwth-aachen.de>
2 years ago
Tulir Asokan daf940a128 MSC3316: Add timestamp massaging to the spec (#3316)
* Proposal to add timestamp massaging to the spec

Signed-off-by: Tulir Asokan <tulir@maunium.net>

* Update unstable prefix

Signed-off-by: Tulir Asokan <tulir@maunium.net>
2 years ago
Travis Ralston 23b0e11409
MSC3589: Room version 9 as the default room version (#3589)
* Room version 9 as a default room version

* Update statistics and notes about maturity

* Adjust wording for Conduit

* Update to stable link
2 years ago
Hubert Chathi e9fed105c6
MSC3582: Remove m.room.message.feedback (#3582)
* proposal to remove m.room.message.feedback

* use MSC number
2 years ago
Matthew Hodgson 2cd2a7122c
MSC3676: Transitioning away from reply fallbacks (#3676)
* MSC3676: Transitioning away from reply fallbacks

* msc number

* md fails

* typoe

* Update proposals/3676-transitioning-away-from-reply-fallbacks.md

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

* incorporate feedback

* consolidate justification

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2 years ago
Travis Ralston fc3f7d60eb
Remove `aliases` from `/publicRooms` response (#3624)
Through attempting to land [Synapse#11667](https://github.com/matrix-org/synapse/pull/11667) it was found that Synapse doesn't return the `aliases` property on `/publicRooms` as it was [removed](https://github.com/matrix-org/synapse/pull/6970) by a [tracking issue](https://github.com/matrix-org/synapse/issues/6898) referencing [MSC2432](https://github.com/matrix-org/matrix-doc/pull/2432) as its base. Though MSC2432 does not make mention of this, the [document](https://docs.google.com/document/d/1NNDkobiFLeUkJtyj0H6qvKIedgvIkZnFKo78-03cGEk/edit) the MSC is based upon makes deliberate effort to mention the endpoint and the removal of `aliases`. Thus, it is determined as a likely accidental omission from the formal MSC and therefore the formal spec.

This has been corrected here by amending the MSC (per the process) and removing the field, basing itself off of the [spec PR for spaces](https://github.com/matrix-org/matrix-doc/pull/3610) for diff clarity.
2 years ago
Travis Ralston 97a8b0bb13 spelling 2 years ago
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>
2 years ago
Patrick Cloke 21882b6006
MSC3567: Allow requesting events from the start/end of the room history (#3567)
* Initial cut of MSC to standardize from being optiona on /messages requests.

* Fix typo.

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

* Clarifications of start/end.

* Add information about back-paginating excluded events.

Co-authored-by: Travis Ralston <travisr@matrix.org>
3 years ago
Hubert Chathi 16ec511e9c MSC2675: Serverside aggregations of message relationships (#2675)
* initial version of serverside aggregations proposal

* fix MSC numbers

* clarification

* add e2ee section from 2674 here, as it is only needed for server-side aggregations

* move edge case wrt to calling /context on a relation here from 2674

* fix typo

* clarify which APIs should bundle relations

* move stale_events over to future extensions section

* summarize stale_events and make tone conditional to mark that is not part of the MSC

* casing and wording

* clarify in summary an API for requesting relations is also proposed

* remove proposal for batch get event api as is unused and unimplemented

* attempt to clarify relations vs aggregations

* clarify pagination and align it with synapse impl already in the wild

* conciseness

* better headers

* clarify that relations are always returned, contrary to aggregations

* document the limitation of the event type not being known in e2ee rooms

* specify that redacted relations are not aggregated

* remove type in (non-binding) example as synapse doesn't do this

* mention that these are just examples

* clarify that this is a non-normative example

* Update proposals/2675-aggregations-server.md

Co-authored-by: David Baker <dbkr@users.noreply.github.com>

* add http method for endpoint list

* line break

* remove "unbundled relations" term, it's just confusing

instead use relation events,
with the bundled form now called aggregation

also restructure the headings so we have on section about aggregations
and another one about querying relation events

* some more restructuring of text after changing doc structure

* mention original_event for m.replace relations

* remove dir param as it is unused and unimplemented

* clarify that relating pending events should happen by transaction_id

* remove unimplemented /aggregations/{eventID}//{eventType}/{key}
 endpoint

* Update proposals/2675-aggregations-server.md

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

* mention that the server might not be aware of all the relations

* clarify that redacted events should still return their relations and aggregations respectively

* remove /context edge case, it should not be special-cased

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* bad example, replies doesn't use relations

* clarify that we dont bundle discrete events

* clarify that we dont bundle discrete events, again

* improve example

* clarify this MSC does not use a prefix

* better english

* clarify pagination in example

* better english

* remove contradication: m.reference doesn't support pagination but example mentions it

* double punctuation

* clarify that only the bundled aggregation limit for truncation can't be set by the client, /aggregations does have a limit param

* move e2ee limitation to limitations section

* clarify prefixes

* mention that state events never bundle aggregations

* Update proposals/2675-aggregations-server.md

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

* add that the visibility of relations can derive from that of the target

* typsos

* be more explicit

* moar rewording

* keep related parts together

* don't make a relation invisible because the target event isn't

also clarify what to do with relations for which the target is invisible

* Update proposals/2675-aggregations-server.md

Co-authored-by: David Baker <dbkr@users.noreply.github.com>

* better words

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* be more precise when clients should ensure the key is shared

* mention that ignored users can cause different aggregations for users

* move visibility rule changes to MSC3570

* don't overspecify visibility limitation, allow for unspecified behaviour

as synapse includes the invisible events in the aggregation

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* move non-normative note to below example

* make rel_type mandatory as the response structure doesn't allow for mixing types

* fix typo/thinko

* make pagination forward only as there is no use case for backwards

* Update proposals/2675-aggregations-server.md

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

* add non-normative aggregation examples

* Update proposals/2675-aggregations-server.md

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

* use relation type rather than rel_type

the former is already define as the latter in MSC 2674

* change trailing slashes remark to event_type, rel_type is mandatory now

* reword and split out client-side aggregation section

* rename parent event to target event, the term used elsewhere

* apply suggestion

* apply suggestion

* remove pagination

* remove mentions of /aggregations endpoint after removing pagination

* add note about not bundling into state events

* restructure headers so more of the aggregations stuff is under section

* make rel_type mandatory for /relations and better wording

* remove confusion that aggregations contain more info than relations

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* mention that tokens from /sync, /messages can be used on /relations

* try not to be overly prescriptive

* remove edge case of ignoring events without target event, as ignoring is not always safe

* clarify limitation for encrypted rooms

* make rel_type optional again for /relations

* Update proposals/2675-aggregations-server.md

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Update proposals/2675-aggregations-server.md

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Update proposals/2675-aggregations-server.md

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Update proposals/2675-aggregations-server.md

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Update proposals/2675-aggregations-server.md

Co-authored-by: Matthew Hodgson <matthew@arasphere.net>

* mention requires auth and rate-limited on /relations

* replace hypothetical examples for bundled aggregations with non-normative ones

* move to MSC 2676 as it's specific to edits

* dont repeat how local echo using transaction_id works

Co-authored-by: Bruno Windels <bruno@windels.cloud>
Co-authored-by: David Baker <dbkr@users.noreply.github.com>
Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
Co-authored-by: Matthew Hodgson <matthew@arasphere.net>
3 years ago
Aaron Raimist 01cd41de68
Add GitHub Action to check spelling (#3591)
Signed-off-by: Aaron Raimist <aaron@raim.ist>
3 years ago
Shay 3ce9c1d288
MSC3550: Allow HTTP 403 as a response to profile lookups (#3550)
* add 403 proposal

* add msc number to file and filename

* correctly use markdown

* requested changes

* add links

* specify error code

* Update proposals/3550-allow-403-response-profile-lookup.md

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

* fix formatting typo

Co-authored-by: Travis Ralston <travisr@matrix.org>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
3 years ago
Matthew Hodgson 87822fa105
MSC3419: Allow guests to send more event types (#3419)
* MSC3419 - Guest state events

Let guests send state events. Needed for guests to work with native
group voip in #3401

* typo

* Update 3419-guest-state-events.md

incorporate @clokep clarification

* also let guests send non-m.room.message events in general.

* Update proposals/3419-guest-state-events.md

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

* Update proposals/3419-guest-state-events.md

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

* wordwrap

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
3 years ago
Hubert Chathi 9654bf19b3 MSC2674: Event Relationships (#2674)
* initial version of event relationship MSC

* fix MSC numbers

* clarifications

* mention multiple relations per event might be useful, but postpone for a future MSC

* mention MSC 3051 for proposed multiple relations

* remove send_relation endpoint

* move e2ee section under sending relations

* mention limitation of leaving server-side aggregations out for now

* remove mentions of m.reference, we'll sort that out in another MSC

* whitespace

* argument why m.relates_to should be preserved by redactions more general

but still give example of redacted edits

* deal with this in the comments

* clarify the conditions to meet for a relation

* mention specifically that this does not replace replies (yet)

* clarify how general rel_types should be

* clarify that gaps may cause clients to be unaware of some relations

* Update proposals/2674-event-relationships.md

Co-authored-by: DeepBlueV7.X <nicolas.werner@hotmail.de>

* Update proposals/2674-event-relationships.md

Co-authored-by: DeepBlueV7.X <nicolas.werner@hotmail.de>

* make wording clearer and move to bottom of section

* remove this as references are not defined here anymore

* clearer wording

* move edge cases to other relevant mscs

* clarify that a goal of sticking to this format is backwards compat.

* mention MSC 3267, to which m.reference has been extracted

* Update proposals/2674-event-relationships.md

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Update proposals/2674-event-relationships.md

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Update proposals/2674-event-relationships.md

Co-authored-by: Matthew Hodgson <matthew@arasphere.net>

* Update proposals/2674-event-relationships.md

Co-authored-by: Matthew Hodgson <matthew@arasphere.net>

* Update proposals/2674-event-relationships.md

Co-authored-by: Travis Ralston <travpc@gmail.com>

* wrap lines

* better wording

* this is singular, really

* add example of event shape

* specify how invalid relations should be treated by the redaction algorithm

* fix typo

* split up redactions changes in separate MSC

* also add new msc to introduction

* reword why not adopt m.in_reply_to

* remove guidelines how to pick rel_type

* mention that the target event must exist in the same room

* spell out the conscious (subject, object, verb) triple idea.

* Spelling

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

* remove paragraph saying what server should accept

* Revert "remove paragraph saying what server should accept"

This reverts commit e0271331b2.

* further specify that a server should reject invalid relations through the cs api

* linebreak

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

Co-authored-by: Bruno Windels <bruno@windels.cloud>
Co-authored-by: DeepBlueV7.X <nicolas.werner@hotmail.de>
Co-authored-by: Matthew Hodgson <matthew@arasphere.net>
Co-authored-by: Travis Ralston <travpc@gmail.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
3 years ago
Matthew Hodgson 8d9a67d9f6
add an explicit dependencies block. 3 years ago
Jonas Kress 0982d5c55f MSC3283: Expose capabilities for profile actions (#3283)
* Create 3278-enable_set_displayname-capabilities.md

* Apply suggestions from code review

Co-authored-by: Alexey Rusakov <Kitsune-Ral@users.sf.net>

* Apply suggestions from code review

Co-authored-by: Alexey Rusakov <Kitsune-Ral@users.sf.net>

* Update and rename 3278-enable_set_displayname-capabilities.md to 3279-enable_set_displayname-capabilities.md

* Update and rename 3279-enable_set_displayname-capabilities.md to 3282-enable_set_displayname-capabilities.md

* Update and rename 3282-enable_set_displayname-capabilities.md to 3283-enable_set_displayname-capabilities.md

* Update proposals/3283-enable_set_displayname-capabilities.md

Co-authored-by: Alexey Rusakov <Kitsune-Ral@users.sf.net>

* Update proposals/3283-enable_set_displayname-capabilities.md

Co-authored-by: Will Hunt <will@half-shot.uk>

* Update proposals/3283-enable_set_displayname-capabilities.md

Co-authored-by: Will Hunt <will@half-shot.uk>

* Update 3283-enable_set_displayname-capabilities.md

* Update 3283-enable_set_displayname-capabilities.md

* Update proposals/3283-enable_set_displayname-capabilities.md

Co-authored-by: Dirk Klimpel <5740567+dklimpel@users.noreply.github.com>

* Update proposals/3283-enable_set_displayname-capabilities.md

Co-authored-by: Dirk Klimpel <5740567+dklimpel@users.noreply.github.com>

* Update 3283-enable_set_displayname-capabilities.md

* Update 3283-enable_set_displayname-capabilities.md

* Update 3283-enable_set_displayname-capabilities.md

* Update 3283-enable_set_displayname-capabilities.md

Co-authored-by: Alexey Rusakov <Kitsune-Ral@users.sf.net>
Co-authored-by: Will Hunt <will@half-shot.uk>
Co-authored-by: Dirk Klimpel <5740567+dklimpel@users.noreply.github.com>
3 years ago
Patrick Cloke 9a6c86ac8d
Fix example response in MSC2946. (#3493) 3 years ago
kegsay b873ba984c MSC2946: Spaces Summary (#2946)
* Spaces Summary

* MSC2946

* Clarity

* More clarity

* Clarify what no room data means for clients

* Federation API

* Update 2946-spaces-summary.md

* auto_join filter

* Blurb on auth for fed api

* Update to reflect MSC1772 changes

* Mention auth chain on federation api

* Add 'version' field

* Stripped state; remove room versions

* Update 2946-spaces-summary.md

* Update proposals/2946-spaces-summary.md

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

* Replace with link to draft doc.

* Add a preamble and copy the current draft API.

* Switch to using stable identifiers (and add an unstable identifiers section).

* Updates / clarifications.

* Fix typo.

* Clean-ups.

* Update proposals/2946-spaces-summary.md

Co-authored-by: Travis Ralston <travpc@gmail.com>

* Drop unstable identifiers from MSC1772.

* Various updates and clarifications.

* Include the origin_server_ts in the response, as needed by MSC1772.

* Rename a parameter for clarity.

* Fix typo.

Co-authored-by: David Baker <dbkr@users.noreply.github.com>

* Various clarifications based on feedback.

* Add auth / rate-limiting info.

* Combine some double spaces.

* Use only GET endpoints.

* Add notes about DoS potential.

* Tweaks from review.

* Add context about why stripped events are returned.

* Remove some implementation details.

* Add notes on ordering.

* Remove unnecessary data.

* Clarify the server-server API.

* More clarifications.

* Remove obsolete note.

* Some clarifications to what accessible means.

* Update notes about sorting to include the origin_server_ts of the m.space.child event.

This reverts commit af8c7b04d9.

* Only consider `m.space` rooms and do not return links to nowhere.

* Updates based on MSC3173 merging and updates to MSC3083.

* Updates per MSC2403.

* Remove field which is not part of the C-S API.

* Rewrite the proposal.

* Handle todo comments.

* Update URLs.

* Rename field.

* Updates based on implementation.

* Clarify the state which is persisted.

* Expand notes about errors.

* Update MSC with pagination parameter.

* Fix wrong endpoint.

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

* Clarifications based on implementation.

* Remove empty section.

* Fix typo.

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

* Rename field in example.

* Clarify error code.

* Clarify ordering changes.

* Clarify wording.

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

* Fix typos.

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Clarify that rooms do not belong to servers.

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Fix example to use correct URL.

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Clarify using local vs. remote data.

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Clarify bits aboud stripped state.

* Clarify access control of federation responses.

* Clarify error code.

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Be less prescriptive about expiring data.

* Limit must be non-zero.

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

* Rate limiting.

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

* Add a note about room upgrades.

* Update stable URLs per MSC2844.

* Clarify federation return values.

* Clarify `origin_server_ts`.

Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>

* Tweak wording around `inaccessible_children`.

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
Co-authored-by: Richard van der Hoff <richard@matrix.org>
Co-authored-by: Patrick Cloke <patrickc@matrix.org>
Co-authored-by: Matthew Hodgson <matthew@matrix.org>
Co-authored-by: Travis Ralston <travpc@gmail.com>
Co-authored-by: David Baker <dbkr@users.noreply.github.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
Co-authored-by: Travis Ralston <travisr@matrix.org>
Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>
Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
3 years ago