- CDNUploader를 BlobStorageUploader로 교체
- SAS Token 기반 접근 제어 추가 (유효기간 7일)
- Blob Storage Retry 로직 추가 (최대 3회, Exponential Backoff)
- 보안 강화: Public Access 비활성화, 읽기 전용 SAS Token
- Redis 캐싱에 Blob SAS URL 저장 (TTL 7일)
- 성능 영향 최소화 (+0.05-0.1초, 전체의 1-2%)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
변경 사항:
- 이벤트생성플로우 outer: FE → Gateway → User Service 호출 패턴 추가
- user-로그인 inner: 전화번호 → 이메일 기반 인증으로 변경
- user-회원가입 inner: 국세청 API 제거, 이메일 중복검사 추가
- event-목적선택 inner: Gateway 경유, 요청/응답 한글화
- ai-트렌드분석및추천 inner: 과거 이벤트 데이터 제거, Timeout 5분으로 변경
- analytics-대시보드조회 inner: Redis TTL 5분 → 1시간으로 변경
모든 파일에 Repository CRUD 작업 한글 설명 적용 (SQL 제거)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
1. 다중채널배포 outer sequence 수정
- inner sequence 참조 명시 (distribution-다중채널배포.puml)
- Sprint 2 Mock 처리 반영
- API 엔드포인트 일관성 유지
2. 이미지 생성 프로세스 개선
- Content Service: 이미지 생성 후 Kafka 이벤트 발행 추가
- Event Service: 새로운 Kafka Consumer 추가 (event-콘텐츠생성완료구독.puml)
- Event DB에 이미지 URL 영구 저장
- Redis 캐시와 DB 간 데이터 정합성 보장
3. 아키텍처 개선
- 서비스 독립성 향상 (Kafka 기반 이벤트 통신)
- 느슨한 결합 구조
- 데이터 흐름 명확화
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 어댑터 패턴 적용: 단일 Channel Adapter로 모든 채널 API 호출 처리
- Sprint 2 버전 추가: 외부 API 호출 없이 배포 로그만 기록하는 간소화 버전
- 복잡한 Circuit Breaker, Retry 로직 제거 (Sprint 2)
- Mock 데이터로 즉시 성공 응답 반환
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- ContentCreated 이벤트 발행 제거 (Consumer 없음)
- 폴링 방식으로 결과 조회하도록 명시
- 불필요한 Kafka Producer 참여자 제거
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- API 엔드포인트 통일
- AI 추천: POST /api/events/{id}/ai-recommendations
- 이미지 생성: POST /api/events/{id}/content-generation
- 최종 승인: POST /api/events/{id}/publish
- Kafka 이벤트명 구분
- EventDraftCreated: 목적 선택 시 발행
- EventCreated: 최종 승인 시 발행
- 수정 파일
- design/backend/sequence/outer/이벤트생성플로우.puml
- design/backend/sequence/inner/event-목적선택.puml
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 회원가입: 사업자번호 암호화 위치 명시, 성능 지표 추가, 에러 코드 표준화 (USER_001, USER_002)
- 로그인: 비동기 처리 설명 추가, Rate Limiting 보안 강화, 성능 목표 추가, 에러 코드 표준화 (AUTH_001)
- 프로필수정: 트랜잭션 범위 명확화, Optimistic Locking 추가, 동시성 제어, 에러 코드 표준화 (USER_003~005)
- 로그아웃: API Gateway 연계 시나리오, 로그아웃 이벤트 발행, 성능 목표 추가, 에러 코드 표준화 (AUTH_002)
- .gitignore 추가: .npm-global 및 기타 임시 파일 제외
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>