diff --git a/agent-ops/skills/project/dev-corp-runtime-deploy/SKILL.md b/agent-ops/skills/project/dev-corp-runtime-deploy/SKILL.md index a203579..9eddf80 100644 --- a/agent-ops/skills/project/dev-corp-runtime-deploy/SKILL.md +++ b/agent-ops/skills/project/dev-corp-runtime-deploy/SKILL.md @@ -1,6 +1,6 @@ --- name: dev-corp-runtime-deploy -version: 1.0.1 +version: 1.0.3 description: dev-corp 배포, 회사망 mac-mini Edge와 내부 DGX/Mac Studio provider pool 배포 및 OpenAI-compatible capacity smoke 절차 --- @@ -28,11 +28,12 @@ dev-corp provider pool을 현재 dev-runtime과 같은 구조로 배포한다. - [ ] `agent-ops/rules/project/domain/testing/rules.md`를 읽고 사용자 실행 파이프라인 검증 기준을 확인한다. - [ ] `agent-test/dev-corp/inventory.yaml`을 먼저 읽는다. 파일이 없으면 `agent-test/dev-corp/rules.md`, `agent-test/dev-corp/edge-smoke.md`, `agent-test/dev-corp/node-smoke.md`로 fallback하고, 구조화 inventory 누락을 보고한다. +- [ ] dev-corp 기본 외부 배포/검증 통로는 `115.21.224.82`이다. `172.24.63.178`은 mac-mini runner와 node-only/internal 경로로만 보고, 사용자가 172 Edge 경로를 명시 요청하지 않으면 Edge 배포, OpenAI-compatible smoke, public endpoint 기본값으로 잡지 않는다. - [ ] dev-corp provider pool과 compose/local/dev-runtime profile을 섞지 않는다. dev-corp provider pool은 mac-mini Edge와 dev-corp config를 기준으로 한다. - [ ] mac-mini에 `/Users/fe/agent-work/iop-dev-corp` checkout이 없으면 배포를 시작하지 말고 checkout 생성과 source sync를 setup blocker로 보고한다. - [ ] mac-mini에서 `192.168.2.2:8002`, `192.168.2.4:8004`, `192.168.2.3:8004`의 `/health`와 `/v1/models`가 성공하는지 확인한다. - [ ] Edge config의 OpenAI-compatible adapter endpoint는 각 Node process 기준으로 평가된다. direct preflight는 `192.168.2.x` 주소로 하되, Edge가 Node에 내려주는 provider endpoint는 node-local `127.0.0.1:`를 우선한다. -- [ ] DGX Spark 01/02가 mac-mini `172.24.63.178:18085/18086/18087`에 직접 접근하지 못하면 mac-mini에서 reverse SSH tunnel을 유지하고 해당 Node Edge addr을 tunnel local port로 설정한다. +- [ ] DGX Spark 01/02가 node-only/internal mac-mini 경로 `172.24.63.178:18085/18086/18087`에 직접 접근하지 못하면 mac-mini에서 reverse SSH tunnel을 유지하고 해당 Node Edge addr을 tunnel local port로 설정한다. 이 경로는 172 명시 요청 또는 Node 연결 예외 처리에만 사용한다. - [ ] `gemma4:26b` alias와 총 capacity `13`은 `agent-test/dev-corp/inventory.yaml`의 최신 검증 상태를 기준으로 판단한다. 새 배포에서 Edge config 반영과 capacity smoke가 통과하기 전에는 새 결과를 확정값으로 보고하지 않는다. - [ ] DGX Spark vLLM provider는 capacity `4`, 호출당 최대 context window `262144`, requested KV `262144x2` 이상을 기준으로 한다. vLLM에는 vLLM-MLX식 `--max-kv-size`가 없으므로 실제 KV cache는 `gpu_memory_utilization` 적용 후 startup log의 `GPU KV cache size`와 `Maximum concurrency for 262,144 tokens per request`로 검증한다. DGX01/02 검증 기준은 `--max-num-seqs 4`, `--max-model-len 262144`, `--gpu-memory-utilization 0.40`이고, FP4 MoE 커널 한계 보정을 위해 `VLLM_MAX_TOKENS_PER_EXPERT_FP4_MOE=4194304`도 함께 둔다. Gemma4 agent/tool-call profile은 `--enable-auto-tool-choice`, `--tool-call-parser gemma4`, Gemma4 tool chat template, `--reasoning-parser gemma4`를 함께 둔다. - [ ] DGX Spark 02 endpoint는 Docker publish 때문에 `192.168.2.4:8004`이다. `8000`, `8001`, `8002`를 기본 endpoint로 쓰지 않는다. @@ -60,6 +61,7 @@ dev-corp provider pool을 현재 dev-runtime과 같은 구조로 배포한다. 1. **환경 인벤토리 확정** - 배포 대상 runner, repo path, Edge id, Control Plane status URL, OpenAI base URL, Edge admin URL, Node SSH 정보를 `agent-test/dev-corp/inventory.yaml`에서 확정한다. + - public OpenAI/base, bootstrap/artifact, Control Plane/Client 외부 후보는 기본적으로 `115.21.224.82` 경로를 사용한다. `172.24.63.178`로 Edge를 배포하는 것은 기본 금지이며, 사용자가 172 Edge 경로를 명시 요청한 경우에만 진행한다. - provider pool 대상 model alias와 provider별 capacity target을 확정한다. - 필수 정보가 없거나 서로 충돌하면 배포를 시작하지 말고 누락/충돌 항목을 보고한다. @@ -157,6 +159,7 @@ dev-corp runtime 배포 결과 ## 금지 사항 - mac-mini checkout이 없거나 dirty/divergent 상태인데 배포를 계속하지 않는다. +- 사용자가 명시적으로 요청하지 않았는데 `172.24.63.178`로 Edge를 배포하거나 `172.24.63.178`을 dev-corp 기본 public 배포/검증 경로로 사용하지 않는다. - `git clean -fdx`를 기본 cleanup으로 사용하지 않는다. - 빌드 전 테스트 실패 후 배포를 계속하지 않는다. - DGX Spark 02 provider endpoint를 `192.168.2.4:8000`, `8001`, `8002`로 잘못 사용하지 않는다. diff --git a/agent-test/dev-corp/client-smoke.md b/agent-test/dev-corp/client-smoke.md index 1dd21b6..bc328a6 100644 --- a/agent-test/dev-corp/client-smoke.md +++ b/agent-test/dev-corp/client-smoke.md @@ -3,7 +3,7 @@ test_env: dev-corp test_profile: client-smoke domain: client verification_type: smoke -last_rule_updated_at: 2026-06-29 +last_rule_updated_at: 2026-07-08 --- # client-smoke dev-corp 테스트 @@ -47,9 +47,9 @@ last_rule_updated_at: 2026-06-29 - package-unit: `cd packages/flutter/iop_console && flutter test` - lint: `cd apps/client && flutter analyze --no-fatal-infos` - smoke: `cd apps/client && flutter test` -- e2e: `IOP_WEB_PORT=13002 IOP_CONTROL_PLANE_HTTP_URL=http://172.24.63.178:18002 IOP_CONTROL_PLANE_WIRE_URL=ws://172.24.63.178:19004/client ./scripts/dev/web.sh` +- e2e: `IOP_WEB_PORT=13002 IOP_CONTROL_PLANE_HTTP_URL=http://115.21.224.82:18002 IOP_CONTROL_PLANE_WIRE_URL=ws://115.21.224.82:19004/client ./scripts/dev/web.sh` - compose-e2e: mac-mini 환경에서 `IOP_EDGE_NODE_TOKEN`을 안전하게 주입한 뒤 `docker compose --env-file .env.dev-corp.example up --build` -- web-build: `make client-build-web IOP_CONTROL_PLANE_HTTP_URL=http://172.24.63.178:18002 IOP_CONTROL_PLANE_WIRE_URL=ws://172.24.63.178:19004/client` +- web-build: `make client-build-web IOP_CONTROL_PLANE_HTTP_URL=http://115.21.224.82:18002 IOP_CONTROL_PLANE_WIRE_URL=ws://115.21.224.82:19004/client` - model: - full-cycle: @@ -58,7 +58,7 @@ last_rule_updated_at: 2026-06-29 - client 또는 `packages/flutter/iop_console` 변경은 최소 `cd apps/client && flutter test`로 확인한다. - `packages/flutter/iop_console` 자체 API나 widget 구조가 바뀌면 `cd packages/flutter/iop_console && flutter test` 실행 가능 여부를 확인한다. - analyzer 영향이 있는 dependency, app shell, generated import 변경이면 `cd apps/client && flutter analyze --no-fatal-infos`를 함께 확인한다. -- Web build/deploy, `apps/client/Dockerfile`, `docker-compose.yml`, `scripts/dev/web.sh`, `Makefile client-build-web` 변경은 mac-mini에서 dev-server 기동 또는 compose build 중 변경 범위에 맞는 경로를 확인하고, 외부 브라우저 확인 URL이 `http://172.24.63.178:13002` 계열인지 보고한다. +- Web build/deploy, `apps/client/Dockerfile`, `docker-compose.yml`, `scripts/dev/web.sh`, `Makefile client-build-web` 변경은 mac-mini에서 dev-server 기동 또는 compose build 중 변경 범위에 맞는 경로를 확인하고, 외부 브라우저 확인 URL이 기본 public 경로 `http://115.21.224.82:13002` 계열인지 보고한다. - compose 경로를 확인할 때는 `IOP_EDGE_NODE_TOKEN`을 mac-mini 환경에서 주입하고, token 원문은 tracked 파일에 기록하지 않는다. ## 보조 검증 diff --git a/agent-test/dev-corp/edge-smoke.md b/agent-test/dev-corp/edge-smoke.md index 7286f1f..0972a63 100644 --- a/agent-test/dev-corp/edge-smoke.md +++ b/agent-test/dev-corp/edge-smoke.md @@ -3,7 +3,7 @@ test_env: dev-corp test_profile: edge-smoke domain: edge verification_type: smoke -last_rule_updated_at: 2026-07-02 +last_rule_updated_at: 2026-07-08 --- # edge-smoke dev-corp 테스트 @@ -38,8 +38,8 @@ last_rule_updated_at: 2026-07-02 - runtime: Go `1.24` - package manager: Go modules / Makefile - docker: unit/smoke quick check는 Docker를 요구하지 않는다. compose dev-corp 검증은 mac-mini에서 `.env.dev-corp.example` 기준으로 수행한다. -- external service: dev-corp artifact/base URL 후보 `http://172.24.63.178:18085`, dev-corp Edge runtime 후보 `172.24.63.178:18087` -- model endpoint: dev-corp OpenAI-compatible base URL 후보 `http://172.24.63.178:18086/v1` +- external service: dev-corp artifact/base URL 기본 후보 `http://115.21.224.82:18085`, dev-corp Edge runtime 기본 후보 `115.21.224.82:18087`; `172.24.63.178:18085/18087`로 Edge를 배포하는 것은 기본 금지이며, 사용자가 172 Edge 경로를 명시 요청한 경우에만 사용한다. +- model endpoint: dev-corp OpenAI-compatible base URL 기본 후보 `http://115.21.224.82:18086/v1` - credential: token/secret/API key 원문은 문서에 기록하지 않는다. ## dev-corp provider pool 인벤토리 @@ -51,9 +51,10 @@ dev-corp provider pool과 3-node 연결 상태를 점검할 때는 `agent-test/d - Edge id: `dev-corp-edge` - Control Plane HTTP/status 후보: `http://127.0.0.1:18002`, `http://127.0.0.1:18002/edges/dev-corp-edge/status` - Control Plane-Edge wire 후보: `127.0.0.1:19005` -- bootstrap HTTP 후보: `http://172.24.63.178:18085` -- Edge OpenAI-compatible base URL 후보: `http://172.24.63.178:18086/v1` -- Edge-Node TCP transport 후보: `172.24.63.178:18087` +- bootstrap HTTP 기본 후보: `http://115.21.224.82:18085` +- Edge OpenAI-compatible base URL 기본 후보: `http://115.21.224.82:18086/v1` +- Edge-Node TCP transport 기본 후보: `115.21.224.82:18087` +- node-only/internal 후보: `172.24.63.178:18085/18086/18087`은 기본 Edge 배포 후보가 아니다. 사용자가 172 Edge 경로를 명시 요청했거나 host별 reverse SSH tunnel이 필요한 경우에만 사용한다. - model alias 후보: `gemma4:26b` 노드 후보: @@ -170,4 +171,5 @@ curl -fsS http://192.168.2.3:8004/v1/models - secret, token, API key 원문은 tracked 파일에 기록하지 않는다. - mac-mini에서 다시 도달 가능한 provider endpoint를 확인하지 않고 Edge provider config 성공을 선언하지 않는다. +- 사용자가 명시적으로 요청하지 않았는데 `172.24.63.178`로 Edge를 배포하거나 `172.24.63.178`을 Edge public runtime 기본 후보로 사용하지 않는다. - field baseline 포트(`18080`, `18081`, `19090`, `19092`)나 dev 포트(`18082`, `18083`, `19003`, `19101`)를 dev-corp 전용 포트로 재사용하지 않는다. diff --git a/agent-test/dev-corp/inventory.yaml b/agent-test/dev-corp/inventory.yaml index 0647ee3..21f436a 100644 --- a/agent-test/dev-corp/inventory.yaml +++ b/agent-test/dev-corp/inventory.yaml @@ -1,6 +1,6 @@ test_env: dev-corp profile: dev-corp-provider-pool -last_updated_at: "2026-07-06" +last_updated_at: "2026-07-08" source: remote_runner: @@ -27,13 +27,21 @@ edge: control_plane_status_url: http://127.0.0.1:18002/edges/dev-corp-edge/status control_plane_client_ws_runner: ws://127.0.0.1:19004/client control_plane_edge_wire_addr_runner: 127.0.0.1:19005 - bootstrap_http_public: http://172.24.63.178:18085 - openai_base_url_public: http://172.24.63.178:18086/v1 + public_route_policy: default_dev_corp_external_route_uses_115_public_ip + edge_deploy_172_policy: explicit_user_request_only + public_route_note: 115.21.224.82 is the default dev-corp Edge deployment and smoke route; Edge deployment to 172.24.63.178 is prohibited by default and allowed only when the user explicitly requests the 172 route. 172.24.63.178 otherwise remains the mac-mini runner and node-only/internal route. + control_plane_http_public: http://115.21.224.82:18002 + control_plane_client_ws_public: ws://115.21.224.82:19004/client + bootstrap_http_public: http://115.21.224.82:18085 + bootstrap_http_node_internal: http://172.24.63.178:18085 + openai_base_url_public: http://115.21.224.82:18086/v1 + openai_base_url_node_internal: http://172.24.63.178:18086/v1 openai_base_url_runner: http://127.0.0.1:18086/v1 openai_api_key_required_current_runtime: true openai_api_key_secret_path_remote: build/dev-corp-runtime/.secrets/openai_api_key openai_api_key_value_tracked: false - edge_node_tcp_public: 172.24.63.178:18087 + edge_node_tcp_public: 115.21.224.82:18087 + edge_node_tcp_node_internal: 172.24.63.178:18087 admin_addr_runner: 127.0.0.1:19094 build: diff --git a/agent-test/dev-corp/node-smoke.md b/agent-test/dev-corp/node-smoke.md index 8c0d504..91600d0 100644 --- a/agent-test/dev-corp/node-smoke.md +++ b/agent-test/dev-corp/node-smoke.md @@ -3,7 +3,7 @@ test_env: dev-corp test_profile: node-smoke domain: node verification_type: smoke -last_rule_updated_at: 2026-07-02 +last_rule_updated_at: 2026-07-08 --- # node-smoke dev-corp 테스트 @@ -37,13 +37,13 @@ last_rule_updated_at: 2026-07-02 - runtime: Go `1.24` - package manager: Go modules / Makefile - docker: unit/smoke quick check는 Docker를 요구하지 않는다. compose dev-corp 검증은 mac-mini에서 수행한다. -- external service: dev-corp Edge runtime 후보 `172.24.63.178:18087` -- model endpoint: dev-corp OpenAI-compatible base URL 후보 `http://172.24.63.178:18086/v1` +- external service: dev-corp node-only/internal Edge runtime 후보 `172.24.63.178:18087`; 기본 외부 dev-corp 배포/검증 경로는 `115.21.224.82`이다. `172.24.63.178`로 Edge 배포는 사용자 명시 요청 전까지 금지한다. +- model endpoint: dev-corp OpenAI-compatible base URL 기본 후보 `http://115.21.224.82:18086/v1` - credential: token/secret/API key 원문은 문서에 기록하지 않는다. ## dev-corp Node 접속 기준 -dev-corp의 실제 3-node 연결을 점검할 때는 mac-mini `ssh fe@172.24.63.178`의 `/Users/fe/agent-work/iop-dev-corp` checkout과 `build/dev-corp-runtime/edge.yaml`을 기준으로 한다. Node는 provider pool 기준에서 Edge-Node TCP `172.24.63.178:18087` 또는 host별 reverse SSH tunnel로 붙는다. +dev-corp의 실제 3-node 연결을 점검할 때는 mac-mini `ssh fe@172.24.63.178`의 `/Users/fe/agent-work/iop-dev-corp` checkout과 `build/dev-corp-runtime/edge.yaml`을 기준으로 한다. Node는 provider pool 기준에서 node-only/internal Edge-Node TCP `172.24.63.178:18087` 또는 host별 reverse SSH tunnel로 붙을 수 있다. 이 172 경로는 기본 외부 dev-corp serving/smoke 경로가 아니며, Edge 배포 대상도 아니다. 사용자가 172 Edge 경로를 명시 요청한 경우에만 172 Edge 배포/검증으로 취급한다. 2026-07-02 현재 DGX Spark 01/02는 `127.0.0.1:28087 -> mac-mini 127.0.0.1:18087` reverse SSH tunnel로 붙고, Mac Studio는 직접 Edge TCP 후보를 사용한다. tunnel pid file은 mac-mini runtime의 `build/dev-corp-runtime/node01-tunnel.pid`, `build/dev-corp-runtime/node02-tunnel.pid`다. - DGX Spark 01 vLLM node: `corp-dgx-spark-01-vllm-node` / `corp-dgx-spark-01-vllm` @@ -166,4 +166,5 @@ curl -fsS http://192.168.2.3:8004/health - 사용자 실행 파이프라인 변경을 unit test만으로 완료 처리하지 않는다. - `proto/gen/iop/*.pb.go` 생성 파일을 직접 수정하지 않는다. +- 사용자가 명시적으로 요청하지 않았는데 `172.24.63.178`로 Edge를 배포하거나 Node smoke의 172 내부 경로를 Edge public runtime 기본값으로 승격하지 않는다. - secret, token, API key 원문은 tracked 파일에 기록하지 않는다. diff --git a/agent-test/dev-corp/platform-common-smoke.md b/agent-test/dev-corp/platform-common-smoke.md index 24d5e60..97300b6 100644 --- a/agent-test/dev-corp/platform-common-smoke.md +++ b/agent-test/dev-corp/platform-common-smoke.md @@ -3,7 +3,7 @@ test_env: dev-corp test_profile: platform-common-smoke domain: platform-common verification_type: smoke -last_rule_updated_at: 2026-07-02 +last_rule_updated_at: 2026-07-08 --- # platform-common-smoke dev-corp 테스트 @@ -34,8 +34,8 @@ last_rule_updated_at: 2026-07-02 - 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://172.24.63.178:18085` -- model endpoint: dev-corp OpenAI-compatible base URL 후보 `http://172.24.63.178:18086/v1` +- external service: dev-corp artifact/base URL 기본 후보 `http://115.21.224.82:18085`; `172.24.63.178:18085`는 node-only/internal 경로다. 172 Edge 배포/검증은 사용자 명시 요청 전까지 금지한다. +- model endpoint: dev-corp OpenAI-compatible base URL 기본 후보 `http://115.21.224.82:18086/v1` - credential: token/secret/API key 원문은 문서에 기록하지 않는다. ## 명령 @@ -95,4 +95,5 @@ go test ./packages/go/... ./proto/gen/... - `proto/gen/iop/*.pb.go` 생성 파일을 직접 수정하지 않는다. - 앱 하나만을 위한 임시 타입을 충분한 근거 없이 공통 패키지로 승격하지 않는다. +- 사용자가 명시적으로 요청하지 않았는데 `172.24.63.178`을 Edge public runtime/config 기본값으로 사용하지 않는다. - secret, token, API key 원문은 tracked 파일에 기록하지 않는다. diff --git a/agent-test/dev-corp/rules.md b/agent-test/dev-corp/rules.md index 0479866..18eb468 100644 --- a/agent-test/dev-corp/rules.md +++ b/agent-test/dev-corp/rules.md @@ -1,6 +1,6 @@ --- test_env: dev-corp -last_rule_updated_at: 2026-07-02 +last_rule_updated_at: 2026-07-08 --- # dev-corp 테스트 규칙 @@ -19,6 +19,13 @@ last_rule_updated_at: 2026-07-02 - private IP와 SSH user는 테스트 접속에 필요한 환경값으로 기록할 수 있으나, token/secret 원문은 기록하지 않는다. - 테스트용 Docker 환경을 작성/수정할 때는 Docker Compose `networks`, IPAM subnet, static IPv4, `extra_hosts`, host publish 문서 어디에도 회사 LAN/VPN과 충돌하는 대역을 사용하지 않는다. +## 기본 배포 통로 + +- dev-corp 기본 외부 배포/검증 통로는 `115.21.224.82`이다. Control Plane public 후보, Client WS public 후보, artifact/bootstrap public 후보, Edge OpenAI-compatible public 후보는 이 경로를 우선한다. +- `172.24.63.178`은 mac-mini SSH runner와 node-only/internal Edge-Node 경로로만 본다. 사용자가 172 경로를 명시적으로 요청하지 않으면 기본 dev-corp 배포 방향이나 OpenAI-compatible smoke 대상에 사용하지 않는다. +- `172.24.63.178`로 Edge를 배포하는 것은 기본 금지다. 사용자가 “172로 Edge 배포” 또는 같은 의미의 명시 요청을 한 경우에만 172 Edge 배포/검증을 진행한다. +- provider direct 확인은 기존처럼 mac-mini에서 내부 provider endpoint `192.168.2.2:8002`, `192.168.2.4:8004`, `192.168.2.3:8004`를 확인한다. + ## 기본 환경 - host: Edge runner 후보는 `ssh fe@172.24.63.178` mac-mini이다. @@ -31,8 +38,8 @@ last_rule_updated_at: 2026-07-02 - runtime: Go quick check는 local toolchain을 우선한다. Docker/Flutter/client/field/bootstrap/provider-pool evidence는 mac-mini와 내부 provider nodes를 사용한다. - package manager: Go modules / Makefile / Flutter pub - docker: 현재 작업 컨테이너에서는 Docker-in-Docker를 사용하지 않는다. Docker compose 검증은 mac-mini checkout에서 수행한다. -- external service: dev-corp Control Plane 후보는 mac-mini local 기준 `http://127.0.0.1:18002`, 외부 후보 `http://172.24.63.178:18002`이다. Client wire 후보는 mac-mini local 기준 `ws://127.0.0.1:19004/client`, 외부 후보 `ws://172.24.63.178:19004/client`이다. -- model endpoint: Edge 배포 후 후보 `http://172.24.63.178:18086/v1`; 직접 provider 확인은 `agent-test/dev-corp/inventory.yaml`의 provider endpoint를 따른다. +- external service: dev-corp Control Plane 후보는 mac-mini local 기준 `http://127.0.0.1:18002`, 기본 외부 후보 `http://115.21.224.82:18002`이다. Client wire 후보는 mac-mini local 기준 `ws://127.0.0.1:19004/client`, 기본 외부 후보 `ws://115.21.224.82:19004/client`이다. +- model endpoint: Edge 배포 후 기본 외부 후보 `http://115.21.224.82:18086/v1`; 직접 provider 확인은 `agent-test/dev-corp/inventory.yaml`의 provider endpoint를 따른다. - credential: secret/token/API key 원문은 문서에 기록하지 않는다. ## 포트 매핑 @@ -58,7 +65,7 @@ dev-corp native/provider-pool profile은 compose Edge-Node TCP `19006`이 아니 - remote runner: dev-corp runtime evidence, Flutter client, Docker compose, field/bootstrap, provider-pool evidence는 `ssh fe@172.24.63.178`의 `/Users/fe/agent-work/iop-dev-corp` 기준으로 수행한다. - compose dev-corp stack: `.env.dev-corp.example`, `COMPOSE_PROJECT_NAME=iop-dev-corp-agent`, `IOP_COMPOSE_NETWORK=iop-dev-corp-agent-net`, Edge-Node TCP `19006`을 사용한다. - Edge direct dev-corp profile: artifact/bootstrap `18085`, OpenAI-compatible `18086`, metrics `19102`, admin `19094`를 사용한다. -- dev-corp provider pool: `/Users/fe/agent-work/iop-dev-corp/build/dev-corp-runtime/edge.yaml`과 Edge-Node TCP `172.24.63.178:18087` 또는 host별 reverse SSH tunnel을 사용한다. 3-node/provider 세부는 `agent-test/dev-corp/edge-smoke.md`와 `agent-test/dev-corp/node-smoke.md`를 따른다. +- dev-corp provider pool: `/Users/fe/agent-work/iop-dev-corp/build/dev-corp-runtime/edge.yaml`과 기본 public Edge-Node TCP `115.21.224.82:18087`을 기준으로 한다. `172.24.63.178:18087`은 Edge 배포 대상이 아니라 node-only/internal 경로 또는 host별 reverse SSH tunnel이 필요한 경우에만 사용한다. 172 Edge 배포는 사용자 명시 요청 전까지 진행하지 않는다. 3-node/provider 세부는 `agent-test/dev-corp/edge-smoke.md`와 `agent-test/dev-corp/node-smoke.md`를 따른다. - current native Control Plane: 2026-07-02 기준 provider-pool runtime에서 `build/dev-corp-runtime/bin/control-plane`이 `18002/19004/19005`를 listen하고, Edge id `dev-corp-edge`가 `127.0.0.1:19005`로 연결된다. provider snapshot status 기준은 `http://127.0.0.1:18002/edges/dev-corp-edge/status`다. - external provider field: DGX Spark 01/02와 Mac Studio는 mac-mini에서 내부 SSH로 접속한다. 직접 접속 경로와 provider endpoint는 `agent-test/dev-corp/inventory.yaml`을 따른다. diff --git a/agent-test/dev-corp/testing-smoke.md b/agent-test/dev-corp/testing-smoke.md index 77b0646..35c1a9a 100644 --- a/agent-test/dev-corp/testing-smoke.md +++ b/agent-test/dev-corp/testing-smoke.md @@ -3,7 +3,7 @@ test_env: dev-corp test_profile: testing-smoke domain: testing verification_type: smoke -last_rule_updated_at: 2026-07-02 +last_rule_updated_at: 2026-07-08 --- # testing-smoke dev-corp 테스트 @@ -37,8 +37,8 @@ last_rule_updated_at: 2026-07-02 - runtime: Go `1.24` - package manager: Go modules / Makefile - docker: quick check는 Docker를 요구하지 않는다. 현재 작업 컨테이너에서는 Docker-in-Docker를 사용하지 않으며, Docker compose 검증은 mac-mini 환경에서 수행한다. -- external service: dev-corp Control Plane 후보는 mac-mini local 기준 `http://127.0.0.1:18002`, 외부 후보 `http://172.24.63.178:18002`이다. Client wire 후보는 mac-mini local 기준 `ws://127.0.0.1:19004/client`, 외부 후보 `ws://172.24.63.178:19004/client`이다. dev-corp Edge runtime 후보는 `172.24.63.178:18087` 또는 host별 reverse SSH tunnel이다. -- model endpoint: dev-corp OpenAI-compatible base URL 후보 `http://172.24.63.178:18086/v1` +- external service: dev-corp Control Plane 후보는 mac-mini local 기준 `http://127.0.0.1:18002`, 기본 외부 후보 `http://115.21.224.82:18002`이다. Client wire 후보는 mac-mini local 기준 `ws://127.0.0.1:19004/client`, 기본 외부 후보 `ws://115.21.224.82:19004/client`이다. dev-corp Edge runtime 기본 후보는 `115.21.224.82:18087`이며, `172.24.63.178:18087`은 node-only/internal 또는 host별 reverse SSH tunnel 경로다. 172 Edge 배포/검증은 사용자 명시 요청 전까지 금지한다. +- model endpoint: dev-corp OpenAI-compatible base URL 기본 후보 `http://115.21.224.82:18086/v1` - credential: token/secret/API key 원문은 문서에 기록하지 않는다. ## 명령 @@ -108,6 +108,7 @@ curl -fsS http://192.168.2.2:8002/v1/models - 보조 E2E smoke 통과만으로 완료 처리하지 않는다. - 사용자 기본 경로에서 `IOP_ARTIFACT_BASE_URL=...`, `IOP_EDGE_ADDR=...`, `IOP_NODE_TOKEN=...` 같은 named environment parameter를 요구하지 않는다. +- 사용자가 명시적으로 요청하지 않았는데 `172.24.63.178`로 Edge를 배포하거나 `172.24.63.178`을 dev-corp Edge public runtime 기본 후보로 사용하지 않는다. - 사용자가 명시하지 않으면 code-server 컨테이너를 재시작하지 않는다. - 환경값을 사람용 docs나 roadmap에 복사하지 않는다. - secret, token, API key 원문은 tracked 파일에 기록하지 않는다.