- Update roadmap milestones and phase docs across multiple phases - Update plan, code-review, create-roadmap, update-roadmap, finalize-task-routing skills - Update dev-corp-runtime-deploy, dev-runtime-deploy, orchestrate-agent-task-loop skills - Refactor agent-task-loop dispatch script - Add streamgate Go package (commit_boundary, evidence_tail, filter_registry, stream_release) - Add test inventory files (dev, dev-corp, unified) - Update test smoke tests and rules for dev/dev-corp - Update docs/edge-local-dev-guide and e2e scripts - Update inventory-query Go package - Remove deprecated templates and inventory.yaml files - Add orchestrate-agent-task-loop tests
99 lines
4.5 KiB
Markdown
99 lines
4.5 KiB
Markdown
---
|
|
test_env: dev-corp
|
|
test_profile: platform-common-smoke
|
|
domain: platform-common
|
|
verification_type: smoke
|
|
last_rule_updated_at: 2026-07-11
|
|
---
|
|
|
|
# platform-common-smoke dev-corp 테스트
|
|
|
|
## 읽기 조건
|
|
|
|
- `packages/go/**`, `proto/**`, `configs/**` 변경 또는 dev-corp 공통 설정, protobuf 계약, host setup 검증 판단이 필요한 경우
|
|
|
|
## 적용 범위
|
|
|
|
- `packages/go/**`
|
|
- `proto/iop/**`
|
|
- `proto/gen/iop/**`
|
|
- `configs/**`
|
|
- dev-corp env/compose/config 계약
|
|
- provider model alias와 provider-specific served_model mapping
|
|
|
|
## 분류
|
|
|
|
- domain: platform-common
|
|
- verification_type: smoke
|
|
- scope: 공통 패키지, 설정, protobuf 계약 baseline
|
|
|
|
## 환경
|
|
|
|
- host: local checkout. dev-corp field/runtime evidence가 필요한 경우에만 mac-mini runner를 사용한다.
|
|
- port: dev-corp Edge-Node TCP transport `19006`, native provider-pool Edge-Node TCP 후보 `18087`, Edge OpenAI-compatible HTTP 후보 `18086`, Client WS `19004`, artifact/bootstrap 후보 `18085`.
|
|
- runtime: Go `1.24`
|
|
- package manager: Go modules / Makefile
|
|
- docker: unit/codegen quick check는 Docker를 요구하지 않는다. compose dev-corp 검증은 mac-mini에서 수행한다.
|
|
- external service: dev-corp artifact/base URL 기본 후보 `http://iop.ai.kr:18085`; mac-mini runner/local legacy 경로는 bootstrap 기본 URL로 쓰지 않는다.
|
|
- model endpoint: dev-corp OpenAI-compatible base URL 기본 후보 `https://digitalplatform.iop.ai.kr/v1`; direct Edge listener 확인이 필요할 때만 `http://digitalplatform.iop.ai.kr:18086/v1`
|
|
- credential: token/secret/API key 원문은 문서에 기록하지 않는다.
|
|
|
|
## 명령
|
|
|
|
- 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-corp env/compose 계약 변경 시 `.env.dev-corp.example`, `docker-compose.yml` 또는 compose override, `agent-test/dev-corp/rules.md`의 포트가 서로 일치하는지 확인한다.
|
|
- provider config 변경 시 IOP model alias 후보 `gemma4:26b`, `ornith:35b` 또는 작업에서 확정한 alias와 각 provider `served_model` 값이 `agent-test/inventory-dev-corp.yaml`과 맞는지 확인한다.
|
|
- Mac Studio vLLM-MLX provider config는 catalog `type: openai_compat`를 사용하고, 실제 runtime 구분은 `agent-test/inventory-dev-corp.yaml`의 `runtime_type: vllm-mlx`로 추적한다.
|
|
|
|
## 보조 검증
|
|
|
|
- `go test ./...`는 저장소 전체 회귀 확인으로 사용한다.
|
|
- 실행 경로에 닿는 config/proto 변경은 `make test-e2e`를 보조 확인으로 사용할 수 있다.
|
|
|
|
## 판정 기준
|
|
|
|
- 공통 패키지는 앱 내부 패키지를 import하지 않는다.
|
|
- proto 생성물은 원본 proto와 `make proto` 결과로만 갱신된다.
|
|
- 설정 예시는 loader/default와 어긋나지 않는다.
|
|
- dev-corp 포트는 local/test/dev 포트를 덮어쓰지 않고 dev-corp profile에서만 사용된다.
|
|
- provider-specific served model id 차이는 Edge/OpenAI-compatible 경계에서 내부 `adapter + target` 매핑으로 흡수된다.
|
|
- provider catalog type은 config validator가 허용하는 값과 일치해야 하며, runtime implementation label을 catalog type으로 대신 쓰지 않는다.
|
|
|
|
## 기준 출력 예시
|
|
|
|
```text
|
|
go test ./packages/go/... ./proto/gen/...
|
|
```
|
|
|
|
## 차단 기준
|
|
|
|
- `protoc` 또는 `protoc-gen-go`가 없어서 proto 생성 검증을 실행할 수 없다.
|
|
- config 변경이 실제 환경값이나 credential 없이는 판정 불가능하다.
|
|
- dev-corp provider endpoint나 model alias 결정이 불명확해 config baseline을 확정할 수 없다.
|
|
|
|
## 보고 항목
|
|
|
|
- 실행한 명령:
|
|
- 성공한 검증:
|
|
- 실패/차단된 검증:
|
|
- 생략 사유:
|
|
- 남은 위험:
|
|
|
|
## 금지 사항
|
|
|
|
- `proto/gen/iop/*.pb.go` 생성 파일을 직접 수정하지 않는다.
|
|
- 앱 하나만을 위한 임시 타입을 충분한 근거 없이 공통 패키지로 승격하지 않는다.
|
|
- 사용자가 명시적으로 요청하지 않았는데 mac-mini runner/local legacy 경로를 Edge public runtime/config 기본값으로 사용하지 않는다.
|
|
- secret, token, API key 원문은 tracked 파일에 기록하지 않는다.
|