# Les e-mails de notification de sujet ne sont pas envoyés si une couleur de membre du personnel est ajoutée au message

**URL:** https://meta.discourse.org/t/topic-notifications-emails-are-not-being-sent-if-adding-a-staff-colour-to-the-post/370857
**Category:** Bug
**Created:** [Juin 19, 2025, 12:02 UTC](https://meta.discourse.org/t/topic-notifications-emails-are-not-being-sent-if-adding-a-staff-colour-to-the-post/370857 "2025-06-19T12:02:54Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![Richie](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/richie/32/115110_2.png) [@Richie](https://meta.discourse.org/u/Richie)
#### Post date: [Juin 19, 2025, 12:02 UTC](https://meta.discourse.org/t/topic-notifications-emails-are-not-being-sent-if-adding-a-staff-colour-to-the-post/370857/1 "2025-06-19T12:02:55Z")

</div>

Actuellement en cours d’exécution Discourse 3.5.0.beta7-dev ([7562bc2b15](https://github.com/discourse/discourse/commits/7562bc2b158783d37107ec21d6c19cb7aabf1092))

Les e-mails de notification de sujet ne sont pas envoyés lors de la planification de la publication d’un message dans certaines conditions.

Nous avons rencontré un bug très inhabituel et, bien que nous utilisions la dernière version, cela s’est produit plusieurs fois ces derniers mois, le problème existe donc depuis un certain temps.

Nous avons une catégorie appelée `#Announcements` et chaque utilisateur est défini par défaut sur `Regarder le premier message`.

 ![Screenshot 2025-06-19 at 12.47.16](https://global.discourse-cdn.com/meta/original/4X/b/4/2/b4282225fdafc41ceb616e3c49af24b292c5e31c.png)

Nos étapes pour reproduire le problème :

1. Composer un nouveau sujet dans une catégorie cachée réservée au personnel
2. Appliquer une couleur de personnel au premier message du nouveau sujet
3. Définir un minuteur de sujet, Planifier la publication, définir la catégorie sur `#Announcements` et définir l’heure/la date

Ce qui devrait se passer :

- Le sujet passe de `#staff` à `#Announcements`
- Des dizaines de milliers d’e-mails sont envoyés
- Chaque utilisateur reçoit une notification

Ce qui se passe :

- Le sujet passe de `#staff` à `#Announcements`
- **Aucun e-mail n’est envoyé**
- Chaque utilisateur reçoit une notification

* * *

En attendant l’heure de publication programmée, j’ai pu voir ces deux tâches en attente (filtrées par l’ID du message) :

 ![Screenshot 2025-06-19 at 11.17.42](https://global.discourse-cdn.com/meta/original/4X/f/a/a/faad6da313164708a8e11863916218d6c269767d.jpeg)

Dix minutes plus tard, lorsque le sujet a été publié dans `#Announcements`, les tâches ont disparu :

 ![Screenshot 2025-06-19 at 11.31.38](https://global.discourse-cdn.com/meta/original/4X/7/e/c/7ecbd3695566000315869c367b14bef1f8c0771e.jpeg)

 ![Screenshot 2025-06-19 at 11.33.31](https://global.discourse-cdn.com/meta/original/4X/8/c/3/8c3a2f8edeb22edf30877e9e3f740a03a863604b.jpeg)

Les notifications ont été envoyées, voici ce qu’un compte de test a reçu :

 ![Screenshot 2025-06-19 at 12.44.52](https://global.discourse-cdn.com/meta/original/4X/8/5/7/857da3b8c45e3d395fb5914fbec1118228054369.png)

Mais aucun e-mail n’a été envoyé.

Habituellement, à ce stade, nous voyons _des dizaines de milliers_ d’e-mails commencer à se mettre en file d’attente dans `Scheduled` et à passer progressivement à `Enqueued`, mais rien ne se passe, zéro e-mail n’est envoyé.

Il n’y a rien non plus dans les journaux d’erreurs de Discourse.

Les messages contenaient un sondage, mais je soupçonne que le contenu du message n’est pas pertinent, cependant, je le mentionne ici au cas où le sondage aurait également une pertinence.

Le test d’aujourd’hui qui a échoué peut être trouvé ici si cela peut aider quelqu’un : `https://greyarro.ws/t/do-you-own-a-drone-thats-not-on-the-what-do-you-fly-list/98146.json`

La clé de cet échec semble être causée par l’action d’ajouter une couleur de personnel au premier message du sujet dont la publication est programmée.

Tous les autres messages dont la publication est programmée et qui n’ont pas de couleur de personnel sont envoyés par e-mail sans problème, l’ajout d’une couleur de personnel fait échouer le processus à chaque fois.

---

<div class="post-metadata">

### Author: ![JammyDodger](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jammydodger/32/254611_2.png) [@JammyDodger](https://meta.discourse.org/u/JammyDodger)
#### Post date: [Juin 20, 2025, 7:20 UTC](https://meta.discourse.org/t/topic-notifications-emails-are-not-being-sent-if-adding-a-staff-colour-to-the-post/370857/2 "2025-06-20T19:20:17Z")

</div>

Je peux reproduire ceci. ✋

Mes étapes de base :

- Ajustez la `fenêtre de temps des e-mails` à 1 minute (facultatif, mais accélère les choses)
- En tant qu’administrateur, assurez-vous que l’utilisateur test regarde le premier message pour une catégorie test
- En tant qu’administrateur, créez un sujet dans la catégorie #Staff
- Utilisez la clé à molette pour ajouter la couleur du personnel au premier(/unique) message
- Réglez le minuteur du sujet pour programmer la publication dans la catégorie test dans 1 minute
- Faites un petit rêve d’évasion sur la glace et attendez que le sujet soit publié et qu’une minute supplémentaire s’écoule pour couvrir la fenêtre d’e-mail
- En tant qu’administrateur, vérifiez les notifications de l’utilisateur test, puis vérifiez les journaux d’e-mails du site

**Résultat attendu :** l’utilisateur test reçoit une notification concernant le sujet programmé et un journal d’e-mail est présent, signifiant qu’une notification par e-mail a été envoyée.

**Résultat actuel :** l’utilisateur test reçoit une notification sur le site mais aucun e-mail n’est envoyé.

(J’ai également effectué ce test sans l’étape de couleur du personnel comme contrôle. Tout fonctionnait bien. Les notifications sur le site et par e-mail ont été envoyées)

Est-ce que cela a quelque chose à voir avec le fait que la couleur du personnel ajuste le `post_type` à ‘2’ (action\_modérateur) et que cela n’est pas pris en compte dans le code ?

> <https://github.com/discourse/discourse/blob/f4bdd2f6e7ebf651994807657680faf917ec1b93/app/services/notification_emailer.rb#L78-L78>

---

<div class="post-metadata">

### Author: ![Richie](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/richie/32/115110_2.png) [@Richie](https://meta.discourse.org/u/Richie)
#### Post date: [Juin 21, 2025, 7:00 UTC](https://meta.discourse.org/t/topic-notifications-emails-are-not-being-sent-if-adding-a-staff-colour-to-the-post/370857/3 "2025-06-21T07:00:00Z")

</div>

> [@JammyDodger](#):
>
> Fais un petit rêve éveillé de glace

J’ai su que j’oublierais une des étapes de reproduction 🤣

C’est une observation intéressante :

> [@JammyDodger](#):
>
> la couleur du personnel ajustant le post\_type à ‘2’

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [Juin 22, 2025, 11:57 UTC](https://meta.discourse.org/t/topic-notifications-emails-are-not-being-sent-if-adding-a-staff-colour-to-the-post/370857/4 "2025-06-22T23:57:47Z")

</div>

Oui, une fois que vous transformez un post en post de staff, il devient `Post.types[:moderator_action]`, je pense que nous devrions notifier ici, l’omission semble être une erreur.

Ajout d’un pri-medium (dans les 4 prochaines semaines) pour que l’équipe puisse examiner.

---

<div class="post-metadata">

### Author: ![Richie](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/richie/32/115110_2.png) [@Richie](https://meta.discourse.org/u/Richie)
#### Post date: [Juin 23, 2025, 10:40 UTC](https://meta.discourse.org/t/topic-notifications-emails-are-not-being-sent-if-adding-a-staff-colour-to-the-post/370857/5 "2025-06-23T10:40:57Z")

</div>

> [@sam](#):
>
> Je pense que nous devrions le signaler ici

Par curiosité, le fait de répondre à un utilisateur et de définir une couleur de personnel sur la réponse empêche-t-il également l’envoi de la notification par e-mail à cet utilisateur ?

---

<div class="post-metadata">

### Author: ![zogstrip](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/zogstrip/32/512781_2.png) [@zogstrip](https://meta.discourse.org/u/zogstrip)
#### Post date: [Février 11, 2026, 10:27 UTC](https://meta.discourse.org/t/topic-notifications-emails-are-not-being-sent-if-adding-a-staff-colour-to-the-post/370857/6 "2026-02-11T10:27:00Z")

</div>

> [@sam](#):
>
> Ajouté une priorité moyenne (dans les 4 prochaines semaines) pour que l’équipe puisse y jeter un œil.

Mieux vaut tard que jamais ?! 😅

> <https://github.com/discourse/discourse/pull/37712>
>
> When a staff member applies "Staff Colour" to a post, it changes \`post\_type\` fro…m \`regular\` (1) to \`moderator\_action\` (2). The \`NotificationEmailer\` only sent emails for \`regular\` and \`whisper\` post types, so staff-coloured posts silently skipped email delivery. The same issue affected \`PostAlerter\`'s \`@here\` mention expansion which also filtered on post type.
> 
> This is safe to fix because the only two places that needed updating are \`NotificationEmailer::EMAILABLE\_POST\_TYPES\` and
> \`PostAlerter#expand\_here\_mention\`. System-generated moderator posts (close/split/merge) never reach this code — \`PostJobsEnqueuer\` skips them via \`skip\_after\_create?\`, so they never generate the notification types that flow through \`NotificationEmailer\`. Similarly, system moderator posts don't contain \`@here\` mentions, so adding \`moderator\_action\` to \`expand\_here\_mention\` is equally safe.
> 
> https://meta.discourse.org/t/370857

---

<div class="post-metadata">

### Author: ![Richie](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/richie/32/115110_2.png) [@Richie](https://meta.discourse.org/u/Richie)
#### Post date: [Février 11, 2026, 10:53 UTC](https://meta.discourse.org/t/topic-notifications-emails-are-not-being-sent-if-adding-a-staff-colour-to-the-post/370857/8 "2026-02-11T10:53:53Z")

</div>

> [@zogstrip](#):
>
> Mieux vaut tard que jamais ?

Bien sûr, que sont quelques semaines entre amis 🙂

Puis-je juste confirmer que cette correction résoudra ce scénario ?

> [@Richie](#):
>
> Nos étapes pour reproduire le problème :
> 
> 1. Composer un nouveau sujet dans une catégorie masquée réservée au personnel
> 2. Appliquer une couleur de personnel au premier message du nouveau sujet
> 3. Définir une minuterie de sujet, Planifier la publication, définir la catégorie sur `#Announcements` et définir l’heure/la date
> 
> Ce qui devrait se passer :
> 
> - Le sujet passe de `#staff` à `#Announcements`
> - Des dizaines de milliers d’e-mails sont envoyés
> - Chaque utilisateur reçoit une notification
> 
> Ce qui se passe :
> 
> - Le sujet passe de `#staff` à `#Announcements`
> - **Aucun e-mail n’est envoyé**
> - Chaque utilisateur reçoit une notification

---

<div class="post-metadata">

### Author: ![zogstrip](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/zogstrip/32/512781_2.png) [@zogstrip](https://meta.discourse.org/u/zogstrip)
#### Post date: [Février 14, 2026, 7:00 UTC](https://meta.discourse.org/t/topic-notifications-emails-are-not-being-sent-if-adding-a-staff-colour-to-the-post/370857/10 "2026-02-14T07:00:36Z")

</div>

Ce sujet a été automatiquement fermé après 2 jours. Les nouvelles réponses ne sont plus autorisées.
