Releases: Gosrock/DuDoong-Backend
Releases · Gosrock/DuDoong-Backend
Api v2.2.5
What's Changed
- fix: trailing slash 요청 시 405 에러 수정 (#701)
- Spring Boot 3.x trailing slash 매칭 재활성화
/api/v1/orders/등 trailing slash 요청 정상 처리
Full Changelog: Api-v2.2.4...Api-v2.2.5
Api v2.2.4
What's Changed
- fix: 비동기 이벤트 핸들러 LazyInitializationException + traceId 전파 (#698)
- OrderLineItem.orderOptionAnswers LAZY → EAGER (주문 관련 비동기 핸들러 에러 해결)
- MdcTaskDecorator로 @async 스레드에 traceId 자동 전파
- AlimTalk 핸들러에 @transactional(REQUIRES_NEW) 추가
Full Changelog: Api-v2.2.3...Api-v2.2.4
Api v2.2.3
What's Changed
- fix: 이벤트 검색 keyword null일 때 NPE 수정 (#696)
/api/v1/events/searchkeyword 파라미터 없이 호출 시 500 에러(NPE) 수정keyword!!제거 → nullable 전파 → 전체 검색으로 동작
Full Changelog: Api-v2.2.2...Api-v2.2.3
Api v2.2.2
What's Changed
- feat: 배포 시 비동기 슬랙 부트 알림 추가 (#694)
- ApplicationReadyEvent 리스너로 앱 부팅 완료 시 service-alarm 채널에 슬랙 알림 전송
- 프로필, 호스트명, 시작 시각 표시
- @async 비동기 실행, prod/staging만 발송
Full Changelog: Api-v2.2.1...Api-v2.2.2
Api v2.2.1
What's Changed
- feat: 유저 닉네임(이름) 변경 기능 by @ImNM in #676
- feat: 어드민 엑셀 다운로드 고도화 (주문 상세 + 발급 티켓 옵션) by @ImNM in #677
- feat: 호스트 마스터 권한 양도 기능 by @ImNM in #678
- feat: 주문 실패/취소 사유 저장 + 환불 상태 관리 by @ImNM in #679
- feat: 환불 플로우 리디자인 + 실패 사유 상세화 by @ImNM in #685
- feat: 환불 전용 API (호스트 + 어드민) by @ImNM in #687
- feat: MDC traceId 도입 — nginx X-Trace-Id 연계 요청별 로그 그룹핑 (#688) by @ImNM in #689
- fix: @async 이벤트 핸들러 @transactional 누락 수정 + Domain 테스트 Kotlin 전환 by @ImNM in #690
Full Changelog: Api-v2.2.0...Api-v2.2.1
Api v2.2.0
v2.2.0 — 대규모 리팩토링 + 어드민 보강
HostRole AOP 파라미터 기반 전환 (#664, #665)
- SecurityContext → userId 파라미터 명시적 전달
- SUPER_ADMIN 바이패스 + 권한 검증 로깅
- Admin UseCase 이중 권한 체크 (AdminAuthValidator)
- MANAGER 권한 레벨 제거 (ADMIN/SUPER_ADMIN만)
Java 패턴 잔재 제거 (#673)
- Builder 패턴 35+ 클래스 → Kotlin named params
- 보조 생성자 21개 → 주생성자 기본값
- 1355줄 삭제
어드민 API 응답 필드 보강 (#666)
- 5개 DTO에 20개 필드 추가 (주문 상세, 이벤트 좌표, 유저 링크 등)
QueryDSL NPE 수정 (#663)
- SUM null, fetchFirst null, fetchOne!! 방어 처리
기타
- SecurityFilter 중복 등록 수정 (Java 21 호환)
- Infrastructure 테스트 WebEnvironment 수정
- CORS staging 서브도메인 변경
- OID prefix 제거
- CLAUDE.md 인증 체계 + 로컬 개발 문서화
테스트
- 유닛 251 passed
- E2E 148 passed
Docker 이미지: water0641/dudoong-api:2.2.0
Api v2.1.1
EP05 어드민 v2 기능 고도화
쿠키 인증 전환
- CookieHelper: domain=.dudoong.com 추가 (서브도메인 간 쿠키 공유)
- SecurityConfig: isAdmin 체크 제거, ADMIN/SUPER_ADMIN만 admin API 접근
- 어드민 로그인/리프레시 엔드포인트 삭제 (메인 사이트 쿠키 공유로 대체)
- httpBasic을 Swagger 전용 필터체인으로 분리 → staging/prod Swagger 비활성화
- 403/401 에러에 JSON body 추가
P0 — 주문 필터링 + 버그 수정
- totalAmount: String → Long 타입 변경
- 주문 검색: 유저명+이벤트명 JOIN 검색
- 주문 eventId 필터링 파라미터 추가
P1 — 호스트/이벤트/댓글/티켓
- 호스트 관리 API (목록/상세/멤버 추가·제거·역할변경/파트너 토글)
- 이벤트 상태 변경 (어드민 밸리데이션 우회)
- 이벤트 정보 수정 (어드민 전용, OPEN 상태에서도 수정 가능)
- 이벤트 삭제 밸리데이션 완화 (OPEN 이벤트도 soft delete)
- 이벤트 상세 고도화 (ticketItemCount, issuedTicketCount, totalOrderCount)
- 이벤트 검색에 호스트명 JOIN
- 댓글 eventId 필터링
- 발급 티켓 목록 API
P1.5 — 엑셀/티켓
- 엑셀 다운로드 (주문/유저/이벤트/티켓종류/발급티켓) — Apache POI
- SuccessResponseAdvice ByteArray 예외 처리
- 티켓 종류 관리 API (목록/수정)
- 재고 증감 API (RedissonLock 분산락, ticketItemId 키)
P2 — 대시보드/성능
- 대시보드 기간별 통계 + 최근 주문/이벤트 5건
- N+1 쿼리 개선 (batch fetch)
- AlimTalk 핸들러 에러 try-catch 처리
Docker 이미지: water0641/dudoong-api:2.1.1
Api v2.0.4
SecurityFilter 중복 등록 완전 수정
securityFilterRegistration메서드 제거 (서블릿 필터명springSecurityFilterChain충돌)- prod 프로필 기동 테스트 확인 완료
- rate limiting(인터셉터), ContentCaching(필터)에 영향 없음
Docker 이미지: water0641/dudoong-api:2.0.4
Api v2.0.3
Infrastructure 테스트 Java 21 호환 수정
- Feign+WireMock 테스트 WebEnvironment.RANDOM_PORT → NONE
- 전체 테스트 통과 확인
Docker 이미지: water0641/dudoong-api:2.0.3
Api v2.0.2
SecurityFilterChain 중복 등록 오류 수정
ServletFilterConfig의securityFilterChain→securityFilterRegistration으로 이름 변경- Java 21 + Tomcat에서 springSecurityFilterChain 이름 충돌로 기동 실패하던 문제 해결
Docker 이미지: water0641/dudoong-api:2.0.2