Недавно я настроил экземпляр Discourse для размещения комментариев к блогу. Когда кто-то публикует первый комментарий, встроенный блок комментариев отображает «2 ответа». Прежде чем вы спросите, это не потому, что исходный пост засчитывается как ответ. Это было исправлено уже давно. Вместо этого проблема, похоже, заключается в автоматическом уведомлении о перечислении:
Поскольку каждая тема с комментариями к записи блога начинается как невидимая, первый комментарий каждого поста делает тему невидимой, что, в свою очередь, засчитывается как ответ.
Поэтому я думаю, что исправление должно быть ближе к этому pull-запросу, который исключает малые действия при подсчёте ответов на сообщения. Перечисление темы — это post_type 3, что является small_action.
Кстати, счётчик ответов также неверен при просмотре списков тем, но это не так очевидно, поскольку вы не видите одновременно счётчик и ответы. А если посмотреть на саму тему, нетрудно понять, что учитывается уведомление о перечислении. Но когда вы просматриваете первые несколько комментариев к записи блога, довольно очевидно, что что-то не так, потому что вы видите и счётчик, и ответы в одном месте. (К счастью, уведомление о перечислении не отображается.)
Количество ответов, которое вы видите во встроенном списке тем, рассчитывается тем же кодом, что и счётчик ответов в списке тем Discourse, поэтому, возможно, нужно исправить обе проблемы. Не уверен, намеренно ли включаются посты с действиями модераторов в счётчик ответов в списке тем Discourse. Включение постов модераторов в счётчик ответов для встроенных тем определённо неверно — особенно учитывая, что первый ответ во всех встроенных темах теперь является постом модератора.
Чтобы увидеть примеры того, как посты модераторов включаются в счётчик ответов в списках тем, посмотрите этот список тем: https://meta.discourse.org/?status=closed. Пост, создаваемый при закрытии темы, всегда учитывается как ответ. Возможно, следует учитывать только обычные посты.
На всякий случай: я удалял эти ответы «Listed». Насколько я могу судить, в случае комментариев к блокам это просто шум, поскольку каждая тема либо будет скрыта, либо будет содержать уведомление. Если есть причина их учитывать, возможно, лучшим решением будет автоматически удалять их из комментариев к блокам. (У меня пока нет патча для этого, поэтому я не знаю, насколько это сложно.)
Да, странно, что посты с мелкими действиями засчитываются как ответы. Есть ещё одна ошибка, связанная с этим: если первый ответ во встроенной теме — это пост с мелким действием, это ломает встроенный HTML, и ссылка на связанную тему Discourse не отображается. Мы сейчас работаем над исправлением обеих этих проблем.