← Docs hub
SKIX 리팩터링 세부 WBS — 2026-09-22
이 문서는 기존 전체 진행 현황의 W01–W12를 실제 작업단위로 분해한 계획이다. 전체 제품 완료율은 분모가 정해지지 않아 산정하지 않는다. 현재 상태별 task 수는 계획 행의 분포일 뿐 제품 진척률이 아니다. 상태 판정은 원문 progress와 현재 코드 경계를 기준으로 했으며, 원문에 직접 근거가 부족한 항목은 완료로 추정하지 않고 범위 확인으로 두었다. 상세 구조화 데이터는 JSON에 있다.
읽는 법
상태는 다음 의미로만 사용한다. 내부 구현은 저장소 내부 계약이 확인된 행, 일부 연결은 일부 소비자·adapter까지 연결된 행, 다음 구현은 다음 구현 대상으로 원문에 남은 행, 후속 검증은 코드 외 Binder·AOSP·제품·기기 증거가 필요한 행, 보류는 현재 묶음에서 재개하지 않는 행, 범위 확인은 계약·범위 또는 근거를 먼저 확정해야 하는 행이다. 상태는 완료율이 아니다.
- 전체 task: 65개 (전체 작업의 분모는 불확정)
다음 구현 상태 6개: W01.02, W04.03, W05.04, W07.05, W07.06, W08.04 (상태별 집계이며 실행 우선순위와 구분)
- 과거 Framework 995개/95 suites 수치는 이번 문서 작업에서 재실행한 결과가 아니다. DeviceAgent 139개/19 suites도 이번 묶음의 재실행 결과가 아니다.
- 실행 복구, AMR managed provider, Workflow durable 저장은 미완이다. W09는 Vision 내부 세션 구현을 제외하면 대부분 골격·범위 확인으로 읽는다.
- 내부 MovementProviderSession 등록·준비 gate의 테스트는 완료된 범위로 기록하지만, Android transport 생명주기와 실기기 provider·관측은 검증하지 않았다.
편집용 지도와 패널
Mermaid 원본은 편집용 WBS이며, 세부 패널은 영역을 나눠 렌더링한 SVG다. 패널은 JSON의 task ID·상태·완료조건·선행·source·next를 기준으로 생성했다.
· 원본 SVG
· 원본 SVG
· 원본 SVG
· 원본 SVG
향후 공통 규칙과 경계
아래는 skix-framework/ARCHITECTURE.md에 근거한 중장기 계획이다. 이번 WBS에서 새 계층·컴파일 모듈을 즉시 추가하라는 구현 지시는 아니다.
- Architecture Rule / 용어 확산 방지: Manager·Service·Runtime·Provider·Adapter·Endpoint·Gateway·Ingress·Authority는 책임·상태 소유자·의존성 방향을 먼저 입증할 때만 분리한다. Host는 수명, Runtime은 조립, Executor/Dispatcher는 실행·배정을 소유하며 Session·Token·Claim·Permit·Evidence·Policy 명칭을 책임 없이 확산하지 않는다.
- 도메인 optional 구성: state·policy·execution·observation·port와 ManagerService는 독립 책임이 실제로 있을 때만 추가한다. 폴더 트리를 생성 템플릿으로 사용하지 않는다.
- Soong/Gradle 컴파일 경계: 현재
Android.bp filegroup과 Gradle 소스 컴파일은 독립 컴파일 경계가 아니다. 후보 contracts/control/task/domain/entrypoint/runtime 분리는 입력·의존성·중복 패키징을 맞춘 뒤 금지 참조의 컴파일 실패로 인수한다.
영역별 세부 작업
완료조건은 제품 완료 선언이 아니라 해당 행을 닫기 위한 조건이다. source는 계획 이름이 아니라 MR7 checkout 기준의 실제 저장소 상대 경로다.
W01 · SDK·호환
| ID |
작업 / 상태 |
완료조건 |
선행 |
| W01.01 |
typed Manager 공개 경계 정리 · 일부 연결 |
대표 API가 typed Manager 경계를 통과한다 |
— |
| W01.02 |
legacy compatibility 호출 목록화 · 다음 구현 |
legacy 진입점과 대체 typed API의 대응표가 있다 |
W01.01 |
| W01.03 |
DeviceAgent 호출 이관 경계 · 범위 확인 |
DeviceAgent 소비자가 typed API로 이관될 범위가 확정된다 |
W01.02 |
| W01.04 |
SDK discovery ID 계약 · 일부 연결 |
24개 ID의 소유 Manager와 호환 동작이 기록된다 |
W01.01 |
| W01.05 |
중복 실행 회귀 차단 · 후속 검증 |
typed·legacy 동시 호출이 한 실행으로 귀속된다 |
W01.02, W01.03 |
- W01.01 source:
skix-framework/base/core/java · next: 대표 앱 호출 목록과 중복 호환 호출을 대조한다
- W01.02 source:
skix-framework/base/compatibility/java · next: 호환 진입점별 단일 위임 위치를 정한다
- W01.03 source:
apps/DeviceAgent/app/src/main/java · next: 도메인별 소비자와 직접 호출을 추출한다
- W01.04 source:
skix-framework/base/core/java/com/sk/airbot/framework/manager/SkixFrameworkManagers.java · next: ID별 실제 구현·골격·미연결을 코드로 표시한다
- W01.05 source:
skix-framework/base/core/tests/src · next: 동일 요청 중복 실행 검증을 추가한다
W02 · Runtime·Health·State
| ID |
작업 / 상태 |
완료조건 |
선행 |
| W02.01 |
Runtime composition 등록 원자성 · 내부 구현 |
공통 host 조립이 Runtime 책임으로 등록되고 실패 시 부분 구성요소가 정리되며 동일 책임의 Manager·Service를 중복 생성하지 않는다 |
W01.01 |
| W02.02 |
lifecycle 시작·종료 계약 · 내부 구현 |
공통 host 수명 소유자의 start/stop 순서와 실패 cleanup이 일관되고 managed transport 연결과 구분된다 |
W02.01 |
| W02.03 |
Health snapshot 소비 연결 · 일부 연결 |
Health 결과가 제품 소비자에게 명시적으로 전달된다 |
W02.01 |
| W02.04 |
State 세대·순서·TTL · 내부 구현 |
오래된 관측과 세대 역전이 거부된다 |
W02.01 |
| W02.05 |
process death/reconnect 인수 · 후속 검증 |
죽음·재연결 후 health/state 계약이 확인된다 |
W02.02, W02.03, W02.04 |
- W02.01 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/runtime · next: 등록 실패 회귀와 Manager·Service·Runtime 책임 경계를 확인한다
- W02.02 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/control/lifecycle · next: 반복 lifecycle 누락을 점검하고 Android transport 수명 연결은 W11에서 별도 인수한다
- W02.03 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/control/health · next: snapshot 소비자와 미연결 반환을 구분한다
- W02.04 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/control/state · next: 도메인별 state 적용 규칙을 대조한다
- W02.05 source:
skix-framework/base/services/runtime/java/com/sk/airbot/frameworkservice/server/entrypoint · next: Binder death와 재등록 시험 조건을 정의한다
W03 · IoT·Power·AQ·Cleaning 관측
| ID |
작업 / 상태 |
완료조건 |
선행 |
| W03.01 |
IoT 관측 callback·mailbox · 일부 연결 |
IoT 원본 관측이 mailbox와 State에 보존된다 |
W02.04 |
| W03.02 |
Power 원본값 관측 · 일부 연결 |
Power 원본값과 전달준비 시각이 보존된다 |
W02.04 |
| W03.03 |
AQ raw frame·유효성 · 일부 연결 |
AQ raw frame이 변형 없이 유효성 정책에 들어간다 |
W02.04 |
| W03.04 |
Cleaning 팬 RPM·firmware 관측 · 일부 연결 |
100-byte 원본·RPM·firmware가 관측 경로에 남는다 |
W02.04 |
| W03.05 |
관측 reconnect·readiness 귀속 · 범위 확인 |
provider readiness와 관측 세대·순번의 관계가 정해진다 |
W03.01, W03.02, W03.03, W03.04 |
- W03.01 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/iot/observation · next: 실제 callback의 권한·세대·순서를 대조한다
- W03.02 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/power/observation · next: Binder 왕복과 센서 관측 시각을 검증한다
- W03.03 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/airquality/observation · next: 센서 단위와 invalid 샘플 처리를 확정한다
- W03.04 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/cleaning/observation · next: RPM 0을 전체 정지로 승격하지 않는 귀속을 확인한다
- W03.05 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/entrypoint/observation · next: death/reconnect 시나리오별 증거 필드를 정한다
W04 · AMR·Cleaning 명령 adapter
| ID |
작업 / 상태 |
완료조건 |
선행 |
| W04.01 |
AMR canonical operation adapter · 일부 연결 |
AMR 명령이 canonical operation으로 변환된다 |
W01.01 |
| W04.02 |
Cleaning operation·port adapter · 일부 연결 |
Cleaning 명령과 legacy adapter가 한 port를 사용한다 |
W01.01 |
| W04.03 |
managed provider IPC 연결 · 다음 구현 |
실제 provider IPC 호출이 명령 attempt에 연결된다 |
W03.05, W04.01, W04.02 |
| W04.04 |
중단 callback 귀속 · 범위 확인 |
중단 callback이 task의 attempt·epoch·sequence에 귀속된다 |
W04.03 |
| W04.05 |
Cleaning 정지·자원 회수 · 후속 검증 |
정지 callback과 자원 회수가 별도 증거로 확인된다 |
W03.04, W04.03 |
- W04.01 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/amr/port · next: 기존 handler와 operation 매핑을 대조한다
- W04.02 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/cleaning/port · next: 청소 명령의 실행 순서를 기록한다
- W04.03 source:
skix-framework/base/services/runtime/java/com/sk/airbot/frameworkservice/server/integration/agent · next: provider IPC 계약과 오류 반환을 추출한다
- W04.04 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/amr/completion · next: 원본 callback에 없는 식별자를 합성하지 않고 계약을 확정한다
- W04.05 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/cleaning/handoff · next: 팬 관측과 물리 정지 증거를 분리한 시험을 정의한다
W05 · Provider·Resource·Capability·Policy
| ID |
작업 / 상태 |
완료조건 |
선행 |
| W05.01 |
Resource ownership 계약 · 내부 구현 |
자원 owner와 UNVERIFIED 상태가 명시된다 |
W02.04 |
| W05.02 |
Capability readiness · 내부 구현 |
READY 조건과 관측 freshness가 분리된다 |
W03.05 |
| W05.03 |
Policy admission · 내부 구현 |
admission이 policy 결과와 실행 전 재검증을 남긴다 |
W05.01, W05.02 |
| W05.04 |
실제 provider 등록 · 다음 구현 |
managed provider가 등록되고 readiness를 제공한다 |
W04.03, W05.02 |
| W05.05 |
lease 회복·새 관측 확인 · 범위 확인 |
새 관측 전 FREE로 판정하지 않는다 |
W03.05, W05.04 |
- W05.01 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/control/resource · next: 도메인별 resource owner를 표로 고정한다
- W05.02 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/control/capability · next: provider 등록 전후 readiness 전이를 점검한다
- W05.03 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/control/policy · next: AMR·Cleaning 정책 adapter 입력을 연결한다
- W05.04 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/runtime · next: 내부 MovementProviderSession 등록·준비 gate 구현, 다음은 Android transport 생명주기 연결
- W05.05 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/control/resource · next: 재연결 후 lease 회복의 증거 조건을 정한다
W06 · Task 실행
| ID |
작업 / 상태 |
완료조건 |
선행 |
| W06.01 |
Task owner·queue·claim · 내부 구현 |
한 owner만 claim을 소비한다 |
W01.01 |
| W06.02 |
permit·cancel 계약 · 내부 구현 |
permit과 cancel 요청이 task에 귀속된다 |
W06.01 |
| W06.03 |
AMR 실행 조립 · 일부 연결 |
AMR operation이 task execution으로 조립된다 |
W04.01, W05.03, W06.01 |
| W06.04 |
Cleaning 실행 조립 · 일부 연결 |
Cleaning operation이 단일 task owner로 실행된다 |
W04.02, W05.03, W06.01 |
| W06.05 |
MR6 timeout/retry/cancel 대조 · 범위 확인 |
MR6 의미와 현재 terminal evidence 차이가 기록된다 |
W06.02, W06.03, W06.04 |
- W06.01 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/execution/task · next: claim 충돌과 owner epoch 처리를 대조한다
- W06.02 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/execution/task/admission · next: 취소 경로의 terminal 상태를 확인한다
- W06.03 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/amr/execution · next: MovementServices 접수·실행 준비 gate 연결, 다음은 실제 provider·귀속 관측
- W06.04 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/cleaning/execution · next: 중단·완료 callback의 task 귀속을 채운다
- W06.05 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/execution/evidence · next: MR6 task_manager 원본과 의미 차이를 검토한다
W07 · Task 영속 기록·재시작 복구
| ID |
작업 / 상태 |
완료조건 |
선행 |
| W07.01 |
codec 형식·버전 · 내부 구현 |
journal codec이 버전과 checksum을 읽고 쓴다 |
W06.01 |
| W07.02 |
atomic journal 교체 · 내부 구현 |
commit이 원자 교체와 실패 차단을 보장한다 |
W07.01 |
| W07.03 |
owner별 기록 귀속 · 내부 구현 |
Task 변경 전 owner 기록이 저장된다 |
W07.02 |
| W07.04 |
restart read · 일부 연결 |
host 재시작 후 마지막 기록을 조회한다 |
W07.03 |
| W07.05 |
보존·압축·용량 정책 · 다음 구현 |
4096건/8MiB 초과는 deterministic reject로 차단되며 삭제·압축·보존 정책은 아직 정해지지 않는다 |
W07.02 |
| W07.06 |
실행 reconcile · 다음 구현 |
기록 task가 provider 상태 확인 후 reconcile된다 |
W05.05, W07.04 |
| W07.07 |
input resume 정책 · 범위 확인 |
재인증·입력 복구와 명시적 재개 정책이 구분된다 |
W07.06 |
- W07.01 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/execution/task · next: 지원 버전과 거부 규칙을 문서화한다
- W07.02 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/execution/task · next: 부분 파일·checksum 불일치 경로를 점검한다
- W07.03 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/execution/task · next: 중복 owner 요청 차단을 확인한다
- W07.04 source:
skix-framework/base/services/runtime/java/com/sk/airbot/frameworkservice/server/entrypoint/service/SkixFrameworkHostService.java · next: SkixFrameworkHostService 초기화 순서를 대조한다
- W07.05 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/execution/task · next: 현재 reject 동작을 보존하고 보존 기간·압축·용량 회복 기준을 별도로 결정한다
- W07.06 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/execution/task · next: 미확인 실행·자원의 재조정 상태를 정의한다
- W07.07 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/execution/task · next: 재개 가능한 입력과 재확인이 필요한 입력을 나눈다
W08 · Workflow·예약
| ID |
작업 / 상태 |
완료조건 |
선행 |
| W08.01 |
Workflow 골격 정리 · 일부 연결 |
workflow 단계와 task owner 경계가 정의된다 |
W06.01 |
| W08.02 |
scheduler 골격 · 일부 연결 |
scheduler가 task 실행과 분리된다 |
W08.01 |
| W08.03 |
주간 예약 계산 · 내부 구현 |
주간 계산 결과가 결정적으로 재현된다 |
W08.02 |
| W08.04 |
예약 저장·AlarmReceiver · 다음 구현 |
예약 저장과 alarm 수신이 재부팅 후 복구된다 |
W07.06, W08.02 |
| W08.05 |
중복 예약 억제 · 범위 확인 |
동일 예약이 한 task로 귀속된다 |
W08.04 |
- W08.01 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/execution/workflow · next: MR6 workflow 단계와 현재 골격을 매핑한다
- W08.02 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/execution/scheduler · next: 영속 scheduler가 아닌 계산기 경계를 기록한다
- W08.03 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/execution/scheduler · next: WeeklyScheduleCalculator 입력·출력을 검증한다
- W08.04 source:
apps/DeviceAgent/app/src/main/java/com/sk/airbot/deviceagent/domain/schedule · next: MR6 저장·receiver 계약을 추출한다
- W08.05 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/execution/scheduler · next: 재부팅·재연결 중복 조건을 정의한다
W09 · 제품 도메인 이관
| ID |
작업 / 상태 |
완료조건 |
선행 |
| W09.01 |
Vision typed/provider/callback · 내부 구현 |
Vision session과 callback이 typed 계약으로 귀속된다 |
W01.01, W05.02 |
| W09.02 |
UI typed/provider/callback · 범위 확인 |
UI 대표 동작의 provider·callback 경계가 정해진다 |
W01.01, W05.02 |
| W09.03 |
MCU typed/provider/callback · 범위 확인 |
MCU 명령·callback·복구 계약이 정해진다 |
W01.01, W05.02 |
| W09.04 |
Update typed/provider/callback · 범위 확인 |
Update 권한·provider·복구 경계가 정해진다 |
W01.01, W05.02 |
| W09.05 |
Pairing typed/provider/callback · 범위 확인 |
Pairing callback과 권한·복구 계약이 정해진다 |
W01.01, W05.02 |
| W09.06 |
EventAsset typed/provider/callback · 범위 확인 |
EventAsset 저장·callback·권한 경계가 정해진다 |
W01.01, W05.02 |
| W09.07 |
System typed/provider/callback · 범위 확인 |
System 동작의 provider·권한·복구 계약이 정해진다 |
W01.01, W05.02 |
| W09.08 |
Diagnostics typed/provider/callback · 범위 확인 |
Diagnostics 결과와 callback·복구 계약이 정해진다 |
W01.01, W05.02 |
| W09.09 |
Security typed/provider/callback · 범위 확인 |
Security 동작의 권한·provider·복구 경계가 정해진다 |
W01.01, W05.02 |
- W09.01 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/vision · next: 내부 세션 외 제품 호출·권한·복구를 분리한다
- W09.02 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/ui · next: 실제 소비 앱과 권한 요구를 추출한다
- W09.03 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/mcu · next: MCU provider와 DeviceAgent callback을 대조한다
- W09.04 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/update · next: 업데이트 호출자와 persistent 상태를 확인한다
- W09.05 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/pairing · next: PairingAgent IPC와 typed 경계를 대조한다
- W09.06 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/eventasset · next: 기존 eventasset 소비자와 저장 복구를 확인한다
- W09.07 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/system · next: system 호출의 privileged 경계를 추출한다
- W09.08 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/diagnostics · next: 진단 결과 저장과 제품 소비자를 확인한다
- W09.09 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/security · next: signature/UID 요구와 실제 호출자를 대조한다
W10 · LLM·TTS
| ID |
작업 / 상태 |
완료조건 |
선행 |
| W10.01 |
LLM 범위 재확인 · 보류 |
승인된 LLM typed 범위가 별도 기록된다 |
W01.01 |
| W10.02 |
LLM provider 계약 · 보류 |
provider 입력·출력·오류 계약이 승인된다 |
W10.01 |
| W10.03 |
TTS relay 호환 경계 · 보류 |
기존 relay와 신규 typed 경계가 충돌하지 않는다 |
W10.01 |
| W10.04 |
LLM/TTS 검증 계획 · 보류 |
provider·callback·장애 복구 검증 조건이 승인된다 |
W10.02, W10.03 |
- W10.01 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/llm · next: 현재 묶음의 보류 범위를 유지한다
- W10.02 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/llm/port · next: 재개 승인 후 provider 계약을 설계한다
- W10.03 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/integration/agent · next: 기존 TTS host/binder 실제 경로를 확인한다
- W10.04 source:
skix-framework/base/services/core/java/com/sk/airbot/frameworkservice/server/domain/llm · next: 범위 재개 전 검증 기준을 확정한다
W11 · 앱·SystemServer·AOSP 통합
| ID |
작업 / 상태 |
완료조건 |
선행 |
| W11.01 |
Android host 등록 · 일부 연결 |
공통 host가 base runtime과 Cleaning을 조립하는 코드는 연결됐지만 실제 managed transport는 연결되지 않았다 |
W02.02, W03.04 |
| W11.02 |
manifest·signature·UID · 후속 검증 |
private gateway의 manifest·signature·UID가 이미지에서 일치하고 Soong filegroup과 Gradle 입력 차이가 기록된다 |
W05.04 |
| W11.03 |
SELinux·부팅 등록 · 후속 검증 |
부팅 후 서비스·SELinux 허용과 Android 외곽 구현 경계가 확인된다 |
W11.01, W11.02 |
| W11.04 |
Binder lifecycle · 후속 검증 |
Binder 왕복·death/reconnect가 제품 이미지에서 통과하고 core 계약과 Android transport를 컴파일·실행 근거로 구분한다 |
W02.05, W11.03 |
| W11.05 |
앱 API 통합 · 범위 확인 |
대표 앱이 공개 API로 한 번만 실행한다 |
W01.03, W11.04 |
- W11.01 source:
apps/StartupService/app/src/main · next: host 공통 조립 완료와 실제 부팅 등록·managed transport lifecycle 연결을 분리한다
- W11.02 source:
apps/permissions · next: 제품 서명·system UID와 Soong/Gradle 컴파일 입력·중복 패키징을 함께 검증한다
- W11.03 source:
sepolicy · next: clean image 부팅 로그와 transport lifecycle 조건을 정한다
- W11.04 source:
skix-framework/base/services/runtime · next: 클라이언트·서비스 lifecycle과 Soong/Gradle 경계의 컴파일 실패 검증을 실행한다
- W11.05 source:
apps/AirbotSdkProject/app/src/main · next: 대표 앱 호출과 legacy 잔존 경로를 확인한다
W12 · 실기기 인수
| ID |
작업 / 상태 |
완료조건 |
선행 |
| W12.01 |
제품 APK 서명 일치 · 후속 검증 |
설치 APK와 대상 system APK 인증서가 일치한다 |
W11.02 |
| W12.02 |
명령·관측·중단 E2E · 후속 검증 |
실제 명령과 관측·중단·자원 회수가 로그로 귀속된다 |
W04.05, W11.04 |
| W12.03 |
예약·재부팅 인수 · 후속 검증 |
예약이 재부팅 뒤 중복 없이 복구된다 |
W08.04, W11.04 |
| W12.04 |
반복 lifecycle 자원 측정 · 후속 검증 |
heap·PSS/RSS·threads·handles가 반복 측정된다 |
W11.04 |
| W12.05 |
실기기 인수 판정 · 범위 확인 |
미검증 항목과 제품 인수 증거가 함께 판정된다 |
W12.01, W12.02, W12.03, W12.04 |
- W12.01 source:
apps/DeviceAgent/app/src/main · next: apksigner 인증서 비교를 실행한다
- W12.02 source:
apps/DeviceAgent/app/src/main/java · next: AMR/Cleaning 한 회의 상관 로그를 수집한다
- W12.03 source:
apps/DeviceAgent/app/src/main/java/com/sk/airbot/deviceagent/domain/schedule · next: 재부팅 전후 journal·alarm·task를 대조한다
- W12.04 source:
skix-framework/base/services/tests · next: 반복 init/uninit 측정 항목과 기준을 정한다
- W12.05 source:
apps/DeviceAgent/app/src/main · next: 모든 실기기 로그와 서명 증거를 인수 원장에 연결한다
Connections
범위 경계
이 파일은 WBS 계획만 추가한다. 기존 progress 문서, SVG, Mermaid, 생성 산출물은 수정하지 않는다. JVM·정적 조립·APK 패키징은 Binder 왕복, 서명·권한, AOSP 부팅, 물리 실행, 반복 자원 측정을 증명하지 않는다.