matrix-spec/proposals
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>
2022-01-15 15:07:44 -07:00
..
images notes on and alternatives 2021-01-27 16:48:32 +00:00
0000-proposal-template.md add an explicit dependencies block. 2021-11-19 15:36:14 +00:00
1219-storing-megolm-keys-serverside.md Update proposals/1219-storing-megolm-keys-serverside.md 2019-10-28 12:58:27 -04:00
1442-state-resolution.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
1466-soft-logout.md MSC 1466 - Soft Logout (#1467) 2018-12-10 09:59:15 +00:00
1501-room-version-upgrades.md Add room version upgrades 2019-01-09 17:02:09 -07:00
1501-split-dag.png proposal for room version upgrades 2018-08-10 16:51:44 +01:00
1543-qr_code_key_verification.md Update proposals/1543-qr_code_key_verification.md 2020-11-20 22:52:41 -05:00
1659-event-id-as-hashes.md MSC 1659 Proposal: Change Event IDs to Hashes (#1659) 2019-01-30 17:08:21 +00:00
1704-matrix.to-permalinks.md Update original MSC as per proposal guidelines 2019-04-05 16:37:27 -06:00
1708-well-known-for-federation.md Fix non-permanent links in MSCs to withstand time (#3422) 2021-10-12 12:04:27 -06:00
1711-x509-for-federation.md Fix non-permanent links in MSCs to withstand time (#3422) 2021-10-12 12:04:27 -06:00
1717-key_verification.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
1719-olm_unwedging.md Fix non-permanent links in MSCs to withstand time (#3422) 2021-10-12 12:04:27 -06:00
1721-rename-cas-to-sso.md no need to rename ticket endpoint 2018-11-22 23:04:43 +00:00
1730-cs-api-in-login-response.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
1753-capabilities.md Specify how capabilities work in the c2s API 2019-01-30 19:43:55 -07:00
1756-cross-signing.md clarifications to cross-signing MSC 2021-01-08 17:48:03 -05:00
1759-rooms-v2.md Room v2 proposal 2018-12-17 15:35:54 +00:00
1772-groups-as-rooms.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
1779-open-governance.md Update MSC1779 to forward link to matrix.org/foundation 2020-05-25 08:35:26 -06:00
1794-federation-v2-invites.md Update proposals/1794-federation-v2-invites.md 2019-01-14 15:53:23 +00:00
1802-standardised-federation-response-format.md Merge branch 'babolivier/standardised-federation-response-format' of github.com:matrix-org/matrix-doc into babolivier/standardised-federation-response-format 2019-09-05 14:54:44 +01:00
1804-advertising-capable-room-versions.md Say that !stable == unstable 2019-01-25 09:27:23 -07:00
1812-federation-make-membership.md Proposal for add room_version to make_* fed APIs 2019-01-22 10:55:27 +00:00
1819-remove-presence-lists.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
1831-srv-after-wellknown.md Merge remote-tracking branch 'origin/travis/msc/wk-before-srv' into travis/msc/wk-before-srv 2019-01-31 10:53:22 -07:00
1866-invite-unsupported-version-error-code.md Add proposal for invite error code 2019-02-08 14:36:12 +00:00
1884-replace-slashes-in-event_ids.md incorporate further feedback 2019-04-01 10:27:30 +01:00
1915-unbind-identity-server-param.md Spec 3PID unbind API 2019-05-28 15:05:41 -06:00
1930-tombstone-notifications.md Check for a state_key on the tombstone push rule 2019-08-08 09:29:52 -06:00
1946-secure_server-side_storage.md Merge pull request #2472 from uhoreg/symmetric_ssss 2020-05-21 08:36:49 -06:00
1954-remove-prev_event-from-essential-keys-list.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
1957-integrations-discovery.md Clarify that the query string is because they are widgets 2019-08-21 17:50:18 -06:00
1960-integrations-openid.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
1961-integrations-auth.md Disclose origin story 2019-08-16 19:52:35 -06:00
1983-leave-reasons.md Rename 0000-leave-reasons.md to 1983-leave-reasons.md 2019-04-30 15:14:54 -06:00
2002-rooms-v4.md MSC2002: Proposal for adopting MSC1884 as v4 rooms (#2002) 2019-05-21 16:21:46 +01:00
2010-spoilers.md Proposal to clarify spoilers 2020-05-19 07:36:41 -06:00
2033-whoami-device-id.md Revert "Revert "MSC2033: Adding a device_id to /account/whoami"" 2020-08-18 08:53:34 -06:00
2076-enforce-validity-periods.md MSC2076: Enforce key-validity periods when validating event signatures 2019-06-04 23:51:10 +01:00
2077-rooms-v5.md clarifications 2019-06-05 07:18:25 +01:00
2078-homeserver-password-resets.md be super explicit 2019-06-07 13:29:22 +01:00
2134-identity-hash-lookup.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
2140-terms-of-service-2.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
2174-move-redacts-key.md Add some compatibility hacks. 2019-07-22 15:17:52 +01:00
2175-remove-creator-field.md MSC2175: Remove the creator field from m.room.create events (#2175) 2019-07-31 13:13:38 +01:00
2176-update-redaction-rules.md clarification 2019-08-12 13:12:18 +01:00
2181-user-deactivated-errcode.md MSC2181: Add an Error Code for Signaling a Deactivated User (#2181) 2019-07-31 13:14:02 +01:00
2184-allow-html-details.md Allow the use of the HTML <details> tag 2019-07-16 22:00:24 +02:00
2197-search_filter_in_federation_publicrooms.md Address @richvdh's comments 2019-08-19 07:44:37 +01:00
2209-auth-rules-other-keys-in-m.room.power.levels.md 3rd draft of MSC2209 2019-08-03 09:15:32 +02:00
2229-rebind-existing-3pid.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
2230-identity-server-account-data.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
2240-rooms-v6.md Fix MSC reference 2020-05-14 10:44:44 -06:00
2241-e2e-verification-in-dms.md decouple from MSC1849/MSC2674 2021-04-13 12:29:58 -04:00
2244-mass-redactions.md Add section about backwards compatibility 2019-11-04 21:14:18 +02:00
2263-homeserver-pw-resets.md Let's not doubly remove things 2019-08-30 08:27:44 -06:00
2265-email-lowercase.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
2284-optional-identity-server-discovery.md Add explanation 2019-11-08 09:03:49 -07:00
2290-separate-threepid-bind-hs.md Don't remove id_server and id_access_token 2019-09-26 17:51:51 +01:00
2312-matrix-uri.md Fix non-permanent links in MSCs to withstand time (#3422) 2021-10-12 12:04:27 -06:00
2313-moderation-policy-rooms.md m.policy.rule won the debate 2019-11-19 11:53:07 -07:00
2320-identity-versions.md Fix non-permanent links in MSCs to withstand time (#3422) 2021-10-12 12:04:27 -06:00
2324-when-to-ship.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
2334-default-room-version-v5.md Wrap lines 2019-10-30 16:20:17 -05:00
2366-key-verification-accept.md more clarifications 2020-06-08 22:57:11 -04:00
2367-membership-reasons.md Add note about using PUT /state/m.room.member/ 2019-11-26 11:40:38 +00:00
2399-reporting-no-key-sent.md clarification 2020-05-22 15:01:32 -04:00
2403-knock.md Use the same domain for room ID and avatar URL. 2021-08-27 19:17:10 +01:00
2414-optional-content-reporting-reason.md Use endpoint instead of API 2020-10-02 09:12:18 -05:00
2422-allow-color-attribute-on-font-tag.md Update proposals/2422-allow-color-attribute-on-font-tag.md 2020-03-20 20:29:44 +00:00
2432-revised-alias-publishing.md clarifications 2020-03-19 15:21:50 +00:00
2451-remove-query_auth-federation-endpoint.md Update and expand the proposal based on feedback and additional info. 2020-03-04 08:07:12 -05:00
2454-ui-interactive-auth-for-sso.md 2454-ui-interactive-auth-for-sso.md: markup fix 2020-05-07 15:42:04 +01:00
2457-password-modification-invalidating-devices.md Fix incorrect statement about the current spec's guidance. 2020-03-27 14:01:04 -04:00
2472-symmetric-ssss.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
2526-add-delete-backup.md document error codes and remove a statement that isn't true 2020-05-15 12:14:46 -04:00
2540-stricter-event-validation.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
2557-spoiler-clarifications.md Spell words correctly 2020-05-19 08:47:24 -06:00
2582-remove-mimetype-from-encrypted-file.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
2604-login-fallback-device-info.md Add proposal for accepting query parameters to the login fallback endpoint. (#2604) 2020-06-28 17:00:32 +01:00
2610-remove-oauth2-auth-type.md Apply suggestions from code review 2020-06-11 11:18:29 +01:00
2611-remove-login-auth-type.md Proposal to remove m.login.token ui auth type 2020-06-05 10:52:37 +01:00
2630-sas-check-public-keys.md FluffyChat doesn't include any verification yet 2020-06-11 16:39:08 -04:00
2663-errors-nonexistent-push-rules.md inexistent may or may not be a non-existent word 2020-07-17 13:06:13 +01:00
2674-event-relationships.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
2675-aggregations-server.md MSC2675: Serverside aggregations of message relationships (#2675) 2022-01-15 15:07:44 -07:00
2689-fix-e2ee-for-guests.md Update proposals/2689-fix-e2ee-for-guests.md 2020-07-24 21:47:45 +02:00
2713-remove-deprecated-identity-endpoints.md assign number 2020-07-30 10:59:00 -06:00
2732-olm-fallback-keys.md Apply suggestions from code review 2021-03-24 10:24:06 -04:00
2758-textual-id-grammar.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
2765-widget-avatars.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
2774-widget-id.md spelling 2020-10-09 10:16:01 -06:00
2778-appservice-login.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
2788-v6-default-version.md Fix number 2020-09-23 07:48:28 -06:00
2801-untrusted-event-data.md Move room version spec to /rooms (#3423) 2021-10-12 14:47:03 -06:00
2844-global-versioning.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
2858-Multiple-SSO-Identity-Providers.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
2874-single-ssss.md add example 2021-02-11 16:48:32 -05:00
2918-refreshtokens.md MSC2918: Refresh tokens (#2918) 2021-09-28 11:14:22 -06:00
2946-spaces-summary.md Fix example response in MSC2946. (#3493) 2021-11-15 10:23:13 -07:00
2998-rooms-v7.md Clarify prose 2021-02-25 18:59:38 +00:00
3069-guests-whoami.md MSC3069: Allow guests to use /account/whoami (#3069) 2021-10-24 13:18:02 -06:00
3083-restricted-rooms.md Add note about redacting the allow key. 2021-08-27 19:17:17 +01:00
3122-deprecate-starting-verifications-without-request.md Fix non-permanent links in MSCs to withstand time (#3422) 2021-10-12 12:04:27 -06:00
3173-expose-stripped-state-events.md Fix non-permanent links in MSCs to withstand time (#3422) 2021-10-12 12:04:27 -06:00
3231-token-authenticated-registration.md MSC3231: Token authenticated registration (#3231) 2021-09-27 13:28:11 -06:00
3283-enable_set_displayname-capabilities.md MSC3283: Expose capabilities for profile actions (#3283) 2021-11-17 08:46:19 -07:00
3288-pass_room_type_in_3pid_invite.md Add GitHub Action to check spelling (#3591) 2021-12-28 09:17:49 -07:00
3289-rooms-v8.md Revert "Update redaction rules." 2021-08-27 19:17:17 +01:00
3375-room-v9.md MSC3375: Room version 9. (#3375) 2021-09-03 08:14:58 -06:00
3419-guest-state-events.md MSC3419: Allow guests to send more event types (#3419) 2021-12-08 10:21:30 -07:00
3442-move-prev-content.md proposal to move prev_content (#3442) 2021-10-24 13:17:07 -06:00
3550-allow-403-response-profile-lookup.md MSC3550: Allow HTTP 403 as a response to profile lookups (#3550) 2021-12-26 12:01:43 -07:00