[YS-589] feature: 공고 목록 조회 시 응답값에 timeRequired(소요시간), count(횟수) 컬럼 추가#174
[YS-589] feature: 공고 목록 조회 시 응답값에 timeRequired(소요시간), count(횟수) 컬럼 추가#174
Conversation
Walkthrough실험 포스트 관련 UseCase, 프레젠테이션 DTO 및 매퍼에 선택 필드 Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20–30 minutes
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (5)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
🔇 Additional comments (6)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
presentation/src/main/kotlin/com/dobby/api/dto/response/experiment/PostInfo.kt (1)
5-15: 응답 DTO의durationInfo를 non-null로 설정하는 것은 API 계약 변경 폭이 큽니다
CreateExperimentPostUseCase.PostInfo에서는durationInfo: DurationInfo?로 nullable이지만, 응답 DTOPostInfo에서는durationInfo: DurationInfo로 non-null입니다. 매퍼에서DurationInfo(input.durationInfo?.startDate, input.durationInfo?.endDate)로 변환하면 input이 null일 때DurationInfo(null, null)이 되어, 구조적으로는 non-null이지만 의미상으로는 "정보 없음"입니다.기존 클라이언트가 nullable 스키마를 기대할 경우 파싱 실패 가능성이 있습니다.
DurationInfo?로 변경하거나, durationInfo가 항상 유의미한 값을 가지도록 보장하는 방안을 검토하세요.
🧹 Nitpick comments (1)
presentation/src/main/kotlin/com/dobby/api/dto/response/experiment/PostInfo.kt (1)
17-20:DurationInfo스코프(재사용 여부)에 따라 중첩 클래스로 두는 것도 고려
DurationInfo가 이 DTO에서만 쓰이면PostInfo.DurationInfo로 중첩해서 네임스페이스 오염을 줄이는 편이 깔끔합니다(반대로 여러 DTO에서 공유면 top-level 유지가 맞음).
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
presentation/src/main/kotlin/com/dobby/api/dto/response/experiment/PostInfo.kt(1 hunks)presentation/src/main/kotlin/com/dobby/api/mapper/ExperimentPostMapper.kt(2 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
- presentation/src/main/kotlin/com/dobby/api/mapper/ExperimentPostMapper.kt
🧰 Additional context used
🪛 GitHub Actions: ktlint-code-quality-check
presentation/src/main/kotlin/com/dobby/api/dto/response/experiment/PostInfo.kt
[error] 2-2: KtLint: Imports must be ordered lexicographically and without empty lines between groups.
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: build
| import com.dobby.enums.experiment.TimeSlot | ||
|
|
||
| import java.time.LocalDate |
There was a problem hiding this comment.
ktlint 실패(Import 그룹 사이 빈 줄/정렬)로 CI가 깨집니다 — 즉시 수정 필요
현재 import 사이 빈 줄 때문에 ktlint-code-quality-check가 실패합니다.
import com.dobby.enums.experiment.TimeSlot
-
import java.time.LocalDate📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| import com.dobby.enums.experiment.TimeSlot | |
| import java.time.LocalDate | |
| import com.dobby.enums.experiment.TimeSlot | |
| import java.time.LocalDate |
🧰 Tools
🪛 GitHub Actions: ktlint-code-quality-check
[error] 2-2: KtLint: Imports must be ordered lexicographically and without empty lines between groups.
🤖 Prompt for AI Agents
In
presentation/src/main/kotlin/com/dobby/api/dto/response/experiment/PostInfo.kt
around lines 2 to 4, ktlint is failing because import groups are separated by an
extra blank line and/or misordered; remove the blank line between the imports
and ensure imports are sorted/ grouped according to project ktlint rules
(standard Kotlin stdlib/java imports first, then project imports) so that the
two imports appear contiguous and properly ordered without extra empty lines.
…#174) * feature: add timeRequired, count field to ExperimentPost responses * fix: add fixture to non-import classes * fix: fix compile errors
…#174) * feature: add timeRequired, count field to ExperimentPost responses * fix: add fixture to non-import classes * fix: fix compile errors
💡 작업 내용
✅ 셀프 체크리스트
🙋🏻 확인해주세요
🔗 Jira 티켓
https://yappsocks.atlassian.net/browse/YS-589
Summary by CodeRabbit
변경 사항
✏️ Tip: You can customize this high-level summary in your review settings.
🔗 Jira 티켓
https://yappsocks.atlassian.net/browse/YS-589