Skip to content

Add invitation expiration to AccountsInvitation#21

Merged
dadachi merged 2 commits intomainfrom
invitation_expiration
Mar 11, 2026
Merged

Add invitation expiration to AccountsInvitation#21
dadachi merged 2 commits intomainfrom
invitation_expiration

Conversation

@dadachi
Copy link
Copy Markdown
Contributor

@dadachi dadachi commented Mar 11, 2026

Summary

  • Add configurable expiration to AccountsInvitation (48h production, ~5min development)
  • Return 410 Gone when accessing or accepting expired invitations
  • Resend action now resets expiration by touching created_at before re-sending the invite email
  • Add expiration notice to invitation email templates (HTML and text)

Test plan

  • bin/rails test — 334 tests, 651 assertions, 0 failures
  • bin/rubocop — No offenses
  • bin/brakeman — No security warnings
  • Verify expired invitation returns 410 on show/update in development (~5 min expiry)
  • Verify resend resets expiration timer
  • Verify invitation email includes expiration notice

🤖 Generated with Claude Code

dadachi and others added 2 commits March 11, 2026 17:57
Invitations now auto-expire after a configurable period (48 hours in
production, ~5 minutes in development). Expired invitations return
410 Gone on show/update. Resend resets the expiration by touching
created_at.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@dadachi dadachi merged commit 7c65d61 into main Mar 11, 2026
3 checks passed
@dadachi dadachi deleted the invitation_expiration branch March 11, 2026 21:57
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