- @bufbuild/protobuf를 dependencies에서 devDependencies로 이동 - ws를 peerDependencies에서 devDependencies로 이동 - node_ws_server.ts에 TLS 및 라우팅 기능 추가 - node_ws_client.ts에 TCP 클라이언트 통합 기능 추가 - message_common_pb.ts 프로토콜 버퍼 코드 재생성 - 크로스테스트 클라이언트 파일들 경로 업데이트 - 테스트 파일들 설정 업데이트 - 문서(PORTING_GUIDE, README) 업데이트
1.7 KiB
Proto Socket
Status: planned
This package implements Proto Socket protocol version 0.1 for .
Required Structure
Use this package README to document the concrete files for:
- Transport abstraction: TCP, TLS+TCP, WS, and WSS implementations.
- Communicator core: parser map, listener routing, request-response correlation, and serialized writes.
- Client/server layer: connection lifecycle, close behavior, and heartbeat ownership.
- Generated protobuf bindings from
proto/message_common.proto. - Unit tests and cross-language tests.
Runtime Dependencies
Protocol Buffers is the core protocol dependency. For everything else, prefer native platform APIs and the standard library for transport, binary handling, timers, and concurrency. A non-protobuf runtime dependency must be focused and proportional to the feature it implements. Do not introduce a broad framework or runtime layer solely to cover a narrow feature such as WebSocket transport. If a non-protobuf dependency is required, document why the native alternative is insufficient and keep the dependency surface minimal.
Proto Generation
Document the package-local proto generation command here. The generated schema must match proto/message_common.proto except for language-specific generator options.
# <command to generate protobuf bindings>
After generation, run from the repository root:
tools/check_proto_sync.sh
Validation
Before marking this implementation available, document and run:
# <formatter or linter>
# <unit tests>
# <crosstest command>
The implementation must pass same-language tests and cross-language tests against at least one available implementation.