Skip to content

[Refactor/#78] 열린피드백 리뷰 반영 — 네이밍 통일, round 검증 VO 분리 - #79

Merged
jjunh33 merged 7 commits into
mainfrom
refactor/#78-open-feedback-review-fixes
Sep 29, 2026
Merged

jjunh33 merged 7 commits into
mainfrom
refactor/#78-open-feedback-review-fixes

Conversation

@xeoxxn

@xeoxxn xeoxxn commented Sep 28, 2026

Copy link
Copy Markdown
Collaborator

#️⃣연관된 이슈

이 PR은 feat/#66-open-feedback-api(PR #67) 위에 쌓은 스택 PR입니다. PR #67의 리뷰(tnals0924)에서 나온 지적 2개만 따로 떼어서 담았습니다.

🎯 해결하려는 문제가 무엇인가요?

PR #67 리뷰에서 나온 지적 2개.

  1. OpenFeedback 도메인 클래스명이 FeedbackErrorCode/FeedbackRound 등 나머지 접두사(Feedback)와 안 맞음
  2. search()의 round <= 0 유효성 검사가 검색 로직과 섞여 있음

❓ 왜 해결해야 하나요?

리뷰어가 직접 지적한 사항이고, 둘 다 코드 일관성·관심사 분리 측면에서 반영하는 게 맞다고 판단했다.

⭐ 어떻게 해결했나요?

  • OpenFeedback → Feedback으로 리네임(도메인 클래스·리포지토리·서비스·JPA 엔티티까지 전부, DB 테이블명 open_feedbacks는 자바 네이밍과 별개라 안 건드림)
  • FeedbackSearchCondition(year, round) VO를 신규 추가해 round 유효성 검사(1 이상)를 그 정적 팩토리(of())로 이동. search()는 조회 로직만 남음. AppFeedbackController에서 요청 파라미터를 받자마자 이 VO로 감싸서 넘긴다.

🧩 이 PR의 한계 & 트레이드오프

없음.

⛓️ 기존 기능에 미치는 영향

  • FeedbackService.search() 시그니처가 (Integer year, Integer round, PageOffset)에서 (FeedbackSearchCondition, PageOffset)으로 바뀐다. 호출부(AppFeedbackController)만 있어 영향 범위는 그 안으로 한정된다.
  • gradle :bootstrap:test(ArchUnit + Modulith) 통과 확인.

🔀 Edge Case & 실패 시나리오

  • round <= 0 요청 시 여전히 INVALID_FEEDBACK_ROUND(400) — 발생 위치만 search() 내부에서 FeedbackSearchCondition.of()로 이동했다.

📋 검토한 대안과 선택 이유

  • FeedbackSearchCondition이라는 이름을 쓴 이유: FeedbackRound(관리자가 여는 접수 회차, 별개 엔티티)와 이름이 겹치지 않으면서도 "조회 조건"이라는 성격을 그대로 드러낸다.

💬 리뷰 포인트

  • [r] OpenFeedback → Feedback 리네임이 빠짐없이 반영됐는지(파일 7개 + 참조 2곳)
  • [c] FeedbackSearchCondition의 위치·이름이 적절한지

@coderabbitai

coderabbitai Bot commented Sep 28, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

Note

Currently processing new changes in this PR. This may take a few minutes, please wait...

⚙️ Run configuration

Configuration used: Repository: billilge/stream-server/.coderabbit.yaml

Review profile: CHILL

Plan: Advanced

Run ID: 71ac48b4-2789-4253-9dc8-d14ff7d3a568

📥 Commits

Reviewing files that changed from the base of the PR and between e155de3 and 8d19b01.

📒 Files selected for processing (16)
  • api/app-api/src/main/java/kr/ac/kookmin/stream/api/app/welfare/feedback/AppFeedbackController.java
  • api/app-api/src/main/java/kr/ac/kookmin/stream/api/app/welfare/feedback/response/FeedbackResponse.java
  • api/app-api/src/main/java/kr/ac/kookmin/stream/api/app/welfare/feedback/response/FeedbackRoundsResponse.java
  • core/domain/welfare/src/main/java/kr/ac/kookmin/stream/welfare/domain/feedback/domain/Feedback.java
  • core/domain/welfare/src/main/java/kr/ac/kookmin/stream/welfare/domain/feedback/domain/FeedbackPeriod.java
  • core/domain/welfare/src/main/java/kr/ac/kookmin/stream/welfare/domain/feedback/domain/FeedbackRoundOptions.java
  • core/domain/welfare/src/main/java/kr/ac/kookmin/stream/welfare/domain/feedback/repository/FeedbackRepository.java
  • core/domain/welfare/src/main/java/kr/ac/kookmin/stream/welfare/domain/feedback/repository/OpenFeedbackRepository.java
  • core/domain/welfare/src/main/java/kr/ac/kookmin/stream/welfare/domain/feedback/service/FeedbackService.java
  • core/domain/welfare/src/main/java/kr/ac/kookmin/stream/welfare/domain/feedback/service/OpenFeedbackService.java
  • core/domain/welfare/src/main/java/kr/ac/kookmin/stream/welfare/domain/feedback/service/impl/FeedbackServiceImpl.java
  • core/domain/welfare/src/main/java/kr/ac/kookmin/stream/welfare/domain/feedback/service/impl/OpenFeedbackServiceImpl.java
  • infrastructure/db/src/main/java/kr/ac/kookmin/stream/db/welfare/FeedbackJpaEntity.java
  • infrastructure/db/src/main/java/kr/ac/kookmin/stream/db/welfare/FeedbackJpaRepository.java
  • infrastructure/db/src/main/java/kr/ac/kookmin/stream/db/welfare/FeedbackRepositoryImpl.java
  • infrastructure/db/src/main/java/kr/ac/kookmin/stream/db/welfare/OpenFeedbackRepositoryImpl.java
 __________________________________________
< Dollars to donuts, you didn't test this. >
 ------------------------------------------
  \
   \   \
        \ /\
        ( )
      .( o ).
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

Comment @coderabbitai help to get the list of available commands.

Base automatically changed from feat/#66-open-feedback-api to main September 29, 2026 11:36
@jjunh33
jjunh33 force-pushed the refactor/#78-open-feedback-review-fixes branch from 8d19b01 to c0b461f Compare September 29, 2026 11:42
@jjunh33
jjunh33 merged commit 54e0a9b into main Sep 29, 2026
@jjunh33
jjunh33 deleted the refactor/#78-open-feedback-review-fixes branch September 29, 2026 11:45
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.

열린피드백 리뷰 반영 — 네이밍 통일, round 검증 VO 분리

3 participants