Files
Learn_System/backend/tests
Maxim Dolgolyov dead984d8a feat(lab-content-engine): phase 5 - курикулумная привязка симуляций
- Миграция 043_lab_sim_links.sql: таблица связей (sim_id, kind[textbook|topic|
  kmap|question], ref_id, label), UNIQUE(sim_id,kind,ref_id) + индексы. Применена.
- lab.js (расширение):
  - GET /api/lab/sims/:id/related (auth inline) — связи по типам; label из
    textbooks/topics; href для навигации
  - GET /api/lab/links?kind=&ref_id= (auth) — обратный поиск включённых
    привязанных симуляций (для кнопки «Открыть в лаборатории»)
  - POST /api/lab/sims/:id/links (admin), DELETE .../links/:linkId (admin)
  - graceful-degradation если таблица ещё не отмигрирована
- tests/lab-links.test.js: 18 тестов (auth/роли/related/reverse/валидация/дубль/
  enabled-фильтр/удаление); seedRow() устойчив к NOT NULL дрейфу схемы
- plans: Фаза 5 done + handoff

Все мои тесты: lab-sims 11/11, lab-links 18/18. route-auth: новый :id-роут
защищён inline authMiddleware. Миграция применена к живой БД.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-30 16:27:05 +03:00
..
@
2026-05-30 14:36:31 +03:00
@
2026-05-30 16:21:01 +03:00
@
2026-05-30 16:21:01 +03:00