Add speech-topic policy from tomorrow and a morning family talk.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -13,20 +13,20 @@
|
||||
|
||||
## Задачи
|
||||
|
||||
- [ ] В «Правилах» два комбобокса речи: ученики / сотрудники × свободно / без грубого / только учёба
|
||||
- [ ] В силу с завтра; API сегодня не переодевает темы текущих кружков
|
||||
- [ ] Система не стартует кружок с темой вне политики; начатый вчера доигрывает
|
||||
- [ ] Одно семейное событие на человека за рабочее утро; skip ночи применяет
|
||||
- [ ] Семейные темы из `TopicDef`; сдвиг меньше школьного разговора
|
||||
- [ ] `docs/protocol.md` — HTTP правил речи
|
||||
- [x] В «Правилах» два комбобокса речи: ученики / сотрудники × свободно / без грубого / только учёба
|
||||
- [x] В силу с завтра; API сегодня не переодевает темы текущих кружков
|
||||
- [x] Система не стартует кружок с темой вне политики; начатый вчера доигрывает
|
||||
- [x] Одно семейное событие на человека за рабочее утро; skip ночи применяет
|
||||
- [x] Семейные темы из `TopicDef`; сдвиг меньше школьного разговора
|
||||
- [x] `docs/protocol.md` — HTTP правил речи
|
||||
|
||||
## Тесты, без которых фаза не закрыта
|
||||
|
||||
- [ ] POST «только учёба» сегодня не мешает текущему кружку «игры»
|
||||
- [ ] На следующее рабочее утро грубая тема у учеников не стартует
|
||||
- [ ] Skip с пятницы на понедельник применяет домашнее событие и дрейф мнений; мнение с
|
||||
- [x] POST «только учёба» сегодня не мешает текущему кружку «игры»
|
||||
- [x] На следующее рабочее утро грубая тема у учеников не стартует
|
||||
- [x] Skip с пятницы на понедельник применяет домашнее событие и дрейф мнений; мнение с
|
||||
родителем сдвинуто, брошенная дружба ближе к нулю
|
||||
- [ ] Клиентский тест: комбобоксы речи рядом с одеждой, подпись «с завтра»
|
||||
- [x] Клиентский тест: комбобоксы речи рядом с одеждой, подпись «с завтра»
|
||||
|
||||
## Критерий готовности
|
||||
|
||||
|
||||
@@ -572,6 +572,36 @@ omitted sides keep their current rule. Unknown `{id}` is `404` `unknown-school`.
|
||||
{ "students": { "form": "strict", "color": "noBright" } }
|
||||
```
|
||||
|
||||
### `GET /api/schools/{id}/speech-rules`
|
||||
|
||||
Student and staff speech-topic policy for the school. Only the owner may read this (`403`
|
||||
`not-owner`). Unknown `{id}` is `404` `unknown-school`.
|
||||
|
||||
Policy is one of `free`, `noRude`, `studyOnly`. When a `POST` has been accepted but not yet
|
||||
applied, `pendingStudents` and/or `pendingStaff` show what takes effect on the **next work
|
||||
morning** — the same morning as dress rules. Today's live circles keep their topic; the system
|
||||
does not start a new circle whose topic is outside the live policy.
|
||||
|
||||
```json
|
||||
{
|
||||
"students": "free",
|
||||
"staff": "free",
|
||||
"pendingStudents": null,
|
||||
"pendingStaff": null
|
||||
}
|
||||
```
|
||||
|
||||
### `POST /api/schools/{id}/speech-rules`
|
||||
|
||||
Queues a change for the next work morning. Only the owner may post (`403` `not-owner`). Either or
|
||||
both of `students` and `staff` may be sent; omitted sides keep their current pending/live rule.
|
||||
Unknown `{id}` is `404` `unknown-school`. Unknown policy is `400` `unknown-speech`. Response body
|
||||
matches `GET`.
|
||||
|
||||
```json
|
||||
{ "students": "studyOnly" }
|
||||
```
|
||||
|
||||
### `GET /api/schools/{id}/staffing`
|
||||
|
||||
Money, uncovered subjects, the applicant pool and current staff. Only the owner may read this
|
||||
|
||||
Reference in New Issue
Block a user