4 KiB
4 KiB
Milestone: OTO Agent Registry 구현
위치
- Roadmap:
agent-roadmap/ROADMAP.md - Phase:
agent-roadmap/phase/automation-runtime-bridge/PHASE.md
목표
Edge-side registration record와 connected registry가 generic iop-node와 oto-agent를 구분하도록 구현한다.
기존 RegisterRequest(token) handshake는 유지하되 token이 가리키는 record에서 agent_kind=oto-agent를 판별하고 lifecycle/capability 표시의 기반을 만든다.
상태
[완료]
구현 잠금
- 상태: 해제
- 결정 필요: 없음
범위
- Edge config와 in-memory store에 generic node와 OTO agent record를 구분하는 최소 모델을 추가한다.
- 기존
nodes[]기반 generic node 등록 경로와 호환성을 유지한다. - connected entry에 agent kind, alias, id, lifecycle state, optional capability summary를 보존할 수 있는 구조를 만든다.
- duplicate connection과 reconnect 정책은 기존 reject 기본값을 유지하고, replace 허용은 후속 감사/close reason 정의 뒤로 미룬다.
기능
Epic: [registry-model] Agent Registry Model
Edge가 token으로 찾은 record를 generic node 또는 OTO agent로 분류하고 연결 상태를 구분한다.
- [agent-kind-model] Edge-side registration record가
generic-node와oto-agentkind를 표현한다. - [compat-node] 기존
nodes[]와iop-node등록 테스트가 agent kind 추가 뒤에도 깨지지 않는다. 검증:go test ./apps/edge/internal/node ./apps/edge/internal/transport ./apps/edge/cmd/edge - [connected-entry] connected registry entry가 agent id, alias, kind, lifecycle state를 노출할 수 있다.
- [duplicate-policy] 같은 OTO agent identity의 중복 연결은 기본 reject로 처리되고 reason이 구분된다.
완료 리뷰
- 상태: 승인됨
- 요청일: 2026-06-03
- 완료 근거:
agent-task/archive/2026/06/m-oto-agent-registry-implementation/01_config_store/complete.log,02+01_registry_transport/complete.log,03+01,02_service_snapshots/complete.log가 모두 PASS이며 Roadmap Completion에agent-kind-model,connected-entry,duplicate-policy,compat-node완료가 기록되어 있다. - 완료 근거:
go test -count=1 ./apps/edge/... ./packages/go/config, 대상 package 테스트,make test-e2e, repo 내부 edge-node 진단이 PASS로 기록되어 있다. - 리뷰 필요:
- 사용자가 완료 결과를 확인했다
- archive 이동을 승인했다
- 리뷰 코멘트: 2026-06-03 사용자 요청으로 모든 기능 Task 완료 상태를 확인하고 Milestone을 완료/archive 처리한다.
범위 제외
- 장기 credential rotation 구현
- OTO build/deploy run payload 구현
- Control Plane fleet 화면 구현
- DB 영속화와 audit schema 확정
작업 컨텍스트
- 관련 경로:
packages/go/config,apps/edge/internal/node,apps/edge/internal/transport,apps/edge/internal/service,configs/edge.yaml - 완료된 task group:
agent-task/archive/2026/06/m-oto-agent-registry-implementation/ - 완료된 plan 분할:
01_config_store:agent-kind-model완료. Config/NodeStore에generic-node,oto-agentkind 모델을 추가했다.02+01_registry_transport:connected-entry,duplicate-policy완료. Registry entry와 transport registration 경로에 kind/lifecycle과 OTO duplicate reason을 반영했다.03+01,02_service_snapshots:compat-node완료. Service snapshot에 kind/lifecycle을 노출하고 기존 generic node 회귀를 검증했다.
- 표준선(선택):
RegisterRequest에는 kind field를 추가하지 않고, token이 가리키는 Edge-side record에서 kind를 판별한다. - 표준선(선택): registry는 먼저 기존
NodeEntry확장 또는 얇은AgentEntry도입 중 가장 작은 변경으로 시작한다. - 선행 작업: Agent Bootstrap과 OTO 등록, Specialized Agent proto-socket 연결 기반
- 후속 작업: OTO Bootstrap Command 발급, OTO Registration Online Smoke
- 확인 필요: Control Plane에 노출할 agent kind/status 필드 이름은 Control Plane wire 갱신 시 재확인한다.