Files
TestingWebApp/DOC/ШАГИ/ШАГ_2026-04-27_001.md
Константин Лебединский 2a05f41b65 Redesign test editor: meta, content, AI shape, command bar
- Split draft editor into AccSection Метаинформация and Содержание
- AI generation: topic, question count (1–30), answers per question (2–8)
- Move save and back-to-list to bottom command panel; remove AI from hero
- Normalize generated options to requested count; sync ai topic on import draft
- Add DOC/ШАГИ/ШАГ_2026-04-27_001.md and track design proposal doc

Made-with: Cursor
2026-04-27 19:07:00 +05:00

21 lines
2.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Шаг 2026-04-27 — редизайн формы редактора теста (ветка `dev-redisign`)
## Сделано
- Создана ветка `dev-redisign` от `dev` в репозитории `TestingWebApp`.
- Страница автора `frontend/src/pages/TestDetail.jsx` приведена к структуре из `docs/ПРЕДЛОЖЕНИЕ_ДИЗАЙН_СОЗДАНИЕ_ТЕСТА.md` (адаптация под существующий React/JSX, без Ant Design):
- блок **«Метаинформация»** — название, описание, порог зачёта;
- блок **«Содержание»** — мини-панель ИИ (тема, число вопросов 1…30, число вариантов 2…8, кнопка генерации) и список вопросов с локальными кнопками ИИ;
- панель **«Команды»** — «Сохранить черновик» (основная), «К списку»; строка статуса черновика под панелью.
- Кнопка **«Сгенерировать тест (ИИ)»** убрана из шапки; генерация строит `shape` из введённых чисел, тема — из поля «Тема» с запасным вариантом на «Название»; после ответа API варианты в каждом вопросе нормализуются к выбранному числу (добор/обрезка, минимум один верный).
- Копирование темы при загрузке редактора и при применении импорта/черновика LLM (`setAiGenTopic` при `applyGeneratedDraft`).
## Бэкенд
- Менять не требовалось: `POST .../ai/generate-test` уже принимает `shape` с `optionsCount` (см. `backend/src/services/aiEditorService.js`).
## Проверка
- `npm run lint` и `npm run build` в `TestingWebApp/frontend` — без ошибок.
- Ручной прогон `docker compose` по чек-листу из предложения — остаётся на стороне исполнителя.