기능별 상태 책임과 실행 연결 지도
- 이 그림이 답하는 질문: AMR·Cleaning·AirQuality·Vision·IoT·LLM·UI 등 각 기능의 상태와 동작을 누가 최종 책임지는가?
- 읽는 순서: 위 공통 판단에서 각 도메인 상자로 내려가 별도 상태 책임을 확인하고, 맨 아래 공유 실행 연결부와 관측값 반환을 본다.
- 현재 검증 범위: 24개 Manager 계약과 ManagerService 골격을 기준으로 한다. 각 provider의 AOSP·ROS 2·HAL 실연결은 도메인별 후속 검증이 필요하다.
24개 Manager는 Client API이고, 같은 이름의 ManagerService가 상태·정책·결과 해석 owner다.
| 군 | Manager/ManagerService | 주요 입력 → provider → 출력 |
|---|---|---|
| Control | Health, State, Evidence, Policy, Resource, Capability | observations/requirements → Runtime → snapshot/decision/health |
| Execution | Task, Workflow, Scheduler | request/plan → domain dispatcher → feedback/terminal |
| Mobility | AMR, Cleaning, MCU | map/task/safety → AMR Agent·ROS 2·MCU → pose/progress/completion |
| Perception | Vision, AirQuality, EventAsset | sensor/session → camera/sensor Agent → detection/measurement/asset |
| Connectivity/AI | IoT, LLM, Pairing | connection/prompt/session → IoT·LLM Agent → connection/result/session |
| Product | Update, Power, UI, System, Diagnostics, Security | product state → platform/provider → state/evidence/denial |
Cleaning, AirQuality, Vision, UI는 공통 Manager로 합치지 않는다. 공통 State/Policy/Evidence를 사용하되 각각 별도 state machine, typed contract, lifecycle owner를 가진다. ROS 2는 AMR 등 일부 도메인의 provider다.
근거: SkixFrameworkContract.java, ProductDomainManagerServices.java, server/domain/,
server/integration/agent, server/integration/hal, server/integration/mcu.