Skip to content

[fix] 비로그인 시에도 설정 화면 접속 가능하도록 수정#1543

Merged
JaeYoung290 merged 3 commits into
developfrom
fix/allow-setting-access-without-login
Jul 22, 2026
Merged

[fix] 비로그인 시에도 설정 화면 접속 가능하도록 수정#1543
JaeYoung290 merged 3 commits into
developfrom
fix/allow-setting-access-without-login

Conversation

@JaeYoung290

@JaeYoung290 JaeYoung290 commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

PR 개요

PR 체크리스트

  • Code convention을 잘 지켰나요?
  • Lint check를 수행하였나요?
  • Assignees를 추가했나요?

작업사항

  • 버그 수정
  • 신규 기능
  • 코드 스타일 수정 (포맷팅 등)
  • 리팩토링 (기능 수정 X, API 수정 X)
  • 기타

작업사항의 상세한 설명

  • 비로그인 시에도 설정화면에 접속 가능하도록 수정하였습니다.

논의 사항

스크린샷

추가내용

  • develop, sprint 브랜치를 향하고 있습니다
  • production 브랜치를 향하고 있습니다

Summary by CodeRabbit

  • 변경 사항
    • 프로필 화면에서 설정 클릭 시 동작이 변경되었습니다.
    • 설정 관련 안내 이벤트를 기록한 뒤, 로그인 여부와 관계없이 설정 화면으로 이동합니다.
    • 기존에 비로그인 상태에서 로그인 화면으로 자동 전환되던 흐름은 제거했습니다.

@JaeYoung290
JaeYoung290 requested a review from a team as a code owner July 21, 2026 13:43
@coderabbitai

coderabbitai Bot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 59929cdb-75ca-489f-aa9c-07d58f07ce6b

📥 Commits

Reviewing files that changed from the base of the PR and between f4556ed and 3f101df.

📒 Files selected for processing (1)
  • feature/profile/src/main/java/in/koreatech/koin/feature/profile/ProfileScreen.kt

Walkthrough

ProfileScreen의 설정 클릭 처리에서 로그인 여부에 따른 분기를 제거하고, 모든 상태에서 설정 화면 이동 콜백을 호출하도록 변경했습니다.

Changes

프로필 설정 이동

Layer / File(s) Summary
설정 클릭 처리 변경
feature/profile/.../ProfileScreen.kt
HOME_SETTINGS 이벤트 로깅을 유지하고, 로그인 여부와 관계없이 onNavigateToSetting()을 호출하도록 변경했습니다. 기존 비로그인 사용자의 로그인 화면 이동 로직은 제거되었습니다.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Suggested reviewers: kongwoojin, ttrr1007

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed 비로그인 상태에서도 설정 화면으로 이동 가능하게 한 변경을 정확히 요약한 제목입니다.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/allow-setting-access-without-login

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.

@github-actions github-actions Bot added the fix Code fix label Jul 21, 2026
@JaeYoung290 JaeYoung290 self-assigned this Jul 21, 2026
@bcsd-b-bot bcsd-b-bot Bot added the ci:passed label Jul 21, 2026
} else {
navigator.navigateToSignIn(context, DEEPLINK_MAIN_PROFILE).let { context.startActivity(it) }
if (!uiState.isLoggedIn) {
EventLogger.logCampusClickEvent(AnalyticsConstant.Label.LOGIN_PROMPT, "설정(비로그인)")

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

[Minor] LOGIN_PROMPT 레이블 의미 불일치

LOGIN_PROMPT라는 레이블은 로그인 유도 팝업이나 안내가 표시될 때 사용하는 이름처럼 읽힙니다. 그러나 이 PR의 목적 자체가 "로그인 없이도 설정 화면 진입 허용"이므로, 실제로는 로그인 유도 없이 설정 화면으로 바로 이동합니다.

분석 결과를 오해 없이 추적하려면 레이블을 행동을 정확히 표현하는 이름으로 변경하는 것이 좋습니다.

Suggested change
EventLogger.logCampusClickEvent(AnalyticsConstant.Label.LOGIN_PROMPT, "설정(비로그인)")
EventLogger.logCampusClickEvent(AnalyticsConstant.Label.SETTINGS_WITHOUT_LOGIN, "설정(비로그인)")

혹은 기존 AnalyticsConstant 규칙에 맞게 Profile.HOME_SETTINGS_WITHOUT_LOGIN 같은 네이밍도 고려해 볼 수 있습니다. 분석팀과 레이블 명세를 먼저 조율해 주세요.

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.

설정(비로그인) 로깅이 필요한가요?

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.

명세에도 없는 로깅 같은데 흠..

@JaeYoung290 JaeYoung290 Jul 22, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

명세에는 없었지만 이전에 프로필 모듈을 분리하면서 있었던 로깅이라 우선 추가했습니다!

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

커밋 히스토리 확인 결과 제거하는 것이 맞는 것 같아서 제거하겠습니다.

@@ -76,11 +76,10 @@ fun ProfileScreen(
},
onSettingClick = {
EventLogger.logCampusClickEvent(AnalyticsConstant.Label.Profile.HOME_SETTINGS, "설정")

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

[Info] 비로그인 사용자의 이벤트 이중 발화 — 의도적인지 확인 필요

비로그인 사용자가 설정을 탭하면 아래 두 이벤트가 순차적으로 발화됩니다:

  1. HOME_SETTINGS ("설정") — 78번째 줄
  2. LOGIN_PROMPT ("설정(비로그인)") — 80번째 줄

HOME_SETTINGS는 로그인 여부와 무관하게 모든 탭에서 발화하므로 의도된 동작이라면 문제없습니다. 다만 분석 대시보드에서 "설정 클릭 수"를 집계할 때 비로그인 탭이 두 이벤트에 모두 포함된다는 점을 분석팀이 인지하고 있어야 합니다.

만약 비로그인 상태를 나타내는 이벤트 하나만 발화하면 충분하다면, 아래처럼 조건 안에만 발화시키는 구조도 고려해 볼 수 있습니다.

onSettingClick = {
    if (uiState.isLoggedIn) {
        EventLogger.logCampusClickEvent(AnalyticsConstant.Label.Profile.HOME_SETTINGS, "설정")
    } else {
        EventLogger.logCampusClickEvent(AnalyticsConstant.Label.LOGIN_PROMPT, "설정(비로그인)")
    }
    onNavigateToSetting()
}

현재 이중 발화 방식이 의도된 설계라면 코드 그대로 유지해도 좋습니다. 분석팀과 합의된 내용인지 확인만 부탁드립니다.

@bcsd-b-bot bcsd-b-bot Bot removed the ci:passed label Jul 22, 2026
@JaeYoung290
JaeYoung290 merged commit 2a13080 into develop Jul 22, 2026
6 checks passed
@JaeYoung290
JaeYoung290 deleted the fix/allow-setting-access-without-login branch July 22, 2026 03:53
@sonarqubecloud

Copy link
Copy Markdown

@bcsd-b-bot bcsd-b-bot Bot added the ci:passed label Jul 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants