BLUF
청소연구소 고객앱(kr.co.cleaninglab.user v5.12.1)을 디컴파일해 스택을 확정하고, 원본과 동일 스택(Kotlin + Jetpack Compose + Hilt + Retrofit)으로 예약 퍼널 클론 MVP를 빌드해 Flip3 실기기에서 end-to-end 구동 검증했습니다.
리버싱 결과 (miso=RN과 정반대)
- 스택: 네이티브 Kotlin + Jetpack Compose(1656 refs) + Navigation + Hilt DI + MVVM. RN/Flutter/JS번들 전무.
- 통신: Retrofit+OkHttp+Gson, 단일 게이트웨이
gate.cleaninglab.co.kr, 커스텀auth-token헤더,UserResponse<T>봉투, REST 321개 엔드포인트. - 디자인: Primary
#00BED6, 폰트 Pretendard, 754색 4-state 시맨틱 토큰. - 화면: ~232개, 4탭(홈/나의예약/스토어/더보기), 예약 142화면.
- 예약 퍼널: 13단계 (주소→옵션→일시→매니저→price.v8→onetime.v6→schedule).
- SDK: Kakao(로그인/페이), Firebase(FCM/Crashlytics), Branch+Airbridge+Mixpanel, CameraX+MLKit(카드OCR), Glide.
산출물 (~/projects/re-center/cleaninglab/)
notes/RE_REPORT.md(아키텍처/디자인 415줄),notes/API_CONTRACT.md(321 EP, 630줄),notes/FLOW_SCREENS.md(화면 인벤토리+퍼널)clone/— Kotlin+Compose+Hilt 안드로이드 프로젝트.BUILD SUCCESSFUL, APK 22MB, Flip3 설치·구동.
실기기 E2E 검증
Splash→Home(4탭)→가정집청소→주소→옵션→일시→매니저→요약→결제→완료(예약#778899, 예약확정, 72,000원) 전 구간 자동주행 통과. 백엔드는 prod 서버를 치지 않고 계약서 shape 그대로의 FakeRepository로 구동(@Binds 한 줄 교체로 실백엔드 스왑 가능).
남은 슬라이스
정기/부분/주방/원룸/오피스 예약 서브타입, 나머지 3탭 실구현, Kakao 로그인, 실백엔드 어댑터, FCM.
툴체인 노트
JDK21 + Android SDK(~/Android/Sdk, platform-35) + Gradle 8.9 신규 설치. APK 확보=apkcombo→pureapk가 Cloudflare 차단 → CDP Chrome(:9222)로 variant 링크 클릭 다운로드. 실기기 검증은 스크린샷 미로드(PIL 브랜드색 스캔으로 CTA 좌표 역산, 세션보호 정책 준수).