# AWC v000 목표 파일 트리

아래는 **최종 완성 시 존재할 파일명**이다. v000에는 구현 코드를 넣지 않고 각 폴더의 `PLANNED_FILES.txt`와 `ai_read.md`만 생성한다.

```text
/var/www/html/api/_awc/
├── index.php
├── ai_read.md
├── _api/
│   ├── bootstrap.php
│   ├── health.php
│   ├── source_list.php
│   ├── field_list.php
│   ├── farm_list.php
│   ├── data_query.php
│   ├── monitor_alias.php
│   ├── correlation.php
│   ├── workspace_list.php
│   ├── workspace_load.php
│   ├── workspace_save.php
│   ├── workspace_delete.php
│   ├── legacy_config_list.php
│   ├── legacy_config_import.php
│   ├── ai_read.md
│   └── admin/
│       ├── source_validate.php
│       ├── field_validate.php
│       ├── alias_save.php
│       └── ai_read.md
├── _common/
│   ├── bootstrap.php
│   ├── auth.php
│   ├── db.php
│   ├── json_response.php
│   ├── validator.php
│   ├── source_registry.php
│   ├── field_registry.php
│   ├── farm_registry.php
│   ├── query_builder.php
│   ├── time_axis.php
│   ├── monitor_alias.php
│   ├── legacy_cfg.php
│   ├── workspace_repo.php
│   ├── statistics.php
│   ├── audit.php
│   └── ai_read.md
├── config/
│   ├── paths.php
│   ├── permissions.php
│   ├── data_sources.php
│   ├── chart_types.php
│   ├── ui_defaults.php
│   ├── field_registry/
│   │   └── ai_read.md
│   ├── aliases/
│   │   └── ai_read.md
│   └── ai_read.md
├── js/
│   ├── awc_app.js
│   ├── awc_api.js
│   ├── awc_aiwk_bridge.js
│   ├── awc_state.js
│   ├── awc_events.js
│   ├── awc_field_meta.js
│   ├── awc_tooltip.js
│   ├── awc_link_group.js
│   ├── awc_workspace.js
│   ├── awc_errors.js
│   └── ai_read.md
├── css/
│   ├── awc.css
│   ├── awc_mobile.css
│   └── ai_read.md
├── modules/
│   ├── launcher/
│   │   ├── awc_launcher.js
│   │   └── ai_read.md
│   ├── table/
│   │   ├── awc_table.js
│   │   └── ai_read.md
│   ├── chart2d/
│   │   ├── awc_chart2d.js
│   │   └── ai_read.md
│   ├── scatter/
│   │   ├── awc_scatter.js
│   │   └── ai_read.md
│   ├── correlation/
│   │   ├── awc_correlation.js
│   │   └── ai_read.md
│   ├── ranking/
│   │   ├── awc_ranking.js
│   │   └── ai_read.md
│   ├── radar/
│   │   ├── awc_radar.js
│   │   └── ai_read.md
│   ├── trend/
│   │   ├── awc_trend.js
│   │   └── ai_read.md
│   ├── chart3d/
│   │   ├── awc_chart3d.js
│   │   └── ai_read.md
│   ├── settings/
│   │   ├── awc_settings.js
│   │   └── ai_read.md
│   ├── workspace/
│   │   ├── awc_workspace_manager.js
│   │   └── ai_read.md
│   ├── legacy_import/
│   │   ├── awc_legacy_import.js
│   │   └── ai_read.md
│   └── ai_read.md
├── _sql/
│   ├── 001_awc_workspace.sql
│   ├── 002_awc_user_role.sql
│   ├── 003_awc_audit_log.sql
│   └── ai_read.md
└── ai_read.md
```

## 파일 역할 요약
- `index.php`: AWC WEB 단일 진입점. AIWK_COMMON + AWC 모듈만 로드.
- `_api/*`: 브라우저가 호출하는 JSON API. SQL 직접 노출 금지.
- `_common/*`: 서버 내부 공통 로직.
- `config/*`: 시스템 고정 정책/소스/차트 타입.
- `js/*`: AWC 공통 클라이언트 계층.
- `modules/*`: AIWK window module 단위 기능.
- `_sql/*`: Workspace/role/audit 저장에 필요한 신규 메타 DB 스키마. 실제 DB명과 기존 로그인 연계는 Stage 0에서 확인 후 확정.

## AIWK module id 고정안
- `awc.launcher`
- `awc.table`
- `awc.chart2d`
- `awc.scatter`
- `awc.correlation`
- `awc.ranking`
- `awc.radar`
- `awc.trend`
- `awc.chart3d`
- `awc.settings`
- `awc.workspace`
- `awc.legacy_import`

모듈 ID는 workspace JSON에 저장되므로 Stage 1 이후 함부로 변경하지 않는다.
