Skip to content

[deploy] admin-v1.0.7#541

Merged
Whale0928 merged 97 commits intorelease/adminfrom
main
Jan 23, 2026
Merged

[deploy] admin-v1.0.7#541
Whale0928 merged 97 commits intorelease/adminfrom
main

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

Release admin v1.0.7

  • Version: 1.0.7
  • Created at: 2026.01.11
  • Auto-generated release PR

This PR was automatically created by version-check workflow.

Whale0928 and others added 30 commits December 31, 2025 13:43
- 회원가입 API 문서 추가
- Help API 목록 조회, 상세 조회, 답변 등록 문서 추가
- 잘못된 URI 및 필드명 수정
- ImageUploadLog 엔티티, 레포지토리, 서비스 구현
- PreSigned URL 생성 시 업로드 로그 자동 저장 (로그인 사용자)
- MinIO TestContainer 추가 및 테스트 구성
- 미사용 S3 이벤트 리스너 코드 제거
- DTO에서 엔티티 의존성 제거 (아키텍처 규칙 준수)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- ImageUploadLogRequest.toEntity() 메서드 제거
- 엔티티 생성 로직을 ImageUploadLogService.saveAsync()로 이동
- 아키텍처 규칙 준수: DTO는 Entity에 의존하지 않음

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- ImageUploadStatus를 domain -> constant 패키지로 이동
- ImageUploadLogItem을 dto -> dto.response 패키지로 이동
- 관련 import 문 수정

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- ImageUploadLog (상태 기반) -> ResourceLog (이벤트 기반) 리팩토링
- ResourceEventType enum 추가 (CREATED, ACTIVATED, INVALIDATED, DELETED)
- ResourceCommandService로 추상화하여 향후 다른 리소스 타입 확장 가능
- 이벤트 로그 방식으로 변경하여 리소스 이력 추적 용이
- 기존 ImageUploadLog 관련 파일 삭제
- 테스트 코드 갱신

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- ImageUploadControllerTest 삭제 (Mock 기반 컨트롤러 테스트 제거)
- CoreImageUploadServiceTest + ImageUploadServiceTest 통합
- Mock 대신 Fake/Stub 기반 테스트로 통일

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- ImageUploadIntegrationTest 추가
- 인증된 사용자의 PreSigned URL 생성 테스트
- 다중 이미지 업로드 URL 생성 테스트
- 기본값 처리 테스트

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- MockMvc -> MockMvcTester 마이그레이션
- ResourceLog 저장 검증 테스트 추가 (Awaitility 사용)
- 비동기 로그 저장 대기 처리 개선

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- ImageResourceActivatedEvent 이벤트 클래스 추가
- ResourceEventListener로 이벤트 수신 및 ResourceLog ACTIVATED 상태 저장
- ReviewService, HelpService, BusinessSupportService, UserBasicService에 이벤트 발행 추가
- ImageUtil.extractResourceKey() 메서드 추가
- 서비스별 이벤트 발행 및 ResourceLog 상태 변경 단위 테스트 추가

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 리뷰 생성 시 이미지 포함되면 ACTIVATED 로그 저장 검증
- 이미지 없이 리뷰 생성 시 ACTIVATED 이벤트 미발생 검증
- CREATED -> ACTIVATED 전체 흐름 테스트 추가
- Awaitility를 사용한 비동기 이벤트 대기

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 단위 테스트 패턴: Fake/Stub, InMemory 레포지토리
- 통합 테스트 패턴: IntegrationTestSupport, Awaitility
- 이벤트 기반 아키텍처 가이드 추가
- 서브모듈 초기화 명령어 및 설명 추가
- @DisplayName 형식 명시 (~할 때 ~한다)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- TastingTagRepository 도메인 인터페이스 생성
- JpaTastingTagRepository JPA 구현체 생성
- TastingTagService 스켈레톤 생성 (Aho-Corasick 적용 예정)
- ahocorasick 라이브러리 의존성 추가 (0.6.3)
- ApplicationReadyEvent + @scheduled로 Trie 초기화
- extractTagNames: 1차 Aho-Corasick 매칭 + 2차 한글 경계 검증
- InMemoryTastingTagRepository Fake 구현체 추가
- extractTagNames 메서드 테스트 케이스 작성
  - 정상 매칭, 부분 매칭 제외, 영문/대소문자, 중복 제거 등
- 리뷰 문장 테스트 케이스 10개 추가 (한글/영문)
- 부분 매칭 제외 케이스 5개 추가
- @NullAndEmptySource로 null/빈문자열 테스트 통합
- TastingTagService public 메서드에 @transactional 추가
- ServiceLayerRules에 ahocorasick 패키지 허용 추가
- GET /api/v1/tasting-tags/extract?text={text}
- 문장에서 테이스팅 태그 목록 추출
- extractTags → getExtractedTags
- AlcoholMetadataTestFactory 생성 (Region, Distillery, TastingTag)
- TastingTagControllerRestDocsTest API 문서화 테스트
- TastingTagIntegrationTest 통합 테스트 4개 케이스
claude and others added 9 commits January 20, 2026 02:45
TastingTagRepository 인터페이스에 Pagination 메서드 추가 후
InMemory 구현체에 누락된 메서드 구현
- admin-api에 spring-boot-starter-data-jpa 의존성 추가 (main scope)
- InMemoryAlcoholQueryRepository에 누락된 findAdminAlcoholDetailById 메서드 추가
- admin-api에서 spring-data-jpa 의존성 제거 (testImplementation만 유지)
- AdminReferenceSearchRequest에 toPageable() 메서드 추가
- 컨트롤러에서 PageRequest, Sort import 제거하고 toPageable() 사용
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 현재 병목 지점 분석 (LIKE 패턴, EXISTS 서브쿼리)
- K6 성능 테스트 계획 수립
- 집계 테이블 + 검색 키워드 비정규화 방안 설계
- 배치 Job 설계 및 구현 단계 정리

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Whale0928 and others added 5 commits January 20, 2026 10:43
- 고객 지원 문의 관리 API 스펙 정의
- 위스키 및 제조사/지역/태그 관리 API 스펙 정의
- S3 PreSigned URL 발급 API 스펙 정의
- 어드민용 위스키 생성/수정/삭제(소프트) API 추가
- 카테고리 레퍼런스 조회 API 추가 (kor/eng 카테고리 페어 목록)
- Alcohol 엔티티에 deletedAt 필드 및 update/delete 메서드 추가
- AdminAlcoholCommandService, AdminAlcoholUpsertRequest DTO 신규 생성
- AdminResultResponse 공통 응답 DTO 추가
- 삭제 시 리뷰/평점 존재 여부 검증 로직 포함
- REST Docs 테스트 및 통합 테스트 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
… 메서드 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Implemented a detailed plan for a view-based popular whiskey API. Added documentation files for administrative enums (e.g., roles, categories) and updated API reference files to include relevant enum references.
Whale0928 and others added 9 commits January 22, 2026 13:29
@SQL 기반 테스트 데이터 설정을 TestFactory 패턴으로 대체하기 위한 헬퍼 클래스 추가:
- TestDataSetupHelper: 복합 테스트 데이터 생성 헬퍼
- HistoryTestData: 히스토리 테스트용 데이터 record
- MyPageTestData: 마이페이지 테스트용 데이터 record
- MyBottleTestData: 마이보틀 테스트용 데이터 record
- UserTestFactory: persistUserWithNickname 메서드 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@SQL 어노테이션을 TestFactory 패턴으로 대체:
- PicksIntegrationTest: SQL 스크립트 → TestFactory 사용
- RatingIntegrationTest: SQL 스크립트 → TestFactory 사용
- LikesIntegrationTest: SQL 스크립트 → TestFactory 사용

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@SQL 어노테이션을 TestFactory 패턴으로 대체:
- UserQueryIntegrationTest: TestDataSetupHelper를 활용한 복합 데이터 설정
- UserCommandIntegrationTest: TestFactory 직접 사용

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@SQL 어노테이션을 TestFactory 패턴으로 대체:
- UserHistoryIntegrationTest: TestDataSetupHelper.setupHistoryTestData() 활용

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@SQL 어노테이션을 TestFactory 패턴으로 대체:
- ReviewIntegrationTest: ReviewTestFactory 활용
- ReviewReplyIntegrationTest: ReviewTestFactory.persistReviewReply() 활용
- JpaAuditingIntegrationTest: TestFactory 직접 사용
- ReviewObjectFixture: getReviewCreateRequestWithAlcoholId() 메서드 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
모든 통합 테스트가 TestFactory 패턴으로 마이그레이션되어 더 이상 사용되지 않는 SQL 파일 삭제:
- init-alcohol.sql
- init-help.sql
- init-popular_alcohol.sql
- init-review-reply.sql
- init-review.sql
- init-user-history.sql
- init-user-mybottle-query.sql
- init-user-mypage-query.sql
- init-user.sql
- schema.sql.bak

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
product-api 통합 테스트의 레거시 MockMvc API를 MockMvcTester로
마이그레이션하기 위한 상세 계획 문서 작성

- 마이그레이션 대상 15개 파일 분석
- 코드 변환 패턴 및 가이드라인 정의
- 주의사항 및 트러블슈팅 가이드 포함
- 권장 마이그레이션 순서 정의

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@Whale0928 Whale0928 merged commit 885d98c into release/admin Jan 23, 2026
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants