oto/agent-test/local/rules.md
toki 69248c805d test(agent-ops): local smoke 검증 규칙을 정리한다
모노레포 패키지 경계에 맞춰 local smoke 문서의 경로와 검증 명령을 정리하고 완료된 agent-task 로그를 아카이브한다.
2026-06-07 09:07:28 +09:00

64 lines
2.9 KiB
Markdown

---
test_env: local
last_rule_updated_at: 2026-06-05
---
# local 테스트 규칙
**현재 문서를 반드시 끝까지 정독하고 작업한다. 다 읽지 않고 즉각 작업은 금지한다.**
## 공통 규칙
- local 테스트/검증은 이 파일을 기준으로 판단한다.
- 작업 완료 검증은 변경 범위 기준으로 선택한다.
- 필수 검증을 실행하지 못하면 차단 사유로 보고한다.
- 최종 보고에는 실행 명령, 결과, 생략 사유, 남은 위험을 남긴다.
- 환경값, secret, 개인 endpoint는 tracked docs/roadmap에 쓰지 않는다.
## 기본 환경
- host:
- port:
- runtime: Dart SDK
- package manager: dart pub
- docker:
- external service: 없음
- model endpoint:
- credential:
## 라우팅
- agent / smoke / OTO agent CLI, OTO Server registration, bootstrap script: `agent-test/local/agent-smoke.md`
- cli / smoke / CLI entrypoint, resource importer, scripts, package assets: `agent-test/local/cli-smoke.md`
- command / smoke / command implementations and data models: `agent-test/local/command-smoke.md`
- core / smoke / Application, tag system, composer, core utilities: `agent-test/local/core-smoke.md`
- framework / smoke / pubspec, analyzer options, dependency and generated-code boundary: `agent-test/local/framework-smoke.md`
- pipeline / smoke / pipeline execution and pipeline data model: `agent-test/local/pipeline-smoke.md`
- sample / smoke / sample YAML and template-facing examples: `agent-test/local/sample-smoke.md`
- scheduler / smoke / scheduler CLI and runtime: `agent-test/local/scheduler-smoke.md`
## 패키지 및 Makefile 대상 (Monorepo Targets)
- **apps/runner** (Dart CLI runner):
- Setup: `make runner-get` 또는 `cd apps/runner && dart pub get`
- Lint: `make runner-analyze` 또는 `cd apps/runner && dart analyze`
- Test: `make runner-test` 또는 `cd apps/runner && dart test`
- **apps/client** (Flutter OTO client app):
- Setup: `make client-get` 또는 `cd apps/client && flutter pub get`
- Lint: `make client-analyze` 또는 `cd apps/client && flutter analyze`
- Test: `make client-test` 또는 `cd apps/client && flutter test`
- **services/core** (Go OTO Server):
- Test: `make core-test` 또는 `cd services/core && go test ./...`
- **packages/flutter/oto_console** (Flutter OTO console package):
- Setup: `cd packages/flutter/oto_console && flutter pub get`
- Lint: `cd packages/flutter/oto_console && flutter analyze`
- Test: `cd packages/flutter/oto_console && flutter test`
- **protobuf** (proto contract):
- Generate: `make proto` (또는 `make proto-go`, `make proto-dart`)
## 라우팅 규칙
- 여러 항목이 맞으면 모두 읽는다.
- 도메인 매핑이나 domain rule이 있으면 각 도메인의 `<domain>-smoke` 문서를 기본 baseline으로 둔다.
- 도메인이 아직 없을 때만 `project-smoke`를 fallback baseline으로 둔다.
- 도메인/검증 시나리오별 문서는 다른 테스트 문서로 라우팅하지 않는다.