82 lines
2.4 KiB
Markdown
82 lines
2.4 KiB
Markdown
---
|
|
test_env: local
|
|
test_profile: cli-smoke
|
|
domain: cli
|
|
verification_type: smoke
|
|
last_rule_updated_at: 2026-06-12
|
|
---
|
|
|
|
# cli-smoke local 테스트
|
|
|
|
## 읽기 조건
|
|
|
|
- `apps/runner/bin/main.dart`, `apps/runner/lib/cli/**`, `apps/runner/assets/script/**`, `apps/runner/assets/bin/**`, `apps/runner/assets/package/**`, 또는 `apps/runner/lib/resources.resource_importer.dart` 변경 검증이 필요한 경우
|
|
|
|
## 적용 범위
|
|
|
|
- OTO CLI entrypoint, command parsing, validate/catalog/runtime smoke
|
|
|
|
## 분류
|
|
|
|
- domain: cli
|
|
- verification_type: smoke
|
|
- scope: CLI 로컬 실행 표면
|
|
|
|
## 환경
|
|
|
|
- host: `ssh toki@toki-labs.com` 원격 runner, checkout `/Users/toki/agent-work/oto`
|
|
- port: 기본 CLI smoke는 public port를 사용하지 않는다. Core 연동이 필요하면 OTO Core HTTP `18020`을 사용한다.
|
|
- runtime: Dart SDK
|
|
- package manager: dart pub
|
|
- docker: 기본 smoke는 Docker를 사용하지 않는다.
|
|
- external service: 없음
|
|
- model endpoint:
|
|
- credential: private input 원문은 tracked 파일에 기록하지 않는다.
|
|
|
|
## 명령
|
|
|
|
- setup: `cd apps/runner && dart pub get` (또는 `make runner-get`)
|
|
- lint: `cd apps/runner && dart analyze` (또는 `make runner-analyze`)
|
|
- unit: `cd apps/runner && dart test test/oto_cli_runtime_test.dart test/oto_catalog_cli_test.dart test/oto_validate_cli_test.dart` (또는 `make runner-test`)
|
|
- smoke: `cd apps/runner && dart run bin/main.dart --help`
|
|
- e2e:
|
|
- model:
|
|
- full-cycle:
|
|
|
|
## 필수 검증
|
|
|
|
- CLI 도메인 변경 후 `cd apps/runner && dart analyze`를 실행한다.
|
|
- CLI 도메인 변경 후 관련 `cd apps/runner && dart test ...` 명령을 실행한다.
|
|
|
|
## 보조 검증
|
|
|
|
- CLI entrypoint 변경 시 `cd apps/runner && dart run bin/main.dart --help`를 실행한다.
|
|
|
|
## 판정 기준
|
|
|
|
- `cd apps/runner && dart analyze`가 issue 없이 종료한다.
|
|
- 지정한 `cd apps/runner && dart test`가 모두 통과한다.
|
|
- help smoke는 정상 종료하거나 현재 CLI가 정의한 도움말/사용법 출력을 낸다.
|
|
|
|
## 기준 출력 예시
|
|
|
|
```text
|
|
No issues found!
|
|
All tests passed!
|
|
```
|
|
|
|
## 차단 기준
|
|
|
|
- 원격 runner에 Dart SDK 또는 path dependency가 없어 command를 시작할 수 없는 경우
|
|
|
|
## 보고 항목
|
|
|
|
- 실행한 명령:
|
|
- 성공한 검증:
|
|
- 실패/차단된 검증:
|
|
- 생략 사유:
|
|
- 남은 위험:
|
|
|
|
## 금지 사항
|
|
|
|
- local 환경의 개인 경로나 secret을 tracked 문서에 기록하지 않는다.
|