# Complete - 02+edge_setup_cli ## 완료 일시 2026-05-20 ## 요약 Edge setup/config/version CLI와 문서 정리를 완료했고, 4회 리뷰 루프 끝에 최종 PASS. ## 루프 이력 | Plan | Review | Verdict | 메모 | |------|--------|---------|------| | `plan_cloud_G07_0.log` | `code_review_cloud_G07_0.log` | FAIL | edge cmd 검증 재현 실패와 node CLI 문서 불일치 발견 | | `plan_cloud_G07_1.log` | `code_review_cloud_G07_1.log` | FAIL | workspace-only 해결과 architecture 문서의 node setup 현재형 안내가 남음 | | `plan_cloud_G07_2.log` | `code_review_cloud_G07_2.log` | WARN | module/import 계약과 architecture 문서는 정리됐으나 project rules의 stale module path가 남음 | | `plan_cloud_G07_3.log` | `code_review_cloud_G07_3.log` | PASS | project rules module path까지 현재 Go 계약과 일치 | ## 구현/정리 내용 - edge CLI에 `version`, `config print`, `config check`, `setup` 명령을 추가했다. - edge CLI 테스트를 추가하고 setup dry-run 기본 config 경로를 검증했다. - `packages/hostsetup`의 data dir 안전성, parent traversal, service path chown 동작과 테스트를 보강했다. - proto-socket Go module/import 경로를 `git.toki-labs.com/toki/proto-socket/go`로 정리했다. - edge README, deploy-dev, architecture, project rules 문서를 현재 CLI/module 계약과 맞췄다. ## 최종 검증 - `rg --sort path -n "common-proto-socket/go|proto-socket/go" agent-ops/rules/project/rules.md go.mod apps packages` - PASS; stale `common-proto-socket/go` hit 없음. - `go test -count=1 ./apps/edge/cmd/edge ./packages/hostsetup` - PASS; edge cmd와 hostsetup 테스트 통과. - `GOWORK=off go test -count=1 ./apps/edge/cmd/edge ./packages/hostsetup` - PASS; module mode에서도 통과. - `go test -count=1 ./packages/config ./packages/hostsetup ./packages/version` - PASS; 관련 공통 패키지 테스트 통과. - `go test -count=1 ./...` - PASS; 전체 Go 테스트 통과. - `go run ./apps/edge/cmd/edge version` - PASS; `0.1.0`. - `go run ./apps/edge/cmd/edge config check --config configs/edge.yaml` - PASS; `OK configs/edge.yaml`. - `go run ./apps/edge/cmd/edge setup --dry-run --binary /usr/local/bin/iop-edge` - PASS; `/etc/iop/edge.yaml`, `/var/lib/iop/edge`, systemd unit preview 확인. ## 잔여 Nit - 없음 ## 후속 작업 - 없음