docs: права преподавателя, аудит, CI и итоговые проверки
This commit is contained in:
12
README.md
12
README.md
@@ -61,6 +61,8 @@ progress `:8083`, web `:8090`. Интерфейс: `http://localhost:8090`.
|
||||
- Gradle daemon фиксируется на JDK 21 (`gradle/gradle-daemon-jvm.properties`): detekt 1.23
|
||||
не работает на JDK 25.
|
||||
- Тестовая инфраструктура — `libs:test-support` (JUnit 5, MockK, Testcontainers `postgres:18`).
|
||||
- CI merge gate — `.gitlab-ci.yml`: `./gradlew --no-daemon test ktlintCheck detekt`
|
||||
на push/MR. Runner должен разрешать privileged `docker:dind` для Testcontainers.
|
||||
|
||||
## Запуск в Docker (для сервера)
|
||||
|
||||
@@ -119,6 +121,16 @@ cp .env.prod.example .env.prod # заполнить LMS_DB_PASSWORD
|
||||
маршрут показывают сводку, оценки, комментарии с авторами, защиты и все
|
||||
попытки сдачи со скачиванием ZIP; студенту API отдаёт только его профиль
|
||||
и опубликованные данные.
|
||||
- **Работа преподавателя**: ведомость группы переиспользует
|
||||
`/admin/groups/{groupId}?courseId=...` без админских контролов — оценки и
|
||||
комментарии, публикация, уровни/варианты и раздача, защиты (код/reset),
|
||||
скачивание попыток и ZIP группы; лабораторные/уровни/варианты своего курса,
|
||||
привязка/отвязка групп на `/teacher/courses/{id}`, авторские материалы на
|
||||
`/teacher/courses/{id}/content`. Чужой курс отклоняется на сервисах.
|
||||
- **Аудит**: чувствительные действия (профили, скачивания, оценки, защиты,
|
||||
курсы, группы, материалы, преподаватели, жизненный цикл) пишутся в
|
||||
`identity.audit_events`; админ смотрит `/admin/audit` с фильтром по действию
|
||||
и временем МСК.
|
||||
- **Повышение и жизненный цикл**: `/admin/promotion` — dry-run, применение
|
||||
и откат повышения (автоматический dry-run 31 августа МСК); на странице
|
||||
группы — академотпуск, возврат, отчисление, архив и восстановление;
|
||||
|
||||
Reference in New Issue
Block a user