Estimando o tempo de leitura histórico para uma importação grande de fórum

Estou no processo de migrar um fórum legado com cerca de 1,3 milhão de posts e duas décadas de história para o Discourse.

O que gostaria de evitar é que todos os usuários mostrem 0 minutos de leitura desde o início após a migração bem-sucedida, já que muitos têm 5, 10 e alguns até mais de 15 anos de histórico.

Com a ênfase do Discourse no tempo de leitura (o que é ótimo, na minha opinião), seria bom poder fazer um cálculo aproximado dessa estatística para usuários com histórico significativo, para que não sintam que o relógio foi reiniciado em relação às suas contribuições após a migração. (Embora a gamificação possa ser uma grande fonte de inspiração e motivação, também pode desmotivar quando estatísticas das quais os usuários se orgulham são zeradas.)

Sei que não há uma maneira perfeita de exibir dados que nunca foram rastreados anteriormente, mas existe algum script que eu possa executar ou talvez algo que possa ser adicionado a um script de importação para estimar, essencialmente, o tempo de leitura histórico de um usuário com base na sua contagem atual de posts?

Algo como:

PostCount = SELECT posts_count FROM posts WHERE id = (ID do usuário atual sendo importado)

ReadTimePerPost = 300 (segundos)

RetroactiveReadTime = PostCount * ReadTimePerPost

Seria teoricamente possível fazer isso e depois inserir esse número no banco de dados vinculado a cada usuário?

Se sim, onde e como o tempo de leitura é armazenado?

E, a propósito, atribuir a cada post um valor de 300 segundos de tempo de leitura é apenas minha estimativa. Honestamente, provavelmente é muito baixo, considerando tudo, mas muito mais preciso do que 0.

Acho que eu faria algo assim

Post.where(user_id: user.id).where(some other stuff?).each do |post|
  PostTiming.create(topic_id: post.topic_id, post_number: post.post_number, user_id: user.id, msecs: READ_TIME_MSECS
end

Se estou fazendo a conta corretamente, 300 segundos são 5 minutos. Você acha que levou 5 minutos para ler e responder a este post?

Ainda não tive tempo de pensar nos detalhes do cronograma. O que eu estava pensando é que o tempo de leitura tecnicamente não considera apenas os momentos em que uma postagem resultou da leitura. Muitas pessoas leem bastante e passam muito tempo apenas folheando, o que não seria levado em conta de forma alguma com base apenas no tempo necessário para ler e postar.

Dito isso, prefiro subestimar a superestimar.

Já fiz dezenas de importações. Ninguém nunca pediu para inventar tempos de leitura falsos. Aposto que as pessoas saberão que as estatísticas começam a partir do momento em que você migrou para o Discourse.

Um uso muito mais valioso do seu tempo é provavelmente identificar qual limite automático você deve usar para conceder o nível TL2 a usuários importados e selecionar manualmente as pessoas da sua comunidade em quem você confia para ter bom julgamento quanto a títulos e categorização para começarem como TL3.

A promoção para TL é o uso principal das estatísticas de tempo de leitura que poderiam plausivelmente importar para uma importação.