Send confirmation to pending email with reconfirmation-specific copy#1417
Open
Send confirmation to pending email with reconfirmation-specific copy#1417
Conversation
Override Devise's send_confirmation_instructions on User to always route to unconfirmed_email when present, fixing flows where the confirmation was sent to the old email instead of the new one. Branch the confirmation email subject, HTML, and text templates: - Welcome invite (new users): unchanged - Reconfirmation (email change): new subject, CTA, and copy Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add User model spec for send_confirmation_instructions override verifying it routes to unconfirmed_email when present. Update ProcessEmailChange and ProcessEmailManualConfirm specs to assert the DeviseMailer receives the correct `to:` address rather than just checking that send_confirmation_instructions was called. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Ensure DeviseMailer stub is set up after user factory creation so the on-create confirmation email doesn't inflate the mock count. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What is the goal of this PR and why is this important?
How did you approach the change?
send_confirmation_instructionson User to always route tounconfirmed_emailwhen present, rather than relying on Devise'spending_reconfirmation?checkconfirmation_instructionssubject line: welcome vs reconfirmationUI Testing Checklist
Anything else to add?
ProcessEmailManualConfirmandProcessEmailChangeservices both callsend_confirmation_instructions, so the User model override fixes both flows in one place🤖 Generated with Claude Code