feat(trainer): P7 пошаговое решение (репетитор) + P8 мат-клавиатура
- движок checkStep(problem, line): шаг = равносильное уравнение (держится во всех корнях И не выполняется в не-корнях) → ловит арифметику, потерю корня, тождество; статусы equivalent/solved/wrong/identity/parse - страница: тумблер «Решить по шагам» (kind solve), ввод и проверка каждого шага, список принятых шагов (KaTeX + галочка), подсказка следующего шага, завершение по solved-форме; общий onSolved; stepPref между задачами - P8: экранная мат-клавиатура (( ) x / ^ √ ; ⌫, вставка в курсор, без либ) + live-превью KaTeX; для поля ответа и поля шага - ROADMAP_V2: P7+P8 → DONE; смоук движка 300/300 (T14 checkStep), страница 33/33 (шаг-сценарии) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,89 @@
|
||||
# ИИ-Тренажёр — Roadmap v2 (Phase 7+)
|
||||
|
||||
**Контекст.** P0–P6 готовы (`PLAN.md`): движок параметрических генераторов + SimExpr-
|
||||
верификатор (+несколько корней, эквивалентность сэмплингом), 17 генераторов / 5 тем,
|
||||
умная тренировка с интервальным повторением, LLM-задачи с серверной проверкой, пул,
|
||||
авторинг/раздача учителем, аналитика-тепловая карта, визуальный редизайн.
|
||||
|
||||
**Цель v2.** Превратить «проверяльщик ответов» в **репетитора** (ведёт по шагам,
|
||||
объясняет ошибки) и расширить **охват** (классы 5–9, ЦТ) и **вовлечение**.
|
||||
|
||||
**Инвариант (не нарушать).** Выражения — только SimExpr (⛔ без eval). Любая задача
|
||||
проходит проверку подстановкой/сэмплингом; неверная ученику не попадает. Тексты
|
||||
экранируются. Каждая фаза — со смоуками/тестами и коммитом.
|
||||
|
||||
---
|
||||
|
||||
## P7 — Пошаговое решение (репетитор) ⭐ — DONE
|
||||
**Сделано:** движок `TE.checkStep(problem, line)` — шаг = равносильное уравнение
|
||||
(держится во всех корнях И не выполняется в не-корнях → ловит арифметику, потерю
|
||||
корня, тождество `0=0`); статусы equivalent/solved/wrong/identity/parse. Страница:
|
||||
тумблер «Решить по шагам» (для kind solve), ввод шагов с проверкой каждого, список
|
||||
принятых шагов (KaTeX + зелёная галочка), подсказка следующего шага, завершение по
|
||||
solved-форме `x=c` → общий `onSolved` (засчитывается как решение). stepPref хранит выбор
|
||||
между задачами. Смоук движка T14 + страницы шаг-сценарий.
|
||||
|
||||
Ученик решает по шагам, движок проверяет КАЖДЫЙ шаг.
|
||||
- Режим «по шагам»: ввод следующей строки преобразования → проверка эквивалентности
|
||||
предыдущему (reuse `_sampleEquiv`; для уравнений — сохранение множества корней) +
|
||||
прогресс к ответу.
|
||||
- Подсказка следующего шага; «застрял» → раскрыть шаг. Guided-вариант: заполнить
|
||||
пропуски в данных шагах.
|
||||
- **Ценность:** глубочайшая педагогика, уникальное отличие от «answer-checker».
|
||||
|
||||
## P8 — Математический ввод ⭐ — DONE
|
||||
**Сделано:** лёгкая экранная мат-клавиатура (`( ) x / ^ √ ; ⌫`, вставка в позицию
|
||||
курсора, без библиотек) под полем ответа И под полем шага; live-превью KaTeX введённого
|
||||
(показывается только при валидном разборе через `exprToLatex`). Переиспользуется и для
|
||||
ответа, и для пошагового ввода.
|
||||
|
||||
Удобный ввод дробей/степеней/корней (моб. + выражения).
|
||||
- Лёгкая экранная мат-клавиатура (свои кнопки `/ ^ √ ( ) ± x`), live-превью KaTeX
|
||||
введённого. Без тяжёлых библиотек.
|
||||
- Синергия с P7 (ввод шагов) и с multi-root / simplify.
|
||||
|
||||
## P9 — Разбор ошибок + сократические подсказки (LLM)
|
||||
«Почему неверно» и подсказки, не выдавая ответ сразу.
|
||||
- Правиловая детекция типовых ошибок (потерян знак, забыл поделить, арифметика) для
|
||||
linear/quadratic — по разнице ответа ученика с «ответом при типичной ошибке».
|
||||
- LLM-фолбэк «объясни мою ошибку» / «подскажи» через Квантик-ассистента
|
||||
(`callLLMFailover`) — только ОБЪЯСНЕНИЯ (безопасно, не генерация задач).
|
||||
- 3 уровня подсказок (намёк → шаг → решение).
|
||||
|
||||
## P10 — Контент 5–9 классов + ЦТ
|
||||
Расширить охват и связать с подготовкой к ЦТ/ЦЭ.
|
||||
- Новые темы: арифметика/дроби/десятичные (5–6), степени, формулы сокр. умножения,
|
||||
разложение на множители, **линейные неравенства** (новый тип ответа: парсинг и
|
||||
нормализация отношения `x>3`/`x≤−2`), системы 2 лин. уравнений, линейная функция (k,b),
|
||||
текстовые семьи (движение/работа/смеси) параметрически.
|
||||
- Дерево навыков по таксономии exam-prep ЦТ (связь с готовым модулем экзамена).
|
||||
|
||||
## P11 — Геймификация + карта навыков
|
||||
Вовлечение через существующую инфраструктуру.
|
||||
- XP/монеты/достижения (Квантик-геймификация) за решения/серии/мастерство; учёт
|
||||
kill-switch геймификации.
|
||||
- Карта-дерево навыков (визуализация прогресса) на странице/дашборде.
|
||||
- Дневная цель + календарь серий.
|
||||
|
||||
## P12 — Задания и журнал
|
||||
Учительский рабочий процесс поверх раздачи.
|
||||
- Задание: темы/навыки + цель (N решено / мастерство) + дедлайн → ученики видят,
|
||||
прогресс трекается; учитель видит выполнение и результаты; интеграция с journal/homework.
|
||||
- Апгрейд текущего `assign` (уведомление) до отслеживаемого задания (таблица).
|
||||
|
||||
## P13 — Конструктор генераторов + управление пулом
|
||||
Учитель создаёт ПАРАМЕТРИЧЕСКИЕ генераторы (не только одиночные задачи).
|
||||
- Визуальный билдер: диапазоны `pick`, формулы `derive`, шаблоны `lhs/rhs`, ответ,
|
||||
шаги решения + live-превью + валидация (отложенный «полный P4»).
|
||||
- Управление пулом (ревью/правка/удаление), генерация по теме урока/§ учебника.
|
||||
|
||||
---
|
||||
|
||||
## Сквозное
|
||||
Тесты/смоуки на каждую фазу; доступность (ARIA, клавиатура, озвучка формул);
|
||||
офлайн-режим (PWA) для параметрики; производительность.
|
||||
|
||||
## Рекомендация
|
||||
Начать с **P7 + P8** (репетитор + мат-ввод — сильная синергия, наибольший скачок
|
||||
качества обучения), затем **P9** (разбор ошибок) — вместе дают эффект «личный
|
||||
репетитор». Параллельный быстрый выигрыш по охвату — **P10** (неравенства/системы/ЦТ).
|
||||
Reference in New Issue
Block a user