Спасибо, что откликнулись на это, @Stephen.
Я думаю, это очень специфично для конкретного сообщества
Я согласен. Вот почему я предлагаю управлять этим через флажок в настройках (либо переиспользуя один из существующих, касающихся запрета дублирующихся заголовков, либо добавив новый).
В чём ценность наличия меньшего количества гораздо более длинных тем?
Для контекста: на нашем сайте Discourse есть категория «Уведомления», подкатегории которой получают письма, отправляемые скриптами при наступлении определённых событий (например, сбои тестирования, новые созданные задачи, новые вопросы на Stack Overflow, новые упоминания нашего проекта на дискуссионных площадках и т. д.). Эти категории предназначены для того, чтобы участники сообщества могли отслеживать и обсуждать определённые типы событий, которые их интересуют.
В некоторых случаях письма, генерируемые нашими скриптами, имеют предсказуемые, детерминированные темы по дизайну, например «linux64 testing». Например, если 15 августа у нас возник новый сбой в тестировании linux64, это порождает письмо. Если 16 августа добавляются новые сбои, генерируется второе письмо с тем же заголовком. Затем, если 17 августа все сбои устранены, генерируется третье письмо с тем же заголовком, указывающее на решение. Далее, если 31 августа появляются новые сбои, создаётся четвёртое письмо с тем же заголовком, и пятое — при их устранении.
При текущем поведении сайта каждое такое письмо создаёт совершенно новую тему с названием «linux64 testing» без какой-либо связи или отношения между ними, что затрудняет для людей корреляцию событий или решение, какую из пяти тем использовать для последующего обсуждения сбоев. В то время как мы хотели бы, чтобы все пять писем (и любые обсуждения пользователей, возникшие по их поводу) отображались как посты в рамках одной темы, чтобы разработчик мог увидеть все сбои тестирования в данной конфигурации в одной теме, организованные хронологически.
Другое последствие текущего поведения Discourse заключается в том, что человек, получающий уведомления по электронной почте для данной категории или темы, видит в своём почтовом ящике пять несвязанных потоков с названием «linux64 testing». В то время как если бы Discourse объединял их в одну тему, этот человек видел бы все посты «linux64 testing», связанные как единый поток в своём почтовом клиенте, что значительно упрощает навигацию и делает процесс более похожим на традиционное общение.
Мы запускаем несколько десятков конфигураций тестирования каждую ночь, и каждая из них имеет уникальный заголовок при возникновении сбоев, поэтому текущая ситуация приводит к чему-то вроде запутанного хаоса, в котором трудно ориентироваться: отдельная поверхностная тема на каждое письмо, все они перемешаны в хронологическом порядке. В то время как наша идеальная модель — чтобы категория «Notifications.Tests» показывала одну тему на конфигурацию, в которой хранятся все посты (сгенерированные людьми или скриптами) об этой конфигурации, упорядоченные хронологически и определяемые этим уникальным заголовком.
[Эта категория тестирования в настоящее время не видна публично на нашем сайте, @Stephen, но если вы хотите увидеть, как это выглядит, и прочувствовать проблему на себе, я с радостью временно предоставлю вам доступ для чтения… просто дайте мне знать.]
Для сообществ, подобных meta, это означало бы, что любой пользователь, написавший по электронной почте с запросом «проблемы с настройкой Mailgun», будет продолжать получать уведомления об обновлениях через месяцы или годы после решения своей проблемы.
Я согласен, что такой выбор может быть не столь разумным для такого большого и долгоживущего сообщества, как meta, у которого нет необходимости агрегировать посты, генерируемые письмами, в одну тему, как это делаем мы. Поэтому, вероятно, вы не захотели бы активировать такую функцию, если бы она существовала. (И возможно, со временем и наш сайт тоже не захочет её использовать по тем же причинам; в таком случае, я считаю, идеальным было бы возможность применять флажок на уровне каждой категории, но я не хотел просить слишком многого, поскольку полагаю, что на данный момент достаточно одного общесайтового параметра).
Тем не менее, даже если такой сайт, как наш, активировал бы эту функцию, и автор оригинального поста темы «проблемы с настройкой Mailgun» был бы раздражён последующими постами с тем же заголовком, предположительно он мог бы отписаться от темы, чтобы перестать получать обновления, если/когда кто-то другой использует тот же заголовок (или просто добавит ещё один пост в данную тему через веб-интерфейс)?
[Тем не менее, я ожидаю, что большинство пользователей будут публиковать посты через веб-сайт, поэтому представляю, что эта функция окажет большее влияние на посты, генерируемые скриптами, чем на те, что создаются людьми]