Aggiornamento / Passaggi di Riproduzione (Discourse 3.6)
Ho eseguito una riproduzione esplicita di questo problema utilizzando la console Rails per confermare cosa sta succedendo a livello di job. Ecco cosa vediamo per l’utente interessato:
sito: hvac
ora: 2025-10-15 17:23:01 UTC
disabilita_email: “no”
disabilita_email_digest: false
frequenza_minuti_digest_email_predefinita: 10080
ENV_DISABILITA_EMAIL: nil
esegui_consegne: nil
indirizzo_smtp: “smtp.netcorecloud.net”
porta_smtp: 587
– UTENTE –
id: 42122
username: milnerlarry
attivo: true
sospeso: false
email_digest: true
minuti_ammissibili_per_tempo: 10080
– ULTIMI 15 LOG EMAIL –
2025-10-01 | type=digest | bounced=false
2025-09-22 | type=digest | bounced=false
esegui_consegne_ora: true
Quindi, quando ho forzato la creazione manuale del digest, Discourse pensa di crearlo ma restituisce:
mail = UserNotifications.digest(u)
=> Mail digest creata: subject=nil bytes=50
Quindi Discourse pensa di creare il digest, ma in realtà è vuoto (subject=nil) — e quindi viene silenziosamente saltato quando il job viene eseguito. Non viene creata alcuna voce in EmailLog e non viene inviato nulla.
Questo conferma:
- Il job viene accodato con successo
- SMTP e le consegne sono abilitati
- Il job di digest termina senza errori perché il mailer restituisce un digest vuoto
L’esecuzione del job inline con:
Jobs::UserEmail.new.execute(“type” => “digest”, “user_id” => u.id”)
produce lo stesso risultato — nessuna nuova riga in EmailLog creata.
Possibile Causa:
Sembra che il digest venga saltato a causa di una condizione di “digest vuoto” — forse qualcosa è cambiato nel modo in cui Discourse 3.6 valuta il contenuto da includere. La visualizzazione Admin → Emails → Digest Test visualizza correttamente il digest, ma il job in background non vede nulla da includere.
Riepilogo:
Utente idoneo
Email attiva + SMTP valido
Admin Digest Test viene visualizzato correttamente
Job di digest in background saltato silenziosamente (digest vuoto)
Nessun tentativo di registrazione o invio di EmailLog registrato
Mi piacerebbe una conferma dal team — c’è forse una regressione nel modo in cui UserNotifications.digest raccoglie il contenuto in 3.6?