feat(biochem): Фаза 4 (4.1-4.3) — пути метаболизма из БД (API), хардкод убран

Перенос данных путей из ~700 строк инлайн-объекта PATHWAYS в biochem-pathways.html
в БД. Document-подход: каждый путь — самодостаточный документ data_json (граф
узлов/рёбер + шаги с квизами); путь всегда читается целиком, реляционных
запросов нет — нормализация не нужна.

- migration 045_bio_pathways: таблица bio_pathways(slug, name, color, ord, data_json).
- backend/scripts/biochem_pathways_data.js: данные 4 путей (извлечены из инлайн-
  объекта, теперь самодостаточный источник правды).
- seed_biochem_pathways.js: идемпотентный upsert по slug.
- biochemController.getPathways + GET /biochem/pathways (карта slug->данные).
- js/api.js: biochemGetPathways.
- biochem-pathways.html: инлайн PATHWAYS (-238 строк) заменён на загрузку из API
  в init (loadPathways); форма данных идентична — рендер не изменён.

Проверено: API отдаёт 4 пути в форме фронта, сидер идемпотентен.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Maxim Dolgolyov
2026-05-30 17:39:36 +03:00
parent e2ff28a482
commit b29b395a96
7 changed files with 1372 additions and 240 deletions
File diff suppressed because it is too large Load Diff