- Updated `protocol.md` to clarify the concept of uncovered subjects and the number of additional teachers required. - Introduced `teachersShort` property in the `StaffingSubject` interface to indicate how many more teachers are needed for a subject. - Enhanced localization strings to reflect the new uncovered teacher information in both English and Russian. - Updated the management panel UI to display the number of teachers short for each uncovered subject. - Revised the `Uncovered` method in the staffing logic to return detailed information about uncovered subjects, including the shortfall of teachers. - Added tests to validate the new uncovered teacher tracking functionality and ensure accurate reporting in the staffing API. - Marked related tasks as complete in the documentation for the golden fixtures phase.
Golden saves
current/ is a school file of today's format. legacy-no-native/ is the same school without
nativeLanguage, so a missing field still has to mean "first language of the name set" rather
than a new roll.
These files live forever: a new save field must load current/ and must not reshuffle
legacy-no-native/. A real format change adds a new folder; it does not rewrite the old one.
Regenerate after an intentional roster change (same commit):
WRITE_GOLDEN=1 dotnet test tests/HSchool.People.Tests/HSchool.People.Tests.csproj --filter Dump_HostSaveFixtures