Skip to content

Feat: 관리자 도서 삭제 API 및 이미지 CDN URL 응답 적용 - #146

Merged
ppp1969 merged 1 commit into
devfrom
codex/issue-145-admin-book-delete-cdn
Jul 14, 2026
Merged

ppp1969 merged 1 commit into
devfrom
codex/issue-145-admin-book-delete-cdn

Conversation

@ppp1969

@ppp1969 ppp1969 commented Jul 14, 2026 •

Copy link
Copy Markdown
Contributor

🧑🏻‍💻 PR 작업 내역 요약

관리자 도서 단위 삭제 API를 추가하고, 프론트에 전달되는 공개 이미지 주소를 S3 원본 URL 대신 CloudFront/CDN URL로 정규화했습니다.

Closes #145

📋 변경 사항

  • DELETE /api/v2/admin/books/{bookId}를 추가했습니다.
  • QUEUED 또는 PROCESSING 상태의 처리 job이 있으면 409 CONFLICT로 삭제를 거절합니다.
  • job log, processing job, 이미지 profile/asset, 관계 edge/stat, POV summary, 즐겨찾기, 북마크, 독서 진도, 이벤트, 캐릭터, 챕터, 도서 순으로 연관 데이터를 삭제합니다.
  • CdnUrlService를 추가해 공개 object key와 설정된 버킷의 S3 URL을 CLOUDFRONT_BASE_URL 기반 URL로 변환합니다.
  • 도서 목록/상세, 즐겨찾기, 매니페스트, macro/fine graph, relationship delta, 관리자 이미지 응답에 CDN URL 변환을 적용했습니다.
  • 삭제 흐름, 활성 job 차단, CDN URL 변환, Swagger 경로 노출 테스트를 추가했습니다.

검증 명령:

  • git diff --check
  • ./gradlew compileJava compileTestJava --no-daemon
  • ./gradlew test --tests com.kw.readwith.service.CdnUrlServiceTest --tests com.kw.readwith.service.AdminServiceTest --tests com.kw.readwith.service.BookServiceTest --tests com.kw.readwith.service.AdminImageGenerationServiceTest --tests com.kw.readwith.service.FineGraphServiceTest --tests com.kw.readwith.service.MacroGraphServiceTest --tests com.kw.readwith.service.RelationshipDeltaServiceTest --no-daemon
  • ./gradlew test --tests com.kw.readwith.controller.ApiRouteAliasMappingTest --no-daemon

🔍 Code Review

  • 도서 삭제 순서가 실제 FK 관계를 빠짐없이 만족하는지 확인해주세요.
  • 활성 processing job이 있는 도서를 삭제하지 못하도록 한 범위가 적절한지 확인해주세요.
  • CDN 변환 대상이 public/*, character-images/*에 한정되고 외부 URL 및 비공개 key가 유지되는지 확인해주세요.
  • 런타임 환경에 CLOUDFRONT_BASE_URL이 올바른 CloudFront 또는 custom domain으로 설정되어야 합니다.
  • Windows의 한글 경로에서 Gradle test worker가 클래스를 찾지 못해, 동일 checkout을 R:\로 subst한 뒤 테스트했습니다.

📸 ScreenShot

백엔드 API 및 응답 URL 변경으로 별도 화면 캡처는 없습니다.

@ppp1969 ppp1969 changed the title 관리자 도서 삭제 API 및 이미지 CDN URL 응답 적용 Feat: 관리자 도서 삭제 API 및 이미지 CDN URL 응답 적용 Jul 14, 2026
@ppp1969
ppp1969 marked this pull request as ready for review July 14, 2026 16:35
@ppp1969
ppp1969 merged commit 4b8bd92 into dev Jul 14, 2026
1 check 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.

Feat: 관리자 도서 삭제 API 및 이미지 CDN URL 응답 적용

1 participant