diff --git a/agent-ops/roadmap/ROADMAP.md b/agent-ops/roadmap/ROADMAP.md index 656862a..ea7ae7f 100644 --- a/agent-ops/roadmap/ROADMAP.md +++ b/agent-ops/roadmap/ROADMAP.md @@ -4,7 +4,7 @@ NomadCode는 Flutter 기반 앱, core 서비스, 공유 계약, agent-operation 규칙을 하나의 원레포로 묶어 AI-assisted development workflow를 조율하는 프로젝트다. -현재 로드맵은 기존 `services/core/README.md`의 단계별 다음 작업을 `agent-ops/roadmap/` 구조로 옮긴 뒤, 클라이언트 전략을 Flutter-first로 재정렬한 것이다. 우선 React/Vite 웹 콘솔을 장기 제품 UI 경로에서 걷어내고 Flutter 앱을 제품 UI의 기준 구현으로 세운다. 이후 core 백엔드 오케스트레이션의 서버 골격을 바탕으로 Plane과의 실제 통신 기반, provider-neutral task pipeline, workflow 안정화, 외부 통합을 이어간다. IOP 연결은 NomadCode가 직접 모델 런타임을 소유하지 않고 IOP의 외부 입력 표면을 호출하는 방향으로 정리한다. +현재 로드맵은 기존 `services/core/README.md`의 단계별 다음 작업을 `agent-ops/roadmap/` 구조로 옮긴 뒤, 클라이언트 전략을 Flutter-first로 재정렬한 것이다. React/Vite 웹 콘솔 제거와 Flutter 앱 기준 클라이언트 정리, provider-neutral work item pipeline 설계는 완료되었다. 이후 core 백엔드 오케스트레이션의 workflow 상태 전이 안정화, 외부 통합, Flutter-first 프로젝트 제어 UX를 이어간다. IOP 연결은 NomadCode가 직접 모델 런타임을 소유하지 않고 IOP의 외부 입력 표면을 호출하는 방향으로 정리한다. ## Phase 흐름 @@ -18,17 +18,9 @@ NomadCode는 Flutter 기반 앱, core 서비스, 공유 계약, agent-operation ## Milestone 목록 -### Client Platform Consolidation - -- [Flutter-first Client Consolidation](milestones/flutter-first-client-consolidation.md) - 상태: 진행 중; 목표: Flutter 앱을 제품 UI 기준 구현으로 세우고 React/Vite 웹 콘솔을 장기 제품 경로에서 걷어낸다. - -### Work Item Provider Pipeline Design - -- [Work Item Provider Pipeline Design](milestones/plane-task-pipeline-design.md) - 상태: 완료; 목표: Plane/Jira 등 work item provider와 core task 사이의 생성, enqueue, 상태 투영, 결과 발행 계약을 provider-neutral하게 정리한다. - ### Workflow Core -- [Workflow Core](milestones/workflow-core.md) - 상태: 계획; 목표: 실제 e2e 흐름을 기준으로 task lifecycle, retry, timeout, notification event를 안정화한다. +- [Workflow Core](milestones/workflow-core.md) - 상태: 진행 중; 목표: 실제 e2e 흐름을 기준으로 task lifecycle, retry, timeout, notification event를 안정화한다. ### External Integration @@ -42,6 +34,8 @@ NomadCode는 Flutter 기반 앱, core 서비스, 공유 계약, agent-operation - Server Skeleton - 상태: 완료; 아카이브일: 2026-05-24; 요약: core 서버 실행 골격, task 저장, 비동기 job, 초기 외부 Adapter stub을 구성했다.; 핵심 산출물/근거: 모든 필수 기능과 완료 기준이 체크되어 있으며 server 실행, task API/storage, River job, Plane/Mattermost stub이 기록되어 있다.; 후속 영향: Plane Communication Foundation과 후속 workflow/provider 작업의 기반이 되었다. - Plane Communication Foundation - 상태: 완료; 아카이브일: 2026-05-24; 요약: Plane self-hosted 인스턴스와의 인증/API 통신, 외부 참조 저장, 수동 smoke 검증 토대를 만들었다.; 핵심 산출물/근거: 모든 필수 기능과 완료 기준이 체크되어 있으며 Plane adapter 테스트, external ref 저장, 실제 comment/state smoke, README/운영 문서 근거가 기록되어 있다.; 후속 영향: Work Item Provider Pipeline Design과 Workflow Core의 선행 기반이 되었다. +- Flutter-first Client Consolidation - 상태: 완료; 아카이브일: 2026-05-25; 요약: Flutter 앱을 제품 UI 기준 구현으로 세우고 React/Vite 웹 콘솔 scaffold를 제거했다.; 핵심 산출물/근거: `apps/web` 제거, root `bin/*`의 Flutter-first 검증 흐름, Flutter code-server 직접 실행 표면, `packages/contracts` 계약 후보 문서가 반영되어 있다.; 후속 영향: Project Workspace Management UX와 사용자-facing task state UX의 기반이 되었다. +- Work Item Provider Pipeline Design - 상태: 완료; 아카이브일: 2026-05-25; 요약: Plane/Jira 등 work item provider와 core task 사이의 생성, enqueue, 상태 투영, 결과 발행 계약을 provider-neutral하게 정리했다.; 핵심 산출물/근거: 모든 필수 기능과 완료 기준이 체크되어 있으며 provider-neutral adapter, task mapper, pipeline service, projection/idempotency/retry 정책이 기록되어 있다.; 후속 영향: Workflow Core가 상태 전이 구현을 시작할 수 있는 기준이 되었다. ## 로딩 정책 diff --git a/agent-ops/roadmap/milestones/flutter-first-client-consolidation.md b/agent-ops/roadmap/archive/2026/05/flutter-first-client-consolidation.md similarity index 78% rename from agent-ops/roadmap/milestones/flutter-first-client-consolidation.md rename to agent-ops/roadmap/archive/2026/05/flutter-first-client-consolidation.md index 35b2067..0531bff 100644 --- a/agent-ops/roadmap/milestones/flutter-first-client-consolidation.md +++ b/agent-ops/roadmap/archive/2026/05/flutter-first-client-consolidation.md @@ -10,7 +10,7 @@ Client Platform Consolidation ## 상태 -진행 중 +완료 ## 구현 잠금 @@ -32,17 +32,17 @@ Client Platform Consolidation - [x] [react-retire] `apps/web` React/Vite scaffold의 제거, 격리, 또는 폐기 경로를 정리한다. - [x] [entrypoints] root `bin/*` 개발/검증 entrypoint가 Flutter-first 클라이언트 구조를 반영하도록 한다. - [x] [docs-rules] README, docs, roadmap, domain rule의 web/app 설명을 Flutter-first 기준으로 맞춘다. -- [ ] [codeserver-direct] code-server, workspace, diff/terminal/editor 표면은 React wrapper 없이 Flutter 앱에서 직접 연결하는 기준을 정한다. -- [ ] [contract-boundary] Flutter 앱과 core가 공유할 API/schema 경계를 `packages/contracts` 후보로 정리한다. +- [x] [codeserver-direct] code-server, workspace, diff/terminal/editor 표면은 React wrapper 없이 Flutter 앱에서 직접 연결하는 기준을 정한다. +- [x] [contract-boundary] Flutter 앱과 core가 공유할 API/schema 경계를 `packages/contracts` 후보로 정리한다. ## 완료 기준 - [x] 로드맵과 프로젝트 문서에서 React/Vite 웹 콘솔이 장기 제품 UI 기준 구현으로 설명되지 않는다. -- [ ] Flutter 앱이 모바일/데스크톱/선택적 web target의 기준 클라이언트로 설명된다. +- [x] Flutter 앱이 모바일/데스크톱/선택적 web target의 기준 클라이언트로 설명된다. - [x] `apps/web`의 처리 방침이 삭제, 격리, 보류 중 하나로 코드와 문서에서 일관된다. -- [ ] root `bin/test`, `bin/lint`, `bin/build`, `bin/dev`가 React web 제거 이후의 검증 흐름과 충돌하지 않는다. -- [ ] code-server를 React로 감싸고 다시 Flutter로 감싸는 구조를 만들지 않는다는 기준이 문서화되어 있다. -- [ ] 후속 Project Workspace Management UX가 Flutter-first 클라이언트 구조 위에서 진행될 수 있다. +- [x] root `bin/test`, `bin/lint`, `bin/build`, `bin/dev`가 React web 제거 이후의 검증 흐름과 충돌하지 않는다. +- [x] code-server를 React로 감싸고 다시 Flutter로 감싸는 구조를 만들지 않는다는 기준이 문서화되어 있다. +- [x] 후속 Project Workspace Management UX가 Flutter-first 클라이언트 구조 위에서 진행될 수 있다. ## 범위 제외 @@ -56,6 +56,7 @@ Client Platform Consolidation - 관련 경로: `apps/mobile/`, `apps/web/`, `bin/`, `README.md`, `docs/`, `agent-ops/rules/project/`, `agent-ops/roadmap/`, `packages/contracts/` - 표준선(선택): 앱은 필수 제품 표면이며 Flutter가 클라이언트 source of truth다. React/Vite web은 장기 기준 구현이 아니고, 필요한 웹 타깃은 Flutter Web 또는 Flutter 앱에서 직접 연결하는 웹 surface로 다룬다. +- 완료 근거: `apps/web` React/Vite scaffold가 제거되었고, root `bin/test`, `bin/lint`, `bin/build`, `bin/dev`는 core와 `apps/mobile` Flutter 흐름만 참조한다. `apps/mobile/lib/services/workspace_launcher.dart`와 workspace 화면은 code-server URL을 Flutter 앱에서 직접 외부 실행 표면으로 연다. `packages/contracts/notes/flutter-core-api-candidates.md`는 Flutter 앱과 core 사이의 공유 API/schema 후보를 기록한다. - 선행 작업: 없음 - 후속 작업: Project Workspace Management UX, Workflow Core 이후의 사용자-facing task state UX - 확인 필요: 없음 diff --git a/agent-ops/roadmap/milestones/plane-task-pipeline-design.md b/agent-ops/roadmap/archive/2026/05/plane-task-pipeline-design.md similarity index 100% rename from agent-ops/roadmap/milestones/plane-task-pipeline-design.md rename to agent-ops/roadmap/archive/2026/05/plane-task-pipeline-design.md diff --git a/agent-ops/roadmap/current.md b/agent-ops/roadmap/current.md index fc2b299..95a9b21 100644 --- a/agent-ops/roadmap/current.md +++ b/agent-ops/roadmap/current.md @@ -2,7 +2,7 @@ ## 활성 Milestone -- Flutter-first Client Consolidation: agent-ops/roadmap/milestones/flutter-first-client-consolidation.md +- Workflow Core: agent-ops/roadmap/milestones/workflow-core.md ## 선택 규칙 diff --git a/agent-ops/roadmap/milestones/workflow-core.md b/agent-ops/roadmap/milestones/workflow-core.md index 4359b2f..b5307ec 100644 --- a/agent-ops/roadmap/milestones/workflow-core.md +++ b/agent-ops/roadmap/milestones/workflow-core.md @@ -10,7 +10,7 @@ Workflow Core ## 상태 -계획 +진행 중 ## 구현 잠금 @@ -53,6 +53,7 @@ Workflow Core - 주요 작업 영역: `services/core/internal/workflow/`, `services/core/internal/scheduler/`, `services/core/internal/notification/` - 선행 작업: Plane Communication Foundation, Work Item Provider Pipeline Design - 후속 작업: External Integration +- 현재 지점: Flutter-first Client Consolidation과 Work Item Provider Pipeline Design이 완료되어 아카이브되었고, workflow 상태 전이 구현이 다음 활성 후보가 되었다. - 책임 경계: - NomadCode Workflow Core는 task lifecycle 전이, retry/timeout envelope, heartbeat, terminal 상태 기록을 소유한다. - IOP/A2A/model runtime은 외부 실행 표면이며, 내부 실행 정책과 런타임 세부 retry는 각 adapter 또는 외부 런타임 책임으로 둔다.