Penso che gli ID utente risiedano nella tabella incoming_links. Quei record non vengono distrutti in modo dipendente, e la query del badge di condivisione protegge solo contro il fatto che user_id sia null nella tabella incoming_links:
https://github.com/discourse/discourse/blob/main/lib/badge_queries.rb#L199
Anche il badge Primo Condivisione dovrebbe avere un bug simile:
https://github.com/discourse/discourse/blob/main/lib/badge_queries.rb#L64