# Phase: 사용 가능한 MVP

## 상태

[완료]

## 목표

Jenkins에서 Android artifact를 찾고, Mac에 내려받고, USB로 연결된 Android 기기에 설치한 뒤 logcat으로 확인하는 최소 업무 흐름을 만든다. 이 Phase의 끝에서는 사내 Jenkins 계정 권한과 ADB 연결만 있으면 QR/폰 네트워크 우회 없이 APK 설치가 가능해야 한다.

## Milestone 흐름

완료된 Milestone은 archive 경로를 가리키고, 검토중, 진행중, 계획, 스케치 또는 보류 Milestone은 이 Phase 하위 `milestones/` 경로를 가리킨다.
완료, 검토중, 진행중, 계획, 스케치 순서로 두어 아래로 갈수록 미래 작업에 가까워지게 정렬한다.
스케치 Milestone은 아직 구현 가능한 계획이 아니므로 계획 Milestone보다 아래에 둔다.

- [완료] 제품 골격 안정화
  - 경로: `agent-roadmap/archive/phase/usable-mvp/milestones/product-baseline.md`
  - 요약: Flutter macOS scaffold, 앱 shell, domain/test/roadmap 기반 작업 환경을 실제 구현 가능한 상태로 정리한다.
- [완료] Artifact 탐색과 다운로드
  - 경로: `agent-roadmap/archive/phase/usable-mvp/milestones/artifact-browser.md`
  - 요약: Jenkins job/build/artifact를 조회하고 APK를 Mac에 캐시한다.
- [완료] USB 설치와 device 선택
  - 경로: `agent-roadmap/archive/phase/usable-mvp/milestones/usb-install.md`
  - 요약: 연결된 Android device를 고르고 선택한 APK를 `adb install -r`로 설치한다.
- [완료] Jenkins 로그인과 credential 수명주기
  - 경로: `agent-roadmap/archive/phase/usable-mvp/milestones/jenkins-credential.md`
  - 요약: 사용자별 Jenkins API token 또는 WebView 기반 token 자동화 흐름을 안전하게 저장/검증한다.
- [완료] ADB 콘솔과 logcat
  - 경로: `agent-roadmap/archive/phase/usable-mvp/milestones/logcat-console.md`
  - 요약: 설치 후 바로 문제를 볼 수 있도록 logcat stream, filter, pause/clear 기능을 제공한다.

## Phase 경계

- 이 Phase는 단일 APK 설치를 기준으로 한다. split APK/APKS/AAB는 후속 Phase 후보로 남긴다.
- Jenkins 인증은 사용자별 권한을 전제로 하며, 앱 번들에 공용 token을 넣지 않는다.
- Teams deep link와 조직 배포 정책은 MVP 이후 Phase에서 다룬다.

## 완료 리뷰

- 상태: 승인됨
- 요청일: 2026-06-14
- 완료 근거: 하위 Milestone이 모두 `[완료]`로 정리되었고 마지막 `ADB 콘솔과 logcat`도 코드 레벨 검토와 remote Mac runner 검증을 통과했다.
- 리뷰 필요:
  - [x] 사용자가 Phase 완료 결과를 확인했다
  - [x] Phase archive 이동을 승인했다
- 리뷰 코멘트: 2026-06-16 사용자 승인으로 Phase 완료 및 archive 이동을 반영했다.
