proto-socket/agent-ops/roadmap/ROADMAP.md

53 lines
4.3 KiB
Markdown

# Proto Socket 로드맵
## 전체 목표
Proto Socket은 여러 언어와 플랫폼에서 일관되게 동작하는 얇고 안정적인 protocol-first 소켓 통신 라이브러리를 제공하는 것을 목표로 한다. 공유 계약은 Protocol Buffers 직렬화, TCP/WebSocket 바이너리 프레이밍, 타입 기반 라우팅, 요청-응답 상관관계, 내장 하트비트다.
코어는 작게 유지한다. 인증, 세션, 채팅, 게임 규칙, 룸 로직, 에이전트 워크플로 같은 애플리케이션 의미는 이 프로토콜 계층 위에서 다룬다.
## 활성 창
현재 일반 작업에서 우선 확인할 활성 Milestone 후보는 `agent-ops/roadmap/current.md`에 둔다. 이 문서는 전체 방향, 단계 흐름, Milestone 순서를 갱신할 때만 읽는다.
## 마이그레이션 메모
이 로드맵은 기존 상위 문서에 흩어져 있던 로드맵성 계획을 분리한 것이다.
- `README.md` 구현 상태 표: 사용 가능/계획 언어 작업으로 Milestone 목록에 요약했다.
- `README.md` 로드맵 방향 문단: 사용 가능 언어 parity, C# Unity/.NET 포트, Swift Apple 플랫폼 포트의 의존성 및 native platform 방향으로 옮겼다.
- `README.md` Jenkins 계획 메모: 지속 검증으로 옮겼다.
- `PORTING_GUIDE.md` C# 및 Swift 가이드: 계획된 포팅 Milestone에 연결했다.
- 이전 로드맵의 순번 붙은 단계명, Milestone 이름, Milestone 파일명은 순번 없는 이름과 slug로 정리했다.
## 단계 개요
| 단계 | 상태 | 목표 |
|-------|--------|------|
| 프로토콜 기반 | 완료 | 프로토콜 버전 `0.1`, 와이어 포맷, 버전 정책, canonical proto 원본, 레퍼런스 구현 패턴을 정의한다. |
| 검증과 호환성 | 진행 중 | 동일 언어 테스트, 크로스 언어 테스트, proto 동기화 검사, 지속 검증으로 사용 가능한 구현체들을 정렬한다. |
| 남은 native platform 포팅 | 계획 | 프로토콜 계약과 native-first 런타임 방향을 유지하면서 C# 및 Swift 구현을 추가한다. |
| 릴리즈 준비 | 계획 | 외부 사용을 위한 언어 패키지, 릴리즈 문서, 호환성 설명을 준비한다. |
## Milestone 목록
| Milestone | 단계 | 상태 | 파일 | 요약 |
|-----------|-------|--------|------|---------|
| 프로토콜 기준선 | 프로토콜 기반 | 완료 | agent-ops/roadmap/milestones/protocol-baseline.md | 프로토콜 `0.1`, canonical proto, 프레이밍, 하트비트, nonce, 버전 정책을 문서화했다. |
| 사용 가능 언어 parity | 검증과 호환성 | 완료 | agent-ops/roadmap/milestones/available-language-parity.md | Dart, Go, Kotlin, Python, TypeScript가 사용 가능 상태이며 동일 언어 및 크로스 언어 테스트 진입점이 있다. |
| 지속 검증 | 검증과 호환성 | 진행 중 | agent-ops/roadmap/milestones/continuous-verification.md | 지원 언어 및 크로스 언어 테스트 매트릭스를 자동화한다. 현재 외부 실행 후보는 Jenkins다. |
| C# Unity/.NET 포트 | 남은 native platform 포팅 | 계획 | agent-ops/roadmap/milestones/csharp-port.md | 가능한 곳에서는 native 런타임 패턴을 사용해 Unity와 .NET용 C# 구현을 추가한다. |
| Swift Apple 플랫폼 포트 | 남은 native platform 포팅 | 계획 | agent-ops/roadmap/milestones/swift-port.md | 가능한 곳에서는 Swift concurrency와 Apple native transport API를 사용해 iOS/macOS용 Swift 구현을 추가한다. |
| 릴리즈 준비 | 릴리즈 준비 | 계획 | agent-ops/roadmap/milestones/release-readiness.md | 언어별 패키지 배포, 호환성 메모, 릴리즈 검증을 준비한다. |
## 로딩 정책
- 일반 구현 작업은 `agent-ops/roadmap/current.md`와 관련 활성 Milestone 파일만 읽는다.
- 전체 `ROADMAP.md`는 로드맵 생성/갱신, 단계 전환, Milestone 추가, Milestone 재구성 요청에서만 읽는다.
- 요청된 작업이 선택한 Milestone의 목표 또는 범위 제외 항목과 충돌하면 구현 전에 멈추고 방향을 확인한다.
## 확인 필요
- 활성 Milestone은 전체 지원 언어 및 크로스 언어 검증에 Jenkins를 계획했던 기존 README 메모에서 추론했다.
- 제품 우선순위가 바뀌면 C#과 Swift의 순서는 달라질 수 있다.
- 릴리즈 대상 registry와 패키지 배포 순서는 아직 확정되지 않았다.