docs(roadmap): Chronos 분리 마일스톤을 종료한다
canonical 승격 검증과 Agent UI 정합화 결과를 고정하고 완료된 Milestone과 SDD를 archive해 후속 Chronos 잠금 해제 상태를 보존한다.
This commit is contained in:
parent
81243284cb
commit
4879bcf6f2
9 changed files with 106 additions and 45 deletions
56
HANDOFF.md
56
HANDOFF.md
|
|
@ -80,8 +80,49 @@ chronos_connection_surfaces: 0
|
|||
cli_agent_terminal_workspace_surfaces: 0
|
||||
chronos_repository_mutations: 0
|
||||
external_mutations: 0
|
||||
canonical_promotion: pending
|
||||
canonical_promotion: applied
|
||||
staging_promotion_commit: 7b90b7e5af9035fae2b5349c65eb322096d21b1b
|
||||
canonical_base_commit: c3a24ec5febab9fc978fd62392efcb6c96e12ec9
|
||||
canonical_promotion_commit: c8e98d4e10b30114de7bafe426a4045abd6c1205
|
||||
canonical_promotion_verified_at: 2026-08-02T11:42:32Z
|
||||
staging_boundary_correction_commit: 7cc9f2d142fac863eff173515f2a81e0a5c9e0f4
|
||||
canonical_boundary_correction_commit: 81243284cb89206911ec45e99f80701b591c88ae
|
||||
canonical_boundary_correction_verified_at: 2026-08-02T12:13:14Z
|
||||
canonical_origin_dev_commit: c3a24ec5febab9fc978fd62392efcb6c96e12ec9
|
||||
canonical_promotion_push_status: not-pushed
|
||||
canonical_user_roadmap_restore_status: pass
|
||||
canonical_user_roadmap_path_count: 3
|
||||
canonical_recovery_patch_initial_path: /tmp/iop-canonical-promotion.QOCOar/canonical-roadmap.patch
|
||||
canonical_recovery_patch_initial_sha256: 1f1afe533e910b6311390071e07799bf6cc24ca742853bb45a3eceb3da1d4575
|
||||
canonical_recovery_stash_initial_commit: a91e4af2bc23c7fab2ef0ea026e2b453e9393848
|
||||
canonical_recovery_stash_initial_name: iop-canonical-promotion-roadmap-20260802T102956Z
|
||||
canonical_recovery_patch_prepromotion_path: /tmp/iop-canonical-promotion.QOCOar/canonical-roadmap-prepromotion-20260802T112929Z.patch
|
||||
canonical_recovery_patch_prepromotion_sha256: 314132fd4943d5a49e47a0fd499c39761bf4ff65f725f129c3a949f7e2927db6
|
||||
canonical_recovery_stash_prepromotion_commit: ff81ecb5e8b16fc81ecce4273afe24ff06236287
|
||||
canonical_recovery_stash_prepromotion_name: iop-canonical-promotion-roadmap-20260802T112929Z
|
||||
integration_conflict_inventory_path: /tmp/iop-canonical-promotion.QOCOar/integration-unmerged.txt
|
||||
integration_conflict_inventory_sha256: 15e564744e83accd74981a5976432d14d8638815cab0fefc1d1eaabe97a4aca4
|
||||
integration_conflict_count: 34
|
||||
integration_unexpected_conflicts_path: /tmp/iop-canonical-promotion.QOCOar/unexpected-conflicts.txt
|
||||
integration_unexpected_conflicts_sha256: 15e564744e83accd74981a5976432d14d8638815cab0fefc1d1eaabe97a4aca4
|
||||
integration_qualification_worktree: /config/workspace/iop-canonical-integration
|
||||
integration_evidence_directory: /tmp/iop-canonical-promotion.QOCOar/evidence
|
||||
canonical_full_go_regression: pass
|
||||
canonical_flutter_test_count: 44
|
||||
canonical_flutter_regression: pass
|
||||
canonical_web_build: pass
|
||||
canonical_control_plane_edge_wire: pass
|
||||
canonical_credential_slot_smoke: pass
|
||||
canonical_readability_audit: pass
|
||||
canonical_reconnect_diagnostic: pass
|
||||
canonical_generation_idempotency: pass
|
||||
canonical_provider_only_boundary_audit: pass
|
||||
agent_ui_reconciliation: pass
|
||||
agent_ui_sync_state_sha256: abce070a46563ebd9b45599882c91814ac1236966c4d3c6a53ce3dbb840f1788
|
||||
downstream_lock: chronos:chronos-architecture-ownership-boundary
|
||||
downstream_lock_status: enable
|
||||
milestone_archive_status: completed
|
||||
milestone_archived_at: 2026-08-02T12:34:51Z
|
||||
staging_lock_identity: iop-s1:agent-roadmap/phase/automation-runtime-bridge/milestones/iop-agent-chronos-extraction-decoupling.md
|
||||
staging_lock_result: none
|
||||
canonical_lock_identity: iop:agent-roadmap/phase/automation-runtime-bridge/milestones/iop-agent-chronos-extraction-decoupling.md
|
||||
|
|
@ -93,9 +134,20 @@ canonical_lock_result: rely-on:chronos:chronos-architecture-ownership-boundary
|
|||
|
||||
- 작성일: 2026-07-31 (2026-08-02 D04 정리)
|
||||
- 현재 타겟: IOP standalone surface 제거 및 D04 경계 수립
|
||||
- 상태: D04 분리 진행 중
|
||||
- Status: canonical promotion verified; milestone closure and archive completed.
|
||||
- 기록 위치: IOP 선행 분리 원본은 IOP Roadmap/SDD에, 완료 뒤 제품 개발 원본은 Chronos Roadmap에 둔다.
|
||||
|
||||
## Canonical Promotion Receipt
|
||||
|
||||
- The reviewed staging commit `7b90b7e5af9035fae2b5349c65eb322096d21b1b` was rebuilt as the single canonical promotion commit `c8e98d4e10b30114de7bafe426a4045abd6c1205` on base `c3a24ec5febab9fc978fd62392efcb6c96e12ec9`.
|
||||
- A post-promotion boundary correction removed the residual standalone-Agent and terminal-session ownership wording from `packages/go/execution/doc.go`, `packages/go/execution/types.go`, and `apps/node/cmd/node/main.go`, and added the `TestRootCmdUsesProviderOnlyDescription` Node CLI regression. It landed as the staging child commit `7cc9f2d142fac863eff173515f2a81e0a5c9e0f4` on parent `7b90b7e5af9035fae2b5349c65eb322096d21b1b` and the canonical child commit `81243284cb89206911ec45e99f80701b591c88ae` on parent `c8e98d4e10b30114de7bafe426a4045abd6c1205`. Both children carry the identical four-path change set and the same stable patch id `2e89dc0ed8a45542531af2e16efaf397dd3b2602`; neither rewrites the reviewed promotion commit, and canonical-only credential support in `types.go` remains untouched.
|
||||
- The exact 34-path conflict inventory is stored at `/tmp/iop-canonical-promotion.QOCOar/integration-unmerged.txt` with SHA-256 `15e564744e83accd74981a5976432d14d8638815cab0fefc1d1eaabe97a4aca4`. Every conflict was resolved in favor of the current managed projection, mTLS, credential-recipient, lease, and provider-runtime boundaries while removing standalone Agent, workspace, terminal, and session ownership.
|
||||
- The canonical `dev` branch was fast-forwarded locally. `origin/dev` remains at the base commit and no push was performed.
|
||||
- All three pre-existing roadmap edits were restored as unstaged user changes. Both patch generations and both retained stash commits above remain available for recovery.
|
||||
- The final integration and canonical verification matrix passed full Go tests, 44 Flutter tests, the Flutter web build, Control Plane/Edge wire checks, deterministic credential-slot smoke profiles, readability audit, reconnect diagnostics, generated-source idempotency, and provider-only forbidden-surface scans.
|
||||
- `console-shell` is reconciled as implemented with no Agent enum, slot, or rail action. The milestone reconciliation record is stored in `agent-ui/.sync-state.json`.
|
||||
- The Milestone and SDD were archived after the canonical verification gates passed, and the Chronos dependency was changed to `enable`. The canonical branch remains local and was not pushed.
|
||||
|
||||
## 사용자 확정 사항
|
||||
|
||||
1. `/config/workspace/iop-s0`에서 진행했던 `IOP Agent CLI Runtime` Milestone은 기존 범위대로 완료됐다.
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
# Milestone: IOP Agent Runtime의 Chronos 전체 이전과 IOP 의존성 제거
|
||||
# Milestone: [separation-01] IOP Agent Runtime의 Chronos 전체 이전과 IOP 의존성 제거
|
||||
|
||||
## 위치
|
||||
|
||||
- Roadmap: [ROADMAP.md](../../../ROADMAP.md)
|
||||
- Phase: [PHASE.md](../PHASE.md)
|
||||
- Roadmap: [ROADMAP.md](../../../../ROADMAP.md)
|
||||
- Phase: [PHASE.md](../../../../phase/automation-runtime-bridge/PHASE.md)
|
||||
|
||||
## 목표
|
||||
|
||||
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
## 상태
|
||||
|
||||
[검토중]
|
||||
[완료]
|
||||
|
||||
## 승격 조건
|
||||
|
||||
|
|
@ -55,13 +55,15 @@
|
|||
|
||||
## 완료 리뷰
|
||||
|
||||
- 상태: 보완 필요
|
||||
- 상태: 통과
|
||||
- 요청일: 2026-08-02
|
||||
- 완료 근거: `inventory`는 Task 03/16/10/13의 303행 historical baseline, corrected 300행 manifest, 137행 delta·addendum과 437행 effective matrix로 충족했다. `transfer`는 Task 04~06/16의 versioned bundle, 격리 behavior test, 12-record owner-state 이전과 digest evidence로 충족했다.
|
||||
- 완료 근거: `decouple`·`retain-node`는 Task 07~10의 제거/audit·provider-only focused regression과 현재 금지 surface 재스캔으로, `handoff-gate`는 Task 13~15의 pre-deletion receipt·최종 삭제 evidence·tracked `HANDOFF.md` 복합 receipt로 충족했다.
|
||||
- 완료 근거: 2026-08-02 fresh 검증에서 `go test -count=1 ./...`, `make client-test`(44 tests), `make client-build-web`, `make test-control-plane-edge-wire`, `make readability-audit`, initial/reconnect diagnostic, 삭제 surface scan과 `git diff --check`가 모두 통과했다. 삭제된 reconnect spec 포인터와 제거된 domain-agent UI 활성 정의는 현행 service test와 Node/provider operation UI 기준으로 바로 동기화했다.
|
||||
- 검토 항목: [canonical promotion closure plan](../../../../agent-task/m-iop-agent-chronos-extraction-decoupling/17+15,16_canonical_promotion_closure/PLAN-cloud-G10.md)에 따라 검토된 staging commit을 정식 `/config/workspace/iop`에 반영하고 canonical 회귀·Agent UI reconciliation·promotion receipt를 확보한 뒤 종료 검토를 재개한다.
|
||||
- 리뷰 코멘트: 구현·계약·테스트 결함은 발견되지 않았다. 큰 잔여 이슈는 canonical `/config/workspace/iop`이 `dev...origin/dev [behind 1]`이면서 `[separation-01]` 관련 roadmap 3개 파일이 별도 수정 상태라는 점이다. `iop-s1` identity는 workspace lock에 없고 canonical `iop:` identity는 Chronos lock의 `rely-on` target으로 아직 `disable`이므로, plan PASS와 정식 checkout 반영 전에 아카이브하거나 잠금을 해제하지 않는다.
|
||||
- 완료 근거: staging task archive의 `17+15,16_canonical_promotion_closure/complete.log`가 세 차례 review loop와 최종 PASS를 기록하며, canonical [HANDOFF.md](../../../../../HANDOFF.md)가 승격 receipt를 보존한다. 검토된 승격은 canonical `dev`의 `c8e98d4e10b30114de7bafe426a4045abd6c1205`에, provider-only 경계 정정은 `81243284cb89206911ec45e99f80701b591c88ae`에 반영됐다.
|
||||
- Spec sync: Spec update not needed. [Edge-Node 실행](../../../../../agent-spec/runtime/edge-node-execution.md), [Provider Pool 설정 갱신](../../../../../agent-spec/runtime/provider-pool-config-refresh.md), [OpenAI-compatible 입력](../../../../../agent-spec/input/openai-compatible-surface.md), [Control Plane 운영](../../../../../agent-spec/control/control-plane-operations.md)의 상태와 evidence 포인터가 현행 구현과 일치한다.
|
||||
- 검토 항목: 없음
|
||||
- 리뷰 코멘트: canonical provider/Node Go tests, Flutter 44 tests, Control Plane–Edge wire smoke, Agent UI reconciliation, 충돌·whitespace 검사가 모두 통과했다. Milestone과 SDD를 archive하고 Chronos `rely-on`을 `enable`로 전환했다.
|
||||
|
||||
## 범위 제외
|
||||
|
||||
|
|
@ -73,7 +75,7 @@
|
|||
|
||||
## 작업 컨텍스트
|
||||
|
||||
- 관련 기준: 완료된 [IOP Agent CLI Runtime](../../../archive/phase/automation-runtime-bridge/milestones/iop-agent-cli-runtime.md), 기준 source revision의 legacy contract snapshot, `apps/agent`, `packages/go/agent*`, `proto/iop/agent.proto`, `Makefile`, `scripts/e2e-iop-agent-logged-smoke.sh`, `../chronos`
|
||||
- 관련 기준: 완료된 [IOP Agent CLI Runtime](iop-agent-cli-runtime.md), 기준 source revision의 legacy contract snapshot, `apps/agent`, `packages/go/agent*`, `proto/iop/agent.proto`, `Makefile`, `scripts/e2e-iop-agent-logged-smoke.sh`, `../chronos`
|
||||
- 표준선(선택): 이 Milestone이 전체 이전 bundle 생성과 IOP 제거의 유일한 실행 owner다. source 삭제 전 bundle의 격리 staging build와 동작 검증을 확인하고, 삭제 뒤에는 git revision과 transfer receipt로만 rollback한다. Chronos repository import와 최종 source layout 결정은 외부 잠금 해제 뒤 Chronos 수용 Milestone이 소유한다.
|
||||
- 표준선(선택): IOP Node는 IOP model/provider/device 운영 경계만 유지한다. standalone workflow/state/client lifecycle, CLI agent session, terminal/PTY, workspace·원격 호스트 제어 또는 Chronos 전용 bridge/API/proto/config를 보유하지 않는다.
|
||||
- 표준선(선택): Chronos는 자체 Server와 IOP Node와 별개인 Chronos Node를 소유한다. Chronos가 추론을 사용할 때는 IOP의 외부 API를 일반 client로 호출하며 IOP Node를 연결·등록·제어하지 않는다.
|
||||
|
|
@ -82,7 +84,7 @@
|
|||
- Workspace 잠금 identity: `.agent-roadmap-sync/locks.yaml`의 선행 target은 정식 프로젝트 `iop:agent-roadmap/phase/automation-runtime-bridge/milestones/iop-agent-chronos-extraction-decoupling.md`다. 현재 별도 checkout `iop-s1`의 완료 상태를 같은 identity로 간주하지 않으며, 검토된 commit이 `/config/workspace/iop`에 반영되고 그 정식 Milestone 상태가 동기화되기 전에는 Chronos 잠금을 해제하지 않는다.
|
||||
- 기준 source revision: `3155be0e275437a8eedc1aa93497955a7d30465b`
|
||||
- 구현 분류 기준: 모든 기존 `apps/agent/**`와 `packages/go/agent*/**` source는 Chronos 이전 입력에 포함하고 IOP의 기존 agent-named 경로에서는 제거한다. IOP Node가 model/provider/device 운영에 실제로 사용하는 최소 부분만 비(非)Agent 이름의 중립 패키지로 재배치하며 CLI agent·workspace·terminal·Chronos 연결 의미를 포함하지 않는다.
|
||||
- 큐 배치: Chronos 전체 Roadmap의 선행 gate이므로 전역 실행 순서 1번이다.
|
||||
- 선행 작업: 완료된 [IOP Agent CLI Runtime](../../../archive/phase/automation-runtime-bridge/milestones/iop-agent-cli-runtime.md)
|
||||
- 후속 작업: [Chronos 아키텍처와 프로젝트 소유권 경계 확정](../../../../../chronos/agent-roadmap/phase/runtime-ownership-transition/milestones/chronos-architecture-ownership-boundary.md)
|
||||
- 큐 배치: [전역 마일스톤 실행 순서](../../../../priority-queue.md)의 완료된 `[separation-01]` lane이며 Chronos 전체 Roadmap의 선행 gate였다.
|
||||
- 선행 작업: 완료된 [IOP Agent CLI Runtime](iop-agent-cli-runtime.md)
|
||||
- 후속 작업: [Chronos 아키텍처와 프로젝트 소유권 경계 확정](../../../../../../chronos/agent-roadmap/phase/runtime-ownership-transition/milestones/chronos-architecture-ownership-boundary.md)
|
||||
- 사용자 결정: [user_review_0.log](../../../sdd/automation-runtime-bridge/iop-agent-chronos-extraction-decoupling/user_review_0.log), [user_review_1.log](../../../sdd/automation-runtime-bridge/iop-agent-chronos-extraction-decoupling/user_review_1.log)에서 해결됨. 후자가 IOP Node와 Chronos의 연결 가능성을 남긴 이전 D02 해석을 대체한다.
|
||||
|
|
@ -3,7 +3,7 @@
|
|||
## 위치
|
||||
|
||||
- Milestone: [Milestone 문서](../../../phase/automation-runtime-bridge/milestones/iop-agent-chronos-extraction-decoupling.md)
|
||||
- Phase: [PHASE.md](../../../phase/automation-runtime-bridge/PHASE.md)
|
||||
- Phase: [PHASE.md](../../../../phase/automation-runtime-bridge/PHASE.md)
|
||||
|
||||
## 상태
|
||||
|
||||
|
|
@ -51,7 +51,7 @@
|
|||
|
||||
## Interface Contract
|
||||
|
||||
- 이전 계약 기준: 완료된 [IOP Agent CLI Runtime](../../../archive/phase/automation-runtime-bridge/milestones/iop-agent-cli-runtime.md)과 `source_revision`에서 고정한 legacy contract snapshot. 활성 IOP 계약 파일은 decouple 단계에서 제거한다.
|
||||
- 이전 계약 기준: 완료된 [IOP Agent CLI Runtime](../../../phase/automation-runtime-bridge/milestones/iop-agent-cli-runtime.md)과 `source_revision`에서 고정한 legacy contract snapshot. 활성 IOP 계약 파일은 decouple 단계에서 제거한다.
|
||||
- 입력:
|
||||
- `source_revision`: Task 03 inventory 기준으로 고정된 historical IOP commit
|
||||
- `disposition_manifest`: Task 03의 source revision·303행(`file=293`, `state=10`)·`universe·duplicate=0` historical evidence를 승계하고, Task 16 corrected pinned-transfer manifest 300행(`file=290`, `state=10`, `retain-generic=135`)과 SHA `d8598134dee99d96fc05a045091dd3d8932d4708d2c980c2a78c8b11825d2ccf`를 current pinned-transfer baseline으로 추가로 고정한 original historical `transfer | retain-generic | remove | reference` 분류. Task 16 이후 manifest bytes는 pinned-tree 파생으로 교정되었다. D04 반영을 위해 원본 bytes는 다시 쓰지 않는다.
|
||||
|
|
@ -107,7 +107,7 @@
|
|||
|
||||
- [x] Milestone 기능 Task와 Acceptance Scenario가 일치한다.
|
||||
- [x] Evidence Map이 IOP 완료 검토와 Chronos lock 해제 근거로 검증 가능하다.
|
||||
- [x] 완료된 [IOP Agent CLI Runtime](../../../archive/phase/automation-runtime-bridge/milestones/iop-agent-cli-runtime.md)과 source revision의 legacy contract snapshot을 복제하지 않고 이전 입력으로 참조했다.
|
||||
- [x] 완료된 [IOP Agent CLI Runtime](../../../phase/automation-runtime-bridge/milestones/iop-agent-cli-runtime.md)과 source revision의 legacy contract snapshot을 복제하지 않고 이전 입력으로 참조했다.
|
||||
- [x] 사용자 결정이 SDD에 반영되고 해결 기록이 [user_review_0.log](user_review_0.log), [user_review_1.log](user_review_1.log)로 보존되어 있다.
|
||||
|
||||
## 사용자 리뷰 이력
|
||||
|
|
@ -118,7 +118,7 @@
|
|||
## 작업 컨텍스트
|
||||
|
||||
- 표준선: ownership manifest 기반의 parity-before-delete, cross-repo application import 금지, 전체 상태의 읽기 전용 이전과 repository-local execution ownership을 적용한다. 깨진 잔여 기록은 재개 가능한 상태로 포장하지 않고 격리 보관 자료로 전달한다. 실제 Chronos state import와 Chronos Server/Node·loop/agent/terminal 설계는 후속 Chronos SDD가 소유하고, IOP는 외부 추론 API 외의 Chronos 연결점을 제공하지 않는다.
|
||||
- 후속 SDD: [Chronos Architecture SDD](../../../../../chronos/agent-roadmap/sdd/runtime-ownership-transition/chronos-architecture-ownership-boundary/SDD.md)
|
||||
- 후속 SDD: [Chronos Architecture SDD](../../../../../../chronos/agent-roadmap/sdd/runtime-ownership-transition/chronos-architecture-ownership-boundary/SDD.md)
|
||||
|
||||
### 승격 기준 분류표
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
# SDD User Review
|
||||
# SDD User Review (Archived)
|
||||
|
||||
## 상태
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
# SDD User Review
|
||||
# SDD User Review (Archived)
|
||||
|
||||
## 상태
|
||||
|
||||
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
과거 IOP 안에서 공통화한 CLI Agent/Automation 자산을 독립 Chronos 플랫폼으로 이전하고, IOP를 추론 provider 운영 책임으로 되돌린다.
|
||||
완료된 CLI 실행, workspace agent, Agent Task selector와 standalone `iop-agent`는 이전 기준선일 뿐 IOP의 장기 제품 경계가 아니다.
|
||||
[IOP Agent Runtime의 Chronos 전체 이전과 IOP 의존성 제거](milestones/iop-agent-chronos-extraction-decoupling.md)가 모든 관련 자산을 repository-neutral Chronos acceptance bundle로 전달하고 IOP의 agent·workspace·terminal·host/client lifecycle surface와 Chronos 연결점을 제거한다. 이 Milestone 완료 전에는 Chronos Roadmap을 시작하지 않으며, 이후 실제 repository import, 최종 layout 결정, 외부 접근 가능한 Chronos Server, 독립 Chronos Node, 작업 루프·agent·terminal·원격 호스트 제어는 Chronos가 소유한다.
|
||||
[[separation-01] IOP Agent Runtime의 Chronos 전체 이전과 IOP 의존성 제거](../../archive/phase/automation-runtime-bridge/milestones/iop-agent-chronos-extraction-decoupling.md)가 모든 관련 자산을 repository-neutral Chronos acceptance bundle로 전달하고 IOP의 agent·workspace·terminal·host/client lifecycle surface와 Chronos 연결점을 제거했다. 이후 실제 repository import, 최종 layout 결정, 외부 접근 가능한 Chronos Server, 독립 Chronos Node, 작업 루프·agent·terminal·원격 호스트 제어는 Chronos가 소유한다.
|
||||
IOP Control Plane·Edge·IOP Node에는 model/provider/device 서빙에 필요한 route·실행·취소·상태·usage·lifecycle만 남긴다. Chronos는 필요할 때 IOP의 외부 추론 API를 일반 client로 소비하며 IOP Node에 연결하거나 제어하지 않는다.
|
||||
|
||||
## Milestone 흐름
|
||||
|
|
@ -98,9 +98,9 @@ Phase를 가로지르는 실제 다음 작업 선택은 [전역 마일스톤 실
|
|||
- 경로: [iop-agent-cli-runtime](../../archive/phase/automation-runtime-bridge/milestones/iop-agent-cli-runtime.md)
|
||||
- 요약: Python 감시·dispatcher와 Node CLI runtime 동등성을 공통 Go CLI Provider·AgentTaskManager 및 개인 장비당 단일 `iop-agent` binary로 이전하고, 다중 project 관측·수동 시작/자동 재개·client subprocess 소유 경계를 완료했다.
|
||||
|
||||
- [검토중] IOP Agent Runtime의 Chronos 전체 이전과 IOP 의존성 제거
|
||||
- 경로: [IOP Agent Runtime의 Chronos 전체 이전과 IOP 의존성 제거](milestones/iop-agent-chronos-extraction-decoupling.md)
|
||||
- 요약: 완료된 `iop-agent`의 모든 관련 자산과 저장 상태를 repository-neutral Chronos acceptance bundle로 전달하고 IOP의 agent·terminal·workspace·Chronos 연결 surface를 제거한 뒤, 추론 provider 운영 경계만 남은 IOP Node 회귀와 downstream 잠금 해제 evidence를 남긴다.
|
||||
- [완료] [separation-01] IOP Agent Runtime의 Chronos 전체 이전과 IOP 의존성 제거
|
||||
- 경로: [[separation-01] IOP Agent Runtime의 Chronos 전체 이전과 IOP 의존성 제거](../../archive/phase/automation-runtime-bridge/milestones/iop-agent-chronos-extraction-decoupling.md)
|
||||
- 요약: `iop-agent` 자산과 상태를 repository-neutral Chronos acceptance bundle로 전달하고 IOP의 agent·terminal·workspace·Chronos 연결 surface를 제거했다. canonical `dev`의 provider-only 회귀와 Agent UI 정합화가 통과해 Chronos 선행 잠금을 활성화했다.
|
||||
|
||||
- [폐기] oto 자동화 스케줄러와 CI-CD 연동 (2차)
|
||||
- 경로: [oto-automation-scheduler-second-wave](../../archive/phase/automation-runtime-bridge/milestones/oto-automation-scheduler-second-wave.md)
|
||||
|
|
|
|||
|
|
@ -2,25 +2,35 @@
|
|||
"schema_version": 4,
|
||||
"surface_type": "ops-dev",
|
||||
"baseline_mode": "migration",
|
||||
"last_sync_mode": "baseline",
|
||||
"last_synced_head": "bebd95f909db96413aecd6873fdfddd17bac4c74",
|
||||
"last_synced_at": "2026-06-25T01:54:27Z",
|
||||
"last_sync_mode": "milestone-reconcile",
|
||||
"last_synced_head": "c8e98d4e10b30114de7bafe426a4045abd6c1205",
|
||||
"last_synced_at": "2026-08-02T11:33:33Z",
|
||||
"agent_ui_paths": [
|
||||
"agent-ui/README.md",
|
||||
"agent-ui/definition/index.md",
|
||||
"agent-ui/definition/views",
|
||||
"agent-ui/definition/components",
|
||||
"agent-ui/frame/index.md"
|
||||
"agent-ui/definition/components/console-shell/index.md"
|
||||
],
|
||||
"code_paths": [
|
||||
"apps/client/Dockerfile",
|
||||
"apps/client/README.md",
|
||||
"apps/client/lib/client_home_page.dart",
|
||||
"apps/client/lib/main.dart",
|
||||
"apps/client/pubspec.lock",
|
||||
"apps/client/pubspec.yaml",
|
||||
"packages/flutter/iop_console/lib/src/iop_console_contract.dart",
|
||||
"packages/flutter/iop_console/lib/src/iop_console_shell.dart",
|
||||
"packages/flutter/iop_console/pubspec.yaml",
|
||||
"packages/flutter/iop_console/test/iop_console_shell_test.dart"
|
||||
],
|
||||
"code_paths": [],
|
||||
"notes": [
|
||||
"Legacy agent-ui baseline migration. No code sync performed."
|
||||
"Legacy agent-ui baseline migration. No code sync performed.",
|
||||
"milestone reconcile: milestone=agent-roadmap/phase/automation-runtime-bridge/milestones/iop-agent-chronos-extraction-decoupling.md; closure=Closure-ready (complete-milestone check-only): all five feature tasks are checked; the SDD is approved and unlocked; canonical commit c8e98d4e10b30114de7bafe426a4045abd6c1205 passed Go, 44 Flutter tests, web build, Edge wire, credential-slot smoke, readability, reconnect, generation, and provider-only boundary audits; update-spec check-only found the current provider/runtime specs synchronized and no update needed.; validation=validate-agent-ui PASS (component:console-shell, sync-intent=skip): frontmatter and body status agree at implemented; code and documentation evidence paths exist; the component index agrees; the implementation has no Agent enum, slot, or rail action; no active agent-ui USER_REVIEW exists.; baseline=updated:c8e98d4e10b30114de7bafe426a4045abd6c1205"
|
||||
],
|
||||
"pending_code_work": [],
|
||||
"reconciled_code_work": [],
|
||||
"pending_milestone_work": [
|
||||
"pending_milestone_work": [],
|
||||
"reconciled_milestone_work": [
|
||||
{
|
||||
"milestone_path": "agent-roadmap/phase/automation-runtime-bridge/milestones/iop-agent-chronos-extraction-decoupling.md",
|
||||
"closure_evidence": "Closure-ready (complete-milestone check-only): all five feature tasks are checked; the SDD is approved and unlocked; canonical commit c8e98d4e10b30114de7bafe426a4045abd6c1205 passed Go, 44 Flutter tests, web build, Edge wire, credential-slot smoke, readability, reconnect, generation, and provider-only boundary audits; update-spec check-only found the current provider/runtime specs synchronized and no update needed.",
|
||||
"scope": "component:console-shell",
|
||||
"status_paths": [
|
||||
"agent-ui/definition/components/console-shell/index.md"
|
||||
|
|
@ -38,13 +48,9 @@
|
|||
"packages/flutter/iop_console/pubspec.yaml",
|
||||
"packages/flutter/iop_console/test/iop_console_shell_test.dart"
|
||||
],
|
||||
"verification_requirements": [
|
||||
"make client-test: exit code 0",
|
||||
"make client-build-web: exit code 0"
|
||||
],
|
||||
"prepared_at": "2026-08-01T05:51:34Z",
|
||||
"state": "pending"
|
||||
"validation_evidence": "validate-agent-ui PASS (component:console-shell, sync-intent=skip): frontmatter and body status agree at implemented; code and documentation evidence paths exist; the component index agrees; the implementation has no Agent enum, slot, or rail action; no active agent-ui USER_REVIEW exists.",
|
||||
"reconciled_at": "2026-08-02T11:33:33Z",
|
||||
"sync_result_head": "c8e98d4e10b30114de7bafe426a4045abd6c1205"
|
||||
}
|
||||
],
|
||||
"reconciled_milestone_work": []
|
||||
]
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
ui_doc_type: component
|
||||
component_id: console-shell
|
||||
status: 계획
|
||||
status: 구현됨
|
||||
source_evidence:
|
||||
- type: code
|
||||
path: packages/flutter/iop_console/lib/src/iop_console_shell.dart
|
||||
|
|
@ -21,7 +21,7 @@ source_evidence:
|
|||
|
||||
Component ID: `console-shell`
|
||||
|
||||
Status: `계획`
|
||||
Status: `구현됨`
|
||||
|
||||
## Source Evidence
|
||||
|
||||
|
|
@ -72,3 +72,4 @@ IOP console view들을 좌측 rail navigation과 section content slot으로 묶
|
|||
- 2026-06-25: `IopConsoleShell` 구현을 기준으로 component를 정의했다.
|
||||
- 2026-08-01: 승인된 extraction SDD를 근거로 Agent section 제거 계획을 반영했다.
|
||||
- 2026-08-02: `agent` enum/slot/rail action을 `IopConsoleShell`에서 제거했다.
|
||||
- 2026-08-02: Canonical promotion verified the provider-only shell with no standalone Agent section; client tests and the web build passed.
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ components:
|
|||
|
||||
| Component ID | Status | Evidence | Description |
|
||||
|--------------|--------|----------|-------------|
|
||||
| `console-shell` | 계획 | `packages/flutter/iop_console/lib/src/iop_console_shell.dart` | standalone Agent section을 제거하고 범용 운영 section만 남길 console shell이다. |
|
||||
| `console-shell` | 구현됨 | `packages/flutter/iop_console/lib/src/iop_console_shell.dart` | The implemented provider-only console shell exposes generic operations sections and no standalone Agent section. |
|
||||
| `status-badge` | 구현됨 | `apps/client/lib/widgets/*.dart`, `packages/flutter/iop_console/lib/src/iop_console_overview.dart` | connection, node, command, lifecycle 상태를 색상 badge/chip으로 표시한다. |
|
||||
| `endpoint-card` | 구현됨 | `packages/flutter/iop_console/lib/src/iop_console_overview.dart` | endpoint 또는 token reference 값을 label과 icon으로 표시한다. |
|
||||
| `edge-selector` | 구현됨 | `apps/client/lib/widgets/nodes_panel.dart`, `apps/client/lib/widgets/runtime_panel.dart`, `apps/client/lib/widgets/execution_logs_panel.dart` | active/filter Edge dropdown과 refresh control이다. |
|
||||
|
|
|
|||
Loading…
Reference in a new issue