Implement applicant pool functionality in school simulation, allowing for the management of job seekers who are not yet part of the school roster. Update the catalog to include staffing definitions and enhance the API to support applicant data retrieval. Revise the school architecture to handle applicant refresh logic and ensure proper integration with existing roster management. Update tests to validate the new applicant functionalities and ensure robustness in handling staffing scenarios.
This commit is contained in:
@@ -12,26 +12,26 @@
|
||||
|
||||
## Задачи
|
||||
|
||||
- [ ] `RosterGenerator` больше не закрывает должности: новая школа получает учеников, родителей
|
||||
- [x] `RosterGenerator` больше не закрывает должности: новая школа получает учеников, родителей
|
||||
и ноль сотрудников
|
||||
- [ ] Пул соискателей в `HSchool.People`: список полноценных `Person`, детерминированный от сида
|
||||
- [x] Пул соискателей в `HSchool.People`: список полноценных `Person`, детерминированный от сида
|
||||
школы и номера недели
|
||||
- [ ] Соискателем может стать родитель ученика — тот же человек, без второй сущности
|
||||
- [ ] Базовый запрос по зарплате считается из навыков соискателя; шкала — в данных, не в коде
|
||||
- [ ] Еженедельное обновление: часть уходит, часть остаётся с теми же именами и запросом,
|
||||
- [x] Соискателем может стать родитель ученика — тот же человек, без второй сущности
|
||||
- [x] Базовый запрос по зарплате считается из навыков соискателя; шкала — в данных, не в коде
|
||||
- [x] Еженедельное обновление: часть уходит, часть остаётся с теми же именами и запросом,
|
||||
приходят новые. Полная замена запрещена
|
||||
- [ ] Пул живёт в `saves/{id}.people.json` рядом с ростером и пишется по тем же правилам —
|
||||
- [x] Пул живёт в `saves/{id}.people.json` рядом с ростером и пишется по тем же правилам —
|
||||
при изменении состава, не по таймеру
|
||||
- [ ] Воркер публикует пул вместе со снимком ростера
|
||||
- [x] Воркер публикует пул вместе со снимком ростера
|
||||
|
||||
## Тесты, без которых фаза не закрыта
|
||||
|
||||
- [ ] Тот же сид и та же неделя — тот же пул
|
||||
- [ ] После обновления часть людей та же самая, с теми же навыками и тем же запросом
|
||||
- [ ] Пул не пустеет и не растёт бесконечно за пятьдесят недель
|
||||
- [ ] Запрос по зарплате у сильного кандидата выше, чем у слабого
|
||||
- [ ] Новая школа не имеет ни одного сотрудника, но все ученические места заняты
|
||||
- [ ] Соискатель не попадает в ростер школы, пока не нанят
|
||||
- [x] Тот же сид и та же неделя — тот же пул
|
||||
- [x] После обновления часть людей та же самая, с теми же навыками и тем же запросом
|
||||
- [x] Пул не пустеет и не растёт бесконечно за пятьдесят недель
|
||||
- [x] Запрос по зарплате у сильного кандидата выше, чем у слабого
|
||||
- [x] Новая школа не имеет ни одного сотрудника, но все ученические места заняты
|
||||
- [x] Соискатель не попадает в ростер школы, пока не нанят
|
||||
|
||||
## Критерий готовности
|
||||
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
| Фаза | Статус | Зачем |
|
||||
| --- | --- | --- |
|
||||
| [10. Предметы и мебель](10-subjects.md) | ✅ | `SubjectDef`, одна учительская должность, кабинет как число мест |
|
||||
| [11. Пустая школа и пул](11-applicants.md) | ⬜ | Школа без сотрудников, соискатели с запросом по зарплате |
|
||||
| [11. Пустая школа и пул](11-applicants.md) | ✅ | Школа без сотрудников, соискатели с запросом по зарплате |
|
||||
| [12. Наём и бюджет](12-hiring-budget.md) | ⬜ | Наём, назначение предметов, предел фонда оплаты |
|
||||
| [13. Раздел «Управление»](13-management-tab.md) | ⬜ | Деньги, соискатели, штат и назначения на экране |
|
||||
|
||||
|
||||
Reference in New Issue
Block a user