<!-- task=04_refactor_validation_checklist plan=4 tag=REVIEW_REVIEW_REVIEW_REVIEW_TEST -->

# Refactor Validation Checklist - REVIEW_REVIEW_REVIEW_REVIEW_TEST

## 이 파일을 읽는 구현 에이전트에게

아래 체크리스트를 완료하고, 검증 명령을 실제로 다시 실행한 뒤 `agent-task/04_refactor_validation_checklist/CODE_REVIEW-local-G03.md`의 모든 섹션을 실제 출력으로 채우세요. `CODE_REVIEW-local-G03.md`의 아카이브 지시는 리뷰 에이전트 전용입니다.

## 개요

date=2026-05-10
task=04_refactor_validation_checklist, plan=4, tag=REVIEW_REVIEW_REVIEW_REVIEW_TEST
parent=REVIEW_REVIEW_REVIEW_TEST (code_review_local_G03_4.log)

## 배경

직전 루프는 루트 `rg` 바이너리 정리와 테스트 출력 갱신은 해결했지만, `rg -n ...` 검색 출력 블록이 같은 명령의 실제 stdout과 다시 달랐습니다. `rg` 기본 출력 순서는 병렬 검색 때문에 흔들릴 수 있으므로, 이번 루프는 검증 명령 자체를 정렬 옵션으로 안정화합니다.

## 의존 관계 및 구현 순서

1. `REVIEW_REVIEW_REVIEW_REVIEW_TEST-1`에서 `rg --sort path`로 검색 출력을 안정화한다.
2. `REVIEW_REVIEW_REVIEW_REVIEW_TEST-2`에서 최종 검증 명령을 다시 실행하고 실제 stdout을 기록한다.

## [REVIEW_REVIEW_REVIEW_REVIEW_TEST-1] rg 검색 출력 안정화

### 문제

기존 `rg -n "\bmodel\b|\bModel\b" ...` 명령은 출력 순서가 반복 실행마다 달라질 수 있어 검증 문서와 실제 stdout이 계속 어긋났습니다.

### 해결 방법

동일 검색에 `--sort path`를 추가해 출력 순서를 안정화하고, `PLAN`과 `CODE_REVIEW` 모두 이 명령을 기준으로 갱신합니다.

### 수정 파일 및 체크리스트

- [ ] `CODE_REVIEW-local-G03.md`의 검색 명령을 `rg --sort path -n ...` 기준으로 기록
- [ ] 정렬된 실제 stdout을 그대로 기록
- [ ] 잔류 `model/Model` 항목을 모두 의도적 예외로 분류하거나, 변경 필요가 있으면 종합 판단을 FAIL로 유지

### 중간 검증

```bash
rg --sort path -n "\bmodel\b|\bModel\b" proto/iop apps packages configs --glob '!**/README.md'
rg --sort path -n "model execution|model runtime|model workload" proto/iop apps packages --glob '!**/README.md'
```

기대 결과: 출력 순서가 안정적이고, 분류와 완료 판단이 모순되지 않는다.

## [REVIEW_REVIEW_REVIEW_REVIEW_TEST-2] 최종 검증 stdout 재기록

### 문제

검증 문서가 PASS로 닫히려면 같은 작업 세션에서 실행한 최종 검증 stdout이 문서와 일치해야 합니다.

### 해결 방법

아래 명령을 순서대로 실행하고 실제 stdout을 그대로 기록합니다.

### 수정 파일 및 체크리스트

- [ ] `make proto` 출력 기록
- [ ] 대상 패키지 `go test` 출력 기록
- [ ] `go test ./...` 출력 기록
- [ ] scope guard 출력 기록

### 최종 검증

```bash
make proto
go test ./packages/config ./apps/edge/cmd/edge/... ./apps/edge/internal/node/... ./apps/edge/internal/transport/... ./apps/node/internal/...
go test ./...
git diff --name-only -- README.md 'apps/**/README.md' 'docs/**' apps/control-plane apps/worker
```

기대 결과: 코드 테스트는 통과하고, 문서의 출력 블록이 실제 재실행 결과와 일치한다.
