async fn set_fully_read(
services: &Services,
room_id: &RoomId,
user_id: &UserId,
event: &EventId,
allow_backward: bool,
) -> ResultExpand description
Stores event as the user’s fully-read marker unless that would move the
marker backwards.
The marker moves only when event sits strictly after the stored one or
either position does not resolve, so writes that arrive one after another
never move it back; two in flight at once are not ordered against each
other. MSC4446’s allow_backward skips the comparison. Positions compare on
the global counter, whichever room the event belongs to.