chore: archive workflow-core phase and update external-integration roadmap
This commit is contained in:
parent
bc0c04b715
commit
5bae8e7302
4 changed files with 16 additions and 12 deletions
|
|
@ -29,12 +29,12 @@ IOP 외부 실행 호출은 OpenAI-compatible Responses API 방식을 기본 계
|
||||||
- [완료] Mattermost Push Plugin Extraction
|
- [완료] Mattermost Push Plugin Extraction
|
||||||
- 경로: `agent-roadmap/archive/phase/mattermost-push-plugin-extraction/PHASE.md`
|
- 경로: `agent-roadmap/archive/phase/mattermost-push-plugin-extraction/PHASE.md`
|
||||||
- 요약: Flutter 앱에 섞인 Mattermost push notification migration을 분리했고, 현재 package 경로는 `../nexo/packages/messaging_flutter`다.
|
- 요약: Flutter 앱에 섞인 Mattermost push notification migration을 분리했고, 현재 package 경로는 `../nexo/packages/messaging_flutter`다.
|
||||||
- [검토중] Workflow Core
|
- [완료] Workflow Core
|
||||||
- 경로: `agent-roadmap/phase/workflow-core/PHASE.md`
|
- 경로: `agent-roadmap/archive/phase/workflow-core/PHASE.md`
|
||||||
- 요약: proto-socket 내부 통신 레일을 정리한 뒤 client-core 통신과 실제 e2e 흐름을 기준으로 task lifecycle, retry, timeout, notification event를 안정화한다.
|
- 요약: proto-socket 내부 통신 레일을 정리한 뒤 client-core 통신과 실제 e2e 흐름을 기준으로 task lifecycle, retry, timeout, notification event를 안정화한다.
|
||||||
- [진행중] External Integration
|
- [진행중] External Integration
|
||||||
- 경로: `agent-roadmap/phase/external-integration/PHASE.md`
|
- 경로: `agent-roadmap/phase/external-integration/PHASE.md`
|
||||||
- 요약: Workflow Core 재개 전에 Mattermost/Nexo messaging 정합성을 먼저 닫고, 이후 Plane 확장, Mattermost, IOP OpenAI-compatible Responses 호출과 metadata 기반 실행 문맥 전달을 실제 통합 흐름으로 확장한다.
|
- 요약: Workflow Core와 Mattermost/Nexo messaging 정합성 완료 이후 Plane 확장, Jira-compatible provider 추상화, Mattermost, IOP OpenAI-compatible Responses 호출과 metadata 기반 실행 문맥 전달을 실제 통합 흐름으로 확장한다.
|
||||||
- [계획] Project Workspace Management UX
|
- [계획] Project Workspace Management UX
|
||||||
- 경로: `agent-roadmap/phase/project-workspace-management-ux/PHASE.md`
|
- 경로: `agent-roadmap/phase/project-workspace-management-ux/PHASE.md`
|
||||||
- 요약: client integration 표준화는 완료했고, 실제 프로젝트 단위 앱 UX 구현은 core workflow와 외부 통합 기준 이후로 미룬다.
|
- 요약: client integration 표준화는 완료했고, 실제 프로젝트 단위 앱 UX 구현은 core workflow와 외부 통합 기준 이후로 미룬다.
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
## 상태
|
## 상태
|
||||||
|
|
||||||
[검토중]
|
[완료]
|
||||||
|
|
||||||
## 목표
|
## 목표
|
||||||
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
|
|
||||||
## 목표
|
## 목표
|
||||||
|
|
||||||
Work Item Provider Pipeline Design과 Workflow Core 이후 Plane/Jira 확장, Mattermost, Agent Integrator, IOP OpenAI API Responses-compatible 호출을 실제 통합 흐름으로 확장한다. NomadCode가 직접 모델 런타임을 소유하지 않고 IOP의 외부 입력 표면을 호출하는 방향을 유지한다.
|
Work Item Provider Pipeline Design과 Workflow Core 완료 이후 Plane 확장, Jira-compatible provider 추상화, Mattermost, Agent Integrator, IOP OpenAI API Responses-compatible 호출을 실제 통합 흐름으로 확장한다. NomadCode가 직접 모델 런타임을 소유하지 않고 IOP의 외부 입력 표면을 호출하는 방향을 유지한다.
|
||||||
|
|
||||||
## Milestone 흐름
|
## Milestone 흐름
|
||||||
|
|
||||||
|
|
@ -23,12 +23,12 @@ Work Item Provider Pipeline Design과 Workflow Core 이후 Plane/Jira 확장, Ma
|
||||||
|
|
||||||
- [진행중] External Integration
|
- [진행중] External Integration
|
||||||
- 경로: `agent-roadmap/phase/external-integration/milestones/external-integration.md`
|
- 경로: `agent-roadmap/phase/external-integration/milestones/external-integration.md`
|
||||||
- 요약: Plane/Jira/Mattermost/Agent Integrator/IOP 호출 경계를 실제 통합 adapter 흐름으로 확장한다.
|
- 요약: Plane, Jira-compatible provider 추상화, Mattermost, Agent Integrator, IOP 호출 경계를 실제 통합 adapter 흐름으로 확장한다.
|
||||||
|
|
||||||
## Phase 경계
|
## Phase 경계
|
||||||
|
|
||||||
- 외부 provider 세부 구현은 adapter 경계 밖으로 새지 않게 한다.
|
- 외부 provider 세부 구현은 adapter 경계 밖으로 새지 않게 한다.
|
||||||
- Mattermost Nexo Messaging Alignment는 현재 workflow/core 작업을 재개하기 전에 닫아야 하는 선행 정합성 작업이다.
|
- Mattermost Nexo Messaging Alignment는 Workflow Core 완료 이후 외부 통합 구현을 시작하기 전에 닫은 선행 정합성 작업이다.
|
||||||
- Mattermost messaging Android smoke는 사용자 테스트를 제외하고 원격 Android SDK build와 알림 도착 확인까지만 완료 범위로 둔다.
|
- Mattermost messaging Android smoke는 사용자 테스트를 제외하고 원격 Android SDK build와 알림 도착 확인까지만 완료 범위로 둔다.
|
||||||
- IOP 내부 모델 라우팅, 모델 프로파일, RAG, MCP, output validation, fallback 정책은 NomadCode 범위에서 제외한다.
|
- IOP 내부 모델 라우팅, 모델 프로파일, RAG, MCP, output validation, fallback 정책은 NomadCode 범위에서 제외한다.
|
||||||
- A2A 도입 시점과 Agent Integrator 유지 여부는 사용자 결정이 필요하다.
|
- A2A 도입 시점과 Agent Integrator 유지 여부는 사용자 결정이 필요하다.
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
## 목표
|
## 목표
|
||||||
|
|
||||||
Work Item Provider Pipeline Design과 workflow core 이후 남은 Plane/Jira 확장, Mattermost, IOP 실행 연결을 stub 또는 호환 호출 경로에서 실제 통합 흐름으로 확장한다. IOP 호출은 현재 단계에서 OpenAI-compatible Responses API 경로를 기본으로 하며, NomadCode/IOP 고유 실행 문맥은 `metadata` 확장으로 전달한다. NomadCode가 직접 모델 런타임을 호출하거나 IOP native protocol을 외부 호출 표면으로 사용하지 않는다.
|
Work Item Provider Pipeline Design과 workflow core 이후 남은 Plane 확장, Jira-compatible provider 추상화, Mattermost, IOP 실행 연결을 stub 또는 호환 호출 경로에서 실제 통합 흐름으로 확장한다. IOP 호출은 현재 단계에서 OpenAI-compatible Responses API 경로를 기본으로 하며, NomadCode/IOP 고유 실행 문맥은 `metadata` 확장으로 전달한다. NomadCode가 직접 모델 런타임을 호출하거나 IOP native protocol을 외부 호출 표면으로 사용하지 않는다.
|
||||||
|
|
||||||
## 상태
|
## 상태
|
||||||
|
|
||||||
|
|
@ -23,8 +23,9 @@ Work Item Provider Pipeline Design과 workflow core 이후 남은 Plane/Jira 확
|
||||||
|
|
||||||
## 범위
|
## 범위
|
||||||
|
|
||||||
|
- provider별 HTTP handler를 늘리지 않아도 `workitem.Reader`/provider registry로 같은 intake pipeline을 탈 수 있는 provider-neutral 연결 구조
|
||||||
- Plane work item 생성 / comment / status update 확장
|
- Plane work item 생성 / comment / status update 확장
|
||||||
- Jira issue 조회 / comment / status transition adapter 구현
|
- Jira live API 구현은 테스트 환경이 생길 때까지 범위에서 제외하고, provider-neutral work item 계약이 Jira issue / comment / status transition 의미를 수용할 수 있게 추상화
|
||||||
- Mattermost 메시지 발송 구현
|
- Mattermost 메시지 발송 구현
|
||||||
- IOP Node agent interface를 호출하는 thin execution connector/adapter 경계 추가
|
- IOP Node agent interface를 호출하는 thin execution connector/adapter 경계 추가
|
||||||
- IOP OpenAI-compatible Responses API 호출 구조와 metadata 기반 실행 문맥 전달 추가
|
- IOP OpenAI-compatible Responses API 호출 구조와 metadata 기반 실행 문맥 전달 추가
|
||||||
|
|
@ -37,13 +38,14 @@ Work Item Provider Pipeline Design과 workflow core 이후 남은 Plane/Jira 확
|
||||||
|
|
||||||
외부 work item provider, 협업 도구, 실행 표면을 adapter 경계 안에서 실제 통합 흐름으로 확장한다.
|
외부 work item provider, 협업 도구, 실행 표면을 adapter 경계 안에서 실제 통합 흐름으로 확장한다.
|
||||||
|
|
||||||
|
- [ ] [provider-intake-registry] Plane 전용 task intake handler를 provider-neutral registry/generic route 또는 동등한 조립 구조로 정리해, 새 provider가 `workitem.Reader`와 필요한 capability facet만 구현하면 같은 work item -> core task pipeline을 재사용할 수 있게 한다. 검증: Plane 기존 경로는 호환되거나 같은 registry를 통해 동작하고, Jira-compatible provider를 붙일 때 provider별 task handler/route를 새로 만들 필요가 없다.
|
||||||
- [ ] [plane-adapter-expand] Plane work item 생성, comment, status update adapter 확장. 검증: core가 Plane에 work item, comment, status update를 요청할 수 있다.
|
- [ ] [plane-adapter-expand] Plane work item 생성, comment, status update adapter 확장. 검증: core가 Plane에 work item, comment, status update를 요청할 수 있다.
|
||||||
- [ ] [jira-adapter] Jira issue 조회, comment, status transition adapter 구현. 검증: core가 Jira에 issue 조회, comment, status transition을 요청할 수 있다.
|
- [ ] [jira-adapter] Jira live provider 구현은 테스트 환경이 생길 때까지 범위에서 제외하고, provider-neutral work item 계약이 Jira issue 조회, comment, status transition 의미를 수용할 수 있게 추상화한다. 검증: Jira credential 없이도 core의 provider-neutral contract/unit tests가 Jira-compatible state/comment/projection 요구를 설명하고, live Jira API 호출/e2e를 요구하지 않는다.
|
||||||
- [ ] [mattermost-adapter] Mattermost 메시지 발송 adapter 구현과 `../nexo/packages/messaging_flutter` host notification boundary 정합성 유지. 검증: core가 Mattermost에 메시지를 발송하고, server-generated signed push smoke가 `agent-test/local/mattermost-server-generated-push-smoke.md` 기준으로 FCM/ACK/opened/reply/dismiss evidence를 남긴다.
|
- [ ] [mattermost-adapter] Mattermost 메시지 발송 adapter 구현과 `../nexo/packages/messaging_flutter` host notification boundary 정합성 유지. 검증: core가 Mattermost에 메시지를 발송하고, server-generated signed push smoke가 `agent-test/local/mattermost-server-generated-push-smoke.md` 기준으로 FCM/ACK/opened/reply/dismiss evidence를 남긴다.
|
||||||
|
- [ ] [adapter-boundary] 외부 provider별 구현 경계 점검. 검증: provider 세부 구현이 adapter 경계 밖으로 새지 않는다.
|
||||||
- [x] [agent-integrator] Agent Integrator를 별도 runtime이 아닌 IOP Node agent interface용 thin execution connector/adapter 경계로 재정의한다. 검증: Agent Integrator 또는 그 대체 연결 지점이 명확히 정의되어 있다.
|
- [x] [agent-integrator] Agent Integrator를 별도 runtime이 아닌 IOP Node agent interface용 thin execution connector/adapter 경계로 재정의한다. 검증: Agent Integrator 또는 그 대체 연결 지점이 명확히 정의되어 있다.
|
||||||
- [x] [iop-responses] IOP OpenAI-compatible Responses API 경로와 metadata 확장을 NomadCode의 기본 실행 호출 경로로 정리. 검증: IOP OpenAI-compatible Responses 호출 경로가 core workflow와 연결된다.
|
- [x] [iop-responses] IOP OpenAI-compatible Responses API 경로와 metadata 확장을 NomadCode의 기본 실행 호출 경로로 정리. 검증: IOP OpenAI-compatible Responses 호출 경로가 core workflow와 연결된다.
|
||||||
- [x] [model-reclass] direct model endpoint / Ollama fallback 표현과 설정을 IOP 경유 호출 기준으로 재분류. 검증: NomadCode의 기본 실행 경로가 직접 모델 호출이 아니라 IOP 경유 호출임이 로드맵과 운영 문서에서 일관되게 읽힌다.
|
- [x] [model-reclass] direct model endpoint / Ollama fallback 표현과 설정을 IOP 경유 호출 기준으로 재분류. 검증: NomadCode의 기본 실행 경로가 직접 모델 호출이 아니라 IOP 경유 호출임이 로드맵과 운영 문서에서 일관되게 읽힌다.
|
||||||
- [ ] [adapter-boundary] 외부 provider별 구현 경계 점검. 검증: provider 세부 구현이 adapter 경계 밖으로 새지 않는다.
|
|
||||||
|
|
||||||
## 완료 리뷰
|
## 완료 리뷰
|
||||||
|
|
||||||
|
|
@ -58,6 +60,7 @@ Work Item Provider Pipeline Design과 workflow core 이후 남은 Plane/Jira 확
|
||||||
## 범위 제외
|
## 범위 제외
|
||||||
|
|
||||||
- Outline / Forgejo / Nextcloud 연동
|
- Outline / Forgejo / Nextcloud 연동
|
||||||
|
- Jira live API adapter 완성, 실제 Jira credential 기반 e2e smoke, Jira Cloud 운영 검증
|
||||||
- MCP 서버
|
- MCP 서버
|
||||||
- Web Agent UI
|
- Web Agent UI
|
||||||
- Flutter 앱 기능 구현
|
- Flutter 앱 기능 구현
|
||||||
|
|
@ -71,7 +74,7 @@ Work Item Provider Pipeline Design과 workflow core 이후 남은 Plane/Jira 확
|
||||||
- 주요 작업 영역: `services/core/internal/adapters/`, `services/core/internal/scheduler/`, `services/core/internal/workflow/`
|
- 주요 작업 영역: `services/core/internal/adapters/`, `services/core/internal/scheduler/`, `services/core/internal/workflow/`
|
||||||
- 선행 작업: Work Item Provider Pipeline Design, Workflow Core, Mattermost Nexo Messaging Alignment
|
- 선행 작업: Work Item Provider Pipeline Design, Workflow Core, Mattermost Nexo Messaging Alignment
|
||||||
- 후속 작업: Project Workspace Management UX
|
- 후속 작업: Project Workspace Management UX
|
||||||
- 현재 지점: Workflow Core가 완료되어 Plane/Jira/Mattermost/Agent Integrator/IOP 호출 경계를 실제 adapter 흐름으로 확장하는 단계로 전환했다. `구현 잠금`의 직접 결정 항목은 현재 기준으로 해소되어 표준선에 따라 구현 계획을 만들 수 있다.
|
- 현재 지점: Workflow Core Phase가 `[완료]`로 archive되었고, 현재 작업은 `[provider-intake-registry]`를 먼저 정리해 Plane/Jira-compatible/Mattermost 등 provider 확장이 같은 work item intake pipeline을 재사용하게 만드는 단계다. Jira는 현재 테스트 환경이 없으므로 live provider 구현 완료가 아니라 provider-neutral 추상화 적합성까지만 이 Milestone에서 다룬다. `구현 잠금`의 직접 결정 항목은 현재 기준으로 해소되어 표준선에 따라 구현 계획을 만들 수 있다.
|
||||||
- Mattermost signed push smoke 재현 가이드: `agent-test/local/mattermost-server-generated-push-smoke.md`
|
- Mattermost signed push smoke 재현 가이드: `agent-test/local/mattermost-server-generated-push-smoke.md`
|
||||||
- private 환경값 router: `agent-test/local/mattermost-server-generated-push-smoke.md` (ignored local file)
|
- private 환경값 router: `agent-test/local/mattermost-server-generated-push-smoke.md` (ignored local file)
|
||||||
- Mattermost 책임 경계: core는 Mattermost REST 메시지 발송과 task notification 발행을 담당하고, `../nexo/packages/messaging_flutter`는 client-side FCM 수신, signature 검증, ACK, notification display, opened-routing, inline reply, dismiss를 담당한다.
|
- Mattermost 책임 경계: core는 Mattermost REST 메시지 발송과 task notification 발행을 담당하고, `../nexo/packages/messaging_flutter`는 client-side FCM 수신, signature 검증, ACK, notification display, opened-routing, inline reply, dismiss를 담당한다.
|
||||||
|
|
@ -79,6 +82,7 @@ Work Item Provider Pipeline Design과 workflow core 이후 남은 Plane/Jira 확
|
||||||
- Nexo host 정합성: NomadCode host는 Firebase 설정, Mattermost credential handoff, signing key, optional server identifier, navigation callback만 `MattermostPushClient` 경계로 전달한다. native push 처리 로직은 `apps/client/android`에 복제하지 않는다.
|
- Nexo host 정합성: NomadCode host는 Firebase 설정, Mattermost credential handoff, signing key, optional server identifier, navigation callback만 `MattermostPushClient` 경계로 전달한다. native push 처리 로직은 `apps/client/android`에 복제하지 않는다.
|
||||||
- 선행 순서: Mattermost 메시지/알림 경계 정합성은 `agent-roadmap/archive/phase/external-integration/milestones/mattermost-nexo-messaging-alignment.md`에서 먼저 닫았고, 이후 `[mattermost-adapter]`는 core의 Mattermost REST 메시지 발송 구현에 집중한다.
|
- 선행 순서: Mattermost 메시지/알림 경계 정합성은 `agent-roadmap/archive/phase/external-integration/milestones/mattermost-nexo-messaging-alignment.md`에서 먼저 닫았고, 이후 `[mattermost-adapter]`는 core의 Mattermost REST 메시지 발송 구현에 집중한다.
|
||||||
- Plane 제어 범위: 이 Milestone은 Plane work item 생성, comment, status update adapter 확장까지만 다룬다. Plane 상위 티켓/Milestone, 하위 티켓/Task 제어 흐름과 MCP 기반 agent-ops control plane은 `Agent-Ops MCP Control Plane` Phase로 미룬다.
|
- Plane 제어 범위: 이 Milestone은 Plane work item 생성, comment, status update adapter 확장까지만 다룬다. Plane 상위 티켓/Milestone, 하위 티켓/Task 제어 흐름과 MCP 기반 agent-ops control plane은 `Agent-Ops MCP Control Plane` Phase로 미룬다.
|
||||||
|
- Provider pipeline 현재 상태: `services/core/internal/workitem`과 `services/core/internal/workitempipeline`은 provider-neutral 계약을 갖고 있지만, HTTP intake wiring은 Plane 전용 route/handler에 치우쳐 있다. 이 Milestone에서는 `[provider-intake-registry]`로 상위 연결부를 정리해 provider 추가가 adapter/capability facet 확장 중심으로 닫히게 한다.
|
||||||
- Agent runtime 연결 기준: Agent Shell은 실제 agent runtime이 아니라 사용자 대화 UX surface이며, 실제 agent는 IOP Node의 agent interface 뒤에 있다. 따라서 `Agent Integrator`는 별도 runtime이나 A2A 전제 계층으로 키우지 않고, NomadCode core에서 IOP Node agent interface를 호출하는 thin execution connector/adapter 경계로 재정의한다.
|
- Agent runtime 연결 기준: Agent Shell은 실제 agent runtime이 아니라 사용자 대화 UX surface이며, 실제 agent는 IOP Node의 agent interface 뒤에 있다. 따라서 `Agent Integrator`는 별도 runtime이나 A2A 전제 계층으로 키우지 않고, NomadCode core에서 IOP Node agent interface를 호출하는 thin execution connector/adapter 경계로 재정의한다.
|
||||||
- A2A 결정: 이번 Milestone은 A2A JSON-RPC 기반 외부 agent 추가, task 상태, artifact, cancel 흐름 공유를 구현하지 않는다. A2A는 IOP OpenAI-compatible Responses 표면으로 감당하기 어려운 agent-to-agent delegation 요구가 명확해질 때 후속 Milestone에서 재검토한다.
|
- A2A 결정: 이번 Milestone은 A2A JSON-RPC 기반 외부 agent 추가, task 상태, artifact, cancel 흐름 공유를 구현하지 않는다. A2A는 IOP OpenAI-compatible Responses 표면으로 감당하기 어려운 agent-to-agent delegation 요구가 명확해질 때 후속 Milestone에서 재검토한다.
|
||||||
- IOP 호출 계약: 이번 Milestone의 기본 실행 호출 표면은 OpenAI-compatible Responses API로 정식 채택한다. NomadCode/IOP 전용 task/workspace/session/agent/approval/artifact/notification 의미는 별도 `iop` wrapper 필드를 만들지 않고 OpenAI-compatible `metadata` 또는 IOP native endpoint의 명시 필드로 전달한다. 완전 신규 프로토콜은 OpenAI-compatible 표면으로 task lifecycle, artifact, cancel, approval, streaming 요구를 감당하기 어렵다는 근거가 생길 때 재검토한다.
|
- IOP 호출 계약: 이번 Milestone의 기본 실행 호출 표면은 OpenAI-compatible Responses API로 정식 채택한다. NomadCode/IOP 전용 task/workspace/session/agent/approval/artifact/notification 의미는 별도 `iop` wrapper 필드를 만들지 않고 OpenAI-compatible `metadata` 또는 IOP native endpoint의 명시 필드로 전달한다. 완전 신규 프로토콜은 OpenAI-compatible 표면으로 task lifecycle, artifact, cancel, approval, streaming 요구를 감당하기 어렵다는 근거가 생길 때 재검토한다.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue