백로그
0할 일
0진행 중
0리뷰
1메일러 — UserMailer 8개 메일 + WeeklyNudgeEmailJob + Resend 설정 + letter_opener + 테스트
## 목표 PRD Section 15 기반 UserMailer. 8개 메일 템플릿. Resend API. letter_opener 개발환경. WeeklyNudgeEmailJob. ## 현재 상태 - PasswordsMailer 존재 (Rails 8 auth generator) - resend gem: Gemfile 확인 필요 - letter_opener gem: Gemfile 확인 필요 - Solid Queue 설정 완료 ## 구현 사항 ### 1. UserMailer (app/mailers/user_mailer.rb) 8개 메일: - welcome(user): 회원가입 환영 - onboarding_complete(user): 온보딩 완료 - payment_success(user, payment): 결제 성공 - payment_failed(user, payment): 결제 실패 - cohort_application_received(user, application): 사전 신청 접수 - cohort_application_approved(user, application): 승인 + 결제 안내 - cohort_enrollment_confirmation(user, enrollment): 코호트 등록 확인 - weekly_nudge(user): 주간 학습 독려 ### 2. 메일 뷰 (app/views/user_mailer/) - 각 메일별 HTML 템플릿 (간단한 레이아웃) - VALUEIT 브랜딩 (다크 테마 컬러 참조하되 메일은 라이트) - 한국어 ### 3. WeeklyNudgeEmailJob (app/jobs/weekly_nudge_email_job.rb) ```ruby class WeeklyNudgeEmailJob < ApplicationJob queue_as :mailers def perform User.where(onboarding_completed: true).find_each do |user| UserMailer.weekly_nudge(user).deliver_later end end end ``` ### 4. Resend 설정 (프로덕션) - config/environments/production.rb에 Action Mailer 설정 - RESEND_API_KEY 환경변수 ### 5. letter_opener (개발환경) - config/environments/development.rb에 letter_opener 설정 - Gemfile에 letter_opener 확인 (없으면 추가) ### ⚠️ 주의 - mailers/ + jobs/ + views/user_mailer/ 범위만 (developer-1은 ai_conversations/ 작업 중) - User, Payment, CohortApplication, CohortEnrollment 모델 건드리지 않기 - resend, letter_opener gem 확인 ### 테스트 - UserMailer 각 메일 테스트 (수신자, 제목, 본문 확인) - WeeklyNudgeEmailJob 테스트 (대상 사용자 필터) ### 완료 기준 - 8개 메일 동작 - letter_opener 개발환경 설정 - WeeklyNudgeEmailJob - bin/rails test 전체 통과