# Phase: 운영 관측과 Provider 관리

## 상태

[진행중]

## 목표

IOP가 여러 Edge, Node, CLI Agent, local inference provider를 운영할 때 필요한 사용자/토큰/사용량/로그/provider 상태 관찰 기준을 정리한다.
이 Phase는 완성된 billing, enterprise IAM, provider marketplace를 바로 구현하지 않고, 1차 MVP에서 어떤 운영 데이터를 모으고 어떤 화면/명령으로 검토할지 스케치한다.
provider 확장 Phase에서 검증한 Ollama, vLLM, SGLang, Lemonade 같은 추론 엔진은 provider/device/model 조합으로 관찰하고, 후반부에서는 모델 lifecycle capability와 qualification report를 운영 데이터로 축적하는 방향을 정리한다.

## Milestone 흐름

완료된 Milestone은 archive 경로를 가리키고, 검토중, 진행중, 계획, 스케치 또는 보류 Milestone은 이 Phase 하위 `milestones/` 경로를 가리킨다.
이 흐름은 해당 Phase 안의 상태 정리이며, Phase를 가로지르는 실행 순서는 아니다.
Milestone은 완료, 검토중, 진행중, 계획, 스케치 또는 보류 상태 그룹으로 정리한다.
Phase를 가로지르는 실제 다음 작업 선택은 [전역 마일스톤 실행 순서](../../priority-queue.md)를 우선한다.
스케치 Milestone은 아직 구현 가능한 계획이 아니므로 사용자 검토와 구체화 후 `[계획]`으로 승격한다.

- [완료] Model Alias Provider Pool과 Provider Catalog
  - 경로: [provider-catalog-device-status](../../archive/phase/operational-observability-provider-management/milestones/provider-catalog-device-status.md)
  - 요약: `models[]`를 외부 model key이자 운영 catalog model로 두고, Node 하위 provider와 served model list를 기준으로 Edge가 provider 선택, load-ratio routing, target rewrite, read-only catalog 상태를 소유하는 MVP 계약을 완료했다.

- [완료] Node Resource Model Unification
  - 경로: [node-resource-model-unification](../../archive/phase/operational-observability-provider-management/milestones/node-resource-model-unification.md)
  - 요약: Node를 Edge 연결 identity로 두고 CLI, OpenAI-compatible provider, 기타 resource를 같은 Node 아래 나열하며 provider/resource capacity만 concurrency를 소유하도록 runtime 계약과 dev-runtime 구성을 정렬했다.

- [완료] Node Provider-First Config Surface
  - 경로: [node-provider-first-config-surface](../../archive/phase/operational-observability-provider-management/milestones/node-provider-first-config-surface.md)
  - 요약: Node 설정 표면을 `providers[]` resource list 중심으로 재정렬하고, adapter 설정은 내부 실행 IR 또는 legacy compat로 낮춰 운영자가 한 Node의 CLI/provider 자원을 한 곳에서 이해하고 관리하게 만들었다.

- [완료] Model Group Long-Context Admission
  - 경로: [model-group-long-context-admission](../../archive/phase/operational-observability-provider-management/milestones/model-group-long-context-admission.md)
  - 요약: model group의 단일 context window 계약을 유지하면서 입력 기준 long-context 요청을 별도 slot으로 admission하고, long 요청이 찬 provider와 queue 앞 long 요청이 normal 요청을 불필요하게 막지 않도록 라우팅 정책을 완료했다.

- [완료] 사용자별 OpenAI-compatible 토큰 측정 MVP
  - 경로: [usage-token-log-ops-mvp](../../archive/phase/operational-observability-provider-management/milestones/usage-token-log-ops-mvp.md)
  - 요약: OpenAI-compatible 호출을 IOP bearer token 기반 `principal_ref`/alias로 귀속하고, pure passthrough body를 유지한 채 input/output/reasoning/cached token 사용량을 Prometheus metric으로 측정해 Grafana 조회 기준과 후속 제한 정책 재사용 기준까지 정리했다.

- [완료] 일별 Usage 비용/ROI 리포트 MVP
  - 경로: [daily-usage-cost-roi-report-mvp](../../archive/phase/operational-observability-provider-management/milestones/daily-usage-cost-roi-report-mvp.md)
  - 요약: 기존 OpenAI-compatible token usage metric을 일별/월별로 rollup하고, 운영자가 관리하는 cloud price baseline으로 환산해 사용자/토큰/model/endpoint별 cloud-equivalent cost와 ROI 판단용 avoided-cost를 Grafana/query 중심으로 보는 문서 표면을 완료했다.

- [완료] Provider Resource Admission Ownership 정합화
  - 경로: [provider-resource-admission-ownership-alignment](../../archive/phase/operational-observability-provider-management/milestones/provider-resource-admission-ownership-alignment.md)
  - 요약: 공유 provider의 capacity·long-context lease, 공통 queue policy, Node reconnect/offline fencing과 Control Plane snapshot을 정렬하고 local two-alias capacity-1 smoke까지 검증했다.

- [계획] Provider 부하 메트릭과 Live Queue Dashboard
  - 경로: [provider-load-metrics-queue-dashboard](milestones/provider-load-metrics-queue-dashboard.md)
  - 요약: provider별 capacity 사용률, in-flight, queue 적체, queue wait를 Prometheus time series와 Grafana dashboard로 노출해 시간대별 live 부하 분석을 가능하게 한다.

- [스케치] 요청 실행 로그와 Usage Ledger 기반
  - 경로: [request-execution-log-usage-ledger-foundation](milestones/request-execution-log-usage-ledger-foundation.md)
  - 요약: 사용자 요청 하나의 device/provider/model 선택, queue/dispatch/start/first-token/end 시간, token breakdown, status/error를 구조화된 실행 로그와 usage ledger로 남기는 로그 시스템 개편 후보를 스케치한다.

- [스케치] Provider-Device-Model Qualification 리포트와 Lifecycle 관리
  - 경로: [provider-device-model-qualification-report](milestones/provider-device-model-qualification-report.md)
  - 요약: provider catalog와 device 상태 기준선 뒤에, 여러 모델을 각 device/provider에서 측정하고 공식 공개 benchmark와 함께 보여주는 qualification 리포트, compatibility/performance/quality/lifecycle 비교 경계를 깊게 스케치한다.

- [스케치] Provider Runtime 설정과 모델 획득 오케스트레이션
  - 경로: [provider-runtime-model-acquisition-orchestration](milestones/provider-runtime-model-acquisition-orchestration.md)
  - 요약: IOP가 vLLM, vLLM-MLX, Lemonade 같은 provider runtime의 launch/profile 설정과 모델 후보 선정, 다운로드, 캐시, 검증, 적용 경계를 어디까지 소유할지 장기 후속 축으로 스케치한다.

## Phase 경계

- Control Plane은 Edge/Node 상태를 보기 쉽게 연결하지만 Edge 내부 상태의 canonical store가 되지 않는다.
- provider adapter 구현과 endpoint별 serving 검증은 `추론 서버 provider 확장` Phase 책임으로 둔다.
- provider/device/model qualification report는 provider serving path와 capacity/concurrency 기준선이 잡힌 뒤 이 Phase의 후반부에서 다룬다.
- 이 Phase는 운영 데이터와 제어 표면의 MVP 경계를 다루며, billing/chargeback, 조직 IAM, 상세 audit schema, 장기 retention 정책은 후속 구체화에서 결정한다.
- 누적 요청 컨텍스트 최적화, RAG, advisor, Context Hook, output validation 실행 모드는 `지식과 도구 최적화 확장` Phase 책임으로 둔다.
