Thing, room, yard and climate precipitation can contribute a short prompt when they are in frame, with a budget so chairs stay silent.
Co-authored-by: Cursor <cursoragent@cursor.com>
The clash penalty applied to every pair except defender looking at the victim, so the person being helped disliked the defender like a second enemy.
Co-authored-by: Cursor <cursoragent@cursor.com>
RankInvitees already skipped enemies when a circle formed; a later Chat in the same node still joined without checking opinions.
Co-authored-by: Cursor <cursoragent@cursor.com>
Later slices did not touch 56-57 paths. Add remaining projects.md graph bans and document Simulation's direct Schedule reference.
Co-authored-by: Cursor <cursoragent@cursor.com>
Teacher action must not cancel gain, a missing warmth need matches full warmth, snow on the street must reach DayPlans, and a lazy pupil still appears closer to the bell.
Pass -c through to dotnet run so Release stamp and process match, assert changelog order for more than one commit, and restore the last school tab from sessionStorage when opening from the menu.
Co-authored-by: Cursor <cursoragent@cursor.com>
Adds a weather-drop walk test so a jacket is not teleported onto the body; PE change regressions already red on main stay open.
Co-authored-by: Cursor <cursoragent@cursor.com>
The design asked for the owner name or an em dash; wrapping the dash in the Owner template produced Хозяин: —. Low-speed clock tests now cover x1/2 and x2 as well as x1.
Recheck of slice 7 stage A found UpgradeOlderSave removed after UpperUnderwear, so format-2 nameSetId saves never started, and golden people.json wearing abstract Underwear failed RequireKnownApparel. Bring back the lift, treat unusable items as undressed, and restore GoldenSaveTests.
Phase 39 dropped GoldenSaveTests when format 2 saves became unstartable. Recheck restores the missing-field and seed-equals-id assertions against a stamped copy, and records the recheck.
Co-authored-by: Cursor <cursoragent@cursor.com>
Pin homeroom seats, the management money row and assign-from-card, and drop the stale top-three skills claim from the protocol.
Co-authored-by: Cursor <cursoragent@cursor.com>
GET ?classId=/personId= and personTimetableQuery had no tests; occupancy on the grid comment still pointed at the old map snapshot.
Co-authored-by: Cursor <cursoragent@cursor.com>
FinishConflict never set RosterTalkDirty, so people.json skipped quarrel shifts until some other save — the same seam as the A-B talk-circle fix. First BullyVictimId write stayed in RAM only.
Co-authored-by: Cursor <cursoragent@cursor.com>