Removals may cause duplicate entries (at least on message reordering), making undoing them harder
Fast removals may cause duplicate entries, this can make it hard to get a good list of who was removed since there will be many entries shown:
- Operating System (Linux/Mac/Windows/iOS/Android): Linux
- Core Version: v2.22.0
- Client Version:2.22.0 (git: flathub)
Expected behavior
No duplicate entries when people are removed.
Actual behavior
Duplicate entries!
Steps to reproduce the problem
- Don't ask me what happened on the remover's end to trigger this, I have no idea.
Screenshots
see above.
Logs
The reason is apparently message reordering. First you received some message where K is already in the Chat-Group-Past-Members list instead of "To", then you received the actual message removing K so at this point Delta Chat knows who removed K and the "K removed by..." message is added. This was already discussed and i have no idea how to improve this, maybe some rewording in system messages may help. Maybe instead of "Member K removed." we should add smth like "K isn't a member anymore", at least this way the word "removed" wouldn't occur twice.
I think the expected behavior would be that once the second entry arrives, the two messages shown are merged into one.
Maybe. Anyway, we shalln't move the message that was already added to the chat (because if you sent some messages in between, it would be unclear if the removed member was added to recipients, actually -- no), so we should find it instead and change its text. Currently we don't have enough metadata to find it -- it's just a text system message, so this isn't easy. Anyway, i suggest this to be an enhancement, not a bug (until we know that the scenario is different, not the described known one)
I see people commonly confused about who was removed why and what even happened due to the wording of the "sourceless message". So it seems at least like a potentially more general UX problem, bug or not, even outside of the specific use case.