Conversation
- 요일 표시 `AppText`를 `Box`로 감싸고 `contentAlignment = Alignment.Center`를 적용하여 텍스트 정렬 최적화
📝 WalkthroughWalkthrough이 PR은 디자인 시스템의 통계 관련 컴포넌트 UI를 개선하고, 통계 새로고침 메커니즘을 통합하는 변경입니다. 구체적으로는 PictureDayCell, StampCell, StatsCalendar에서 회전, 색상, 레이아웃 스타일을 조정하고, 새로운 날짜 포맷 문자열 리소스를 추가하며, PhotologCaptureViewModel에 StatsRefreshBus 의존성을 도입하여 사진 업로드 후 통계 화면을 갱신하는 로직을 추가합니다. 또한 StatsDetailScreen의 패딩을 재배치하고 프리뷰 날짜를 고정합니다. Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes 리뷰 의견✅ 긍정적인 부분디자인 일관성 개선: PictureDayCell, StampCell, StatsCalendar의 스타일 조정이 체계적으로 진행되었습니다. 색상값 변경(C500 → C400)과 텍스트 스타일 업데이트(B1 → B3, B2 → C1)가 명확한 의도를 보여주며, 이는 전체 디자인 시스템의 일관성을 높이는 방향으로 보입니다. 특히 StatsCalendar의 Box 래퍼를 통한 정렬 개선은 레이아웃 안정성을 향상시키는 좋은 리팩토링입니다. 통합의 필요성: PhotologCaptureViewModel에서 StatsRefreshBus를 통해 통계 화면 갱신을 처리하는 방식은 관심사의 분리 측면에서 바람직한 패턴입니다. 🤔 검토가 필요한 부분1. PhotologCaptureViewModel의 의존성 추가 (중요) 왜 문제가 될 수 있는가?
개선 제안:
2. SummaryContent.kt의 프리뷰 날짜 변경 왜 검토가 필요한가?
질문:
3. 문자열 리소스 중복 제거 현황:
4. StatsDetailScreen의 패딩 재배치 (참고사항) 변경 내용:
📋 최종 체크리스트
전반적으로 UI 개선과 통계 갱신 로직 통합이 체계적으로 진행되었습니다. 위의 몇 가지 부분만 명확히 정리되면 좋겠습니다! 🙌 🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches
🧪 Generate unit tests (beta)
Tip Try Coding Plans. Let us write the prompt for your AI agent so you can ship faster (with fewer bugs). 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
🧹 Nitpick comments (1)
feature/stats/detail/src/main/java/com/twix/stats/detail/component/SummaryContent.kt (1)
173-174: 프리뷰 날짜는 둘 다 고정해 두는 편이 더 안정적입니다.시작일만 고정하고 종료일을
LocalDate.now()로 두면 날짜가 바뀔 때마다 프리뷰 결과가 달라집니다.endDate도 고정값으로 맞추면 QA 캡처 비교가 더 쉬워질 것 같은데, 같이 맞춰보는 건 어떨까요?🧪 제안 수정
- startDate = LocalDate.of(2025, 11, 12), - endDate = LocalDate.now(), + startDate = LocalDate.of(2025, 11, 12), + endDate = LocalDate.of(2025, 11, 30),🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@feature/stats/detail/src/main/java/com/twix/stats/detail/component/SummaryContent.kt` around lines 173 - 174, The preview uses a moving end date (LocalDate.now()) which makes snapshots unstable; in SummaryContent.kt change the endDate usage so it is a fixed LocalDate constant (instead of LocalDate.now()) to match the fixed startDate (refer to the startDate and endDate assignments in SummaryContent.kt) so previews remain deterministic for QA/capture comparison.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@core/design-system/src/main/res/values/strings.xml`:
- Around line 42-44: The string resource date_year_month_day uses non-indexed
placeholders which prevents reordering in translations; change its placeholders
to indexed form matching date_year_month_day_no_padding (e.g., use %1$s, %2$02d,
%3$02d style) so translators can reorder parts per locale while preserving
zero-padding for month/day.
---
Nitpick comments:
In
`@feature/stats/detail/src/main/java/com/twix/stats/detail/component/SummaryContent.kt`:
- Around line 173-174: The preview uses a moving end date (LocalDate.now())
which makes snapshots unstable; in SummaryContent.kt change the endDate usage so
it is a fixed LocalDate constant (instead of LocalDate.now()) to match the fixed
startDate (refer to the startDate and endDate assignments in SummaryContent.kt)
so previews remain deterministic for QA/capture comparison.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yml
Review profile: CHILL
Plan: Pro
Run ID: 4865cb7f-89c7-4fcb-9000-67d252394356
📒 Files selected for processing (9)
core/design-system/src/main/java/com/twix/designsystem/components/stats/PictureDayCell.ktcore/design-system/src/main/java/com/twix/designsystem/components/stats/StampCell.ktcore/design-system/src/main/java/com/twix/designsystem/components/stats/StatsCalendar.ktcore/design-system/src/main/res/values/strings.xmlcore/util/src/main/java/com/twix/util/.gitkeepfeature/main/src/main/java/com/twix/stats/component/EndStatsContent.ktfeature/photolog/capture/src/main/java/com/twix/photolog/capture/PhotologCaptureViewModel.ktfeature/stats/detail/src/main/java/com/twix/stats/detail/StatsDetailScreen.ktfeature/stats/detail/src/main/java/com/twix/stats/detail/component/SummaryContent.kt
💤 Files with no reviewable changes (1)
- core/util/src/main/java/com/twix/util/.gitkeep
| <!-- 날짜 포맷 --> | ||
| <string name="date_year_month_day">%s년 %02d월 %02d일</string> | ||
| <string name="date_year_month_day_no_padding">%1$d년 %2$d월 %3$d일</string> |
There was a problem hiding this comment.
date_year_month_day도 위치 지정자를 맞춰 주세요.
지금 포맷은 %s년 %02d월 %02d일이라 기본 리소스에서는 보이지만, 번역 리소스에서 연/월/일 순서를 바꾸기 어렵습니다. date_year_month_day_no_padding처럼 인덱스 기반 placeholder로 맞춰 두면 로케일별 재배치가 쉬워집니다.
🔧 제안 수정
- <string name="date_year_month_day">%s년 %02d월 %02d일</string>
+ <string name="date_year_month_day">%1$s년 %2$02d월 %3$02d일</string>As per coding guidelines, "다국어 지원을 고려했는가?"
📝 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.
| <!-- 날짜 포맷 --> | |
| <string name="date_year_month_day">%s년 %02d월 %02d일</string> | |
| <string name="date_year_month_day_no_padding">%1$d년 %2$d월 %3$d일</string> | |
| <!-- 날짜 포맷 --> | |
| <string name="date_year_month_day">%1$s년 %2$02d월 %3$02d일</string> | |
| <string name="date_year_month_day_no_padding">%1$d년 %2$d월 %3$d일</string> |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@core/design-system/src/main/res/values/strings.xml` around lines 42 - 44, The
string resource date_year_month_day uses non-indexed placeholders which prevents
reordering in translations; change its placeholders to indexed form matching
date_year_month_day_no_padding (e.g., use %1$s, %2$02d, %3$02d style) so
translators can reorder parts per locale while preserving zero-padding for
month/day.
이슈 번호
#126
작업내용
통계 화면에서 발견된 QA 항목들을 수정
통계 메인 화면
통계 상세페이지
Box로 감싸고contentAlignment = Alignment.Center적용하여 상단 border와의 간격 이슈 해결%1$s %2$d/%3$d→%1$s - %2$d/%3$d(하이픈 추가)rotate(-16f)→rotate(16f))03월 03일→3월 3일)<string name="date_year_month_day_no_padding">%1$d년 %2$d월 %3$d일</string>결과물
종료 탭 간격 조정
리뷰어에게 추가로 요구하는 사항 (선택)
미완료 항목은 노션 QA 해당 항목의 페이지에 의견 남겨놨으니 확인해줘 !