Include complete digest batches and validate email transport outcomes

This commit is contained in:
2026-09-06 13:01:18 +03:00
parent 4c4ba0c4c8
commit cbfdd072d1
4 changed files with 40 additions and 8 deletions
+7
View File
@@ -807,3 +807,10 @@ Taslak türü seçicisine erişilebilir ad eklendi. Üretim derlemesi geçti. Ö
- Süresi geçmiş, iptal/sonuç/arşiv ve tarih-saati doğrulanamayan ilanlar yeni ihale e-postasına alınmaz. Aynı süreçte üst üste başlayan turlar için çalışma kilidi eklendi.
- 181 otomatik test geçti. Kontrollü sağlayıcı hatası→hiçbir işaretleme, 28 kayıt→25+3 dağılımı, başlangıçta gönderim olmaması, 450+ kayıt geçmişi ve eşzamanlı tur koruması test edildi. Gerçek e-posta gönderilmedi.
- Sağlayıcının e-postayı kabul edip yerel kayıt öncesi süreç kapanması halinde tekrar gönderim ihtimali sürer; çok süreçli gönderim kilidi ve Telegram için ayrı teslim kuyruğu henüz yok. Bu çalışma dış teslim/eksiksiz outbox kabulü değildir.
### E-posta gövdesi ve taşıma doğrulaması — 6 Eylül 2026
- Ek bulgu: notifier 25 kaydı seçse bile tenderDigestHtml kendi içinde 15 kayda kesiyordu. Şablonun gizli sınırı kaldırıldı; seçilen tüm kayıtlar gövdeye giriyor. 25+3 dağılım testi artık gerçek HTML şablonunda 24./27. indeksli son kayıtları da kontrol ediyor.
- sendEmail 30 saniyelik fetch sınırı, sabitlenebilir from alanı ve isteğe bağlı Idempotency-Key desteği aldı. HTTP başarılı olsa bile sağlayıcı gönderim id'si yoksa belirsiz sonuç hatası oluşur.
- Resend belgelerine göre idempotency anahtarları 24 saat tutulur: https://resend.com/docs/dashboard/emails/idempotency-keys . Bu nedenle kalıcı kuyruğun süresi dolan belirsiz işi sessizce yeniden göndermemesi gerekir.
- 183 otomatik test geçti. Gövdenin 25 kaydı kapsaması, HTML kaçırma, gönderici/anahtar aktarımı ve eksik gönderim kimliği hatası kontrollü testlerle doğrulandı. Gerçek e-posta gönderilmedi.
- Anahtar desteği henüz notifier'ın kalıcı gönderim kaydına bağlanmadı; kalıcı outbox işi açık. Bu değişiklik tekrar gönderimin bütünüyle önlendiği anlamına gelmez.