Bug or bot? A 'new' user showing as read a lot of posts

It’s probably possible to tweak how those read counts are counted to use the post_timings table instead, similar to how “topics viewed” are calculated in this query (as opposed to posts_read, which suffers from the same issue, currently):

tv as (
 select user_id, 
        count(distinct(topic_id)) as topics_viewed
  from topic_views, t
  where viewed_at > t.start
  and viewed_at < t.end
  group by user_id
),

(In addition a minimum on the time viewed to count as “read” could be factored in).

I realize this probably isn’t something that you’d want to “just do” since there are likely performance considerations to consider. Just thinking aloud about possible ways out in the future.