Skip to content

Own knock or invite event in knock_state or invite_state in /sync is not stripped #14919

Open
@matrixbot

Description

@matrixbot

This issue has been migrated from #14919.


Description

https://github.com/matrix-org/synapse/blob/19c0e55ef7742d67cff1cb6fb7c3e862b86ea788/synapse/rest/client/sync.py#L345 does not strip the invite event it is pulling the invite_state from. The same thing happens for knocking.

grafik

grafik

This is then sent to clients via /sync. According to the spec all events in invite/knock_state should be stripped. There are benefits to the client having access to the timestamp of the invite however, so some might be relying on this, but strictly speaking this is a spec violation and looks like a bug.

Spec: https://spec.matrix.org/v1.5/client-server-api/#get_matrixclientv3sync

Steps to reproduce

  • get invited or knock a room
  • look at the sync response

Homeserver

neko.dev

Synapse Version

1.74

Installation Method

Other (please mention below)

Database

postgres, single

Workers

Multiple workers

Platform

Gentoo

Configuration

Can be reproduced on various configurations

Relevant log output

Screenshots and link to the offending code above, no logs about it, since it is a spec compliance issue.

Anything else that would be useful to know?

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions