docs(biochem): план — Фазы 5.2/5.3/5.5 выполнены

This commit is contained in:
Maxim Dolgolyov
2026-05-30 15:43:37 +03:00
parent c1d532aaad
commit 045eb2646e
+6 -4
View File
@@ -121,15 +121,17 @@
> Все 7 фильтров в UI редактора теперь с данными; контроллер их уже валидирует,
> XP начисляется. data_json совпадает с UI (balance: reactants/products/coefficients;
> match: pairs; classify/complete: target/equation/choices/answer).
> Осталось: drag-and-drop (5.2), 3D-build (5.3), адаптивность (5.4), ачивки bc_* (5.5).
> Сделано также: 5.2 живая поэлементная проверка баланса; 5.3 3D-build с
> изоморфизмом графа (Morgan-хеш) + 4 задания; 5.5 ачивки bc_* привязаны к
> событиям. Осталось только 5.4 (адаптивность/«задача дня»/streak).
Слоты ачивок `bc_5_challenges`/`bc_20_challenges` уже есть в `_shared.js` — довести до конца и расширить вызовы.
- [x] 5.1 Засидированы типы challenge: balance, match, classify, complete (16 заданий, идемпотентный сидер).
- [ ] 5.2 UI drag-and-drop для balance/match (сейчас только выбор/ввод).
- [ ] 5.3 3D-build challenge: собрать молекулу и проверить не только формулу, но и связность/геометрию.
- [x] 5.2 Живая поэлементная проверка баланса (счётчик атомов слева=справа по мере ввода). _(числовой ввод с мгновенной обратной связью вместо литерального drag-and-drop.)_
- [x] 5.3 3D-build challenge: `structuralMatch`/`canonicalHash` (Morgan) в контроллере — проверка связности против эталона (molecule_id), отличает изомеры (этанол≠диметиловый эфир); +4 structure-build задания.
- [ ] 5.4 Адаптивная сложность + «задача дня»; streak по биохимии.
- [ ] 5.5 Привязать ачивки `bc_5_challenges`/`bc_20_challenges` (и новые: «собрал АТФ», «сбалансировал 10 реакций», «прошёл цикл Кребса») к событиям; проверить начисление в `gamificationController`.
- [x] 5.5 Ачивки `bc_first_molecule`/`bc_5_challenges`/`bc_20_challenges` привязаны: `checkAchievements` вызывается после решения задачи и сохранения молекулы; счётчики из `bio_user_challenges`/`bio_user_molecules` в `checkPhase3Achievements`.
---