# Phase 3: Ленивая загрузка кода симуляций **Status:** ✅ Done (70762be) — vm-harness + owner-in-files инвариант пройдены; нужна браузер-проверка **Parent plan:** [PLAN.md](./PLAN.md) **Domain:** frontend ## Objective Грузить тяжёлый код симуляции и движков по клику, а не 58 скриптов + three.js сразу. Лёгкий манифест каталога загружается сразу. ## Tasks - [ ] Вынести лёгкие метаданные каталога (id/cat/title/desc/preview) в отдельный `sims.manifest.js`, грузимый сразу. - [ ] Тяжёлый код симуляции (Sim-класс + open/mount) грузить динамически при openSim (инъекция script или import()). - [ ] Объявить зависимости движков в манифесте (`deps: ['_fx_core','_phys_visuals',...]`); загрузчик резолвит и грузит до кода симуляции, кешируя загруженное. - [ ] three.js грузить только для 3D-симуляций (stereo). - [ ] Лоадер с дедупликацией (один и тот же файл не грузится дважды). ## Files to Modify/Create - `frontend/js/labs/_loader.js` — новый: динамический загрузчик + резолв зависимостей. - `frontend/js/labs/sims.manifest.js` — новый: лёгкий каталог. - `frontend/lab.html` — убрать массовые `