element-hq / element-hq/synapse
Forgotten messages should render as something less confusing than an empty string.
- Dominant language
- Python
- Stars
- 4.6k
- Forks
- 600
- Avg merge
- 5d 22h
- Merged PRs (30d)
- 51
Description
This issue has been migrated from [#6562](https://github.com/matrix-org/synapse/issues/6562).
---
Right now, forgotten messages are pruned en route to users who shouldn't be able to see them, but this just means that the content is replaced with `{}`.
As a result, Riot renders them as an empty string, which looks weird.
Could synapse stuff an indicator that the message has been forgotten into the event (outside of the `content` section to avoid users spoofing 'forgotten' events for whatever reason)?
I don't know if this needs speccing - my guess is 'maybe', since clients will want to rely on this to render forgotten messages correctly.
Contributor guide
Research direction
No files or tests are named. Start by tracing where Synapse prunes forgotten messages and how events are represented outside the content section; then check whether the indicator needs Matrix specification and client support. Done means forgotten events have an agreed, non-spoofable representation that clients can use instead of rendering an empty string.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend-api-design
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100