← Docs hub

SKIX Product Domain Services 리팩터링

Product Domain 전체 상세

원본 SVG 열기

Domain 경계

Canonical Manager ManagerService 기존 API / Agent
SkixAmrManager AmrManagerService AMR+Map / AMRAgent
SkixIotManager IotManagerService IoT / IotAgent
SkixLlmManager LlmManagerService LLMAgent
internal SkixMcuManager McuManagerService MCUAgent
SkixVisionManager VisionManagerService Camera / VisionAgent
SkixUpdateManager UpdateManagerService UpdateAgent
SkixPairingManager PairingManagerService Provisioning / PairingAgent
SkixEventAssetManager EventAssetManagerService EventAssetAgent
SkixCleaningManager CleaningManagerService AirCleaner API
SkixAirQualityManager AirQualityManagerService AirQuality API
SkixPowerManager PowerManagerService Battery·charging·power sleep; Manage battery forwarding
SkixUiManager UiManagerService LCD+Toast
SkixSystemManager SystemManagerService non-power Manage+Setting+Wifi
SkixDiagnosticsManager DiagnosticsManagerService Error+ICT+SelfTest
SkixSecurityManager SecurityManagerService Security API

Vision, Cleaning, Task 관련 scheduling은 generic common manager에 흡수되지 않는다. Task는 실행 계층의 TaskManagerService, scheduling은 TaskSchedulerManagerService가 별도로 소유한다. Cleaning, AirQuality, Power, UI도 각각 CleaningManagerService, AirQualityManagerService, PowerManagerService, UiManagerService가 독립 상태·정책·lifecycle을 소유한다. 초기에 같은 Runtime process를 사용하는 것은 배포·장애 격리 선택이지 도메인 authority 통합이 아니다.

제품 조건도 generic domain manager 하나에 모으지 않는다. 첫 slice에서 Mobility와 Interaction이 각각 자기 상태의 tilt 요구를 만들고 PolicyManagerService가 충돌을 조정하도록 분리했다. 다른 조건의 발견·확정 상태는 도메인 정책 사양 카탈로그에서 관리한다.

상태 판정

설계 완료 소스 반영 JVM 검증 APK 빌드 실기기 검증
15개 Domain 확정 도메인별 concrete *ManagerService lifecycle 골격 + Mobility/Interaction policy rule factory 15개 타입·ID 독립성 + 첫 Tilt rule·5개 typed observation adapter PASS FrameworkService APK PASS producer 연결·실기기 미검증

여기서 lifecycle 골격은 도메인 권위의 파일·타입·component ID를 실제 코드로 분리했다는 뜻이다. 기존 DeviceAgent/Agent의 각 명령 구현까지 이식 완료했다는 뜻은 아니다.

연결

Keyboard shortcuts

⌘K / Ctrl+KOpen command palette
/Focus search
g hGo to home
g pGo to projects
g sGo to sessions
j / kNext / prev row (tables)
?Show this help
EscClose dialogs

Structured queries

Mix key:value filters with free text in the palette:

type:sessionOnly session pages
project:llm-wikiFilter by project name (substring)
model:claudeFilter by model name (substring)
date:>2026-03-01Sessions after a date
date:<2026-04-01Sessions before a date
tags:rustPages mentioning a tag/topic
sort:dateSort results by date (newest first)

Example: type:session project:llm-wiki date:>2026-04 sort:date