element-hq / element-hq/synapse

Forgotten messages should render as something less confusing than an empty string.

Open
#6,562 0 comments 0 reactions 0 assignees View on GitHub
T-Enhancement z-p2
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.