docs: этапы 3–4 — роли, профиль и жизненный цикл

This commit is contained in:
2026-10-27 18:42:08 +03:00
parent 1d21e66dc4
commit 4a2daf2fec
6 changed files with 388 additions and 6 deletions

View File

@@ -111,6 +111,19 @@ cp .env.prod.example .env.prod # заполнить LMS_DB_PASSWORD
существующие лабораторные, главы и активные группы в курс «Промышленное
программирование на языке C». Лабораторные привязаны к курсу: создание
и импорт требуют выбора курса, лабу можно скопировать в другой курс.
- **Преподаватели и доступ**: `/admin/teachers` создаёт аккаунты `TEACHER`
с одноразовым паролем; преподаватель видит только назначенные курсы
(`/teacher`), их группы, студентов и профили. Курсы и лабораторные
фильтруются по роли, внутренние вызовы identity защищены `LMS_INTERNAL_TOKEN`.
- **Профиль студента курса**: `/teacher/courses/{id}/students/{id}` и админский
маршрут показывают сводку, оценки, комментарии с авторами, защиты и все
попытки сдачи со скачиванием ZIP; студенту API отдаёт только его профиль
и опубликованные данные.
- **Повышение и жизненный цикл**: `/admin/promotion` — dry-run, применение
и откат повышения (автоматический dry-run 31 августа МСК); на странице
группы — академотпуск, возврат, отчисление, архив и восстановление;
архив группы и подтверждение удаления логином/ФИО. Вход закрыт для
выпущенных и архивных групп.
- **Лабораторные**: импорт ZIP (`lab.yaml` + `README.md` + `variants/*.md` +
`assets/`); создание через UI с произвольным числом уровней; единая форма
настроек с одной кнопкой «Сохранить всё»; статусы draft/published