Guard startup scheduler calls against unhandled promise rejections; v2.0.42
Publish Container / docker (push) Successful in 14m48s

Replace bare `void fn()` with `fn().catch(err => console.error(...))` for all
four startup-time scheduler invocations so an unexpected rejection cannot
crash the Node.js process (which exits on unhandled rejections in v15+).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
nmemmertandClaude Sonnet 4.6 committed 2026-09-22 08:10:58 -04:00
1 parent 8ba300eddc
commit 6621c45be8
2 files changed
+13 -5

No files matched your search

+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "siteforge",
"private": true,
"version": "2.0.41",
"version": "2.0.42",
"type": "module",
"scripts": {
"dev": "vite",
+12 -4
View File
@@ -191,7 +191,9 @@ Promise.all([
console.error('[study-reminders] failed to schedule reminders:', err)
})
}, 60 * 60 * 1000)
void scheduleStudyReminders(sendStudyReminderEmail)
scheduleStudyReminders(sendStudyReminderEmail).catch(err => {
console.error('[study-reminders] failed to schedule reminders:', err)
})
// Send re-engagement emails to inactive study users every hour
setInterval(() => {
@@ -199,7 +201,9 @@ Promise.all([
console.error('[study-reengagement] failed to schedule emails:', err)
})
}, 60 * 60 * 1000)
void scheduleReengagementEmails(sendStudyReengagementEmail)
scheduleReengagementEmails(sendStudyReengagementEmail).catch(err => {
console.error('[study-reengagement] failed to schedule emails:', err)
})
// Send weekly lesson digest emails every hour (only actually fires every 7 days per user)
setInterval(() => {
@@ -207,7 +211,9 @@ Promise.all([
console.error('[study-digest] failed to schedule weekly digest:', err)
})
}, 60 * 60 * 1000)
void scheduleWeeklyDigestEmails(sendStudyWeeklyDigestEmail)
scheduleWeeklyDigestEmails(sendStudyWeeklyDigestEmail).catch(err => {
console.error('[study-digest] failed to schedule weekly digest:', err)
})
// Check for a scheduled series transition every hour
setInterval(() => {
@@ -215,7 +221,9 @@ Promise.all([
console.error('[series-scheduler] error:', err)
})
}, 60 * 60 * 1000)
void runScheduledSeriesTransition()
runScheduledSeriesTransition().catch(err => {
console.error('[series-scheduler] error:', err)
})
app.listen(PORT, () => {
logResendEmailAlignmentWarnings()