SimpleHR project
FINAL-VERIFICATION.md
sourceedited by Cairni · 방금 · AIv1
개요
이 문서는 모바일 앱 릴리스 후보(RC) 빌드를 스토어에 제출하기 전에 수행해야 할 최종 점검 체크리스트를 정의한다. Expo Go·개발 환경에서 확인할 수 없는 스토어 서명, 외부 HTTPS 링크 연결, 오프라인 콜드스타트, 실제 기기 동작을 TestFlight(iOS)와 Play internal(Android) RC 빌드에서 검증하는 것이 목적이다. FINAL-VERIFICATION.md
현재 판정 요약 (2026-09-01)
/set-password/[token]화면과simplehr.co.kr링크 수신 설정이 구현돼 있다.- 웹에서 비밀번호 설정 완료 후 모바일 새 비밀번호 로그인 폴백을 유지한다.
- Expo Go 확인은 최종 증빙이 아니다. Bundle ID·App Links 서명을 사용하지 않기 때문이다.
- Android Play 앱 서명 SHA-256 미확인으로 App Link 최종 판정은 보류 상태다.
- 운영
assetlinks.json에 자리표시자(REPLACE_WITH_PLAY_APP_SIGNING_SHA256)가 남아 있어 프런트 재배포 후 재확인이 필요하다. - 세션 갱신 일시 실패 시 로그아웃 대신 오프라인 안내 + 연결 복구 흐름으로 처리하도록 구현됐다.
- 모바일 Jest 130 suites · 2,040 tests 통과, TypeScript 검사 통과, ESLint 오류 0건 확인.
4단계 구조
단계별 핵심 항목
1단계 · 최종 빌드 전
- production API
https://simplehr.co.kr· WebSocketwss://simplehr.co.krorigin 확인 - iOS AASA:
P2A3SM9Q2G.kr.co.simplehr.mobile,/set-password/*포함 여부 - iOS signed entitlements:
applinks:simplehr.co.kr포함 여부 - Play Console 앱 서명 키 인증서 SHA-256 확인 (업로드 키와 혼동 금지)
assetlinks.json:kr.co.simplehr.mobile+ 위 SHA-256만 유효 형식으로 포함, 자리표시자 없음
2단계 · 스토어 내부 배포
eas build -p ios --profile production→ TestFlight 업로드eas build -p android --profile production→ Play internal 업로드- Bundle ID / applicationId 모두
kr.co.simplehr.mobile확인 - Expo Go·preview APK 결과로 대체 불가
3단계 · 실제 기기 링크 확인
| 플랫폼 | 핵심 확인 방법 |
|---|---|
| iOS (TestFlight) | Mail·메시지·메모에서 링크 탭 → Safari 아닌 앱 진입 확인 |
| Android (Play internal) | adb shell pm get-app-links kr.co.simplehr.mobile → verified |
- 앱 미설치 기기에서 웹 폴백 동작 확인 필수
- 링크 수동 허용 설정으로 통과시킨 결과는 완료로 인정하지 않음
4단계 · 오프라인 콜드스타트 및 세션 복구
자동 검증 완료 항목 (2026-09-01)
- 일시적 refresh 실패 시
unauthenticated가 아닌offline전환, 저장 세션·푸시 등록 삭제 안 함 - 수동
다시 연결/ NetInfo 전환 / 포그라운드 복귀 시 단일 요청으로 세션 재확인 - 401·403 확정 거부 시에만 로그인 상태·푸시 등록 정리
실기기 보류 항목
- 오프라인 상태에서 앱 재시작 시
SimpleHR에 연결할 수 없어요안내 +다시 연결버튼 표시 - 네트워크 복구 후 자동으로 홈 진입 (자동 복구 없으면 심사 제출 보류)
- iOS·Android 양 플랫폼 동일 RC 빌드에서 통과해야
완료
완료 기록 항목
확인 기록 템플릿에는 다음을 기재한다.
- RC SHA, iOS TestFlight build ID·build number, Android Play internal build ID·versionCode
- Play 앱 서명 SHA-256 확인자·확인 시각
- iOS·Android 기기·OS, adb domain state
- 웹 폴백 및 모바일 재로그인 결과
- iOS·Android 오프라인 콜드스타트 및 네트워크 복구 결과
- 외부 링크·오프라인 세션 복구·모바일 심사 기능 최종 판정 (완료 / 보류)