Skip to content

feat(api): add publish reminder emails for stale draft dandisets#2673

Open
bendichter wants to merge 2 commits intomasterfrom
send-publish-reminder-email
Open

feat(api): add publish reminder emails for stale draft dandisets#2673
bendichter wants to merge 2 commits intomasterfrom
send-publish-reminder-email

Conversation

@bendichter
Copy link
Copy Markdown
Member

fix #2672

Add automated email reminders for dandiset owners whose draft-only dandisets haven't been modified in 30 days.

Changes:

  • Add build/send functions for publish reminder emails in mail.py
  • Add publish_reminder_sent_at field to Dandiset model to track sent reminders
  • Add send_publish_reminder_emails scheduled task that finds eligible dandisets (draft-only, not embargoed, unmodified for 30+ days, no prior reminder) and sends reminder emails to owners

Add automated email reminders for dandiset owners whose draft-only
dandisets haven't been modified in 30 days.

Changes:
- Add build/send functions for publish reminder emails in mail.py
- Add publish_reminder_sent_at field to Dandiset model to track sent reminders
- Add send_publish_reminder_emails scheduled task that finds eligible
  dandisets (draft-only, not embargoed, unmodified for 30+ days, no
  prior reminder) and sends reminder emails to owners
@kabilar kabilar requested review from satra and yarikoptic December 15, 2025 19:27
@bendichter
Copy link
Copy Markdown
Member Author

Policy questions:

  • Who do we send the email to? The contact person or the owners of the Dandiset?
  • When do we send the email? How often do we send them?
  • How long of a time gap from the last edit do we want to consider a Dandiset settled?

Questions we can punt on:

  • What do we do after the first email?

Record all sent emails using SentEmail model for tracking purposes.
Update email sending functions to return SentEmail records including
ownership changes, registration notices, and rejection messages.
Add helper function to extract HTML content from email messages.
@bendichter
Copy link
Copy Markdown
Member Author

I created a table for tracking sent reminders so we could make sure we don't send reminders for the same dandiset everyday. Then I thought it would be nice to track all of our emails in that table. This may be outside the scope of this PR, but I wanted to get the team's take on this. I think it's a good idea to have a queryable record of our email communications in general.

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.

Nudge users to publish dandisets with email

1 participant