В Discourse обнаружены расхождения в подсчёте решений: ранее учитывались темы и сообщения, которые уже были удалены.
До миграции мы указывали:
У Джона 27 решений, так как его сообщение отметили как решение 27 раз.
Эта информация хранилась в таблице UserActions.
После миграции мы теперь подсчитываем:
У Джона 20 решений, так как есть 20 тем, где его сообщения являются решениями.
Эта информация хранится в таблице SolvedTopics и имеет прямую ссылку на существующую, не удалённую тему.
Здесь есть тонкое различие: в первом случае не проводилась проверка на существование сообщения-решения или его темы.
Я уточню у нашей команды, какое число лучше отображать. Лично я склоняюсь к подсчёту решений только для тем, которые всё ещё существуют.