matrix-org / matrix-org/matrix-rust-sdk
unread counts: add support for threaded receipts
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 2.3k
- Forks
- 500
- Avg merge
- 1d 16h
- Merged PRs (30d)
- 106
Description
The PR https://github.com/matrix-org/matrix-rust-sdk/pull/3054 fixed a bug with implicit receipts where:
1. You receive a mention in a thread.
2. You reply to that thread in a different client (Element Web in my case).
3. You open the room in EX and the badge doesn't get cleared.
However, if we want to get the behaviour 100% right I believe the badge should be cleared as soon as the other client opens the thread (in fact, its own unread status is cleared in that client).
So the problem I see now is:
1. You receive a mention in a thread.
2. You open it in another client (EW?). The unread gets removed in this client.
3. The unread marker and the mention badge are still present in the EX client.
Opening the room in EX fixes the stuck unread and mention indicators, but it shouldn't be needed.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading PR 3054 and tracing how threaded receipts, unread markers, and mention badges are handled across clients. Reproduce the sequence described with Element Web and EX; done means EX clears the unread marker and mention badge when another client opens the thread, without requiring the room to be opened.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- backend, distributed-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100