Files
pipeline/_pipeline/reviews/plan-review.md
T

86 lines
4.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Plan Review Report: `screen-api-fix-v2`
### 1. 플랜 요약
COMPANY_16의 전체 화면(43개 파일)에서 깨진 데이터 흐름을 COMPANY_7 원본 기준으로 복구하고, 테이블 설정 기능을 인라인으로 구현하는 작업. 22개 태스크, 전부 병렬.
---
### 2. 문제점 지적
#### 🔴 수정 필요: ref_files 10개 존재하지 않음
에이전트가 "COMPANY_7 원본을 읽고 동기화하라"는 지시를 받지만, 참고할 원본 파일이 없습니다:
| task | 누락된 ref_file | 영향 |
|------|----------------|------|
| **task-10** (BOM) | `COMPANY_7/production/bom/page.tsx` | COMPANY_7에 BOM 디렉토리 자체 없음 |
| **task-11a** (발주) | `COMPANY_7/purchase/order/page.tsx` | COMPANY_7/purchase 디렉토리 자체 없음 |
| **task-11b** (구매품목+공급업체) | `COMPANY_7/purchase/purchase-item/page.tsx`, `COMPANY_7/purchase/supplier/page.tsx` | 위와 동일 |
| **task-13b** (재고+창고+물류정보) | `COMPANY_7/logistics/inventory/page.tsx`, `COMPANY_7/logistics/warehouse/page.tsx`, `COMPANY_7/logistics/info/page.tsx` | COMPANY_7에 해당 3개 디렉토리 없음 |
| **task-14** (금형) | `COMPANY_7/mold/info/page.tsx` | COMPANY_7에 mold 디렉토리 없음 |
| **task-15a** (회사정보) | `COMPANY_7/master-data/company/page.tsx` | 부서/품목은 있지만 회사정보는 없음 |
| **task-15b** (품질+PLC) | `COMPANY_7/quality/inspection/page.tsx`, `COMPANY_7/quality/item-inspection/page.tsx`, `COMPANY_7/equipment/plc-settings/page.tsx` | COMPANY_7에 quality, plc-settings 전부 없음 |
**결과**: 에이전트가 ref_files를 읽으려 하면 파일 없음 에러 → context의 "COMPANY_7 원본과 비교하여" 지시를 수행 불가 → 자체 판단으로 최소 수정만 하고 "완료" 보고할 가능성 높음.
#### 🔴 수정 필요: task-17a/17b ref_files 자기참조
task-17a, 17b의 ref_files가 files와 **동일한 파일**을 가리킵니다. 예:
- files: `admin/report/sales/page.tsx`
- ref_files: `admin/report/sales/page.tsx`
"원본과 일치하는지 확인하고 누락분 보강"이라고 했지만, 비교 대상이 자기 자신이라 에이전트가 "이미 일치함"으로 판단하고 아무것도 안 할 가능성이 높습니다.
#### 🟠 도주 위험: ref 없는 태스크 6개
| task | 유형 | 위험도 | 이유 |
|------|------|--------|------|
| **task-10** | refactor | **높음** | BOM은 복잡한 트리 구조인데 참고 원본 없음 |
| **task-11a/11b** | refactor | **높음** | "수주관리와 동일 패턴"이라고만 되어 있고 원본 없음 |
| **task-13b** | refactor | **중간** | 3개 파일 모두 ref 없음, 비교 불가 |
| **task-15b** | refactor | **높음** | 3개 파일 전부 ref 없음 |
| **task-17a/17b** | formatting | **낮음** | 이미 수정된 파일의 보강이므로 변경량이 적을 수 있음 |
---
### 3. 수정 범위 예상
- **대상 파일**: 43개 (COMPANY_16 36개 + admin/report 7개)
- **현재 총 코드량**: 약 38,311줄
- **예상 변경량**: 파일당 평균 100~300줄 변경 시 → 총 5,000~12,000줄 diff 예상
- **태스크당 파일 수**: 최소 1개, 최대 4개 (모두 7개 이하 — OK)
---
### 4. 예상 구동시간
- 22개 태스크, `max_concurrent: 5`, 전부 `depends: none` (완전 병렬)
- 라운드 수: ceil(22/5) = **5라운드**
- 타임아웃: 30분/태스크
- **예상**: 라운드당 20~30분 × 5라운드 = **100~150분** (1.5~2.5시간)
- 재시도 포함 최악: 3시간
---
### 5. 검증 단계 확인
| 검증 | 설정 | 상태 |
|------|------|------|
| **L1 (test)** | `npx tsc --noEmit` | 전 태스크 설정됨 ✅ |
| **L6 (verify)** | grep 기반 | 전 태스크 설정됨 ✅ |
| **L3 (api_test)** | auth + API 호출 | 전 태스크 설정됨 ✅ |
**추천**: 현재 검증 구성은 양호합니다. 다만 ref_files가 없는 태스크들은 verify만으로 "제대로 동기화했는지"를 확인하기 어렵습니다.
---
### 6. 권장 조치
**필수 (실행 전 해결해야 함)**:
1. ref_files가 없는 태스크(10, 11a, 11b, 13b, 14 금형, 15a 회사, 15b) — ref 없이 작업 가능한 수준으로 context 보강하거나, 해당 태스크를 플랜에서 제거
2. task-17a/17b — ref_files 자기참조 제거하거나, 원본 ReportConfig 스펙을 context에 직접 기재
**선택 (품질 향상)**:
3. ref 없는 태스크에 "COMPANY_16 현재 코드의 API 패턴이 올바른지 확인하고, 누락된 기능만 추가"로 방향 변경 고려
질문이 있으시면 말씀해 주세요.