docs: актуализация под текущее состояние (Bootstrap вместо htmx, RestClient, интерцепторы, контроллеры, публикация по студентам, watch-опрос, автосейв без перезагрузки)

This commit is contained in:
2026-10-13 15:59:37 +03:00
parent 4fa400ddb1
commit b1f00fd776
7 changed files with 152 additions and 45 deletions

View File

@@ -17,23 +17,32 @@ stateDiagram-v2
end note
```
## 2. Публикация оценок (пара «группа + лабораторная»)
## 2. Публикация оценок (пара «студент + лабораторная»)
```mermaid
stateDiagram-v2
[*] --> hidden : оценка выставлена (lab_grades)
hidden --> published : «опубликовать оценки» (grade_publications)
published --> hidden : «скрыть оценки»
hidden --> published : чекбокс публикации в ячейке студент×ЛР (grade_publication_students)
published --> hidden : снять чекбокс
hidden --> published : «опубликовать всем» (глаз в шапке ЛР)
published --> hidden : «скрыть у всех»
note right of hidden
студент не видит ни балл,
ни комментарии
студент не видит ни балл, ни комментарии.
Проверка доступа — по (student, lab):
групповая публикация (легаси, grade_publications)
открывает всем, иначе — по списку студентов.
end note
note right of published
студенты группы видят балл и
комментарии, сгруппированные по тону
видно только выбранным студентам; подсказки
комментариев показывают частоту и позволяют
удалять шаблоны с частотой 0
end note
```
Кнопки: чекбокс в ячейке публикует/скрывает оценку конкретному студенту (AJAX, без перезагрузки,
тост с «N из M»); «глаз» в шапке лабораторной — массово «всем/скрыть у всех» (частичное состояние —
жёлтый со счётчиком).
## 3. Статус лабораторной (`labs.status`)
```mermaid
@@ -113,7 +122,7 @@ stateDiagram-v2
stateDiagram-v2
[*] --> temporary : аккаунт создан / «Сбросить пароль»
temporary --> own : смена на /change-password
own --> temporary : «Сбросить пароль» преподавателем
own --> temporary : «Сбросить пароль» администратором
note right of temporary
must_change_password = true,
temp_password хранится;