diff --git a/agent-roadmap/ROADMAP.md b/agent-roadmap/ROADMAP.md index 3001ebc..8d1f315 100644 --- a/agent-roadmap/ROADMAP.md +++ b/agent-roadmap/ROADMAP.md @@ -4,7 +4,7 @@ NomadCode는 Flutter 기반 앱, core 서비스, 공유 계약, agent-operation 규칙을 하나의 원레포로 묶어 AI-assisted development workflow를 조율하는 프로젝트다. -현재 로드맵은 `ROADMAP.md -> phase//PHASE.md -> phase//milestones/.md` scaffold를 기준으로 관리한다. React/Vite 웹 콘솔 제거, 서버/Plane/provider 기반 작업, Flutter-first 클라이언트 정리, Mattermost push plugin extraction, client integration 표준화, workspace 포트/환경 표준화, External Integration, Milestone Work Item Creation Sync, Plane Work Item Webhook Intake, Gito Branch Event Creation Sync Bridge, Gito proto-socket consumer wire readiness, Gito HTTP Webhook Consumer Readiness는 완료되었다. Agent-Ops MCP Control Plane에서는 Roadmap Driven Agent-Ops Automation으로 roadmap/action core와 provider sync domain의 상위 방향을 정리하고, Plane-Origin Authoring Roundtrip Sync로 최신 dev 환경의 Plane -> IOP -> Gito -> Plane Todo 왕복 동기화를 다시 닫는다. 외부 agent 제어 표면은 현재 확정 범위가 아니라 후속 스케치에서 검토한다. +현재 로드맵은 `ROADMAP.md -> phase//PHASE.md -> phase//milestones/.md` scaffold를 기준으로 관리한다. React/Vite 웹 콘솔 제거, 서버/Plane/provider 기반 작업, Flutter-first 클라이언트 정리, Mattermost push plugin extraction, client integration 표준화, workspace 포트/환경 표준화, External Integration, Milestone Work Item Creation Sync, Plane Work Item Webhook Intake, Gito Branch Event Creation Sync Bridge, Gito proto-socket consumer wire readiness, Gito HTTP Webhook Consumer Readiness, Plane-Origin Authoring Roundtrip Sync는 완료되었다. Agent-Ops MCP Control Plane에서는 다음 활성 마일스톤인 Roadmap Driven Agent-Ops Automation으로 roadmap/action core와 provider sync domain의 상위 방향을 정리한다. 외부 agent 제어 표면은 현재 확정 범위가 아니라 후속 스케치에서 검토한다. IOP 외부 실행 호출은 OpenAI-compatible Responses API 방식을 기본 계약으로 채택하고, NomadCode/IOP 고유의 task, workspace, session, approval, artifact, notification 문맥은 별도 `iop` wrapper field가 아니라 `metadata` 확장으로 전달한다. A2A는 agent-to-agent delegation이 명확히 필요할 때 재검토하며, IOP native protocol은 NomadCode의 기본 외부 실행 호출 표면으로 쓰지 않는다. @@ -37,7 +37,7 @@ IOP 외부 실행 호출은 OpenAI-compatible Responses API 방식을 기본 계 - 요약: Plane 확장, Jira-compatible provider 추상화, Mattermost, Agent Integrator, IOP OpenAI-compatible Responses 호출 경계를 실제 통합 adapter 흐름으로 확장했고, metadata 실행 문맥 전달, IOP Edge `/v1/responses`, NomadCode Core 원격 create/enqueue/poll smoke를 완료했다. - [진행중] Agent-Ops MCP Control Plane - 경로: `agent-roadmap/phase/agent-ops-mcp-control-plane/PHASE.md` - - 요약: 로드맵 기반 agent-ops 운영 자동화와 Plane/Jira 같은 work item provider와 Milestone item의 양방향 동기화 도메인을 다룬다. 현재 Roadmap Driven Agent-Ops Automation은 상위 방향을 정리하고, Plane-Origin Authoring Roundtrip Sync는 완료 처리된 creation sync를 최신 IOP/Gito/Plane dev 환경 기준으로 재검증하고 보강한다. 외부 agent 제어 표면은 후속 스케치 항목으로 보류한다. + - 요약: 로드맵 기반 agent-ops 운영 자동화와 Plane/Jira 같은 work item provider와 Milestone item의 양방향 동기화 도메인을 다룬다. Plane-Origin Authoring Roundtrip Sync는 완료/archive했고, 현재 Roadmap Driven Agent-Ops Automation이 다음 활성 마일스톤이다. 외부 agent 제어 표면은 후속 스케치 항목으로 보류한다. - [계획] Project Workspace Management UX - 경로: `agent-roadmap/phase/project-workspace-management-ux/PHASE.md` - 요약: client integration 표준화, core workflow, 외부 통합 기준 이후 프로젝트 단위 앱 UX를 다루며, provider slot 기반 외부 console composition은 계획 후보로 둔다. diff --git a/agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/plane-origin-authoring-roundtrip-sync.md b/agent-roadmap/archive/phase/agent-ops-mcp-control-plane/milestones/plane-origin-authoring-roundtrip-sync.md similarity index 86% rename from agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/plane-origin-authoring-roundtrip-sync.md rename to agent-roadmap/archive/phase/agent-ops-mcp-control-plane/milestones/plane-origin-authoring-roundtrip-sync.md index dbdd292..2155cd3 100644 --- a/agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/plane-origin-authoring-roundtrip-sync.md +++ b/agent-roadmap/archive/phase/agent-ops-mcp-control-plane/milestones/plane-origin-authoring-roundtrip-sync.md @@ -11,7 +11,7 @@ Plane `Backlog + AGENT assignee` 상위 티켓에서 시작한 Milestone authori ## 상태 -[진행중] +[완료] ## 승격 조건 @@ -21,7 +21,7 @@ Plane `Backlog + AGENT assignee` 상위 티켓에서 시작한 Milestone authori - 상태: 해제 - SDD: 필요 -- SDD 문서: `agent-roadmap/sdd/agent-ops-mcp-control-plane/plane-origin-authoring-roundtrip-sync/SDD.md` +- SDD 문서: `agent-roadmap/archive/sdd/agent-ops-mcp-control-plane/plane-origin-authoring-roundtrip-sync/SDD.md` - SDD 사유: 외부 provider 쓰기, IOP 실행 호출, git push, Gito webhook, identity map, retry/timeout, live smoke가 모두 걸린 runtime sync 마일스톤이다. - 잠금 해제 조건: - [x] SDD 잠금이 해제되어 있다. @@ -82,21 +82,25 @@ Gito HTTP webhook wakeup 이후 Core sync pipeline이 active Milestone reconcile 이 마일스톤은 unit/fake seam만으로 닫지 않고 실제 dev 환경에서 한 사이클 증거를 남긴다. -- [ ] [remote-baseline] standard remote runner, Core compose, IOP workspace clone, Gito service, Forgejo webhook, project sync DB 설정을 현재 요청 기준으로 reset/clean/reclone 또는 rebuild해 맞춘다. 검증: dirty runner 상태를 차단 사유로 삼지 않고 최신 local 작업 범위와 같은 테스트 환경으로 만든다. -- [ ] [full-cycle] 새 Plane Backlog 티켓을 AGENT에 assign한 authoring roundtrip과, Git에만 있는 active Milestone을 Plane에 생성하는 reconcile roundtrip을 함께 확인한다. 검증: `agent-test/live-cycle-smoke.md` 절차에 따라 secret redaction 상태의 live evidence가 남는다. +- [x] [remote-baseline] standard remote runner, Core compose, IOP workspace clone, Gito service, Forgejo webhook, project sync DB 설정을 현재 요청 기준으로 reset/clean/reclone 또는 rebuild해 맞춘다. 검증: dirty runner 상태를 차단 사유로 삼지 않고 최신 local 작업 범위와 같은 테스트 환경으로 만든다. +- [x] [full-cycle] 새 Plane Backlog 티켓을 AGENT에 assign한 authoring roundtrip과, Git에만 있는 active Milestone을 Plane에 생성하는 reconcile roundtrip을 함께 확인한다. 검증: `agent-test/live-cycle-smoke.md` 절차에 따라 secret redaction 상태의 live evidence가 남는다. - [x] [regression-doc] 이번 회귀 원인과 방지 기준을 `agent-test/live-cycle-smoke.md` 또는 core README의 비밀 없는 운영 규칙에 반영한다. 검증: filename slug canonical id, archive 제외, provider identity 누락, IOP queue timeout, push-only 단계 누락, Gito delivery-only 성공을 각각 완료 조건으로 오인하지 않는 기준이 문서화된다. ## 완료 리뷰 -- 상태: 없음 -- 요청일: 없음 -- 완료 근거: 없음 +- 상태: 통과 +- 요청일: 2026-06-22 +- 완료 근거: + - 모든 기능 Task와 Task 검증은 `Roadmap Completion`이 있는 `agent-task/archive/2026/06/m-plane-origin-authoring-roundtrip-sync/*/complete.log` 근거로 충족되었다. + - `remote-baseline`은 `12_remote_baseline/complete.log`의 PASS 근거로 완료되었다. + - `full-cycle`은 `13+12_full_cycle/complete.log`의 PASS 근거로 완료되었다. + - 종료 전 코드 레벨 감사에서 Gito active Milestone scan, filename slug identity, Plane projection ledger, authoring push-only gate, terminal metadata guard 구현과 테스트를 재확인했다. - 검토 항목: - [x] SDD gate가 해제되었다. - - [ ] 모든 기능 Task와 검증이 충족되었다. - - [ ] 실제 dev Plane-origin full-cycle smoke에서 Plane `Todo` projection까지 확인했다. - - [ ] 사용자 완료 확인과 archive 승인을 받았다. -- 리뷰 코멘트: 없음 + - [x] 모든 기능 Task와 검증이 충족되었다. + - [x] 실제 dev Plane-origin full-cycle smoke에서 Plane `Todo` projection까지 확인했다. + - [x] 사용자 완료 확인과 archive 승인을 받았다. +- 리뷰 코멘트: 코드 레벨 종료 감사에서 차단 이슈가 없어 `[완료]`로 전환하고 archive한다. ## 범위 제외 @@ -169,11 +173,19 @@ Gito HTTP webhook wakeup 이후 Core sync pipeline이 active Milestone reconcile - `agent-task/archive/2026/06/m-plane-origin-authoring-roundtrip-sync/10+09_plane_todo/complete.log` - `agent-task/archive/2026/06/m-plane-origin-authoring-roundtrip-sync/11+10_slot_finalize/complete.log` - `agent-test/live-cycle-smoke.md` - - `remote-baseline`과 `full-cycle`은 큰 live runtime 작업으로 분류해 plan-loop에 진입시켰다. - - 활성 plan/review: - - `agent-task/m-plane-origin-authoring-roundtrip-sync/12_remote_baseline/PLAN-cloud-G07.md` - - `agent-task/m-plane-origin-authoring-roundtrip-sync/12_remote_baseline/CODE_REVIEW-cloud-G07.md` - - `agent-task/m-plane-origin-authoring-roundtrip-sync/13+12_full_cycle/PLAN-cloud-G08.md` - - `agent-task/m-plane-origin-authoring-roundtrip-sync/13+12_full_cycle/CODE_REVIEW-cloud-G08.md` - - 현재 남은 실구현/검증 후보는 `remote-baseline`, `full-cycle`이며, 둘 다 active plan 상태다. + - `remote-baseline` Task는 standard remote runner baseline 복구, secret-free evidence scan, `git diff --check`, focused remote Go test PASS 근거로 완료 처리했다. + - `full-cycle` Task는 Plane-origin authoring roundtrip, Git-only active Milestone missing-create/reconcile evidence, terminal metadata overwrite race regression fix와 remote `go test -count=1 ./...` PASS 근거로 완료 처리했다. + - 완료 근거: + - `agent-task/archive/2026/06/m-plane-origin-authoring-roundtrip-sync/12_remote_baseline/complete.log` + - `agent-task/archive/2026/06/m-plane-origin-authoring-roundtrip-sync/13+12_full_cycle/complete.log` + - 현재 활성 `agent-task` plan/review/user-review/complete 파일은 없다. + - 현재 남은 실구현/검증 후보는 없다. 사용자 완료 확인과 archive 승인을 받으면 `[완료]` 및 archive 전환 후보가 된다. +- 작업 현황 동기화(2026-06-22): + - 로컬 `agent-task/` 활성 디렉터리에는 진행중 plan/review 파일이 없다. + - 마일스톤의 모든 기능 Task는 완료 체크 상태이며, 구현 잠금은 해제되어 있다. + - 상태를 `[검토중]`으로 전환했고, archive 이동은 수행하지 않았다. +- 종료 감사(2026-06-22): + - 코드 레벨 검토에서 `services/core/internal/gitosync`, `roadmapsync`, `roadmapsyncpipeline`, `scheduler`, `workflow`, `storage`, `authoring`, `adapters/openai`, `adapters/plane`의 마일스톤 관련 구현과 테스트를 확인했다. + - 검증 근거: `cd services/core && go test ./internal/gitosync ./internal/roadmapsync ./internal/roadmapsyncpipeline ./internal/scheduler ./internal/workflow ./internal/storage ./internal/authoring ./internal/adapters/openai ./internal/adapters/plane`, `cd services/core && go test ./...`, `cd services/core && go vet ./...`, `git diff --check` 통과. + - standard remote runner 검증은 SSH host key mismatch로 실행하지 못했다. 이전 live-cycle 완료 로그의 remote PASS 근거와 현재 로컬 전체 테스트를 종료 판단 보조 근거로 사용했다. - 확인 필요: 없음 diff --git a/agent-roadmap/sdd/agent-ops-mcp-control-plane/plane-origin-authoring-roundtrip-sync/SDD.md b/agent-roadmap/archive/sdd/agent-ops-mcp-control-plane/plane-origin-authoring-roundtrip-sync/SDD.md similarity index 100% rename from agent-roadmap/sdd/agent-ops-mcp-control-plane/plane-origin-authoring-roundtrip-sync/SDD.md rename to agent-roadmap/archive/sdd/agent-ops-mcp-control-plane/plane-origin-authoring-roundtrip-sync/SDD.md diff --git a/agent-roadmap/phase/agent-ops-mcp-control-plane/PHASE.md b/agent-roadmap/phase/agent-ops-mcp-control-plane/PHASE.md index 6be1647..be0e7e1 100644 --- a/agent-roadmap/phase/agent-ops-mcp-control-plane/PHASE.md +++ b/agent-roadmap/phase/agent-ops-mcp-control-plane/PHASE.md @@ -6,7 +6,7 @@ ## 목표 -로드맵 기반 agent-ops 운영 루프와 Plane/Jira 같은 work item provider와 Milestone item의 양방향 동기화 도메인을 Core action 경계로 정리한다. 외부 agent 제어 표면은 현재 확정하지 않고 후속 스케치로 분리한다. 현재는 Gito HTTP Webhook Consumer Readiness까지 완료/archive했고, Roadmap Driven Agent-Ops Automation을 상위 설계 Milestone으로 유지한다. 최신 dev 환경에서 확인된 Plane-origin authoring 회귀는 Plane-Origin Authoring Roundtrip Sync에서 별도 구현 slice로 닫는다. +로드맵 기반 agent-ops 운영 루프와 Plane/Jira 같은 work item provider와 Milestone item의 양방향 동기화 도메인을 Core action 경계로 정리한다. 외부 agent 제어 표면은 현재 확정하지 않고 후속 스케치로 분리한다. 현재는 Plane-Origin Authoring Roundtrip Sync까지 완료/archive했고, Roadmap Driven Agent-Ops Automation을 상위 설계 Milestone으로 유지한다. ## Milestone 흐름 @@ -38,13 +38,13 @@ - 경로: `agent-roadmap/archive/phase/agent-ops-mcp-control-plane/milestones/gito-http-webhook-consumer-readiness.md` - 요약: Gito `gito.forgejo-branch-events.v1` signed HTTP webhook delivery를 NomadCode Core가 소비하고 branch revision 재검증/creation sync enqueue로 수렴하는 구현을 코드 레벨 종료 감사와 소규모 계약 보강 후 archive했다. -- [진행중] Plane-Origin Authoring Roundtrip Sync - - 경로: `agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/plane-origin-authoring-roundtrip-sync.md` - - 요약: 현재 우선 구현 slice다. 완료 처리된 Plane-origin creation sync를 최신 dev IOP Responses, workspace slot, Gito HTTP webhook, filename slug canonical id, active Milestone reconcile, Plane 생성/갱신 기준으로 재검증하고 보강한다. +- [완료] Plane-Origin Authoring Roundtrip Sync + - 경로: `agent-roadmap/archive/phase/agent-ops-mcp-control-plane/milestones/plane-origin-authoring-roundtrip-sync.md` + - 요약: 최신 dev IOP Responses, workspace slot, Gito HTTP webhook, filename slug canonical id, active Milestone reconcile, Plane 생성/갱신 기준의 기능 Task와 live 검증을 완료했고 코드 레벨 종료 감사 후 archive했다. - [진행중] Roadmap Driven Agent-Ops Automation - 경로: `agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/roadmap-driven-agent-ops-automation.md` - - 요약: roadmap/action core와 Plane/Jira 기반 Milestone item 동기화의 상위 방향과 계약을 정리하는 활성 설계 마일스톤이며, 실제 구현은 우선 slice인 Plane-Origin Authoring Roundtrip Sync에서 진행한다. + - 요약: roadmap/action core와 Plane/Jira 기반 Milestone item 동기화의 상위 방향과 계약을 정리하는 다음 활성 마일스톤이다. - [계획] Milestone Execution Lifecycle Sync - 경로: `agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/milestone-execution-lifecycle-sync.md`