Ja, ich habe das gerade auf meiner lokalen Entwicklungsumgebung getestet und stelle dasselbe fest. Ich denke, das Problem liegt in der Logik, die hier verwendet wird:
Wenn man diese Zeile in topics = topics.where("topics.category_id NOT IN (?)", remove_category_ids) ändert, scheint das Problem mit den Kategorien, die in der Einstellung digest_suppress_categories hinzugefügt wurden, behoben zu sein. Allerdings muss noch eine Logik für die Behandlung von stummgeschalteten Kategorien hinzugefügt werden. Vielleicht so etwas wie:
topics = topics.where("topics.category_id NOT IN (?)", remove_category_ids).where("topic_users.notification_level != (?)", TopicUser.notification_levels[:muted])