diff --git a/agent-roadmap/phase/independent-control-plane/milestones/runner-output-boundary.md b/agent-roadmap/archive/phase/independent-control-plane/milestones/runner-output-boundary.md similarity index 51% rename from agent-roadmap/phase/independent-control-plane/milestones/runner-output-boundary.md rename to agent-roadmap/archive/phase/independent-control-plane/milestones/runner-output-boundary.md index 12ada49..950e431 100644 --- a/agent-roadmap/phase/independent-control-plane/milestones/runner-output-boundary.md +++ b/agent-roadmap/archive/phase/independent-control-plane/milestones/runner-output-boundary.md @@ -2,7 +2,7 @@ ## 상태 -[진행중] +[완료] ## 목표 @@ -32,14 +32,27 @@ pipeline/core 실행 로직이 CLI 출력 구현에 직접 의존하지 않도 - 표준선: domain 실행 로직은 출력 port를 호출하고, CLI/UI/server는 port adapter를 제공한다. - 현재 작업 현황: - `01_output_port_contract`는 PASS 완료되어 `[port]` Task가 완료 상태다. - - `02+01_pipeline_output_port` active plan/review가 다음 실행 대상이며 `[pipeline]` Task를 완료한다. - - `03+01,02_core_cli_adapter` active plan/review는 `02+01_pipeline_output_port` 완료 후 `[core]`, `[cli-adapter]` Task를 완료한다. + - `02+01_pipeline_output_port`는 PASS 완료되어 `[pipeline]` Task가 완료 상태다. + - `03+01,02_core_cli_adapter`는 2회 리뷰 끝에 PASS 완료되어 `[core]`, `[cli-adapter]` Task가 완료 상태다. + - active `agent-task/m-runner-output-boundary/**` 작업은 남아 있지 않고, 완료 산출물은 `agent-task/archive/2026/06/m-runner-output-boundary/**`에 있다. ## 기능 ### Epic: [output] output port boundary - [x] [port] runner 실행 progress와 일반 출력에 필요한 최소 output port 계약을 정의한다. -- [ ] [pipeline] pipeline domain이 CLI 구현체 대신 output port를 사용하도록 분리한다. 검증: runner analyze와 pipeline 관련 테스트가 통과한다. -- [ ] [core] data composition 경로의 printer/color 의존을 output port 또는 domain-neutral 계약으로 정리한다. -- [ ] [cli-adapter] 기존 CLI 출력 의미를 유지하는 adapter를 연결한다. 검증: CLI smoke 출력이 회귀하지 않는다. +- [x] [pipeline] pipeline domain이 CLI 구현체 대신 output port를 사용하도록 분리한다. 검증: runner analyze와 pipeline 관련 테스트가 통과한다. +- [x] [core] data composition 경로의 printer/color 의존을 output port 또는 domain-neutral 계약으로 정리한다. +- [x] [cli-adapter] 기존 CLI 출력 의미를 유지하는 adapter를 연결한다. 검증: CLI smoke 출력이 회귀하지 않는다. + +## 완료 리뷰 + +- 상태: 승인됨 +- 요청일: 2026-06-07 +- 완료 근거: + - `port`, `pipeline`, `core`, `cli-adapter` Task가 각각 `agent-task/archive/2026/06/m-runner-output-boundary/**/complete.log`의 Roadmap Completion 근거와 함께 PASS 완료됐다. + - `apps/runner/lib/oto/pipeline/**`와 `apps/runner/lib/oto/core/data_composer.dart`에서 CLI/Color 직접 의존이 제거됐고, `CliRunnerOutputPort` adapter가 기존 CLI 출력 의미를 보존한다. + - 최종 검증으로 `dart analyze`, core/CLI 테스트 묶음, CLI help smoke, data_composer/pipeline no-match `rg` 검증이 통과했다. +- 사용자 최종 확인 항목: + - 2026-06-07 사용자 요청으로 완료 승인 및 archive 이동을 진행했다. +- 리뷰 코멘트: 완료 후보로 보이며, legacy iop smoke 제외 판단은 `02+01_pipeline_output_port` USER_REVIEW에서 사용자가 승인한 범위 판단을 따른다. diff --git a/agent-roadmap/phase/independent-control-plane/PHASE.md b/agent-roadmap/phase/independent-control-plane/PHASE.md index 47c18f1..33bec7b 100644 --- a/agent-roadmap/phase/independent-control-plane/PHASE.md +++ b/agent-roadmap/phase/independent-control-plane/PHASE.md @@ -24,10 +24,10 @@ OTO를 iop Edge에 직접 붙는 domain agent가 아니라, 독립 실행 가능 - [완료] agent-ops 규칙 모노레포 정합화 - 경로: `agent-roadmap/archive/phase/independent-control-plane/milestones/ops-rule-monorepo-alignment.md` - 요약: 프로젝트 규칙과 domain rule을 현재 `apps/runner`, `apps/client`, `services/core`, `packages/flutter/oto_console` 구조에 맞게 최신화한다. -- [진행중] runner 출력 경계 분리 - - 경로: `agent-roadmap/phase/independent-control-plane/milestones/runner-output-boundary.md` +- [완료] runner 출력 경계 분리 + - 경로: `agent-roadmap/archive/phase/independent-control-plane/milestones/runner-output-boundary.md` - 요약: pipeline/core 실행 로직의 CLI 출력 직접 의존을 output/progress port와 adapter 구조로 분리한다. -- [계획] oto_console 계약 경계 정리 +- [진행중] oto_console 계약 경계 정리 - 경로: `agent-roadmap/phase/independent-control-plane/milestones/oto-console-contract-boundary.md` - 요약: Flutter console contract와 shell 구현의 순환형 의존을 contract/model 소유 경계로 정리한다. - [계획] core server 모듈 경계 정리 diff --git a/agent-roadmap/phase/independent-control-plane/milestones/oto-console-contract-boundary.md b/agent-roadmap/phase/independent-control-plane/milestones/oto-console-contract-boundary.md index 78ef22e..a623e18 100644 --- a/agent-roadmap/phase/independent-control-plane/milestones/oto-console-contract-boundary.md +++ b/agent-roadmap/phase/independent-control-plane/milestones/oto-console-contract-boundary.md @@ -2,7 +2,7 @@ ## 상태 -[계획] +[진행중] ## 목표