-- ═══════════════════════════════════════════════════════════════ -- 024: Seed exam_topics taxonomy for math9 -- -- Two-level hierarchy: section (parent) → subtopic. -- See backend/scripts/tag-exam-tasks.js for the classifier that -- maps each exam_tasks row to one of these subtopic slugs. -- ═══════════════════════════════════════════════════════════════ -- Sections (parents) — parent_slug = NULL INSERT INTO exam_topics (slug, exam_key, parent_slug, title, description, sort_order) VALUES ('algebra', 'math9', NULL, 'Алгебра', 'Числа, выражения, уравнения, неравенства, функции', 10), ('geometry', 'math9', NULL, 'Геометрия', 'Планиметрия: треугольники, четырёхугольники, окружность', 20), ('theory', 'math9', NULL, 'Теория', 'Теоретические утверждения, истина/ложь', 30); -- Subtopics (children) — parent_slug = section slug INSERT INTO exam_topics (slug, exam_key, parent_slug, title, sort_order) VALUES -- Algebra ('alg-numbers', 'math9', 'algebra', 'Числа и множества', 11), ('alg-arithmetic', 'math9', 'algebra', 'Арифметические действия', 12), ('alg-powers', 'math9', 'algebra', 'Степени и корни', 13), ('alg-expressions', 'math9', 'algebra', 'Алгебраические выражения', 14), ('alg-polynomials', 'math9', 'algebra', 'Многочлены и разложение на множители', 15), ('alg-fractions', 'math9', 'algebra', 'Дроби и сокращение', 16), ('alg-equations', 'math9', 'algebra', 'Уравнения и системы', 17), ('alg-inequalities', 'math9', 'algebra', 'Неравенства', 18), ('alg-functions', 'math9', 'algebra', 'Функции и графики', 19), ('alg-progressions', 'math9', 'algebra', 'Прогрессии', 20), ('alg-word-problems', 'math9', 'algebra', 'Текстовые задачи и проценты', 21), -- Geometry ('geom-triangles', 'math9', 'geometry', 'Треугольники', 31), ('geom-quadrilaterals', 'math9', 'geometry', 'Четырёхугольники', 32), ('geom-circle', 'math9', 'geometry', 'Окружность и круг', 33), ('geom-coordinates', 'math9', 'geometry', 'Координаты, векторы, прямая', 34), -- Theory ('theory-statements', 'math9', 'theory', 'Истинно / неверно (теория)', 41);