Buchungs- und Zahlungsmails zuverlässig zustellen und alle zeitgesteuerten Aufgaben ohne In-Process-Timer erledigen.
Umgesetzt
Transaktionaler Postausgang (EmailMessage): gleiche Transaktion wie die Statusänderung, Versand danach, bis zu achtmal Wiederholung; Testausgang MAIL_TRANSPORT=file, in Produktion gesperrt
Endgültig abgelehnte Mails nicht wiederholen, keine Adressen im Log (c3fdfbd, 12.10.2026)
Nur Empfängerablehnungen (550, 551, 553, 556, 5.1.x) gelten als endgültig; Anmelde- und Richtlinienfehler werden wiederholt (34ccbc3)
Worker scripts/worker.ts als CronJob artista-modelcamp-worker alle 10 Minuten: abgelaufene Reservierungen mit Rückfrage bei Stripe, hängende SEPA-Zahlungen, fehlende Ratenpläne, Abgleich überfälliger Raten, Pläne stornierter Buchungen beenden, Zahlungsmethode trennen, Mails, Rate Limits aufräumen
Nicht zustellbare Mails im Admin-Dashboard
Offen
SMTP-Zugang, SPF, DKIM und DMARC der Absenderdomain; ob im Cluster bereits ein echter SMTP-Zugang eingetragen ist, ist im Repo nicht dokumentiert (siehe #22)
Grundlage
docs/BETRIEB.md Abschnitte 5 und 6, k8s/07-worker-cronjob.yaml, tests/email-outbox.integration.test.ts.
Status
Code: ja · Geprüft: ja · Gemergt: ja · Produktiv: ja (im Cluster belegt ausgerollt sha-5a88f3d am 13.10.2026)
Stand: 2026-10-16 (Quelle: git origin/main 9785eb2, Gitea-CI-Läufe und Registry, Memory der Sessions)
## Ziel
Buchungs- und Zahlungsmails zuverlässig zustellen und alle zeitgesteuerten Aufgaben ohne In-Process-Timer erledigen.
## Umgesetzt
- [x] Transaktionaler Postausgang (`EmailMessage`): gleiche Transaktion wie die Statusänderung, Versand danach, bis zu achtmal Wiederholung; Testausgang `MAIL_TRANSPORT=file`, in Produktion gesperrt
- [x] Endgültig abgelehnte Mails nicht wiederholen, keine Adressen im Log (`c3fdfbd`, 12.10.2026)
- [x] Nur Empfängerablehnungen (550, 551, 553, 556, 5.1.x) gelten als endgültig; Anmelde- und Richtlinienfehler werden wiederholt (`34ccbc3`)
- [x] Worker `scripts/worker.ts` als CronJob `artista-modelcamp-worker` alle 10 Minuten: abgelaufene Reservierungen mit Rückfrage bei Stripe, hängende SEPA-Zahlungen, fehlende Ratenpläne, Abgleich überfälliger Raten, Pläne stornierter Buchungen beenden, Zahlungsmethode trennen, Mails, Rate Limits aufräumen
- [x] Nicht zustellbare Mails im Admin-Dashboard
## Offen
- [ ] SMTP-Zugang, SPF, DKIM und DMARC der Absenderdomain; ob im Cluster bereits ein echter SMTP-Zugang eingetragen ist, ist im Repo nicht dokumentiert (siehe #22)
## Grundlage
`docs/BETRIEB.md` Abschnitte 5 und 6, `k8s/07-worker-cronjob.yaml`, `tests/email-outbox.integration.test.ts`.
## Status
Code: ja · Geprüft: ja · Gemergt: ja · Produktiv: ja (im Cluster belegt ausgerollt sha-5a88f3d am 13.10.2026)
Stand: 2026-10-16 (Quelle: git origin/main 9785eb2, Gitea-CI-Läufe und Registry, Memory der Sessions)
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Ziel
Buchungs- und Zahlungsmails zuverlässig zustellen und alle zeitgesteuerten Aufgaben ohne In-Process-Timer erledigen.
Umgesetzt
EmailMessage): gleiche Transaktion wie die Statusänderung, Versand danach, bis zu achtmal Wiederholung; TestausgangMAIL_TRANSPORT=file, in Produktion gesperrtc3fdfbd, 12.10.2026)34ccbc3)scripts/worker.tsals CronJobartista-modelcamp-workeralle 10 Minuten: abgelaufene Reservierungen mit Rückfrage bei Stripe, hängende SEPA-Zahlungen, fehlende Ratenpläne, Abgleich überfälliger Raten, Pläne stornierter Buchungen beenden, Zahlungsmethode trennen, Mails, Rate Limits aufräumenOffen
Grundlage
docs/BETRIEB.mdAbschnitte 5 und 6,k8s/07-worker-cronjob.yaml,tests/email-outbox.integration.test.ts.Status
Code: ja · Geprüft: ja · Gemergt: ja · Produktiv: ja (im Cluster belegt ausgerollt sha-5a88f3d am 13.10.2026)
Stand: 2026-10-16 (Quelle: git origin/main
9785eb2, Gitea-CI-Läufe und Registry, Memory der Sessions)