Капстоун-бой из 6 испытаний (по одному из каждой главы: десятичные,
проценты, множества, рациональные, координаты, геометрия) с HP-баром.
Победа 5/6 → +150 XP (LS.xp) + звание «Математик 6 класса» (зажигается
ачивка-strip, флаг localStorage math6_course_done). Тесты math6: 17/17.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
§1 множество/элементы/∅ (∈ или ∉ + счёт элементов);
§2 способы задания (свойство→множество + проверка по свойству);
§3 операции ∩/∪ (наглядно через Math6.venn + счёт результата);
§4 круги Эйлера (задача с числами в областях + формула |A∪B|=|A|+|B|−|A∩B|);
финал — 5 боссов. Добавлен Math6.venn (две окружности с заливкой
областей и числами). Тесты math6: 16/16.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
§1 тела (куб/призма/пирамида/цилиндр/конус) + развёртки: квиз грани/рёбра/
вершины + «какое тело из развёртки»; §2 окружность и круг (слайдер r → C, S
при π=3,14) + тренажёр; §3 виды треугольников по сторонам и по углам
(классификация вычисляется из координат, штрихи равных сторон, метка прямого
угла); §4 центральная симметрия (построй A'); §5 осевая симметрия (Oy/Ox);
финал — 5 боссов. SVG: тела/развёртки/треугольники inline, симметрия на
Math6.plane. Тесты math6: 14/14.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
§1 чтение координат + определение четверти (плоскость с точкой);
§2 чтение графиков реальных процессов + изменение величины (polyline);
§3 слайдер y=kx + классификатор прямая/обратная пропорциональность;
§5 прикладной (путь–время); финал — 5 боссов (координаты, четверти,
график, k для y=kx и y=k/x). Math6.plane получил поддержку polyline.
Тесты math6: 13/13.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
§12 «Математика вокруг нас»: задачи из жизни (покупки, сдача, измерения)
+ среднее значение. Финал главы: бой с 5 боссами (разряды, округление,
сложение/вычитание, умножение, деление на дробь) с HP-баром; победа 4/5+
даёт +40 XP и достижение «Глава 1 пройдена». Эталонная Глава 1 готова: все
12 параграфов наполнены. Тесты 12/12.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Перенесён подход из редактора теории:
- модалка «Вставить формулу»: палитра символов по категориям
(греческие/операции/степени/отношения/стрелки/скобки/физика),
LaTeX-поле, живое KaTeX-превью, режим «в строке \( \)» / «блоком \[ \]»
- кнопка «ƒₓ» у каждой стороны карточки и в add-bar; вставка в активное поле
- палитра на data-tex + делегирование (inline-onclick схлопывал «\» в латехе)
- Ctrl+Enter в поле формулы = вставить; разделители совпадают с рендером изучения
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- модалка в 2 шага: текст -> предпросмотр карточек, к каждой стороне
можно прикрепить картинку перед импортом
- addCardsBulk принимает front_image/back_image (через safeImg) и теперь
санитизит front/back (stripTags) — раньше bulk пропускал теги
- общий ensureImgPicker() переиспользуется редактором и предпросмотром
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
renderFlashcardWidget рисует front_image/back_image на обеих сторонах;
.fcw-inner.has-img расширяет высоту карточки под изображение.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Миграция 048: колонки front_image/back_image в flashcard_cards
- Бэкенд: POST /api/flashcards/upload (multer, 5МБ, только изображения),
валидатор safeImg (только /uploads/flashcards/..., блок XSS/traversal/external),
картинки в add/update/quick/study/random; статик-маунт /uploads/flashcards
- Редактор: превью+кнопка загрузки+вставка (Ctrl+V) на каждую сторону,
картинки к ещё не созданной карточке через add-bar
- Режим изучения: рендер изображения над текстом на обеих сторонах
- FAB: вставка картинки в быструю карточку
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- .claude/rules/search-tools.md — матрица: ast-index (символы/usages/callers/outline),
vex (semantic/similar/pattern/duplicates/show)
- usages/callers по JS — только ast-index (vex пропускает)
- CLAUDE.md и ast-index.md ссылаются на новое правило
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>