Отсутствуют события пользователя вебхука — задумано или упущение?

Существует ряд действий, которые, как я ожидал (и хотел бы), должны генерировать события user вебхука, но этого не происходит. Прежде чем я начну создавать отчёты об ошибках (или отправлять pull-запросы), я хотел бы лучше понять причины этого.

действие ожидаемое событие user
аккаунт деактивирован администратором user_logged_out
аккаунт анонимизирован администратором user_logged_out
пользователь вышел сам через кнопку «Выйти из всех» user_logged_out
добавлен в группу user_updated
удалён из группы user_updated
уровень доверия повышен/понижен user_updated
статус модератора предоставлен/отозван user_updated
статус администратора предоставлен/отозван user_updated
снято приостановление user_updated
наложен/снят запрет на публикации user_updated
  • Первые три действия приводят к глобальному выходу пользователя со всех сессий (аннулирование всех сессий), но, в отличие от других подобных действий (например, выход пользователя, инициированный администратором), эти три не генерируют событие user/user_logged_out (или какое-либо другое событие).
  • Добавление или удаление из группы генерирует событие group_user, но не событие user. События group_user сами по себе не очень полезны, так как содержат только внутренние числовые идентификаторы групп и пользователей. С другой стороны, запись "user", отправляемая при событии user, содержит действительно полезную информацию обо всех группах, к которым принадлежит пользователь, включая названия групп и детали отношений пользователя с этими группами.
  • При повышении уровня доверия пользователя генерируется событие user_promoted, которое содержит данные, очень похожие, но не идентичные данным события user. При понижении уровня доверия аналогичное событие не генерируется вообще.
  • При изменении статуса модератора или администратора события user не генерируются. (Косвенные доказательства действий предоставления статуса для конкретного пользователя можно найти в событиях group_user; прямых доказательств действий отзыва статуса для конкретного пользователя нет.)
  • При приостановлении аккаунта пользователя генерируется событие user/user_logged_out (с полями "suspended_reason" и "suspended_till", указывающими причину и срок приостановления), но события нет при снятии приостановления. При наложении или снятии запрета на публикации события вообще не генерируются.

Являются ли эти упущения преднамеренными?

Мой общий подход таков: «Если данные в записи "user" события user изменились, то должно быть сгенерировано событие user». Это, вероятно, охватывает больше ситуаций, чем те, которые сейчас вызывают события. Однако те несколько случаев, которые я перечислил в таблице выше, являются для меня наиболее важными на данный момент, поскольку все они связаны с изменениями в статусе авторизации пользователя.

5 лайков