oto/agent-ops/roadmap/ROADMAP.md
toki ec3162ff7c feat: pipeline execution result output and core event contract implementation
- Add build result handling with execution status tracking
- Implement pipeline_exe_handle for error handling in pipeline execution
- Update application.dart with proper build result processing
- Add test coverage for application, context, and core functionality
- Add step events archive for core event contract and execution result output
2026-05-22 18:10:59 +09:00

41 lines
3.5 KiB
Markdown

# OTO 로드맵
## 전체 목표
OTO는 YAML 기반 빌드/배포 파이프라인을 실행하는 Dart CLI에서 출발해, Jenkins 내부 실행 도구에 머물지 않고 Edge에 직접 연결되는 가벼운 build/deploy agent로 확장한다.
기존 CLI, YAML 파이프라인, 커맨드 확장 모델은 유지하면서 외부 자동화와 원격 제어가 다루기 쉬운 실행 표면을 만든다.
## Phase 흐름
- CLI 자동화 표면 정리: Jenkins, 파일 실행, 스케줄러로 동작하는 현재 CLI 표면을 장기 호환 경계로 정리하고, command catalog, YAML validation, 실행 결과, step event를 외부 자동화용 계약으로 확장한다.
- Edge bootstrap 기반 `oto-agent`: Jenkins node 연결식 UX를 Edge 중심 bootstrap 경험으로 재해석하고, 대상 머신이 짧은 명령 하나로 agent 설치와 등록을 시작할 수 있는 설치/등록 계약을 정의한다.
- 메시지 기반 빌드 에이전트: `oto agent` 또는 `oto daemon` 모드에서 Edge와 proto-socket 기반 양방향 메시지 통신을 사용하며, OTO를 build/deploy 전용 domain agent로 노출한다.
## Milestone 목록
### CLI 자동화 표면 정리
- [CLI 자동화 기준선 정리](milestones/cli-automation-baseline.md) - 상태: 완료; 목표: 현재 CLI 실행 모드와 핵심 호환 경계를 명확히 정리한다.
- [구조화된 자동화 표면](milestones/structured-automation-surface.md) - 상태: 완료; 목표: 기존 catalog와 validation 기반을 외부 자동화용 출력 계약으로 확장한다.
- [Jenkins 호환 경계 정리](milestones/jenkins-compatibility-boundary.md) - 상태: 계획; 목표: Jenkins 호환 경로를 유지하면서 Jenkins 전용 환경 변수 의존을 제어한다.
### Edge bootstrap 기반 `oto-agent`
- [Edge bootstrap 계약](milestones/edge-bootstrap-contract.md) - 상태: 계획; 목표: Jenkins node 연결식 UX를 Edge bootstrap 설치/등록 계약으로 정리한다.
- [`oto-agent` 등록 흐름](milestones/oto-agent-registration.md) - 상태: 계획; 목표: `oto-agent` 설치 후 Edge 직접 outbound 등록 흐름을 구현 가능한 단위로 정리한다.
### 메시지 기반 빌드 에이전트
- [agent 메시지 프로토콜](milestones/agent-message-protocol.md) - 상태: 계획; 목표: agent register, capabilities, run request 등 기본 메시지 프로토콜을 정의한다.
- [원격 실행 생명주기](milestones/remote-run-lifecycle.md) - 상태: 계획; 목표: 원격 실행, 로그, artifact, cancel, status, self-update 생명주기를 완성한다.
## 로딩 정책
- 일반 작업에서는 `agent-ops/roadmap/ROADMAP.md`를 매번 읽지 않는다.
- 기능 추가, 구조 변경, 스킬 추가/수정, 문서 구조 변경 작업을 수행할 때는 `agent-ops/roadmap/current.md`를 먼저 읽는다.
- `current.md`는 현재 작업 위치가 아니라 활성 Milestone 후보 목록이다.
- `current.md`에는 개인별 현재 작업 위치나 완료 상태를 기록하지 않는다.
- 요청 내용, 현재 브랜치, 변경 파일, 관련 코드 경로를 보고 가장 관련 있는 활성 Milestone 문서를 같은 세션에서 1회 읽는다.
- 활성 Milestone 밖의 작업이면 이 문서의 Milestone 목록을 확인하고 사용자에게 진행 또는 전환 여부를 확인한다.
- 이 문서는 로드맵 생성/갱신, Phase 전환, Milestone 추가/수정 요청이 있을 때만 읽는다.
- 상세 작업과 완료 기준은 각 Milestone 문서의 체크리스트로 관리한다.