Skip to content

Commit a141848

Browse files
committed
fix: stop deactivating recurring reminders after confirmation
Confirmation webhook and emergency call handler were unconditionally setting active=false on all reminders, permanently stopping calls for recurring ones. Now only one-time (NONE) reminders get deactivated.
1 parent a60e18b commit a141848

2 files changed

Lines changed: 15 additions & 8 deletions

File tree

src/app/api/webhooks/twilio/route.ts

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,16 @@ export async function POST(req: NextRequest) {
1919
data: { status: "CONFIRMED", respondedAt: new Date() },
2020
});
2121

22-
// Deactivate the reminder so no further retries happen
23-
await prisma.reminder.update({
22+
// Only deactivate one-time reminders; recurring ones should keep firing
23+
const reminder = await prisma.reminder.findUnique({
2424
where: { id: log.reminderId },
25-
data: { active: false },
2625
});
26+
if (reminder && reminder.recurrence === "NONE") {
27+
await prisma.reminder.update({
28+
where: { id: log.reminderId },
29+
data: { active: false },
30+
});
31+
}
2732

2833
return new NextResponse(
2934
"<Response><Say>Thank you! Your confirmation has been recorded. Take care!</Say></Response>",

src/cron/worker.ts

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -247,11 +247,13 @@ async function processEmergencyCalls() {
247247
await callEmergencyContact(profileId);
248248
calledProfiles.add(profileId);
249249

250-
// Deactivate the reminder since all attempts are exhausted
251-
await prisma.reminder.update({
252-
where: { id: log.reminderId },
253-
data: { active: false },
254-
});
250+
// Only deactivate one-time reminders; recurring ones should keep firing
251+
if (log.reminder.recurrence === "NONE") {
252+
await prisma.reminder.update({
253+
where: { id: log.reminderId },
254+
data: { active: false },
255+
});
256+
}
255257
}
256258
}
257259

0 commit comments

Comments
 (0)