2.9 KiB
2.9 KiB
| ui_doc_type | view_id | status | frame | source_evidence | regions | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| view | app-shell | 구현됨 | null |
|
|
App Shell
View ID: app-shell
Frame:
- 없음
Status: 구현됨
Source Evidence
| Type | Path | Notes |
|---|---|---|
| code | lib/src/features/app_shell.dart |
AppSokShell, _BrandHeader, _TopBar, _StatusPill, _pages |
| docs | README.md |
Current Scaffold feature 목록 |
| user | 없음 | agent-ui 생성 요청 |
Purpose
AppSok의 primary navigation과 현재 feature page를 호스팅한다. shell은 pending install handoff, console target device, install result 같은 cross-page 상태를 소유한다.
Primary Users
- Android artifact를 Mac에서 설치하고 확인하는 개발자 또는 QA 담당자
Primary Tasks
- 빌드, 디바이스, 콘솔, 설정 화면으로 전환한다.
- Jenkins/ADB 상태를 top bar에서 확인한다.
- 빌드 화면에서 준비한 APK를 디바이스 화면으로 넘긴다.
Information Priority
- 현재 선택된 feature page의 제목과 업무 영역
- NavigationRail의 AppSok brand 및 주요 화면 목록
- Jenkins/ADB 상태 pill
Regions
| Region ID | Purpose | Component | Priority | Notes |
|---|---|---|---|---|
app-shell.nav |
AppSok brand와 네 개의 primary destination 제공 | shell-navigation |
high | 빌드, 디바이스, 콘솔, 설정 |
app-shell.top-bar |
현재 page title과 Jenkins/ADB status 표시 | status-pill |
medium | 현재 구현은 대기 상태 pill 두 개를 고정 표시 |
app-shell.content |
선택된 feature page 렌더링 | 없음 | high | _pages[_selectedIndex].child |
Actions
| Action ID | Trigger | Result | Guard |
|---|---|---|---|
app-shell.select-page |
NavigationRail destination 선택 | 선택 page를 content region에 표시 | 없음 |
app-shell.handoff-install |
build artifact 설치 요청 | pending install 상태를 만들고 devices로 이동 |
staged APK가 있음 |
app-shell.open-console |
device tile의 logcat action | console target device를 설정하고 console로 이동 |
device가 ready |
States
- loading: child page가 자체 loading state를 표시한다.
- empty: child page가 자체 empty state를 표시한다.
- error: child page가 자체 error state를 표시한다.
- permission-denied: Jenkins credential 문제는
builds와settings에서 표시한다.
Open Questions
- 없음
Decision History
- 2026-06-25:
AppSokShell구현을 shell view 기준으로 기록했다.