nomadcode/agent-ops/roadmap/milestones/workflow-core.md
toki e865a7b406 chore: archive completed milestones and update roadmap
- Archive flutter-first-client-consolidation milestone to 2026/05
- Archive plane-task-pipeline-design milestone to 2026/05
- Update ROADMAP.md and current.md
- Update workflow-core milestone
2026-05-25 06:53:03 +09:00

3.1 KiB

Workflow Core

목표

Plane 통신 토대와 별도 pipeline 설계가 정리된 뒤 실제 상태 변화를 기준으로 task 상태 전이를 정리하고 enqueue / running / completed / failed 흐름을 안정화한다. retry, timeout, notification event의 기본 구조를 추가해 core workflow의 운영 기준을 만든다.

단계

Workflow Core

상태

진행 중

구현 잠금

  • 상태: 해제
  • 결정 필요: 없음

범위

  • task 상태 전이 정리
  • enqueue / running / completed / failed 흐름 안정화
  • retry / timeout 기본 구조 추가
  • notification event 구조 정리
  • Plane 통신 토대와 후속 pipeline 설계에서 확인된 상태 변화와 실패 케이스 반영

필수 기능

  • [lifecycle-model] task lifecycle 상태 모델 점검
  • [transition-ownership] scheduler와 workflow service의 상태 전이 책임 정리
  • [failure-policy] 실패 task 처리 기준
  • [retry-timeout] retry와 timeout의 최소 정책
  • [notification-model] notification event 모델과 발행 지점

완료 기준

  • task가 enqueue 이후 running, completed, failed 상태로 일관되게 전이된다.
  • 실패와 timeout이 관찰 가능한 상태로 남는다.
  • retry 정책의 최소 동작 방식이 구현되거나 명확히 문서화된다.
  • notification event가 workflow 상태 변화와 연결된다.

범위 제외

  • 실제 외부 협업 도구로 notification 발송
  • 복잡한 workflow DSL
  • 고급 권한 정책
  • multi-tenant 운영 정책

작업 컨텍스트

  • 이전 출처: services/core/README.md## 단계별 다음 작업
  • 주요 작업 영역: 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 또는 외부 런타임 책임으로 둔다.
    • Workflow Core는 외부 호출 결과를 completed, failed, canceled, waiting_for_user 같은 canonical 상태/metadata로 정규화한다.
  • notification 최소 범위:
    • 이번 Milestone에서는 core 내부 상태 변화 event 모델과 발행 지점까지만 정한다.
    • Mattermost 등 외부 협업 도구 발송은 External Integration 범위로 넘긴다.
    • provider comment/status/label projection은 workflow 상태 변화의 부수 효과로 재시도 가능해야 하며, projection 실패가 canonical task 상태를 되돌리지는 않는다.
  • 검증 기준: scheduler, persistence, adapter behavior를 크게 바꾸면 관련 테스트를 함께 갱신한다.
  • 확인 필요: 없음