<!-- task=edge_node_unit_tests plan=2 tag=REVIEW_REVIEW_TEST -->

# Plan - REVIEW_REVIEW_TEST

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

각 항목의 체크리스트를 완료하고, 중간 검증과 최종 검증 명령을 실행한 뒤 출력을 `CODE_REVIEW.md`의 검증 결과 섹션에 붙여 넣는다. `CODE_REVIEW.md`의 모든 섹션(계획 대비 변경 사항, 주요 설계 결정, 검증 결과)을 실제 내용으로 채운다.

## 배경

plan=1(REVIEW_TEST)에서 4개 항목의 코드 변경은 모두 계획대로 완료되었으나, 구현 에이전트 환경에 Go 바이너리가 없어 검증이 한 번도 실행되지 않았다. 코드리뷰에서 소스 대조상 문제는 발견되지 않았으나, 테스트가 실제로 컴파일·통과되는지 확인되지 않은 상태다. 이번 plan은 검증 실행만 수행하며, 컴파일 에러나 테스트 실패가 발견되면 해당 코드를 수정한다.

---

## [REVIEW_REVIEW_TEST-1] Go 환경 확인 및 테스트 실행

### 문제

plan=1 구현 결과물 4개 파일이 실제로 컴파일·테스트 통과하는지 확인되지 않았다.

대상 파일:
- [parser_test.go](file:///Users/toki/work/go-iop/apps/node/internal/transport/parser_test.go)
- [session_test.go](file:///Users/toki/work/go-iop/apps/node/internal/transport/session_test.go)
- [node_test.go](file:///Users/toki/work/go-iop/apps/node/internal/node/node_test.go)
- [node.go](file:///Users/toki/work/go-iop/apps/node/internal/node/node.go)

### 해결 방법

1. Go 바이너리 경로를 확인한다. `which go`, `go version`, 또는 `PATH` 환경변수에 Go SDK 경로를 추가한다.
2. transport 패키지 테스트를 실행한다: `go test -race ./apps/node/internal/transport/...`
3. node 패키지 테스트를 실행한다: `go test -race ./apps/node/internal/node/...`
4. 전체 node 테스트를 실행한다: `go test -race ./apps/node/...`
5. 전체 프로젝트 테스트를 실행한다: `go test ./...`
6. 컴파일 에러 또는 테스트 실패가 발견되면 원인을 파악하고 해당 파일을 수정한다.

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

- [ ] Go 환경 확인 (go version 출력 성공)
- [ ] `go test -race ./apps/node/internal/transport/...` pass
- [ ] `go test -race ./apps/node/internal/node/...` pass
- [ ] `go test -race ./apps/node/...` pass
- [ ] `go test ./...` pass
- [ ] 컴파일 에러 발생 시: 해당 파일 수정 후 재실행 (수정 내용을 CODE_REVIEW.md에 기록)
- [ ] 테스트 실패 발생 시: 원인 분석 후 수정 (수정 내용을 CODE_REVIEW.md에 기록)

### 테스트 작성

신규 작성 없음. 기존 테스트의 실행 검증만 수행한다.

### 중간 검증

```
go test -race ./apps/node/internal/transport/...
go test -race ./apps/node/internal/node/...
```

---

## 수정 파일 요약

| 파일 | 항목 |
|------|------|
| (수정 없음 — 검증만 실행. 실패 시 해당 파일 수정) | REVIEW_REVIEW_TEST-1 |

## 최종 검증

```
go test -race ./apps/node/...
go test ./...
```

모든 테스트 pass, race detector 경고 없음.
