Skip to content

feat: extend recurring event window to 30 days, cascade delete recurrences - #46

Merged
AgustinSV merged 1 commit into
mainfrom
agustin/recurring-events-window
Sep 14, 2026
Merged

AgustinSV merged 1 commit into
mainfrom
agustin/recurring-events-window

Conversation

@AgustinSV

Copy link
Copy Markdown
Collaborator

Summary

  • Extends the recurring-events cron job from materializing events 1 day ahead to 30 days ahead, so volunteers can see and register for upcoming recurring shifts (daily/weekly/biweekly/monthly) well in advance instead of the day before.
  • When an admin deletes one occurrence of a recurring event, the rest of that series' occurrences within the same 30-day window are now also soft-deleted, instead of having to delete each future occurrence individually. Past events and other series are untouched.
  • Delete confirmation dialog and success message now indicate when a delete will cascade to upcoming recurrences.
  • The window length is centralized in a single constant (src/lib/recurring-events-config.ts) shared by both the materialization cron job and the delete cascade, so they always stay in sync.

Why

Client feedback: recurring events were only visible 24 hours before they occurred, and deleting a single occurrence of a recurring series required deleting each future occurrence one at a time.

Test plan

  • tsc --noEmit passes
  • next lint passes with no warnings/errors
  • Manually verify in a review/staging deploy: recurring events populate ~30 days out after the cron job runs
  • Manually verify: deleting one occurrence of a recurring series removes upcoming occurrences within the window, leaves past events and other series intact

No database schema changes - no migration required.

🤖 Generated with Claude Code

…te to upcoming occurrences

Recurring events previously only materialized 1 day ahead, so volunteers
couldn't see upcoming shifts more than a day out. Extends the cron job's
window to 30 days (shared constant in recurring-events-config.ts) so
daily/weekly/biweekly/monthly patterns populate further in advance.

Deleting one occurrence of a recurring series now also soft-deletes the
rest of that series' occurrences within the same 30-day window, so admins
don't have to delete each future occurrence individually. The delete
confirmation dialog now warns when a delete will cascade.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Sep 14, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
thrive Ready Ready Preview Sep 14, 2026 12:50am UTC

@AgustinSV
AgustinSV merged commit de1e83a into main Sep 14, 2026
3 checks passed
@AgustinSV
AgustinSV deleted the agustin/recurring-events-window branch September 14, 2026 00:51

This branch was successfully deployed

1 active deployment
Preview — 9851e256 Deployed Sep 14, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant