Skip to content

[NM-458] Amplitude SDK 제거 — 지표를 Firebase 로 일원화 - #163

Merged
ParkMazorika merged 1 commit into
developfrom
feature/NM-458-remove-amplitude
Sep 9, 2026
Merged

ParkMazorika merged 1 commit into
developfrom
feature/NM-458-remove-amplitude

Conversation

@ParkMazorika

@ParkMazorika ParkMazorika commented Sep 9, 2026 •

Copy link
Copy Markdown
Contributor

관련 이슈

  • NM-458

변경 요약

Amplitude SDK 를 걷어내고 지표 수집처를 Firebase Analytics 하나로 모은다. Amplitude 가 실제로 쏘던 이벤트는 app_launch 하나뿐이었고, 그건 GA4 가 first_open·session_start 로 자동 수집한다.

변경 내용

삭제

  • Core/Analytics/Amplitude/AmplitudeService.swift — SDK 래퍼 전체
  • App/Analytics/AppLaunchEvent.swift — app_launch 이벤트
  • HomeFeature/.../HomeEventTracker.swift — 어디서도 호출되지 않던 템플릿 잔재

식별자 배선

  • AnalyticsIdentity.start(includeAmplitude:) → start(). 내부 빌드 분기가 통째로 사라졌다 — dev/prod Firebase 프로젝트가 이미 갈려 있어 막을 이유가 없다. (Amplitude 는 프로젝트가 하나뿐이라 내부 데이터가 운영 지표에 그대로 섞였고, 그게 분기의 유일한 이유였다)
  • is_test_account 사용자 속성과 Firebase UID 식별자는 그대로 유지된다.

빌드 배선

  • Tuist/Package.swift (패키지 + productTypes), Dependency+SPM.swift, Core/Project.swift
  • App/Project.swift 의 Info.plist AMPLITUDE_API_KEY 키
  • Secrets.xcconfig.template, CI 워크플로 4개(ci·cd-beta·cd-beta-external·cd-release)의 키 주입

주석 정리

  • AppEnvironment·Fastfile·RegisterDependencies·PrivacyInfo.xcprivacy 에서 Amplitude 를 근거로 설명하던 자리. isInternal 은 이제 S3 원본 업로드만 가른다.

테스트

  • 로컬 빌드/실행 확인 — tuist install → generate → build App 성공
  • 정상·에러 케이스 확인 — tuist test Core 통과
  • Package.resolved 에서 Amplitude 사라짐 확인
  • 산출된 App.app/Frameworks 에 AmplitudeSwift/AmplitudeCore 없음, Info.plist 에 AMPLITUDE_API_KEY 없음

체크리스트

  • PR 제목이 [NM-XXX] 요약 형식
  • 브랜치명 <type>/NM-XXX-요약 형식
  • 커밋 메시지 [NM-XXX] type: 요약 형식
  • 셀프 리뷰 완료

리뷰어가 봐줬으면 하는 것

1. app_launch 를 Firebase 로 옮기지 않고 버렸다. GA4 의 first_open·session_start 와 같은 정보라 옮기면 같은 걸 두 번 세게 된다. 별도 이벤트로 남기길 원하면 AnalyticsEvent 에 추가하면 된다.

2. PrivacyInfo.xcprivacy 의 NSPrivacyCollectedDataTypeDeviceID 항목은 손대지 않았다. 기기 UUID 수집은 NM-410 클린 컷오버 때 이미 없어졌는데(DeviceIdentifier·X-Device-Id 모두 코드에 없음) 선언만 남아 있다. 이 PR 범위 밖이고, 지우면 App Store Connect 개인정보 영양성분표도 같이 맞춰야 하는 제출 영향 변경이라 주석으로 표시만 해 뒀다. 별도 이슈로 뺄지 판단 필요.

머지 후 정리 (레포 밖)

  • GitHub Actions 시크릿 AMPLITUDE_API_KEY 삭제 — 이제 아무 워크플로도 읽지 않는다
  • 각자 로컬 XCConfig/Secrets.xcconfig 에서 해당 줄 제거 (gitignore 대상)
  • Amplitude 계정/프로젝트 정리 및 기존 데이터 보존 여부 결정

수집처를 Firebase Analytics 하나로 모은다. Amplitude 가 실제로 쏘던 이벤트는
app_launch 하나뿐이었고, 그건 GA4 가 first_open·session_start 로 자동 수집한다.

- AmplitudeService·AppLaunchEvent 삭제
- HomeEventTracker 삭제 — 어디서도 호출되지 않던 템플릿 잔재
- AnalyticsIdentity.start(includeAmplitude:) → start()
  내부 빌드 분기가 사라진다. dev/prod Firebase 프로젝트가 갈려 있어 막을 이유가 없다
  (Amplitude 는 프로젝트가 하나뿐이라 내부 데이터가 운영 지표에 섞였다)
- AppEnvironment.isInternal 은 이제 S3 원본 업로드만 가른다
- SPM 의존성·Info.plist 키·CI 4개 레인의 AMPLITUDE_API_KEY 주입 제거

is_test_account 사용자 속성과 Firebase UID 식별자는 그대로 유지된다.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ch9vPGGKfeTUWMKEsZ3NWM
@ParkMazorika ParkMazorika self-assigned this Sep 9, 2026
@ParkMazorika ParkMazorika added the enhancement New feature or request label Sep 9, 2026
@ParkMazorika
ParkMazorika merged commit 45b5e29 into develop Sep 9, 2026
1 check passed
@ParkMazorika
ParkMazorika deleted the feature/NM-458-remove-amplitude branch September 9, 2026 09:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant