Open Hywan opened 1 month ago
For reference, we've currently opted for the simple solution of including all rooms. I've asked previously about whether is_tombstoned
matters with no response.
I assume you're actually after the include_old_rooms
functionality vs an is_tombstoned
filter which is specifically called out as something we shouldn't do in the spec. There is an important distinction between the two, include_old_rooms
makes it so that when a room is upgraded, it doesn't suddenly disappear if you haven't joined the successor yet.
When include_old_rooms
is implemented, the default is to not include old rooms. And if you want to include old rooms, you can request them by adding the include_old_rooms
option. The only way to tell old rooms apart from other rooms is by requesting m.room.tombstone
in the required_state
and checking it.
{
"lists": {
"foo-list": {
"ranges": [ [0,99] ],
"required_state": [],
"timeline_limit": 10,
"include_old_rooms": {
"timeline_limit": 1,
"required_state": [ ["m.room.tombstone", ""], ["m.room.create", ""] ],
}
}
}
}
But you can mimic this same functionality today by requesting "required_state": [ ["m.room.tombstone", ""] ]
and doing the same checks yourself on the client.
This is currently prioritized under a "nice to have" in the project board.
I've fixed my description… we need is_tombstoned: false
, not true
. The problem we have is that some users see old rooms that are tombstoned. Since the is_tombstoned
filter has been removed, we can no longer control this.
In https://github.com/element-hq/element-x-ios/issues/3105, the user sees tombstoned rooms. We may filter them out on the client side, but it makes no sense to receive them at first.
Description
Sliding Sync has default filter.
is_tombstoned: false
should be part of them.Context https://github.com/element-hq/element-x-ios/issues/3105
Steps to reproduce
See https://github.com/element-hq/element-x-ios/issues/3105
Homeserver
matrix.org
Synapse Version
1.113.0rc1 (b=matrix-org-hotfixes,4907b7d459)
Installation Method
I don't know
Database
I don't know.
Workers
I don't know
Platform
I don't know.
Configuration
No response
Relevant log output
Anything else that would be useful to know?
No response