Skip to content

[FIX/#309] 2차 QA 매칭, 알림 뷰 문구 수정#310

Merged
seungjunGong merged 6 commits into
developfrom
fix/#309-qa_ui_fix
Apr 9, 2026
Merged

[FIX/#309] 2차 QA 매칭, 알림 뷰 문구 수정#310
seungjunGong merged 6 commits into
developfrom
fix/#309-qa_ui_fix

Conversation

@seungjunGong

@seungjunGong seungjunGong commented Apr 7, 2026

Copy link
Copy Markdown
Member

Related issue 🛠

Work Description ✏️

  • 불필요한 코드 제거
  • 매칭 관리탭 "요청" -> "매칭" 문구 수정
  • 알림화면 종목 변경 문구 수정

Screenshot 📸

N/A

Uncompleted Tasks 😅

  • SSE 이벤트 미반영된 부분 처리

To Reviewers 📢

QA 사항 중 문구가 일부 다른 부분을 수정했습니다.
SSE 쪽은 아직 처리될 부분이 남아서 서버 쪽에서 수정해주시면 새로 이슈 파서 작업할게요.

Summary by CodeRabbit

릴리스 노트

  • 새로운 기능

    • 종목 변경 확인 대화상자에 지역화된 문자열 추가
  • 개선 사항

    • 매칭 관련 화면의 용어 일관성 개선 ("요청"에서 "매칭"으로 변경)
    • 알림 화면의 문자열을 리소스 기반으로 지역화
  • 리팩토링

    • 미사용 메서드 및 함수 제거

- NoticeScreen 내 하드코딩된 문자열을 strings.xml 리소스로 대체
- 종목명(SportType)에 따른 적절한 조사(으로/로) 선택 로직 추가
- 다이얼로그 제목, 부제목, 버튼 텍스트 리소스 추가 및 적용
@coderabbitai

coderabbitai Bot commented Apr 7, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto incremental reviews are disabled on this repository.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 49054e8b-a243-4a53-9dfc-396a036cbaf6

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

워크스루

사용자 정보 관련 저장소 메서드를 제거하고, SportType의 매핑 함수를 삭제하며, ConfirmReviewScreen에서 네비게이션 콜백을 제거하고, NoticeScreen의 하드코딩된 한글 문자열을 매개변수화된 string 리소스로 교체한 QA 수정 사항입니다.

변경 사항

응집 / 파일(s) 요약
저장소 API 변경
app/src/main/java/com/smashing/app/data/repository/api/UserRepository.kt, app/src/main/java/com/smashing/app/data/repository/impl/UserRepositoryImpl.kt
setUserInfo()clearUserInfo() suspend 함수를 저장소 인터페이스 및 구현에서 제거했습니다.
타입 정의 변경
app/src/main/java/com/smashing/app/data/type/SportType.kt
숫자 sportIdSportType으로 매핑하는 companion 함수 findSportType()을 제거했습니다.
UI 화면 변경
app/src/main/java/com/smashing/app/presentation/confirmreview/ConfirmReviewScreen.kt, app/src/main/java/com/smashing/app/presentation/notice/NoticeScreen.kt
ConfirmReviewScreen에서 onBackClick 파라미터를 제거했고, NoticeScreen의 하드코딩된 한글 문자열을 string 리소스로 교체하며 종목에 따라 동적으로 조사를 선택하도록 변경했습니다.
String 리소스 추가
app/src/main/res/values/strings.xml
알림 다이얼로그용 새로운 string 리소스를 추가하고, 매칭 관련 문자열을 업데이트하며, tools 네임스페이스를 추가했습니다.

코드 리뷰 예상 소요 시간

🎯 3 (보통) | ⏱️ ~20분

관련 가능성 있는 PR

추천 라벨

📱UI, 🔨 FIX

추천 리뷰어

  • ShinHyeongcheol
  • vahkjsdf
🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed PR 제목이 변경사항의 주요 내용을 명확하게 요약하고 있으며, QA 매칭/알림 뷰 문구 수정이라는 핵심 변경사항을 정확히 반영하고 있습니다.
Linked Issues check ✅ Passed PR의 모든 변경사항(불필요한 코드 제거, 매칭 관리탭 문구 수정, 알림화면 문구 수정)이 연결된 이슈 #309의 UI 변경 요구사항을 충족하고 있습니다.
Out of Scope Changes check ✅ Passed 모든 변경사항이 이슈 #309의 QA 2차 수정 범위 내에 있으며, 불필요한 메서드 제거, 문구 수정, 로컬라이제이션 적용이 모두 UI/텍스트 개선 목표와 일치합니다.
Description check ✅ Passed PR 설명이 템플릿의 필수 섹션을 모두 포함하고 있으며, 작업 내용, 관련 이슈, 미완료 작업, 그리고 리뷰어 노트가 명확하게 작성되어 있습니다.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/#309-qa_ui_fix

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.

❤️ Share

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

@seungjunGong seungjunGong changed the title [FIX/#309] qa UI fix [FIX/#309] 2차 QA 매칭, 알림 뷰 문구 수정 Apr 7, 2026
@seungjunGong seungjunGong added the 🔨 FIX 버그 수정 label Apr 7, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (1)
app/src/main/java/com/smashing/app/presentation/notice/NoticeScreen.kt (1)

145-147: 조사(으로/로) 선택 로직을 종목 하드코딩에서 일반 규칙으로 분리해 주세요.

Line 146은 현재 BADMINTON만 예외 처리하고 있어, 종목이 추가되면 문구가 쉽게 깨질 수 있습니다. 문자열 말미 받침 기준 유틸로 분리하는 쪽이 안전합니다.

리팩터 예시
-                val sport = uiState.targetChangeSport.sportType
-                val sportText = sport.sportName + if (sport == SportType.BADMINTON) "으로" else "로"
+                val sport = uiState.targetChangeSport.sportType
+                val sportText = sport.sportName + sport.sportName.selectEuroRoParticle()
private fun String.selectEuroRoParticle(): String {
    val last = this.lastOrNull() ?: return ""
    if (last !in ''..'') return ""

    val jong = (last.code - ''.code) % 28
    // 종성이 없거나 종성이 ㄹ(8)이면 "로", 그 외는 "으로"
    return if (jong == 0 || jong == 8) "" else "으로"
}
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@app/src/main/java/com/smashing/app/presentation/notice/NoticeScreen.kt`
around lines 145 - 147, Current logic in NoticeScreen.kt uses a hardcoded
BADMINTON check to pick "으로"/"로" for sport text; extract this into a general
Hangul-final-consonant utility and use it instead of the equality check. Add a
String extension (e.g., selectEuroRoParticle()) that inspects the last Hangul
syllable's jongseong (as in the provided example) and returns "으로" or "로", then
replace the line that builds sportText (currently referencing
uiState.targetChangeSport.sportType and sport.sportName) to append
sport.sportName.selectEuroRoParticle() so new sports won't break the particle
selection.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@app/src/main/res/values/strings.xml`:
- Line 1: Root-level tools:ignore="MissingTranslation" on the <resources>
element hides all missing-translation warnings; change it to target only the
specific string(s) that intentionally lack translations (move
tools:ignore="MissingTranslation" from the root to the individual <string>
entries that need suppression) and add a TODO comment or tracking identifier in
those string entries indicating this is temporary and when/why it should be
removed; update any affected identifiers (string names) accordingly so the
suppression is localized and auditable.

---

Nitpick comments:
In `@app/src/main/java/com/smashing/app/presentation/notice/NoticeScreen.kt`:
- Around line 145-147: Current logic in NoticeScreen.kt uses a hardcoded
BADMINTON check to pick "으로"/"로" for sport text; extract this into a general
Hangul-final-consonant utility and use it instead of the equality check. Add a
String extension (e.g., selectEuroRoParticle()) that inspects the last Hangul
syllable's jongseong (as in the provided example) and returns "으로" or "로", then
replace the line that builds sportText (currently referencing
uiState.targetChangeSport.sportType and sport.sportName) to append
sport.sportName.selectEuroRoParticle() so new sports won't break the particle
selection.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 08ecfc32-68c5-4cd1-b959-ab2dfec8934c

📥 Commits

Reviewing files that changed from the base of the PR and between e7335bf and 2bc7587.

📒 Files selected for processing (6)
  • app/src/main/java/com/smashing/app/data/repository/api/UserRepository.kt
  • app/src/main/java/com/smashing/app/data/repository/impl/UserRepositoryImpl.kt
  • app/src/main/java/com/smashing/app/data/type/SportType.kt
  • app/src/main/java/com/smashing/app/presentation/confirmreview/ConfirmReviewScreen.kt
  • app/src/main/java/com/smashing/app/presentation/notice/NoticeScreen.kt
  • app/src/main/res/values/strings.xml
💤 Files with no reviewable changes (1)
  • app/src/main/java/com/smashing/app/data/repository/impl/UserRepositoryImpl.kt

@@ -1,4 +1,5 @@
<resources>
<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="MissingTranslation">

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

전역 MissingTranslation 무시는 범위를 축소하는 것이 안전합니다.

Line 1에서 루트 resourcestools:ignore="MissingTranslation"를 걸면 신규 문자열 번역 누락이 계속 숨겨집니다. 필요한 항목에만 국소적으로 suppress 하거나, 임시 대응이라면 추후 제거 계획을 명시해 주세요.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@app/src/main/res/values/strings.xml` at line 1, Root-level
tools:ignore="MissingTranslation" on the <resources> element hides all
missing-translation warnings; change it to target only the specific string(s)
that intentionally lack translations (move tools:ignore="MissingTranslation"
from the root to the individual <string> entries that need suppression) and add
a TODO comment or tracking identifier in those string entries indicating this is
temporary and when/why it should be removed; update any affected identifiers
(string names) accordingly so the suppression is localized and auditable.

@oilbeaneda oilbeaneda left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

선생님 고생이 많으십니다

@vahkjsdf vahkjsdf left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

수고 많으셨어용 아자아자

@ShinHyeongcheol ShinHyeongcheol left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

좋아요!! 수고하셨습니다아ㅏㅏ

@seungjunGong seungjunGong merged commit a56ecdf into develop Apr 9, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🔨 FIX 버그 수정

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FIX] 2차 QA 수정

4 participants