Skip to content

Conversation

l5x5l
Copy link
Contributor

@l5x5l l5x5l commented Aug 1, 2025

[ PR Content ]

1.0 버전 배포 과정 중 발생한 문제를 수정합니다.

Related issue

Screenshot 📸

x

Work Description

  • 설정 화면에서 비구현된 푸시 알림 관련 UI 제거
  • 설정 화면, 루틴 작성 화면와 같은 화면들의 좌상단에 있는 뒤로가기 버튼을 빠르게 2번 클릭한 경우 흰 화면이 표시되는 문제 수정

To Reviewers 📢

  • release/1.0 브랜치는 1.0 버전 배포 도중 리젝으로 인한 수정사항을 처리하는데 사용됩니다!
  • 따라서 추가적인 리젝이 존재한다면 이전에 pr을 승인했더라도 다시 리뷰를 요청드릴 수 있어요!
  • 릴리즈 작업 관련해서 브랜치/이슈는 아직 저희가 명확히 정해놓은게 없어서 일단 제가 임의로 작성했습니다 그래서 이 이슈가 지금까지 수행한 이슈와 비교해서 어색하고 허술한 부분이 있을 것 같아요, 이 부분에 대해 내일(8/2) 의논해서 명확하게 정하면 좋을 것 같습니다!

Summary by CodeRabbit

  • 버그 수정

    • 뒤로 가기 동작 시 이전 화면이 없을 때 발생할 수 있는 오류를 방지하여, 보다 안정적인 화면 전환이 가능해졌습니다.
  • 기능 개선

    • 설정 화면에서 알림 관련 섹션이 제거되었습니다.
  • 기타

    • 앱 버전 코드가 2로 업데이트되었습니다.

Copy link

coderabbitai bot commented Aug 1, 2025

Walkthrough

직접적으로 navigator.navController.popBackStack()를 호출하던 모든 위치에 대해, 이전 백스택 엔트리가 존재하는지(previousBackStackEntry != null)를 확인하는 조건문이 추가되었습니다. 또한, 설정 화면의 "알림" 관련 미구현 UI가 완전히 제거되었으며, 앱 버전 코드가 1에서 2로 증가하였습니다.

Changes

Cohort / File(s) Change Summary
Back Navigation Null Check
app/src/main/java/com/threegap/bitnagil/MainNavHost.kt
모든 popBackStack 호출부에 대해 이전 백스택 엔트리 존재 여부를 확인하는 조건문 추가로 네비게이션 안정성 강화
SettingScreen 알림 UI 제거
presentation/src/main/java/com/threegap/bitnagil/presentation/setting/SettingScreen.kt
"알림" 섹션 및 관련 토글 UI, 불필요한 import 완전 삭제
앱 버전 코드 증가
gradle/libs.versions.toml
버전 코드 1 → 2로 증가 (기타 변경 없음)

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant UI_Screen
    participant NavController

    User->>UI_Screen: 빠르게 뒤로가기 버튼 두 번 클릭
    UI_Screen->>NavController: previousBackStackEntry 확인
    alt previousBackStackEntry != null
        NavController->>NavController: popBackStack()
    else previousBackStackEntry == null
        NavController-->>UI_Screen: popBackStack() 미실행 (아무 동작 없음)
    end
Loading

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Assessment against linked issues

Objective Addressed Explanation
미구현 기능 관련 UI 제거 (#70)
뒤로가기 버튼을 빠르게 2번 클릭시 한번만 동작되도록 수정 (#70)

Assessment against linked issues: Out-of-scope changes

해당 변경사항에서 이슈 목표와 무관한 기능적 코드 변경은 발견되지 않았습니다.

Possibly related PRs

Suggested labels

🐞 Fix

Suggested reviewers

  • wjdrjs00

Poem

토글 알림은 안녕,
뒤로가기는 이제 더 안전해요!
흰 화면 걱정은 저 멀리,
토끼가 깡총깡총 기뻐해요.
버전도 한 칸 높아져,
Bitnagil, 한층 더 든든해졌죠! 🐇✨

Note

⚡️ Unit Test Generation is now available in beta!

Learn more here, or try it out under "Finishing Touches" below.


📜 Recent review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 1c6d67b and 8aa6b68.

📒 Files selected for processing (3)
  • app/src/main/java/com/threegap/bitnagil/MainNavHost.kt (4 hunks)
  • gradle/libs.versions.toml (1 hunks)
  • presentation/src/main/java/com/threegap/bitnagil/presentation/setting/SettingScreen.kt (0 hunks)
💤 Files with no reviewable changes (1)
  • presentation/src/main/java/com/threegap/bitnagil/presentation/setting/SettingScreen.kt
🔇 Additional comments (3)
gradle/libs.versions.toml (1)

8-8: 버전 코드 증가가 적절합니다.

1.0 릴리스를 위한 버전 코드 증가가 올바르게 적용되었습니다. versionName은 "1.0"으로 유지하면서 versionCode만 2로 증가시킨 것이 적절합니다.

app/src/main/java/com/threegap/bitnagil/MainNavHost.kt (2)

91-95: 백 네비게이션 안전성 개선이 우수합니다.

previousBackStackEntry null 체크를 추가하여 연속된 뒤로가기 버튼 클릭으로 인한 화이트 스크린 문제를 해결했습니다. 이는 PR 목표에서 언급된 네비게이션 버그를 직접적으로 해결하는 방법입니다.


140-144: 일관된 네비게이션 안전성 패턴 적용이 훌륭합니다.

모든 navigateToBack 콜백에서 동일한 null 체크 패턴을 일관되게 적용했습니다. 이는 앱 전체에서 안정적인 네비게이션 동작을 보장하며, 사용자가 빠르게 뒤로가기 버튼을 클릭할 때 발생할 수 있는 예외를 방지합니다.

Also applies to: 150-154, 202-206, 224-228, 234-238

✨ Finishing Touches
  • 📝 Generate Docstrings
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch release/1.0

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
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai generate unit tests to generate unit tests for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@l5x5l
Copy link
Contributor Author

l5x5l commented Aug 1, 2025

+) 심사가 통과되었다면 이 release/1.0 브랜치를 main으로 병합하는 pr이 하나 더 올라갈 예정입니다!

@l5x5l l5x5l requested a review from wjdrjs00 August 1, 2025 10:52
Copy link
Member

@wjdrjs00 wjdrjs00 left a comment

Choose a reason for hiding this comment

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

LGTM 입니다요~!

@l5x5l l5x5l merged commit c4a1e0e into develop Aug 2, 2025
2 checks passed
@l5x5l l5x5l deleted the release/1.0 branch August 2, 2025 16:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FIX] 미사용 기능 제거 및 뒤로가기 더블클릭시 네비게이션 에러 수정
2 participants