7.5 KiB
7.5 KiB
Milestone: OTO Registration Unlock Handoff
위치
- Roadmap:
agent-roadmap/ROADMAP.md - Phase:
agent-roadmap/phase/automation-runtime-bridge/PHASE.md
목표
iop2oto의 OTO registry, bootstrap command, registration online smoke 결과를 OTO repo의 oto-agent 등록 흐름 잠금 해제 근거로 정리한다.
완료 시점에는 OTO가 registration-state를 마무리할 수 있도록 accepted, first heartbeat, online/failed/retry 기준과 실행 evidence가 한곳에 남아 있어야 한다.
상태
[폐기]
구현 잠금
- 상태: 해제
- 결정 필요: 없음
범위
OTO Agent Registry 구현,OTO Bootstrap Command 발급,OTO Registration Online Smoke완료 근거를 OTO 잠금 해제 관점에서 묶는다.- OTO agent config와 bootstrap command가 기존
iop-nodeconfig/bootstrap 인터페이스를 대부분 이어받고, OTO 전용 차이만 명시되어 있는지 확인한다. - registration accepted, 최초 heartbeat, online 전환, failure reason, retry 기준을 OTO
registration-state에 넘길 수 있는 형태로 요약한다. - workspace
.agent-roadmap-sync/locks.yaml의 OTO lock target으로 사용할 수 있는 완료 evidence를 남긴다. - OTO repo의 Dart agent 구현이나 bootstrap script 자체 구현은 OTO repo 책임으로 남긴다.
기능
Epic: [unlock-gate] OTO Unlock Gate
OTO repo의 oto-agent 등록 흐름 잠금 해제에 필요한 iop2oto 쪽 완료 근거를 모은다.
- [upstream-complete]
OTO Agent Registry 구현,OTO Bootstrap Command 발급,OTO Registration Online Smoke가 [검토중] 또는 [완료] 상태이며 각 완료 근거가 확인되어 있다. - [node-interface-parity] OTO agent config와 bootstrap command가 기존
iop-nodeconfig/bootstrap의 필드명, flag 의미, 출력 형식, 진단 흐름을 최대한 유지하고 OTO 전용 차이만 별도로 설명한다. - [online-evidence] registration accepted와 최초 heartbeat 이후 online 전환이 같은 smoke evidence 안에서 확인된다. 검증:
OTO Registration Online Smoke의 실행 명령과 PASS 로그 또는 문서 링크가 남는다. - [failure-retry] unknown token, duplicate connection, heartbeat timeout, bootstrap/registration 실패 reason과 retry 기준이 OTO가 소비할 수 있는 형태로 요약되어 있다.
- [lock-sync-ready] OTO lock entry에서
iop2oto:agent-roadmap/phase/automation-runtime-bridge/milestones/oto-registration-unlock-handoff.md를enable로 동기화할 수 있는 완료 근거가 남는다.
완료 리뷰
- 상태: 폐기
- 요청일: 없음
- 완료 근거:
node-interface-parity는agent-task/archive/2026/06/m-oto-registration-unlock-handoff/01_node_interface_parity/complete.log에서 PASS 완료되었다. - 완료 근거: unlock handoff evidence completion은
agent-task/archive/2026/06/m-oto-registration-unlock-handoff/02+01_unlock_evidence_handoff/complete.log에서 선행 gate 미충족 re-block으로 종결되었으며, bootstrap command와 online smoke evidence가 아직 남아 있다. - 리뷰 필요:
- 사용자가 OTO 독립형 실행 방식 전환을 결정했다
- archive 이동을 승인했다
- 리뷰 코멘트: OTO 독립형 실행 전환으로 Edge 직접 등록 흐름 잠금 해제 handoff가 필요 없어져 폐기한다.
범위 제외
- OTO Dart
oto-agent구현 변경 - OTO bootstrap script 자체 구현
- OTO build/deploy run payload 전체
- Control Plane fleet UI 반영
- 장기 credential rotation과 운영 인증서 관리
작업 컨텍스트
- 관련 경로:
apps/edge/internal/transport,apps/edge/internal/node,apps/edge/internal/events,scripts/e2e-*.sh,../oto/test/oto_iop_connection_smoke_test.dart,../oto/agent-roadmap/phase/edge-direct-oto-agent/milestones/oto-agent-registration.md - 표준선(선택): OTO agent는
iop-nodebootstrap/config UX를 기본형으로 삼고,agent_kind=oto-agent, OTO bootstrap script URL, OTO release asset URL처럼 OTO 책임 경계에 필요한 차이만 추가한다. - 표준선(선택): unlock evidence는 registration accepted와 최초 heartbeat online을 모두 포함해야 한다.
- 표준선(선택): failure/retry 기준은 OTO
registration-state문장으로 옮길 수 있는 수준의 reason 이름과 판정 기준을 포함한다. - 선행 작업: OTO Agent Registry 구현, OTO Bootstrap Command 발급, OTO Registration Online Smoke
- 후속 작업: OTO repo
oto-agent등록 흐름 잠금 해제 검토, OTO Agent Message Boundary - 확인 필요: OTO lock 동기화는 이 Milestone이 [검토중] 또는 [완료]가 된 뒤 update-roadmap 또는 런타임 완료 이벤트로 수행한다.
선행 상태 점검 (2026-06-03, REVIEW_ORU02 재검증)
ORU02 handoff plan의 upstream completion gate 평가 결과다. 상태는 각 선행 Milestone 문서(## 상태)를 source-of-truth로 직접 재확인했다.
- predecessor
01_node_interface_parity: PASS.agent-task/archive/2026/06/m-oto-registration-unlock-handoff/01_node_interface_parity/complete.log확인 결과node-interface-parity가 PASS 완료되었고,rg --sort path -n 'node-interface-parity|iop-node|agent_kind' ...와git diff --check검증이 통과했다. OTO Agent Registry 구현: [완료] — archive 문서agent-roadmap/archive/phase/automation-runtime-bridge/milestones/oto-agent-registry-implementation.md로 이동되었고, 기능 Task(agent-kind-model,compat-node,connected-entry,duplicate-policy)와 registry task group의 3개complete.log가 모두 PASS evidence를 갖는다.OTO Bootstrap Command 발급: [완료] — archive 문서agent-roadmap/archive/phase/automation-runtime-bridge/milestones/oto-bootstrap-command-issue.md로 이동되었고,agent registercommand, one-line bootstrap output, OTO args, config roundtrip evidence가 PASS로 남아 있다.OTO Registration Online Smoke: [진행중] — 현재 실행 가능한 다음 Milestone이며 registration accepted/최초 heartbeat online PASS 로그 또는 smoke evidence는 아직 없다.- upstream-complete gate: 미충족.
OTO Registration Online Smoke가 아직 [검토중] 또는 [완료]가 아니므로 online-evidence(accepted/heartbeat)와 failure-retry(unknown token, duplicate connection, heartbeat timeout, bootstrap/registration 실패 reason과 retry 기준) evidence를 OTOregistration-state로 옮길 수 있는 형태로 수집할 수 없다. 따라서upstream-complete,online-evidence,failure-retry,lock-sync-ready는 아직[x]처리하지 않는다. 이 gate는 사용자 결정이 아니라 선행 Milestone 구현이 완료되어야 닫히는 repo-owned evidence gap이다.
lock sync readiness
- lock checker(
../oto/agent-ops/bin/roadmap-dependency-checker.sh --find-milestone ... rely-on ...) 출력:rely-on:oto:oto-agent-registration. 이 handoff Milestone은 OTO lockoto:oto-agent-registration의rely-on.target이다. /config/workspace/.agent-roadmap-sync/locks.yaml에서 이 target의status는disable이다. enable 동기화 조건: 이 Milestone이 [검토중] 또는 [완료]가 되어 upstream evidence가 한곳에 정리되어야 하며, 동기화 실행은 evidence 없이 직접 수정하지 않고 update-roadmap 또는 런타임 완료 이벤트로만 수행한다. 현재는 upstream-complete 미충족으로disable유지.- 폐기 결정: OTO는 독립형 실행 방식으로 전환될 예정이므로 iop2oto Edge 직접 registration evidence를 OTO
oto-agent등록 흐름 잠금 해제 근거로 넘기는 handoff는 폐기한다.