# 지식, 도구 정책, 검증 최적화 ## 목표 기본 모델 서빙과 부하 라우팅이 가능해진 뒤, RAG, context 구성/압축, web search, MCP 정책, tool policy, output validation, retry/fallback을 IOP의 추론 최적화 계층으로 확장한다. NomadCode는 이 계층의 소비자 중 하나이며, 이 Milestone은 특정 Agent Shell에 종속되지 않는 공통 IOP 책임을 정의한다. ## 단계 서빙 라우팅과 최적화 기반 ## 상태 계획 ## 구현 잠금 - 상태: 잠금 - 이유: 기본 serving/load routing 이후에 진행할 최적화 영역이며, 선행 Milestone의 산출물 없이 구현 단위로 내려가면 책임 경계가 흔들릴 수 있다. - 해제 조건: - [ ] 모델 서빙과 부하 라우팅 Milestone의 선행 조건이 충족됨 - [ ] RAG, web search, MCP, tool policy, validation, fallback의 책임 경계가 문서화됨 - [ ] 사용자가 이 Milestone의 구현 구체화와 잠금 해제를 명시적으로 승인함 - 잠금 중 금지: - 코드 구현 또는 `agent-task` 구현 계획 생성 - 특정 클라이언트 전용 metadata/API를 IOP 표준으로 확정 - RAG/MCP/validation 세부 알고리즘을 근거 없이 확정 ## 범위 - RAG 검색과 context 구성/압축 책임 경계 - web search를 IOP 지식 소스로 통합하는 기준 - MCP allow/block/injection 정책과 tool policy 기준 - output validation, retry/fallback, token/속도/품질 최적화 기준 - 모델 호출 로그와 품질 평가 결과를 후속 routing 판단에 연결하는 방향 ## 필수 기능 - [ ] [knowledge-policy] RAG, context, web search, MCP, tool policy, validation은 IOP 책임으로 정의한다. - [ ] [client-surface] 외부 client는 NomadCode 전용 metadata가 아니라 OpenAI-compatible, A2A, IOP native protocol 경계 중 맞는 표면을 통해 IOP를 소비한다. - [ ] [shell-boundary] 특정 Agent Shell이나 Project Workspace UI 요구가 IOP 최적화 책임을 오염시키지 않도록 범위를 분리한다. - [ ] [validation-policy] 검증과 fallback은 모델 선택/라우팅 결과를 보완하는 IOP 내부 정책으로 정의한다. ## 완료 기준 - [ ] 지식 소스, context 구성, MCP/tool policy, validation/fallback 책임 경계가 문서화된다. - [ ] web search가 RAG/context 최적화 후보에 포함된다. - [ ] NomadCode와 다른 외부 agent가 같은 IOP 책임 경계를 소비할 수 있음이 설명된다. ## 범위 제외 - 기본 모델 serving/load routing 없이 RAG/MCP/validation부터 구현 - NomadCode Agent Shell 자체 구현 - NomadCode 전용 Project Workspace, diff/PR/branch/commit UX - OpenCode, Aider, Claude Code, Gemini CLI, Codex CLI adapter 직접 추가 구현 ## 작업 컨텍스트 - 관련 앱: `apps/edge`, `apps/node`, `apps/control-plane` - 관련 패키지 후보: `packages/policy`, `packages/observability`, `proto/iop` - 관련 문서: `docs/architecture.md`, `agent-ops/roadmap/milestones/model-serving-load-routing.md` - 선행 Milestone: 모델 서빙과 부하 라우팅 - 후속 Milestone: Control Plane과 Portal, 정책, 이력, 감사