rara/agent-test/dev/platform-common-smoke.md
toki d67b128344
Some checks are pending
ci / validate (push) Waiting to run
add agent-test
2026-07-18 23:55:20 +09:00

3.7 KiB

test_env test_profile domain verification_type last_rule_updated_at
dev platform-common-smoke platform-common smoke 2026-07-18

platform-common-smoke dev 테스트

읽기 조건

  • 설정, database, HTTP lifecycle, observability, artifact store, integration port 또는 배포 구성을 원격 환경에서 검증할 때

적용 범위

  • packages/go/artifact/, packages/go/config/, packages/go/database/, packages/go/httpserver/, packages/go/integration/, packages/go/observability/, configs/, deploy/

분류

  • domain: platform-common
  • verification_type: smoke
  • scope: 원격 runner의 공통 adapter, 포트 override, 서비스 조립 검증

환경

  • host: ssh toki@toki-labs.com
  • repo root: /Users/toki/agent-work/rara-dev
  • port: HTTP 18070-18072, Python gRPC 19070, PostgreSQL host publish 후보 15470
  • runtime: macOS arm64, Go 1.26, Python 3.12
  • package manager: Go modules, Python venv/pip
  • docker: login shell의 Docker Desktop/Engine 27.4.0, 일반 비대화형 PATH에는 없음
  • external service: service readiness와 database adapter 통합 검증에는 PostgreSQL 필요
  • model endpoint: 기본값 없음
  • credential: secret/token/API key 원문은 문서와 출력에 남기지 않는다.

명령

  • setup: make setup
  • lint: 변경한 Go 파일의 gofmt 상태와 Python Ruff 검사 확인
  • unit: go test ./packages/go/artifact/... ./packages/go/config/... ./packages/go/database/... ./packages/go/httpserver/... ./packages/go/integration/... ./packages/go/observability/...
  • smoke: make build
  • e2e: PostgreSQL과 dev service override가 준비된 경우 세 Go service의 health/readiness 확인
  • model: integration provider가 명시적으로 준비된 경우에만 수행
  • full-cycle: make test && make build

필수 검증

  • 원격 checkout의 HEAD가 검증 대상 source와 일치한다.
  • 변경된 공통 Go package 테스트가 통과하고 세 Go service가 모두 빌드된다.
  • 원격 실행 시 local 기본 포트 대신 18070-18072, 19070, 필요 시 15470을 사용한다.
  • 설정·배포·로그·trace에 secret 원문이 포함되지 않았는지 확인한다.
  • Docker/PostgreSQL 부재 시 integration 검증을 통과로 간주하지 않는다.

보조 검증

  • lsof13070, 18070-18072, 15470, 16370, 19070, 19170-19172 전체를 확인해 70 슬롯 부분 충돌을 탐지한다.
  • container runtime이 준비되면 PostgreSQL은 host 15470에서 container 5432로 publish하고 service readiness를 확인한다.
  • artifact filesystem root가 runner의 허용된 작업 경로 밖으로 벗어나지 않는지 확인한다.

판정 기준

  • source identity가 일치하고 테스트와 전체 build가 exit code 0으로 종료한다.
  • dev port override가 IOP shared 18080-18099, 19080, 19090을 사용하지 않는다.
  • 실행한 integration만 근거와 함께 통과로 보고하고 미준비 dependency는 차단으로 남긴다.

기준 출력 예시

ok   git.toki-labs.com/toki/rara/packages/go/...

차단 기준

  • 원격 checkout 부재·source 불일치, 필수 runtime 부재, dev port 점유
  • database 통합 검증에 필요한 PostgreSQL 부재
  • config override 없이 local 포트를 shared remote host에 publish하려는 경우

보고 항목

  • 원격 branch/HEAD:
  • 실행한 명령:
  • 성공한 검증:
  • 실패/차단된 검증:
  • 생략 사유:
  • 남은 위험:

금지 사항

  • local 기본 포트 18080-18082, 19090, 5432를 shared remote runner에 그대로 publish하지 않는다.
  • 운영 secret이나 개인 endpoint를 config 또는 테스트 문서에 기록하지 않는다.
  • 공통 adapter 테스트를 특정 plane의 정책 검증으로 대체하지 않는다.