Right now MatrixRequest mixes both Matrix timeline work and non-Matrix tasks such as SearchRoomMembers, all running on the sliding-sync Tokio runtime. Per the earlier review, we should move toward having two explicit worker loops: one dedicated to Matrix sync/timeline requests and another for non-Matrix/background tasks (similar to the existing TSP worker). Track the architectural refactor to introduce separate queues/runtimes and reroute SearchRoomMembers (and any other general jobs) onto the general worker in a dedicated PR.