# AWC v000 단계별 최종 완성 로드맵

## Stage 0 — 기준 복원 / 서버 경로 / 인증 확인
목표: 구현 전에 모르는 것을 없앤다.
- 최신 AIWK 전체본 확인
- 서버 실제 AIWK_COMMON URL/경로 확인
- 기존 PHP DB 연결 방식 확인
- WEB 세션/로그인 user key 확인
- 기존 생산량/StressIndex 실제 스키마 확인 가능한 자료 탐색
- AWC 메타 DB 위치/권한 확인
- PHP 버전 확정
완료조건: 추측해야 하는 핵심 경로/인증/DB 연결이 0개.
납품: 문서/진단 패치만. 기능 구현 금지.

## Stage 1 — AWC Shell + AIWK Window Bridge
- `/api/_awc/index.php`
- AIWK_COMMON core/store/auth/module/win 로드
- `awc_aiwk_bridge.js`
- `awc.launcher` 기본 창
- WEB server role → AIWK role 반영
- viewer/manager/super_admin 표시
완료조건: 일반 WEB에서 AIWK 창 하나 생성/이동/resize/localStorage 복원.

## Stage 2 — Data Source Registry + Field Registry
- `data_sources.php`
- legacy CSV adapter
- `source_list.php`, `field_list.php`, `farm_list.php`
- Field Name/Title/Multiplier/Unit/Decimal/Y min/max/SQL_EXPR/color 정규화
- 필드 선택 UI
- 잘못된 CSV 값은 명확한 config error
완료조건: DB를 조회하지 않고도 소스/농가/필드 메타를 안전하게 선택 가능.

## Stage 3 — 모니터 의미사전 + 공통 Tooltip
- 한글 Field Title `모니터` 고정 판별
- legacy Alias JSON loader
- `monitor_alias.php`
- `awc_tooltip.js`
- stepline 기본
완료조건: 모니터 필드 툴팁에서 `3 · 온도에 의해 열림` 같은 설명 표시. 일반 필드에는 적용되지 않음.

## Stage 4 — Safe Data Query + Table + 일반 2D Chart
- `query_builder.php`
- `data_query.php`
- source_id/허용필드/허용집계 whitelist
- Table window
- ApexCharts 기반 line/bar/area 등 2D renderer
- CSV 단위/소수점/scale 자동 적용
- runtime/window scale override
완료조건: 한 농가/여러 필드 및 여러 농가/한 필드 조회가 가능하고 arbitrary SQL 차단.

## Stage 5 — Workspace / 공용배치 / 권한
- localStorage 개인 상태는 AIWK 그대로 유지
- server workspace schema/repository/API
- manager/super_admin 공용 저장/수정/삭제
- viewer load only
- Workspace JSON에 모든 window module/config/rect/link-group 저장
완료조건: 관리자 공용 배치 저장 → 다른 viewer 접속 시 로드 → viewer 개인 이동은 서버 원본 불변.

## Stage 6 — Linked Windows / Multi-farm Compare / Ranking
- date/time/farm/selection/cursor link group
- 여러 농가 비교
- 생산량 등 outcome ranking 창
- top/middle/bottom group filter event
완료조건: 한 창에서 농가 선택 시 연결된 창들이 동일 농가를 highlight/filter.

## Stage 7 — Pairwise Scatter + Correlation
- X/Y 변수 선택
- 관측단위 선택(farm / farm-week / farm-stage 등)
- Pearson r
- regression line
- n
- scatter tooltip/농가 label
- outcome 기준 여러 후보 필드 자동 순위
완료조건: `온도 vs 생산량`, `StressIndex vs 생산량` 형태를 동일 엔진으로 분석 가능.

## Stage 8 — Legacy Config Import
- `cfg_rec_fds/idxNNN/*.php`
- `*.php_def.php`
- legacy menu list/import
- 기존 선택 필드/axis/chart style을 AWC window config로 Import
- legacy 저장파일은 수정하지 않음
완료조건: 기존 농가 메뉴 하나를 선택해 AWC chart window로 변환 가능.

## Stage 9 — Radar + 추이선 + Stage Reference
- ECharts 기반 Radar
- 기존 v008 추이선 UX/수학 계승
- `nssb.nssbenvref7_min` 직접 사용
- Stage ref actual/reference 비교
- reference deviation 분석
완료조건: 기존 핵심 Radar/추이선 기능이 AWC 독립 창으로 동작.

## Stage 10 — 3D 분석
- 실제 기존 3D 자산 재확인
- 3D engine 결정 및 버전 고정
- X/Y/Z/Group/Color selector
- farm × time × value
- 3D line/scatter/surface 우선
- reference deviation 3D
완료조건: 20~50 농가를 시간축과 값축으로 동시에 탐색 가능.

## Stage 11 — 생산량/출하/생육/StressIndex 통합
- 실제 스키마 기반 source descriptor 추가
- 환경 ↔ 생산량
- Stress ↔ 생산량
- 생육 ↔ 생산량
- stage/window/lag derived metrics
- 누적 스트레스/고스트레스 시간/주야/Stage별 집계
완료조건: outcome과 환경/스트레스의 관계를 동일 필드 선택 체계에서 분석 가능.

## Stage 12 — 관리자 도구 + EXT 선택 연계
- super_admin source/field/alias validate/edit
- Alias JSON atomic save
- EXT remote-token dev를 최고관리 UI에 선택 연결
- WEB manager는 시스템 원본 설정 변경 불가
- PC/Relay는 필요 기능이 있을 때만 연결
완료조건: 최고관리자/관리자/viewer 경계가 실제 API 쓰기에서 검증됨.

## Stage 13 — 모바일/성능/오류/보안 Hardening
- 모바일 1창 중심 전환/접기/창 switch
- 대량 농가/긴 기간 aggregation
- query limit/timeout
- CSRF/session/API permission
- atomic write
- audit log
- XSS tooltip escape
- field/source validation
완료조건: 모바일/PC 모두 사용 가능하고 실패 시 상태 유지+명확 로그.

## Stage 14 — 통합 회귀시험 / 운영 전환 준비
- __yc 비교 검증
- AWC 모든 module smoke test
- workspace export/import
- role test
- monitor alias test
- correlation numeric test
- trend/radar reference test
- 3D performance test
- rollback 문서
완료조건: 기존 `__yc`를 그대로 둔 상태에서 AWC를 별도 운영 진입점으로 공개 가능.

## Stage 15 — 최종 완성 / 선택적 기본 진입점 전환
사용자가 승인할 때만:
- AWC를 새 기본 분석 진입점으로 지정
- `__yc`는 삭제하지 않고 legacy 링크 유지
- 최종 ai_read 갱신
- 최종 통합 ZIP/배포 체크리스트 생성
완료조건: 새 AWC와 기존 __yc가 동시에 접근 가능하고 롤백 가능.
