update: operator-surface roadmap and milestones
This commit is contained in:
parent
1c11a17eff
commit
baeb66b32b
5 changed files with 94 additions and 20 deletions
|
|
@ -11,7 +11,7 @@ Flutter 화면 없이 ALT 운영 흐름을 terminal/YAML/log/test fixture 기반
|
|||
|
||||
## 상태
|
||||
|
||||
[진행중]
|
||||
[완료]
|
||||
|
||||
## 구현 잠금
|
||||
|
||||
|
|
@ -34,22 +34,24 @@ Flutter 화면 없이 ALT 운영 흐름을 terminal/YAML/log/test fixture 기반
|
|||
|
||||
운영 화면을 만들기 전에 같은 API/worker 경계를 화면 없이 검증한다.
|
||||
|
||||
- [ ] [scenario-format] operator scenario를 YAML 또는 동등한 파일 형식으로 표현한다. 검증: 예시 scenario가 parser 또는 dry-run 검증을 통과한다.
|
||||
- [ ] [terminal-run] terminal에서 scenario를 실행하거나 대표 조회를 수행할 수 있다. 검증: CLI 또는 script가 exit code와 요약 출력을 남긴다.
|
||||
- [ ] [market-check] market data status/import 관련 결과를 화면 없이 확인할 수 있다. 검증: fixture 또는 local smoke가 상태 출력을 확인한다.
|
||||
- [ ] [backtest-check] backtest list/detail/result/start 관련 결과를 화면 없이 확인할 수 있다. 검증: fixture 또는 local smoke가 성공/실패 결과를 확인한다.
|
||||
- [ ] [error-output] unavailable/error/disconnected 상태가 화면 없이도 판별 가능한 출력으로 남는다. 검증: typed error 또는 상태 코드 출력 테스트가 통과한다.
|
||||
- [ ] [handoff] Flutter 화면 MVP로 넘길 수 있는 검증 evidence와 남은 wireframe 의존성을 정리한다.
|
||||
- [x] [scenario-format] operator scenario를 YAML 또는 동등한 파일 형식으로 표현한다. 검증: 예시 scenario가 parser 또는 dry-run 검증을 통과한다.
|
||||
- [x] [terminal-run] terminal에서 scenario를 실행하거나 대표 조회를 수행할 수 있다. 검증: CLI 또는 script가 exit code와 요약 출력을 남긴다.
|
||||
- [x] [market-check] market data status/import 관련 결과를 화면 없이 확인할 수 있다. 검증: fixture 또는 local smoke가 상태 출력을 확인한다.
|
||||
- [x] [backtest-check] backtest list/detail/result/start 관련 결과를 화면 없이 확인할 수 있다. 검증: fixture 또는 local smoke가 성공/실패 결과를 확인한다.
|
||||
- [x] [error-output] unavailable/error/disconnected 상태가 화면 없이도 판별 가능한 출력으로 남는다. 검증: typed error 또는 상태 코드 출력 테스트가 통과한다.
|
||||
- [x] [handoff] Flutter 화면 MVP로 넘길 수 있는 검증 evidence와 남은 wireframe 의존성을 정리한다.
|
||||
|
||||
## 완료 리뷰
|
||||
|
||||
- 상태: 없음
|
||||
- 요청일: 없음
|
||||
- 완료 근거: 아직 기능 Task와 검증이 충족되지 않았다.
|
||||
- 상태: 승인됨
|
||||
- 요청일: 2026-06-01
|
||||
- 완료 근거: `apps/cli/internal/operator/scenario.go`, `apps/cli/internal/cli/cli.go`, `apps/cli/internal/operator/runner.go`가 YAML scenario validate/run과 text/jsonl 출력을 제공한다.
|
||||
- 완료 근거: `apps/cli/testdata/operator/*.yaml`, `apps/cli/testdata/operator/expected/*.jsonl`, `apps/cli/testdata/operator/headless_validation.md`가 market data, backtest, invalid request matrix의 command/input/output/exit code evidence를 정리한다.
|
||||
- 완료 근거: 원격 ALT checkout에서 `go test ./apps/cli/...`가 통과했다.
|
||||
- 리뷰 필요:
|
||||
- [ ] 사용자가 완료 결과를 확인했다
|
||||
- [ ] archive 이동을 승인했다
|
||||
- 리뷰 코멘트: 없음
|
||||
- [x] 사용자가 완료 결과를 확인했다
|
||||
- [x] archive 이동을 승인했다
|
||||
- 리뷰 코멘트: 2026-06-01 사용자 요청으로 완료 승인 및 archive 이동을 수행했다. `bin/test` 전체 smoke는 원격 checkout에서 `protoc-gen-go` 미설치로 차단되었으며, 필요하면 원격 toolchain 보강 후 재실행한다.
|
||||
|
||||
## 범위 제외
|
||||
|
||||
|
|
@ -7,9 +7,9 @@
|
|||
|
||||
## 활성 Milestone
|
||||
|
||||
- [진행중] Operator Headless Workflow Validation
|
||||
- [진행중] Operator Client API/Core Integration Validation
|
||||
- Phase: `agent-roadmap/phase/operator-surface/PHASE.md`
|
||||
- 경로: `agent-roadmap/phase/operator-surface/milestones/operator-headless-workflow-validation.md`
|
||||
- 경로: `agent-roadmap/phase/operator-surface/milestones/operator-client-api-core-integration.md`
|
||||
|
||||
## 선택 규칙
|
||||
|
||||
|
|
|
|||
|
|
@ -22,9 +22,12 @@ Flutter client를 ALT의 공식 operator surface로 삼아 market data 상태와
|
|||
- [완료] Flutter Operator Console UX Plan
|
||||
- 경로: `agent-roadmap/archive/phase/operator-surface/milestones/flutter-operator-console.md`
|
||||
- 요약: terminal형 콘솔이 아니라 dashboard/control surface라는 제품 의미, headless 검증 우선 원칙, 상태 정책, wireframe gate, validation handoff를 정리했다.
|
||||
- [진행중] Operator Headless Workflow Validation
|
||||
- 경로: `agent-roadmap/phase/operator-surface/milestones/operator-headless-workflow-validation.md`
|
||||
- [완료] Operator Headless Workflow Validation
|
||||
- 경로: `agent-roadmap/archive/phase/operator-surface/milestones/operator-headless-workflow-validation.md`
|
||||
- 요약: Flutter 화면 없이 terminal/YAML 기반 운영 시나리오로 market data와 backtest 조회/실행 결과를 먼저 검증한다.
|
||||
- [진행중] Operator Client API/Core Integration Validation
|
||||
- 경로: `agent-roadmap/phase/operator-surface/milestones/operator-client-api-core-integration.md`
|
||||
- 요약: Flutter 실화면 전에 client core/provider/repository 경계에서 API socket 연결과 기본 market/backtest 호출을 검증한다.
|
||||
- [보류] Flutter Operator Console MVP
|
||||
- 경로: `agent-roadmap/phase/operator-surface/milestones/flutter-operator-console-mvp.md`
|
||||
- 요약: headless 운영 검증과 화면 wireframe 승인 뒤에만 Flutter에서 market data, backtest run, result를 조회하고 실행 요청할 수 있는 MVP 화면을 구현한다.
|
||||
|
|
|
|||
|
|
@ -17,7 +17,8 @@
|
|||
|
||||
- 상태: 잠금
|
||||
- 결정 필요: 아래 체크리스트
|
||||
- [ ] `Operator Headless Workflow Validation`이 완료되어 화면 없이 대표 운영 흐름을 검증했다.
|
||||
- [x] `Operator Headless Workflow Validation`이 완료되어 화면 없이 대표 운영 흐름을 검증했다.
|
||||
- [ ] `Operator Client API/Core Integration Validation`이 완료되어 Flutter 실화면 없이 client core에서 기본 API 호출을 검증했다.
|
||||
- [ ] 화면 wireframe 또는 동등한 화면 정의 산출물이 준비되었고 사용자가 승인했다.
|
||||
|
||||
## 범위
|
||||
|
|
@ -67,6 +68,6 @@ headless 검증과 wireframe 승인을 거친 운영 흐름만 실제 Flutter
|
|||
|
||||
- 관련 경로: `apps/client/`, `packages/contracts/`, `services/api/`
|
||||
- 표준선(선택): `go_router`는 화면 이동/URL 구조, Riverpod은 API client/socket state/feature state 주입을 담당한다. UI는 `AltSocketClient` provider와 generated/mapped contracts boundary를 통해 API만 바라본다.
|
||||
- 선행 작업: Flutter Operator Console UX Plan, Operator Headless Workflow Validation, wireframe 승인
|
||||
- 선행 작업: Flutter Operator Console UX Plan, Operator Headless Workflow Validation, Operator Client API/Core Integration Validation, wireframe 승인
|
||||
- 후속 작업: Flutter Push Notification Boundary
|
||||
- 확인 필요: headless 검증 완료와 wireframe 승인 전에는 구현 잠금을 유지한다.
|
||||
- 확인 필요: headless 검증은 완료되었고, client API/core 연결 검증과 wireframe 승인 전에는 구현 잠금을 유지한다.
|
||||
|
|
|
|||
|
|
@ -0,0 +1,68 @@
|
|||
# Milestone: Operator Client API/Core Integration Validation
|
||||
|
||||
## 위치
|
||||
|
||||
- Roadmap: `agent-roadmap/ROADMAP.md`
|
||||
- Phase: `agent-roadmap/phase/operator-surface/PHASE.md`
|
||||
|
||||
## 목표
|
||||
|
||||
Flutter 실화면 구현 전에 client core, provider, repository 경계에서 API socket 연결과 기본 ALT API 호출이 안정적으로 동작하는지 검증한다. 화면 layout, dashboard depth, chart, form visual design은 뒤로 미루고, generated/mapped contracts와 proto-socket client layer가 market data와 backtest API를 호출하고 typed result/error를 받을 수 있음을 먼저 확인한다.
|
||||
|
||||
## 상태
|
||||
|
||||
[진행중]
|
||||
|
||||
## 구현 잠금
|
||||
|
||||
- 상태: 해제
|
||||
- 결정 필요: 없음
|
||||
|
||||
## 범위
|
||||
|
||||
- Flutter client의 화면 없는 API connection/bootstrap 경계
|
||||
- generated/mapped contracts 기반 request/response mapping
|
||||
- API socket connect/disconnect/timeout 상태를 core state로 표현
|
||||
- market data status/list 계열 기본 호출 검증
|
||||
- backtest list/detail/result/start 계열 기본 호출 검증
|
||||
- unavailable/error/disconnected/typed `ErrorInfo` mapping 검증
|
||||
- UI 구현으로 넘길 API/core readiness evidence 정리
|
||||
|
||||
## 기능
|
||||
|
||||
### Epic: [client-api-core] Client API/core integration validation
|
||||
|
||||
운영 화면을 만들기 전에 Flutter client 내부의 API 연결과 기본 호출 경계를 화면 없이 검증한다.
|
||||
|
||||
- [ ] [client-contracts] generated/mapped contracts를 client core에서 사용할 수 있게 정리한다. 검증: Flutter/Dart test가 request/response mapping을 확인한다.
|
||||
- [ ] [socket-core] API socket 연결, 해제, timeout 상태를 화면 없는 client state로 표현한다. 검증: fake 또는 local socket 기반 test가 상태 전이를 확인한다.
|
||||
- [ ] [market-call] market data status/list 기본 API 호출을 client core에서 수행할 수 있다. 검증: test가 request payload와 parsed result/status key를 확인한다.
|
||||
- [ ] [backtest-call] backtest list/detail/result/start 기본 API 호출을 client core에서 수행할 수 있다. 검증: test가 success result와 typed error mapping을 확인한다.
|
||||
- [ ] [error-core] unavailable/error/disconnected 상태가 UI copy가 아닌 안정적인 client state로 남는다. 검증: typed error와 transport failure unit test가 통과한다.
|
||||
- [ ] [handoff] Flutter Operator Console MVP로 넘길 API/core readiness evidence를 정리한다. 검증: 실행 명령, fixture/fake, 기대 상태, 남은 wireframe 의존성을 문서화한다.
|
||||
|
||||
## 완료 리뷰
|
||||
|
||||
- 상태: 없음
|
||||
- 요청일: 없음
|
||||
- 완료 근거: 아직 기능 Task와 검증이 충족되지 않았다.
|
||||
- 리뷰 필요:
|
||||
- [ ] 사용자가 완료 결과를 확인했다
|
||||
- [ ] archive 이동을 승인했다
|
||||
- 리뷰 코멘트: 없음
|
||||
|
||||
## 범위 제외
|
||||
|
||||
- Flutter 실화면 구현
|
||||
- dashboard layout, navigation depth, chart, form visual design 확정
|
||||
- wireframe 승인
|
||||
- push notification
|
||||
- production 운영 자동화
|
||||
|
||||
## 작업 컨텍스트
|
||||
|
||||
- 관련 경로: `apps/client/`, `packages/contracts/`, `services/api/`, `apps/cli/testdata/operator/`
|
||||
- 표준선(선택): 화면 구현 없이 Riverpod/provider 또는 repository 수준에서 API client boundary를 먼저 안정화한다. 검증은 fake/local socket, fixture, Dart/Flutter test, grep 가능한 output 중 가장 작은 충분한 방식으로 남긴다.
|
||||
- 선행 작업: Flutter Operator Console UX Plan, Operator Headless Workflow Validation
|
||||
- 후속 작업: Flutter Operator Console MVP
|
||||
- 확인 필요: 없음
|
||||
Loading…
Reference in a new issue