1.7 KiB
1.7 KiB
| domain | last_rule_review_commit | last_rule_updated_at |
|---|---|---|
| tools | 34692aec18 |
2026-05-21 |
tools
목적 / 책임
Proto 생성·동기화 스크립트를 담당한다. 현재 Dart/Go proto 바인딩 생성과 Go/Kotlin proto 스키마 동기화 검증 도구를 관리한다.
포함 경로
tools/— proto 생성/검증 스크립트PORTING_GUIDE.md— 새 언어 구현 절차 가이드
제외 경로
*/crosstest/— 각 언어 구현체 도메인에 속함dart/lib/,go/*.go,kotlin/src/,python/proto_socket/,typescript/src/— 각 언어 구현체 또는 protocol 도메인proto/,*/packets/,kotlin/src/main/proto/— protocol 도메인
주요 구성 요소
tools/generate_proto.sh— Dart/Go proto 바인딩 생성 후 동기화 검사 실행tools/check_proto_sync.sh—proto/message_common.proto와 Go/Kotlin proto 복사본의 스키마 동기화 검증
유지할 패턴
- proto 변경 후 항상 generate → check_sync 순서로 실행
- Bash 스크립트는
set -euo pipefail과 repo root 기준 경로 계산 패턴을 유지 - 동기화 검사는 언어별 option 차이를 normalize한 뒤 schema 차이만 비교
다른 도메인과의 경계
- protocol: 스크립트가 proto 파일을 읽지만, proto 파일 자체는 protocol 도메인
- dart/go/kotlin/python/typescript: crosstest 코드는 각 언어 도메인에 속함. tools 도메인은
tools/스크립트만 담당
금지 사항
check_proto_sync.sh실패를 무시하고 다음 단계로 진행하지 않는다- tools 스크립트에 언어별 런타임 구현 로직을 넣지 않는다