# dart ## 목적 / 책임 Proto Socket의 Dart/Flutter 구현체를 담당한다. ProtobufClient, ProtobufServer 등 핵심 클래스를 제공하며, 크로스 언어 테스트의 기준 구현으로 동작한다. ## 포함 경로 - `dart/lib/` — 공개 API 및 구현 - `dart/test/` — 동일 언어 단위/통합 테스트 - `dart/crosstest/` — 크로스 언어 테스트 (Go, Kotlin과 연동). 오케스트레이터 또는 클라이언트 헬퍼 - `dart/pubspec.yaml` — 패키지 의존성 ## 제외 경로 - `dart/lib/src/packets/` — protocol 도메인의 Dart protobuf 생성 코드 ## 주요 구성 요소 - `ProtobufClient` — 소켓 클라이언트 기반 클래스 - `ProtobufServer` — 소켓 서버 기반 클래스 ## 유지할 패턴 - `dart pub get` 후 `dart test`로 테스트 실행 - crosstest는 상대방 언어 서버/클라이언트가 실행 중인 상태에서 수행 - Available 표시 조건: 동일 언어 테스트 + 크로스 언어 테스트 통과 ## 다른 도메인과의 경계 - **protocol**: proto 타입을 사용하지만, proto 파일 자체는 protocol 도메인 - **go/kotlin**: crosstest에서 상호 연동하지만, 각 구현체 내부 로직은 독립 ## 금지 사항 - Dart 구현체에 Go/Kotlin 특화 로직을 추가하지 않는다 - proto schema 변경 시 proto 도메인 규칙을 먼저 따른다