3.9 KiB
3.9 KiB
Milestone: IOP 분석 실행 연동
위치
- Roadmap: ROADMAP.md
- Phase: PHASE.md
목표
고정된 수정 작업 입력을 IOP 분석 요청으로 전달하고 순서 있는 실행 이벤트를 Ariadne 상태와 이력에 반영한다. 연결 단절이나 IOP 실패가 발생해도 오류 원인과 재개 위치를 잃지 않으며 IOP 내부 형식을 Ariadne 도메인에 노출하지 않는다.
상태
[계획]
승격 조건
- 없음
구현 잠금
- 상태: 해제
- SDD: 필요
- SDD 문서: SDD.md
- SDD 사유: 프로젝트 간 실행 계약, 이벤트 순서, 재연결·멱등성, 실패 원인과 실행 lifecycle을 다룬다.
- 잠금 해제 조건:
- SDD 잠금이 해제되어 있다.
- SDD 사용자 리뷰가 없거나 해결되어 있다.
- Acceptance Scenario가 Milestone 기능 Task와 연결되어 있다.
- Evidence Map이 완료 시 검증 가능한 근거와 연결되어 있다.
- 결정 필요: 없음
범위
- Ariadne 소유 IOP 요청·이벤트 계약과 IOP 네이티브 호출의 어댑터
- 분석 실행 생성, 이벤트 스트림 수신과 취소
- 실행별 시도, 순서 번호와 최종 상태 저장
- 연결 단절 후 마지막 순서부터 재연결
- 요약, 근거, 수정 범위, 위험과 검증 계획을 포함하는 구조화된 수정 계획
- 표준 실패 원인 스택과 사용자용 실패 메시지
- IOP에 전달하는 저장소·운영 환경 최소 권한 정책
기능
Epic: [adapter] IOP 실행 어댑터
Ariadne 계약을 IOP 실행 기능에 안전하게 연결한다.
- [start-analysis] 읽기 전용 저장소와 운영 환경 정책, 오류 원문, 실행 스냅샷을 포함한 분석 실행을 고유 실행 ID로 시작한다.
- [stream-events] 시작·진행·분석·완료·실패·취소 이벤트를 순서대로 검증하고 중복 이벤트를 멱등하게 반영한다.
- [resume-stream] 연결이 끊기면 마지막 반영 순서 이후부터 재연결하고 같은 실행을 중복 시작하지 않는다.
- [cancel-run] Ariadne 취소 상태와 IOP 취소 요청을 일관되게 연결한다.
Epic: [result] 분석 결과와 실패
IOP 결과를 Ariadne 도메인 이력으로 변환한다.
- [persist-analysis] 수정 가능 여부, 보고서와 수정안 해시를 실행 및 수정 작업 상태에 저장한다.
- [structured-proposal] 수정 가능 결과는 요약, 근거, 변경 대상, 위험과 검증 계획을 갖춘 수정 계획으로 검증하고, IOP가 반환한 수정안 해시가 그 전체 내용에 결속됐는지 확인한다.
- [failure-stack] IOP 제출·실행·번역 등 실패를 표준 원인 스택으로 보존하고 사용자에게 안전한 메시지를 노출한다.
- [iop-smoke] IOP 비가용, 재연결, 순서 중복, 정상 분석과 표준 실패를 실제 연동에서 검증한다. 검증: 계약 검사와 IOP field smoke가 통과한다.
완료 리뷰
- 상태: 없음
- 요청일: 없음
- 완료 근거: 없음
- 검토 항목: IOP 계약 적합성, 재연결 멱등성, 실패 원인 보존과 field smoke
- agent-ui 상태 반영: 해당 없음
- 리뷰 코멘트: 없음
범위 제외
- IOP 내부 모델·프롬프트·CLI 구현
- 저장소 변경 실행
- Ariadne의 자동 재시도 비용 정책
작업 컨텍스트
- 관련 경로:
contracts/iop-execution/v1/,contracts/execution-failure/v1/,internal/integration/iop/ - 표준선: Ariadne 계약을 기준으로 어댑터를 두고 IOP의 내부 전송 형식을 도메인에 전파하지 않는다.
- 선행 작업: 분석 대상 결정과 실행 스냅샷
- 후속 작업: 수정 정책과 승인·검증 흐름
- 확인 필요: 없음