Commit Graph
168 Commits
Author SHA1 Message Date
Leonid Pershin a37a5eb82d Remove off-queue.md and add new design documentation files including README.md, defs.md, near-term.md, projects.md, runtime.md, people.md, staffing.md, and schedule.md to outline the structure and agreements for the game's design phases. 2026-08-20 12:26:13 +03:00
Leonid Pershin 12cc36b4dd Merge branch 'phase/55-view-state'
ci / server (push) Failing after 3m39s
ci / client (push) Successful in 20s
# Conflicts:
#	docs/phases/README.md
2026-08-20 12:10:55 +03:00
Leonid Pershin 4f3d3fc068 Update AGENTS.md to reflect live status of country, wardrobes, and weather; clarify off-queue tasks in off-queue.md; introduce phase 10 (craft) in README.md with design details and phase breakdown.
ci / server (push) Failing after 3m39s
ci / client (push) Failing after 15s
2026-08-20 12:08:27 +03:00
Leonid PershinandCursor 0902185b70 Mark phase 55 view-state as complete.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 12:03:33 +03:00
Leonid PershinandCursor 36ec5e9f8e Restore school tabs and filters after refresh.
The URL keeps the open school and current view; sessionStorage keeps list filters and searches so F5 and re-entry do not dump the player on an empty map.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 12:03:04 +03:00
Leonid PershinandCursor 069c58194d Mark phase 54 whats-new as complete.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 11:44:11 +03:00
Leonid PershinandCursor 449be4e0ea Show unseen Server commits after login.
Bake first-parent git log at Server build and remember the SHA in a browser cookie.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 11:43:36 +03:00
Leonid PershinandCursor 1e7014cabd Mark phase 54 in progress.
ci / server (push) Failing after 3m41s
ci / client (push) Failing after 14s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 11:30:11 +03:00
Leonid Pershin ee6930a39d Merge branch 'phase/45-presence-talk'
# Conflicts:
#	docs/phases/README.md
#	src/HSchool.Server/Api/PeopleModels.cs
#	src/HSchool.Server/Game/PersonCardReader.cs
2026-08-20 11:27:58 +03:00
Leonid Pershin 43267e4482 Merge branch 'review/slice-8-session'
ci / server (push) Failing after 3m36s
ci / client (push) Successful in 17s
2026-08-20 11:11:54 +03:00
Leonid PershinandCursor 85bf757b69 Journal: set slice 8 review commit hash.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 11:05:31 +03:00
Leonid PershinandCursor 1c3ae9ab7e Reject a second live WebSocket for the same session name.
Two tabs with the cookie already set never POST /api/session, so name-online on login did not cover the design rule. Claim the name under the same lock as the online check.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 11:04:56 +03:00
Leonid Pershin ae2e3ddc14 Merge branch 'phase/47-romance-pack'
ci / server (push) Failing after 3m39s
ci / client (push) Successful in 19s
# Conflicts:
#	docs/phases/README.md
#	src/HSchool.Content/PeopleDefs.cs
#	src/HSchool.People/Seed.cs
2026-08-20 11:00:12 +03:00
Leonid PershinandCursor d52f784e5e Mark phase 44 as in progress.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 10:51:15 +03:00
Leonid PershinandCursor 663edaccae Mark phase 45 presence talk as complete.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 10:43:56 +03:00
Leonid Pershin 72e4891453 Mark phase 47 romance pack as complete. 2026-08-20 10:43:20 +03:00
Leonid PershinandCursor 2034946378 Show talk-circle partners and topic on the location panel and Now tab.
The frame and card share member ids; the client builds the sentence from the directory and locale.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 10:43:16 +03:00
Leonid Pershin d2911c3daf Complete phase 47 romance pack on generic orientation and affinity hooks.
Vanilla catalogs stay without crushes; a content pack ships the overlay so later mods can reuse it.
2026-08-20 10:42:42 +03:00
Leonid PershinandCursor f45347b335 Merge branch 'phase/43-whisper'
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 10:40:35 +03:00
Leonid PershinandCursor 089917025a Mark phase 43 whisper as complete.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 10:36:06 +03:00
Leonid PershinandCursor f7d5e0c042 Add lesson whispers, teacher catch chance, and after-bell teacher talk.
Whispering cuts lesson skill gain from BehaviorDef; a teacher in the room may interrupt into a discipline circle, and pedagogy scales the pupil's opinion of the teacher.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 10:35:31 +03:00
Leonid PershinandCursor 3bb5d45f10 Mark phase 45 presence talk as in progress.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 10:13:19 +03:00
Leonid PershinandCursor 7eac934533 Mark phase 47 romance pack as in progress.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 10:11:20 +03:00
Leonid PershinandCursor 52a4104f68 Mark phase 43 whisper as in progress.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 10:10:20 +03:00
Leonid Pershin 51b4c22b69 Merge branch 'phase/39-school-owners'
ci / client (push) Successful in 18s
ci / server (push) Failing after 3m51s
2026-08-20 09:56:13 +03:00
Leonid PershinandCursor 5257636869 Mark phase 39 school owners as complete.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 09:45:13 +03:00
Leonid PershinandCursor cc18429108 Complete phase 39 school owners with owner-scoped API, menu, and tests.
Drop golden save load tests in favor of incompatible-save behavior; dress legacy people files on reload; fix AppHost isolation for multi-user socket and save cleanup.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 09:44:08 +03:00
Leonid PershinandCursor ab97242bbc phase 53: mark complete
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 09:41:02 +03:00
Leonid PershinandCursor ce71a91a67 Add rain and snow minutes to the morning commute.
Day plans take a precomputed extra; Ai does not know precipitation.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 09:40:24 +03:00
Leonid PershinandCursor f064ea9b61 phase 52: mark complete
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 09:28:26 +03:00
Leonid PershinandCursor 1b3479f984 Halve lesson gain when the bag has no textbook for the subject.
Locker and home do not count. A pack without the field keeps vanilla 0.5.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 09:27:46 +03:00
Leonid PershinandCursor 384f9d7273 Merge branch 'phase/51-warmth-lesson'
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 09:09:55 +03:00
Leonid PershinandCursor 1ca4d758f8 phase 51: mark complete
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 09:07:23 +03:00
Leonid Pershin e18a09ea82 Update AGENTS.md and SKILL.md files to clarify task handling and bug reporting. Added documentation for bug-related tasks in AGENTS.md and refined descriptions in phase-work and side-work skills to specify their usage and differentiate from bug work.
ci / server (push) Failing after 3m39s
ci / client (push) Failing after 13s
2026-08-20 09:06:59 +03:00
Leonid PershinandCursor 274814aecd Scale lesson gain by warmth the same way hunger already did.
The bar was live and drove dressing; a frozen pupil in class still learned as if it were May.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 09:06:50 +03:00
Leonid Pershin ac17abfd90 Merge branch 'phase/42-talk-circles'
Co-authored-by: Cursor <cursoragent@cursor.com>

# Conflicts:
#	docs/phases/README.md
#	src/HSchool.Simulation/PersonLog.cs
2026-08-20 09:03:38 +03:00
Leonid PershinandCursor 91a72b9b99 phase 51: mark in progress
ci / server (push) Failing after 3m35s
ci / client (push) Failing after 14s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 09:01:18 +03:00
Leonid PershinandCursor aaf539cacc Merge branch 'phase/50-teacher-skill-gain'
ci / server (push) Failing after 3m57s
ci / client (push) Failing after 17s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 08:58:27 +03:00
Leonid Pershin ef36bd5d35 phase 42: mark complete 2026-08-20 08:56:30 +03:00
Leonid Pershin 47fc10da02 Add talk circles with TopicDef, staff/phone chat, and opinion outcomes. 2026-08-20 08:55:55 +03:00
Leonid PershinandCursor 7935a3086f phase 50: mark complete
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 08:54:53 +03:00
Leonid PershinandCursor c2579d6767 Scale lesson skill gain by the teacher's subject skill.
Hiring a 78-math applicant already cost more than a 41; the class now actually learns faster when that teacher is in the room.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 08:54:13 +03:00
Leonid PershinandCursor 1287d503b2 Merge branch 'phase/49-skip-stale-build'
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 08:51:57 +03:00
Leonid PershinandCursor f718f4b63d phase 50: mark in progress
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 08:48:16 +03:00
Leonid PershinandCursor 3eaecc12e7 Mark phase 49 skip-stale-build complete.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 08:46:39 +03:00
Leonid PershinandCursor 9bd1b8eea0 Skip MSBuild on run-aspire.cmd when binaries are still newer than sources.
dotnet run always evaluates the Aspire graph. A second launch after Ctrl+C should not wait on that.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 08:45:44 +03:00
Leonid Pershin 6dcbb3303c Merge branch 'phase/48-lesson-teacher-present' 2026-08-20 08:42:38 +03:00
Leonid PershinandCursor 32283bfada phase 48: mark complete
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 08:40:04 +03:00
Leonid PershinandCursor bdc902b7ff Renumber remaining lesson-coherence phases to 50-53.
Phase 49 is already claimed for skip-stale-build.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 08:39:29 +03:00
Leonid PershinandCursor fbc32f2bfc Grow lesson skills only when the assigned teacher is standing in the room.
The timetable already named a teacher; learning ignored whether they were in the toilet, still walking, or not a person at all.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-20 08:33:28 +03:00