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