matrix-org / matrix-org/matrix-spec

Server-Server API does not specify that sending servers need to be able to give `prev_events` for the events that they send

Open
#1,228 2 comments 0 reactions 0 assignees View on GitHub
clarification
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.3/server-server-api/#checks-performed-on-receipt-of-a-pdu

Link to relevant Synapse code: https://github.com/matrix-org/synapse/blob/0bf180cbb43f6e3d489ddaa5d66226b6daeea027/synapse/handlers/federation_event.py#L307-L315

**Issue**

Synapse requires that a remote homeserver which is sending an event is able to produce, on demand, the `prev_events` for that event via `/get_missing_events`. This does not appear to be made clear in the specification, which I think could be troublesome for interoperability.
It also just seems like something that is worth noting; particularly when looking to implement faster room joins, this is something that has come up.

Contributor guide

Open the contributing guide

Research direction

Read the linked Server-Server API section, then compare its receipt checks with the linked Synapse federation_event.py code around lines 307-315. Update the specification to state that sending servers must be able to provide the prev_events for events they send, and confirm the wording clearly addresses interoperability.

Written by the indexing model from the issue text.

Assessment

Tech stack
html
Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.