Не выдавать бейджи пользователям, которых не существует?

Полагаю, идентификаторы пользователей хранятся в таблице incoming_links. Эти записи не уничтожаются каскадно, а запрос для значка «Поделиться» лишь защищает от того, чтобы user_id в таблице incoming_links был NULL:

https://github.com/discourse/discourse/blob/main/lib/badge_queries.rb#L199

Значок «Первый шар» (First Share) должен иметь аналогичную ошибку:

https://github.com/discourse/discourse/blob/main/lib/badge_queries.rb#L64

3 лайка