Skip to content

When a room is left and forgotten quickly, other devices aren't told about the leave in incremental sync #1458

@squahtx

Description

@squahtx

The spec says

Once a user leaves a room, it will no longer appear in the response to the /sync API unless it is explicitly requested via a filter with the include_leave field set to true.

Rooms which have been forgotten will never appear the response to the /sync API, until the user re-joins, is re-invited, or knocks.

which suggests that rooms that have been left and forgotten should not show up in incremental sync responses, even if the client hasn't found out about leave yet. When a user has multiple devices, this makes it impossible for other devices to know that a room has been left if an incremental sync spans the leave and forget.

Synapse appears to violate the spec and always sends leaves for forgotten rooms over incremental sync, which is arguably more useful to clients.

related: #1096

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-Client-ServerIssues affecting the CS APIclarificationAn area where the expected behaviour is understood, but the spec could do with being more explicit

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions