49 lines
2 KiB
Markdown
49 lines
2 KiB
Markdown
# 사용 가능 언어 parity
|
|
|
|
## 목표
|
|
|
|
저장소에 포함된 사용 가능 구현체들을 동일 언어 테스트와 크로스 언어 테스트 진입점을 갖춘 공통 프로토콜 표면으로 맞춘다.
|
|
|
|
## 단계
|
|
|
|
검증과 호환성
|
|
|
|
## 상태
|
|
|
|
완료
|
|
|
|
## 범위
|
|
|
|
- `README.md`와 `PROTOCOL.md`에 표시된 사용 가능 구현체 목록을 유지한다.
|
|
- Dart, Go, Kotlin, Python, TypeScript를 프로토콜 버전 `0.1`에 맞춘다.
|
|
- protobuf 외 런타임 의존성은 native-first이며 좁은 범위로 유지한다.
|
|
- 지원 언어 매트릭스를 위한 크로스 언어 테스트 runner를 유지한다.
|
|
|
|
## 필수 기능
|
|
|
|
- [x] Dart 구현체가 `dart/`에 있다.
|
|
- [x] Go 구현체가 `go/`에 있다.
|
|
- [x] Kotlin 구현체가 `kotlin/`에 있다.
|
|
- [x] Python 구현체가 `python/`에 있다.
|
|
- [x] TypeScript 구현체가 `typescript/`에 있다.
|
|
- [x] 사용 가능 구현체 간 크로스 언어 테스트 진입점이 있다.
|
|
- [x] 의존성 방향을 문서화한다. protobuf는 핵심 프로토콜 의존성이며, 다른 런타임 의존성은 native-first, protocol-relevant, minimal이어야 한다.
|
|
|
|
## 완료 기준
|
|
|
|
- [x] 유지보수자는 상위 문서에서 사용 가능 구현체와 계획 구현체를 식별할 수 있다.
|
|
- [x] 새 언어 작업은 `PORTING_GUIDE.md`와 프로젝트 crosstest 템플릿에서 시작할 수 있다.
|
|
- [x] 사용 가능 구현체들은 문서화된 프로토콜 계약을 유지한다.
|
|
|
|
## 범위 제외
|
|
|
|
- 구현, 동일 언어 테스트, 크로스 언어 테스트가 통과하기 전에 C# 또는 Swift를 Available로 표시하지 않는다.
|
|
- 좁은 프로토콜 요구를 처리하기 위해 넓은 framework나 runtime layer를 도입하지 않는다.
|
|
- transport-level 계약을 넘어 프로토콜 의미를 확장하지 않는다.
|
|
|
|
## 작업 컨텍스트
|
|
|
|
- 관련 경로: `README.md`, `PROTOCOL.md`, `PORTING_GUIDE.md`, `agent-ops/skills/project/add-proto-socket-crosstest-language/SKILL.md`
|
|
- 선행 작업: 프로토콜 기준선
|
|
- 후속 작업: 지속 검증
|
|
- 확인 필요: 없음
|