### 📌 이슈 종류 - [x] ✨ 기능 추가 (Feature) ### 📝 작업 내용 활성 회원의 기존 프로필 사진을 최적화 이미지로 옮기는 실행기를 추가합니다. #194의 공통 기능을 사용해 조사·원본 복사와 변환 준비·READY 연결을 분리하고, 중단한 위치부터 이어서 처리할 수 있도록 합니다. ### ✅ 체크리스트 - [ ] user 모듈에 진행 기록 테이블과 Flyway migration 추가 - [ ] 처리할 ID 범위와 진행 위치를 저장하고 실행 권한·재시도 횟수·처리 건수 관리 - [ ] 기본값은 비활성으로 두고 정해진 분량만 실행하도록 설정 - [ ] 조사 단계는 읽기만 수행하고, 원본 복사와 변환 준비는 별도 모드로 처리 - [ ] 활성 회원만 조회하고 READY 연결 전에 User를 잠가 삭제 상태·key·asset 재확인 - [ ] media 연결·프로필 UUID·진행 위치를 한 트랜잭션에서 반영 - [ ] 기존 프로필 key와 회원 정보·삭제 상태 보존 - [ ] 개인정보·회원 ID·S3 key·asset ID를 실행 로그와 지표에서 제외 - [ ] MySQL에서 제약 조건·실행 권한 인계·동시 탈퇴와 key 변경·rollback·조회 계획 테스트 - [ ] CI에서 전체 빌드와 프로필 MySQL 테스트가 실제 실행되고 실패·오류·건너뛴 테스트가 없는지 확인 - [ ] 작업별 테스트와 코드 리뷰를 마치고 PR 검토 요청 ### 💬 참고 사항 - 선행 PR: #198 (`36d0d2a`). 구현 PR: #200. - 탈퇴한 회원은 조회와 연결에서 제외합니다. 프로필 사진이 없으면 기본 이미지를 유지하고, 이미 asset이 연결된 사진은 건너뜁니다. - 진행 기록에는 실행 정보와 건수만 저장합니다. 회원 개인정보·원본 key·다른 모듈과의 FK는 추가하지 않습니다. - 전환 중 탈퇴하거나 원본이 변경돼 연결하지 못한 복사본은 비공개로 유지하고 별도 정리 대상으로 남깁니다. - 새 API·인증 변경·의존성 추가는 없습니다. 실제 AWS 적용, backfill 실행과 legacy 삭제는 포함하지 않습니다. - 매거진 전환, 파일 정리·정합성 복구와 AWS 통합 테스트는 별도 작업입니다. 리뷰 이미지 연동은 #179 병합 후 진행합니다. - PR은 검토 요청까지만 진행하고 병합하지 않습니다.
📌 이슈 종류
📝 작업 내용
활성 회원의 기존 프로필 사진을 최적화 이미지로 옮기는 실행기를 추가합니다. #194의 공통 기능을 사용해 조사·원본 복사와 변환 준비·READY 연결을 분리하고, 중단한 위치부터 이어서 처리할 수 있도록 합니다.
✅ 체크리스트
💬 참고 사항
36d0d2a). 구현 PR: [Feat] 프로필 이미지 backfill 실행 추가 (#199) #200.