--- test_env: dev test_profile: platform-common-smoke domain: platform-common verification_type: smoke last_rule_updated_at: 2026-06-12 --- # platform-common-smoke dev 테스트 ## 읽기 조건 - `packages/go/**`, `proto/**`, `configs/**` 변경 또는 공통 설정, protobuf 계약, host setup dev 검증 판단이 필요한 경우 ## 적용 범위 - `packages/go/**` - `proto/iop/**` - `proto/gen/iop/**` - `configs/**` - dev env/compose/config 계약 ## 분류 - domain: platform-common - verification_type: smoke - scope: 공통 패키지, 설정, protobuf 계약 baseline ## 환경 - host: local checkout. dev field/runtime evidence가 필요한 경우에만 원격 runner를 사용한다. - port: dev Edge-Node TCP transport `19003`, dev Edge OpenAI-compatible HTTP 후보 `18083`, dev Portal/Control Plane wire test endpoint `19001`, dev artifact/bootstrap 후보 `18082`. - runtime: Go `1.24` - package manager: Go modules / Makefile - docker: unit/codegen quick check는 Docker를 요구하지 않는다. compose dev 검증은 `docker compose --env-file .env.dev.example ...`로 수행한다. - external service: dev artifact/base URL 후보 `http://toki-labs.com:18082` - model endpoint: dev OpenAI-compatible base URL 후보 `http://toki-labs.com:18083/v1` - credential: token/secret 원문은 문서에 기록하지 않는다. ## 명령 - setup: - lint: - unit: `go test ./packages/go/... ./proto/gen/...` - smoke: `go test ./...` - e2e: `make test-e2e` - model: - full-cycle: 설정/proto 변경이 사용자 실행 파이프라인에 닿으면 edge-node 실제 구동 검증 ## 필수 검증 - 공통 패키지 변경 시 변경 패키지 테스트 또는 `go test ./packages/go/... ./proto/gen/...`를 실행한다. - protobuf 원본 변경 시 `make proto`로 Go 생성물을 갱신하고 생성물 diff를 확인한다. - config 계약 변경 시 `packages/go/config` struct/default와 `configs/*.yaml` 예시가 일치하는지 확인한다. - dev env/compose 계약 변경 시 `.env.dev.example`, `docker-compose.yml`, `agent-test/dev/rules.md`의 포트가 서로 일치하는지 확인한다. ## 보조 검증 - `go test ./...`는 저장소 전체 회귀 확인으로 사용한다. - 실행 경로에 닿는 config/proto 변경은 `make test-e2e`를 보조 확인으로 사용할 수 있다. ## 판정 기준 - 공통 패키지는 앱 내부 패키지를 import하지 않는다. - proto 생성물은 원본 proto와 `make proto` 결과로만 갱신된다. - 설정 예시는 loader/default와 어긋나지 않는다. - dev 포트는 local/test 포트를 덮어쓰지 않고 dev profile에서만 사용된다. ## 기준 출력 예시 ```text go test ./packages/go/... ./proto/gen/... ``` ## 차단 기준 - `protoc` 또는 `protoc-gen-go`가 없어서 proto 생성 검증을 실행할 수 없다. - config 변경이 실제 환경값이나 credential 없이는 판정 불가능하다. ## 보고 항목 - 실행한 명령: - 성공한 검증: - 실패/차단된 검증: - 생략 사유: - 남은 위험: ## 금지 사항 - `proto/gen/iop/*.pb.go` 생성 파일을 직접 수정하지 않는다. - 앱 하나만을 위한 임시 타입을 충분한 근거 없이 공통 패키지로 승격하지 않는다. - secret, token, 개인 endpoint 원문은 tracked 파일에 기록하지 않는다.