alt/agent-ops/roadmap/milestones/contract-codegen-baseline.md

2.1 KiB

Contract and Codegen Baseline

목표

proto-socket을 transport로 유지하면서 ALT application protobuf 계약을 Go API/worker와 Flutter client가 반복 가능하게 소비할 수 있는 기준을 만든다. 계약은 alt.v1을 유지하고, generated output은 source schema에서만 생성한다.

단계

기반 정렬

상태

계획

구현 잠금

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

범위

  • packages/contracts/proto/alt/v1 schema 정리
  • Go/Dart protobuf generation 명령과 산출 위치 결정
  • proto-socket parser map과 typeName 등록 기준
  • contract compatibility note
  • generated output 검증 명령

필수 기능

  • [schema-baseline] common.proto, market.proto, backtest.proto가 MVP payload 기준을 담는다.
  • [go-codegen] Go generated contract를 반복 생성할 수 있는 명령이 있다.
  • [dart-codegen] Flutter client가 사용할 Dart generated contract를 반복 생성할 수 있는 명령이 있다.
  • [parser-map] API/client에서 contract message parser map을 구성할 표준 위치와 패턴이 정해져 있다.
  • [compat-note] additive change, field number, versioning 기준이 contracts 문서에 정리되어 있다.
  • [contract-check] root 검증 또는 contracts 검증 명령이 schema/codegen drift를 감지한다.

완료 기준

  • Go와 Dart contract generation 명령이 문서화되어 있고 로컬에서 실행된다.
  • generated output은 source schema와 함께 검증할 수 있다.
  • proto-socket transport proto와 ALT application proto의 책임이 문서에서 분리되어 있다.
  • bin/testbin/lint가 contract 변경 후 통과한다.

범위 제외

  • 실제 KIS 데이터 수집 구현
  • DB persistence schema 확정
  • Flutter 전체 화면 구현
  • 실거래 주문 계약

작업 컨텍스트

  • 관련 경로: packages/contracts/, services/api/, apps/client/
  • 표준선(선택): proto-socket은 transport layer이고 ALT payload는 packages/contracts/proto가 source-of-truth다.
  • 선행 작업: Workspace Baseline
  • 후속 작업: Socket Session Loop
  • 확인 필요: 없음