iop/agent-roadmap/phase/update-plane-self-update-foundation/milestones/update-plane-stable-protocol.md

4 KiB

Milestone: Update Plane 안정 프로토콜

위치

목표

Edge/Node의 일반 운영 프로토콜이 바뀌어도 업데이트 파이프라인만은 지속적으로 동작하도록 최소 안정 계약을 정의한다. hello/status, release manifest, update command, update event, recovery 판단에 필요한 필드만 장기 호환 레이어로 고정하고, 나머지 실행/운영 프로토콜은 최신 Control Plane 기준으로 수렴시키는 방향을 잡는다.

상태

[스케치]

승격 조건

  • Edge와 Node가 보고해야 할 최소 self/peer 상태 필드를 확정한다.
  • release manifest의 필수 필드와 서명/해시 검증 기준을 확정한다.
  • update command와 update status/event의 상태 전이를 구현 가능한 수준으로 정리한다.
  • 너무 오래된 updater protocol을 만났을 때의 manual/bootstrap fallback 기준을 정리한다.
  • 후속 구현 Milestone과 SDD 필요 범위를 나눈다.

구현 잠금

  • 상태: 잠금
  • SDD: 필요
  • SDD 문서: 없음 (작성 전)
  • SDD 사유: 업데이트 프로토콜, manifest schema, 상태 전이, recovery 규칙이 proto/config/schema와 lifecycle 계약에 직접 닿는다.
  • 잠금 해제 조건:
    • SDD 잠금이 해제되어 있다
    • SDD 사용자 리뷰가 없거나 승인/해결되었다
  • 결정 필요:
    • 기본 release channel과 자동 적용/승인 적용의 제품 정책을 정한다.

범위

  • Edge hello/status에 포함할 version, update_protocol_version, platform, capability, peer version 관찰 정보
  • Node registration/status에 포함할 version, platform, update_protocol_version, connected peer version 정보
  • release manifest의 component, version, protocol, platform, artifact URL, sha256/signature, compatibility 필드
  • update command의 update id, target selector, desired version/channel, drain/restart policy
  • update status/event의 accepted, downloading, verified, staged, draining, restarting, reconnected, completed, failed, rolled_back 상태
  • recovery와 fallback에 필요한 최소 오류 코드와 manual intervention 기준

기능

Epic: [protocol] 안정 업데이트 계약

업데이트를 가능하게 하는 최소 프로토콜을 일반 운영 프로토콜과 분리해 장기 호환 레이어로 정리한다.

  • [status-fields] Edge/Node self 상태와 연결 peer 상태 캐시 필드 후보가 정리되어 있다.
  • [manifest-schema] release manifest와 artifact 검증 필수 필드 후보가 정리되어 있다.
  • [update-command] update command와 target selector, drain/restart policy 후보가 정리되어 있다.
  • [update-events] update status/event 상태 전이와 실패 코드 후보가 정리되어 있다.
  • [fallback] updater protocol 불일치와 artifact 검증 실패 시 fallback 기준이 정리되어 있다.

완료 리뷰

  • 상태: 없음
  • 요청일: 없음
  • 완료 근거: 스케치 상태이므로 완료 근거 없음
  • 리뷰 필요:
    • 사용자가 완료 결과를 확인했다
    • archive 이동을 승인했다
  • 리뷰 코멘트: 없음

범위 제외

  • 일반 RunRequest, provider status, CLI command, OpenAI-compatible/A2A 실행 프로토콜의 전체 호환성 보장
  • 실제 proto/schema 구현과 generated code 갱신
  • release artifact 저장소, 서명 인프라, UI 구현

작업 컨텍스트

  • 관련 경로: proto/iop/control.proto, proto/iop/runtime.proto, apps/control-plane/**, apps/edge/**, apps/node/**, packages/go/version/**
  • 표준선(선택): 업데이트 파이프라인 프로토콜만 안정 ABI로 보고, 나머지 운영 프로토콜은 최신 Control Plane과 Edge/Node 업데이트 수렴을 통해 따라간다.
  • 선행 작업: 없음
  • 후속 작업: Host-local Manager 기반 자체 업데이트, Edge/Node 롤아웃과 복구 정책
  • 확인 필요: release channel 기본 정책, signature 방식, 최소 지원 updater protocol 범위