← Docs hub

SKIX Robotics Framework — System 6인 Manager R&R 및 전체 TODO

목적: 초안 Blueprint를 그대로 구현 명세로 취급하지 않고 제품 요구와 현재 소스에서 목표 구조를 먼저 도출한다. 그 구조의 각 계층에 결과 책임을 배정하고, HAL 전문 구현 책임이 모든 담당자에게 퍼지지 않도록 경계를 정한다.

현재 문서 상태: 아래 M1–M6은 제안된 책임 슬롯이다. 실제 담당자 이름·투입률·대체 담당은 팀이 배정해야 한다. 이 문서는 특정 개인에게 이미 일이 배정됐다는 뜻이 아니다.

빠른 읽기

먼저 볼 것 결론
분배 방식 Blueprint·cross-layer architecture(M1), SDK/consumer(M2), 공통 control/execution(M3), AMR mobility(M4), Cleaning/SafeCare 운영(M5), Android platform build/runtime/제품 검증(M6)으로 결과 책임을 나눈다. HAL/MCU 코딩은 WBS에서 지정한 BSP/HAL 전문가가 맡는다.
단일 책임 기능별로 완료를 승인할 Manager는 한 명이다. 공동 작업자는 있어도 승인 책임을 나누지 않는다.
설계 일 분배 설계는 요구·현행 owner → API/실행 계약 → domain/device 계약 → build/dependency topology → 이관·수용 다섯 묶음으로 나눈다. M2–M6이 자기 영역 산출물을 작성·승인하고, M1은 근거·교차 경계·ADR을 통합한다. M6은 제품 탑재·기동을 맡고 HAL 구현자는 별도 지정한다.
현재 코드 owner 폴더를 옮기거나 SDK를 추가해도 기존 DeviceAgent·IotAgent·EventAssetAgent의 실제 실행 owner는 자동 이전되지 않는다.
이번 최우선 Blueprint 요구 도출·초안 검증 → 계층/의존성·owner 확정 → SDK/제품 caller 정합 → AOSP 빌드·탑재 → Binder/기동 → 기기 검증 순으로 간다.
전체 TODO 아래 WBS에서 상태, 담당, 선행 조건, 완료 증거를 확인한다. 상세 실행 카드는 실행 TODO에 둔다.

책임 배치 한눈에 보기

계층 책임 담당

M1 — System Architecture & Blueprint Owner

책임 결과: 실제 제품 요구와 두 브랜치 근거를 통해 승인 가능한 Blueprint, 계층 경계, R&R과 단계별 구축 범위를 만든다.

M2 — SDK Contract & App Consumers

책임 결과: 모든 앱과 Framework가 같은 Java/AIDL 의미, artifact 버전, 호환 규칙을 사용한다.

M3 — Common Control, Task & Safety

책임 결과: 모든 domain에서 caller 확인, admission, 공통 policy/resource 판단, task/operation 추적과 terminal 상태 의미가 일관된다.

제품 기능 담당

M4 — AMR Mobility

책임 결과: 이동·위치·station 작업을 요청부터 상관관계가 있는 AMR 결과와 중단 근거까지 추적한다.

M5 — Cleaning & SafeCare Operations

책임 결과: 청소·예약·리포트와 SafeCare 운영 흐름의 기능 의미가 유지되고, 중단은 전체 실행이 멈춘 증거로 확인된다.

M6 — Android Platform Integration & Verification

책임 결과: 승인된 Framework/SDK 산출물이 Android 제품 빌드와 서비스 실행 경로에 실제로 연결되고, 단계별 검증 증거가 만들어진다.

기능별 owner 및 인계표

담당 Manager는 제품 결과에 대한 단일 책임자다. 현재 실행 owner는 현재 command 또는 데이터를 실제 수행·보유하는 코드다. 인계 완료 조건이 충족되기 전까지 기존 owner가 유지된다.

기능 결과 Accountable 현재 실행·데이터 owner 함께 보는 역할 다음 완료 증거
AOSP host, package, permission, boot/restart M6 (architecture approval M1) SkixFrameworkService 및 product init/client 경로(제품 caller 확정 필요) M2, M3, 기능 owner fresh APK → image 포함 → boot/service 상태 연쇄 증거
Public SDK, AIDL, AAR/JAR, compatibility M2 canonical SDK + 기존 앱의 Binder/service 구현 기능 owner, M1 caller/wire diff ledger, artifact SHA, 영향 앱 matrix
Root Binder discovery / caller authorization M3 현재 Host/endpoint 조합; 일반 public root 경로는 확인 필요 M1, M2 허용·비허용 UID 왕복, manager discovery, death/reconnect
Task, queue, admission, cancel, deadline, completion M3 services/core/execution와 각 domain executor M2, M4, M5, M6 상태전이·경쟁 회귀와 ACK/physical completion 구분
Capability, policy, resource, canonical state, health M3 Framework 공통 제어 + 각 제품 source 도메인 owner, M6 freshness/authority/resource recovery 통합 검증
AMR move, map/position, station M4 DeviceAgent AMR/Robot movement owner M3, M2, M6, M1 requestId 연동 및 runtime/기기 완료·중단 결과
Cleaning, fan/mode, schedule, report, full stop M5 DeviceAgent cleaning managers M3, M2, M1 sub-action stop ACK와 전체 중단 확인, consumer 연동
SafeCare eligibility/permit/authority M3 현 DeviceAgent security policy와 Framework gate 후보 M5, M2 허용/거절 근거, expiry/revoke/stop 경계
SafeCare 화면/session 및 Launcher 흐름 M5 EventAssetAgent screen/session; 현 WSS transport owner M2, M3, 실제 앱 owner 호출자 migration 및 operation/session correlation
IoT/MQTT session·callback Android transport adapter A: M6; use-case A는 W00에서 배정 IotAgent/DeviceAgent MQTT 경로 M2, M3, 기능 owner generation/rebind 뒤 새 관측·event 증거
AirQuality sensor/priority HAL/MCU A: 지정 BSP/HAL owner; Android integration A: M6; state/policy A: M3; feature A는 W00에서 배정 DeviceAgent/AppInfo/MCU protocol 및 report producer M2, M3, M1, domain owner live payload·unit·freshness·fallback 확인
Power/Battery observation device adapter A: M6 또는 Android source A: M6; canonical state A: M3 기존 Agent/Android PowerManager producer M2, M3 callback부터 canonical state까지 freshness 확인
Camera command/session/error HAL/device driver A: 지정 BSP/HAL owner; Android integration A: M6; authority/resource A: M3; session feature A는 W00에서 배정 DeviceAgent camera operation owner M2, 실제 camera consumer owner, M1 consumer compile, session/error/runtime 확인
Provisioning 및 legacy system settings 기능 A는 W00에서 현재 caller로 지정; Android integration은 M6 SetupWizard/Settings/SystemProperties/DeviceAgent adapters M6(platform), M3(authority), M2(contract) persist/reboot/callback 제품 검증
Alert, maintenance, self-test M3 각 기존 Framework/product producer; 착수 시 실제 source owner를 기록 M2(contract), M6(product runtime) 각 기능의 caller·상태 전이·제품 producer를 확정하고 회귀
Managed TTS command/lifecycle M3 Framework TTS execution/endpoint와 현재 audio service M6(Android audio focus/route integration), M2(contract) request ownership/cancel/error와 audio route 증거
SystemUI/display surface M6 (cross-layer decision M1) Android SystemUI/display product component M2(public consumer), M3(authority/state semantics) 실제 component·권한·기동·callback 확인

Alert/maintenance/self-test, TTS, SystemUI/display는 서로 다른 결과이므로 한 줄에서 묶지 않는다. 상세 source owner가 불분명한 기능은 W00에서 caller와 producer를 확인하고 기능 책임자를 배정한다. 장치별 행에서 M6은 Android-side integration 책임을 뜻하고, HAL/MCU 구현 책임은 지정 BSP/HAL owner에게 있다. M6은 domain 결과의 A를 자동으로 맡지 않는다.

계층별 산출물과 인계 규칙

계층 단일 책임 직접 작성·승인하는 결과 다음 계층에 넘기는 것
제품 요구·Blueprint·cross-layer architecture M1 요구 traceability, target/deferred 결정, 구조와 dependency 지도 승인된 계층 계약·제품 통합 요구를 M6에 인계
Public SDK·AIDL·호환 M2 typed API, wire/ABI, artifact 및 consumer matrix caller 계약과 요청/결과 모델
Binder entrypoint·공통 control/task/runtime M3 identity/admission/state/resource/task lifecycle와 공통 service contract domain-neutral 실행 요청·결과 의미
AMR domain M4 이동·위치·station 정책과 결과 의미 hardware-neutral AMR 요청·수용 기준
Cleaning/SafeCare domain M5 청소·예약·report·운영 흐름과 end-to-end outcome hardware-neutral cleaning 요청·stop/complete 조건
Android 제품 build·service runtime·검증 M6 제품별 packaging, service start/Binder 검증 계층별 승인된 산출물의 Android 통합 증거
Device adapter·MCU·HAL/SoC 기능 adapter A + 지정 BSP/HAL owner adapter 계약은 기능 owner/M6, HAL/MCU 구현은 지정 전문가 domain 계약에 맞는 장치 입력/출력

HAL 분담: 여섯 명 중 M6을 HAL 코더로 고정하지 않는다. HAL/MCU 드라이버는 WBS에서 이름·역량·일정을 지정한 SoC/BSP 담당자가 구현한다. M6은 Android 쪽 adapter 접점, 제품 build/package/start, 검증 조율을 책임지고, M4/M5와 추가 기능 A는 기능 의미와 안전·중단 수용 조건을 승인한다. 지정 전문가가 없거나 지원 일정이 확인되지 않으면 HAL-dependent 항목은 외부 의존으로 추적하며 완료 처리하지 않는다.

아키텍처 설계 R&R과 결정권

설계 상세 WBS 1.1–1.12와 선행 산출물/gate는 실행 TODO의 설계 단계에 한 번만 관리한다. 이 표는 책임 배치만 보여준다. 작성자(Author)는 근거와 설계 초안을 만들고, Accountable은 해당 결과를 승인한다.

설계 산출물은 아래 다섯 묶음으로 검토한다. 기존 1.1–1.12 번호는 세부 카드 추적용이며, 각 묶음의 산출물이 gate를 통과하기 전에는 다음 단계로 넘어가지 않는다.

설계 묶음 포함 카드 작성·승인 분담 검토 가능한 결과
D0 요구와 As-Is 책임선 1.1–1.3 M1은 요구 목록·증거 양식, M2–M6과 지정 BSP owner는 각자 caller/owner/build/device 사실 작성; 기능 결과 A가 승인 요구→caller→실행/관측 owner→source/revision→제품 경로 표, 미확정 register
D1 public 및 실행 계약 1.4–1.6 M2는 public/wire, M3는 entrypoint·공통 lifecycle, M4/M5는 domain 결과를 작성; 의미별 단일 A가 승인 API/AIDL·권한·상태전이·cancel/stop/completion 계약과 호환 표
D2 domain·device 연결 1.7–1.8 M4/M5는 caller가 확인된 기능 카드, M6은 Android adapter/source mapping, 지정 BSP/HAL 담당자는 ICD를 작성·승인 각 기능의 단일 실행 owner, observation payload/단위/시각/sequence 및 외부 인계
D3 source·build 구조와 vocabulary 1.9–1.10 M6은 실제 import/build/package/start graph, 각 M2–M5는 계층 의존 근거, M1은 구조·용어 ADR 통합 코드 경로에 대응하는 source/Soong/product graph, 허용·금지 dependency, 이름 생성 조건
D4 정합·수용 계획 1.11–1.12 각 변경의 기능 A와 layer owner가 disposition·rollback·acceptance 작성; M1은 요구 추적, M6은 APK/image/boot/Binder gate 통합 차이별 accept/preserve/merge/defer 결정, 검증 책임표와 차단 조건

작성 원칙: M1은 각 영역의 상세 설계를 대신 쓰지 않는다. M1의 산출물은 통합 요구 지도, 교차경계 ADR, 승인된 target graph와 미결정 register다. M2–M6은 자기 코드/제품 영역의 근거와 계약을 직접 제시한다. 다섯 설계 묶음의 도식은 브랜치 정합 대표 문서의 작업 지도와 설계 구조 SVG를 함께 본다.

책임 공백 처리: 아직 실제 A가 배정되지 않은 Camera, AirQuality, Power, IoT, Interaction, OTA/Provisioning 등의 기능을 M3 또는 M5의 포괄 책임으로 간주하지 않는다. W00에서 현재 caller와 실행 owner를 확인하고 실제 인원/역량/capacity로 기능 A를 지정하기 전까지는 기존 제품 owner 유지 / 신규 설계 승인 보류로 둔다. SDK/API 형식 정합(M2), 공통 control 의미(M3), Android 연결(M6)은 진행할 수 있지만 기능 결과 승인과 실행 owner 이전은 포함하지 않는다.

WBS 설계 작업·검토 가능한 산출물 초안 작성 책임 단일 승인 책임 필수 검토·인계
1.1 제품 목표·SKU·use case·제외 범위·수용 조건을 근거 링크와 함께 등록 M1 취합, 각 M2–M6 자기 영역 요구 수집 M1; 제품 책임자 범위 승인 미확정 제품 입력은 결정자와 기한을 기록
1.2 양 브랜치의 caller→실행 owner→source/module→package/start As-Is map M2 SDK, M3 common server, M4 AMR, M5 Cleaning, M6 Android/product; HAL은 지정 전문가 M1 통합 승인 각 영역 owner가 source/revision 근거에 서명
1.3 기능별 command·observation·state owner와 수명주기 / 중복 owner 표 M4/M5 기능, M3 공통 상태·정책, M6 Android producer, 추가 기능 owner는 W00에서 지정 기능별 단일 A; 교차 충돌은 M1 기존 product execution owner를 유지할지 이관할지 명시
1.4 Public API·AIDL/wire·callback·오류·호환성 표 M2와 해당 기능 owner M2 M3 endpoint 의미, M6 등록·permission 검토
1.5 Binder entrypoint·caller identity·permission·validation·death/reconnect 계약 M3 endpoint, M6 Android component/permission 근거 M3; Android 배치 승인 M6 M2 SDK caller와 비인가 호출 동작을 확인
1.6 capability·policy·resource·task/operation의 공통 상태전이·취소·완료 표 M3 M3 M2 API 결과, M4/M5 terminal evidence, M6 process lifecycle 검토
1.7 각 domain의 요청/결과·policy/state·execution owner·기능 수용 카드 M4 AMR, M5 Cleaning/SafeCare; 나머지는 caller/source 확인 후 별도 A 지정 각 domain A M3 공통 계약, M2 API, M6 runtime 검토; 미배정 domain은 승인 보류
1.8 device observation·adapter·MCU/HAL ICD, 단위·시간·sequence·오류·재연결 handoff Android adapter M6 + 기능 A; HAL/MCU 세부는 지정 BSP/HAL 전문가 기능 A는 동작 의미, BSP/HAL 전문가는 장치 계약 구현자 미지정 또는 ICD 미수신은 외부 의존으로 남김
1.9 실제 source tree·import DAG·Soong/Make/Gradle·process/package/start topology 각 module owner가 의존 증거 작성; M6이 제품 graph 작성 M6 build/package, M1 구조 원칙 금지 import가 실제 build에서 막히는지 확인
1.10 용어 정의와 생성 조건, 허용 dependency 방향, 금지 조합·검사 방식 M1이 초안, 각 계층 owner가 자기 용어 정의 M1 build/test 가능한 규칙은 M6과 enforcement 경로 합의
1.11 브랜치 차이 disposition, 이관 순서, 호환 유지·rollback 조건 M2 SDK, M3 common server, M4/M5 domain, M6 product promotion M1 통합; 각 변경의 기능 A가 승인 변경마다 caller·owner·검증·복구 기준을 연결
1.12 요구→모듈→소비자→APK/image→boot/Binder→기능 검증 matrix 및 RACI/capacity 각 영역 A가 acceptance, M6 제품 단계, 팀장이 실제 6인 배정 M1 cross-layer trace; M6 product gate HAL/BSP 자원, backup, 투입률과 미검증 경계를 기록

이 표에서 Author는 문서와 근거를 직접 만든 사람, A는 그 결과의 의미와 완료를 승인하는 한 사람이다. M1은 모든 설계를 대신 작성하지 않는다. 각 계층 A가 자신의 contract와 현재 소스 근거를 만들고, M1은 요구 trace와 계층 간 모순·용어·범위를 통합한다. 제품 빌드·배치 결정은 M6, public/wire 의미는 M2, 공통 lifecycle은 M3, 도메인 동작은 해당 기능 A가 최종 승인한다.

결정권: M1은 교차 계층 구조·용어·범위 충돌을 ADR로 해결한다. M1은 M2–M5가 소유한 의미를 임의로 대신 결정하지 않는다. 제품 build/package/start 결정과 검증 실행은 M6이 맡고, domain 결과를 승인하는 권한은 M4/M5에 남는다. HAL/MCU의 실제 구현 책임은 명시된 BSP/HAL 담당자에게만 부여한다. 상세 설계에서 Camera, AirQuality, Power, IoT, Interaction 등 추가 domain이 확인되면 실제 caller와 current owner 근거로 feature A를 WBS에 따로 등록한다. M5에 자동 합산하거나 “기타 domain” 한 칸에 숨기지 않는다.

협업·결정 규칙

  1. 모든 작업 카드에 Accountable 1명, 실제 작성자, 검토자, 현재 execution owner, 완료 증거를 쓴다. 폴더 경로만 보고 담당을 정하지 않는다.
  2. API/wire 변경은 M2, 공통 admission/task/resource/state는 M3, 제품 build/package/boot는 M6, cross-layer architecture는 M1, 도메인 결과는 M4/M5 또는 WBS에 지정된 추가 기능 A가 승인한다. 한 변경에 여러 검토자는 있어도 기능 결과 A는 하나다.
  3. 팀 SDK branch의 소스나 DeviceAgent의 파일을 가져와도 실행 owner 변경은 별도 설계·테스트·기기 증거가 있기 전까지 선언하지 않는다.
  4. 테스트, APK 생성, 이미지 포함, 서비스 기동, Binder 성공, 실제 AMR/Cleaning 동작은 다른 완료 단계다. 상위 단계 증거 없이 완료로 표시하지 않는다.
  5. 실제 인원 배정 시 업무량이 같다고 가정하지 않는다. 1~2주 capacity, 운영·긴급 대응 비중, 대체자, 교차 리뷰 가능성을 함께 적고 M6/플랫폼 병목을 재평가한다.

전체 WBS / TODO

아래 목록은 현재 SKIX Framework 작업 범위를 코드 기준으로 나눈 WBS다. TV SoC 예시의 보드 주변기기·인증·Factory 전체를 포함하는 제품 전체 계획은 아니다. 각 번호는 기능 결과를 기준으로 묶었고, 하위 항목은 실제 구현·통합·검증할 작업이다. 상태는 2026-09-30 확인 근거 기준이며, 완료율은 근거 없이 추정하지 않는다.

WBS 작업 구역 A 현재 상태
W00 제품 근거에서 Blueprint 목표 구조 도출 M1 통합, M2–M6 영역별 근거 선행 미완료 — 초안은 목표 구조 승인본이 아님
W01 Framework SDK·AIDL·호환·앱 소비자 M2 진행
W02 Framework Host·Runtime·Health·State M3 (Android process/package는 M6) 내부 계약 구현, 제품 lifecycle 미검증
W03 장치 관측·callback·reconnect M6 Android integration; HAL/MCU 지정 BSP (도메인 의미 M3/M4/M5) 진행
W04 AMR/Cleaning 명령 adapter와 owner 연결 M4 / M5 진행
W05 Capability·Policy·Resource·Admission M3 내부 경계 진행, 제품 adapter 연결 남음
W06 Task·Queue·Cancel·Completion M3 내부 lifecycle 진행, 실제 provider/evidence 연결 남음
W07 Task 기록·재시작·복구 정책 M3 파일 기록 연결, 실행 복구 미완료
W08 Workflow·Schedule·중복 억제 M3 (Cleaning schedule 의미는 M5) 일부 구현·골격
W09 Camera·UI·MCU·Update·Pairing·SafeCare·진단 기능 기능별 A를 W00에서 지정; Android integration M6 부분 골격; 하위 작업별 추적
W10 Managed TTS 기존 경로 유지·검증 TTS lifecycle: M3; Android audio: M6; API: M2 현재 경계 유지·제품 검증 남음
W11 SDK 소비 입력·AOSP APK·제품 이미지·부팅 M6 (SDK 입력 M2, 구조 ADR M1) AOSP Make javac 호환 문제로 차단
W12 Binder·기기·제품 인수 테스트 기능 결과 A + M6/M3 제품·실기기 증거 미검증
W13 증거 기록·대표 페이지 유지 작업 A + 해당 Manager 진행

W00 — 요구·현행 근거에서 Blueprint 도출

W01 — Framework SDK, AIDL, 호환 및 소비 앱

W02 — Host, Runtime, Health, State

W03 — Device Observation, Callback, Reconnect

W04 — AMR 및 Cleaning 명령 경로

W05 — Capability, Policy, Resource, Admission

W06 — Task, Queue, Claim, Completion

W07 — 영속 기록과 재시작 복구

W08 — Workflow 및 Schedule

W09 — 기능별 추가 domain 및 제품 consumer

W10 — Managed TTS 기존 경로 유지·검증

W11 — SDK 소비 입력, AOSP APK, 제품 이미지, 서비스 기동

W12 — Binder·기기·제품 인수

W13 — 검증 기록과 Wiki 유지

다음 작업 착수 순서

  1. W00.1–W00.4: 제품 요구와 양 브랜치 현행 경로를 대조해 초안 Blueprint 항목별 disposition을 만든다.
  2. W00.5–W00.7: 소스/module/runtime 그림, 계층 책임·HAL 지원계획, acceptance와 실제 인원 capacity를 확정한다.
  3. W01–W10: 승인된 target에 근거가 있는 SDK·caller·Framework 기능만 정합한다. 현재 코드 결과는 evidence로 보존하되 자동으로 target architecture로 승인하지 않는다.
  4. W11: AOSP Java target/Make 문제를 해결하고 fresh APK→제품 image→boot 순서로 통과시킨다.
  5. W12: Binder와 기능별 기기 검증을 분리해 수행한다. HAL 시험은 지정 SoC/BSP owner와 진행하고 domain 담당자가 acceptance를 승인한다.
  6. W13: 묶음마다 revision·검증·미검증 근거를 갱신한다.

연결 문서

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