SK-Intellix DeviceAgent and SoC
DeviceAgent·SoC 영역은 구조화된 요청을 실제 기기 기능으로 실행한다. TaskManager Core, 도메인 executor, callback·completion evidence, reason contract와 planning context가 핵심이다.
먼저 읽을 문서
| 순서 | 문서 | 답하는 질문 |
|---|---|---|
| 1 | TaskManager 이해 가이드 | 기존 직접 호출과 관리형 실행은 무엇이 다른가? |
| 2 | TaskManager 기준 사양서 | Core API, lifecycle, Workflow와 호환성 규범은 무엇인가? |
| 3 | Source-Level Implementation Guide | MR6 코드에서 어느 클래스와 연결점을 수정하는가? |
| 4 | TaskManager Live Monitor | 요청부터 terminal evidence까지 어떻게 관찰하는가? |
SoC TaskManager Framework는 이 문서군의 단일 허브다.
업무별 기준 문서
| 업무 | 문서 |
|---|---|
| DeviceAgent control·event·reason 계약 | DeviceAgent TaskManager API Contract |
| 시스템 앱 typed API | TaskManagerClient AAR API |
| IoT/MQTT | MQTT Task Contract |
| 예약·지연 실행 | Scheduling Runtime Readiness |
| PUI·Voice 기능 경계 | PUI and Voice Task Design Hub |
| capability 조합과 executor closure | Capability Composition Catalog |
| Cloud·On-device 폐루프 | Voice TaskManager Closed Loop |
| 업체 구현과 인수 | Vendor Implementation Workbook |
| 발표용 압축 자료 | DeviceAgent TaskManager 핵심 설명 자료 |
실행 계층
PUI · Product App · IoT · Schedule · Internal Event · optional Planner
-> MainApi
-> TaskManager validation, admission, queue and workflow
-> domain executor
-> existing DeviceAgent API
-> callback and physical evidence
-> common terminal event
TaskManager는 기기 기능을 다시 구현하지 않는다. 기존 기능의 실행 수명과 조합을 공통 계약으로 관리한다. 자연어 해석과 제품 목표 구성은 호출자 또는 선택적 Planner의 책임이다.
책임 범위
| 영역 | 소유 책임 |
|---|---|
| DeviceAgent domain | 이동·청정·보안·화면·TTS·설정의 실제 기능과 안전 규칙 |
| TaskManager Core | 요청 검증, 상태·자원 정책, queue, lifecycle, timeout, 취소와 terminal 판정 |
| Completion adapter | domain callback을 공통 evidence로 변환 |
| Planning context | 위치, 공간, 배터리, 동작 상태, queue와 capability snapshot |
| 외부 호출자 | 사용자·제품 목표, Task·Workflow 구성과 사용자 표현 |
기준 소스
apps/DeviceAgent/app/src/main/java/com/sk/airbot/deviceagent/task/
apps/DeviceAgent/app/src/main/java/com/sk/airbot/deviceagent/MainApi.java
apps/TaskManagerClient/
apps/IotAgent/
apps/SKMLauncher2/
상세 파일 목록과 온보딩 순서는 Source-Level Implementation Guide에만 유지한다.
검증 원칙
| 증거 | 판정 가능 범위 |
|---|---|
| 소스 존재 | 구현 후보 존재 |
| policy·executor 등록 | TaskManager 경로 연결 |
| unit/JVM test | 계약과 runtime 회귀 |
| command ACK | 요청 접수와 dispatch |
| DeviceAgent callback | runtime 상태 변화 |
| 물리·사용자 terminal evidence | 실기기 기능 완료·실패·취소 |
컴파일과 ACK만으로 물리 동작 완료를 주장하지 않는다. 시스템 앱 교체 시 설치본과 신규
APK의 certificate를 비교하고 Android debug certificate APK를 /system/priv-app에 넣지 않는다.
핵심 질문
| 질문 | 문서 |
|---|---|
| TaskManager의 현재 전체 규범은 무엇인가? | 기준 사양서 |
| 신규 기능을 어떻게 Task로 편입하는가? | 구현 가이드 |
| Task 상태와 단계는 어디서 보는가? | Live Monitor · Task Monitor UI |
| 현재 기기 상태를 계획에 어떻게 쓰는가? | Device Context Planning |
| 장기 Task와 예약 Workflow는 어디까지 검증됐는가? | Scheduling Readiness |