Leonid Pershin and Cursor
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 Pershin and Cursor
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 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 Pershin and Cursor
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 Pershin
74720af208
Update Vite configuration to serve on 127.0.0.1 for Tailscale compatibility, preventing connection issues on Windows.
ci / server (push) Failing after 3m40s
ci / client (push) Successful in 17s
2026-08-20 10:54:28 +03:00
Leonid Pershin and Cursor
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 Pershin and Cursor
1a21a64b4b
Bump protocol to v9 and carry talk-circle ids on the presence frame.
...
Names stay off the wire; a person not in a circle writes an empty member list and topic.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-20 10:42:11 +03:00
Leonid Pershin
cb869e4977
Enhance run-aspire.cmd to support Tailscale integration for remote access. The script now checks for Tailscale availability and connection status, providing warnings if not found or connected. Updated documentation in AGENTS.md and README.md to reflect changes, including instructions for using Tailscale with the Vite client. Fixed Vite configuration to pin the client port to 5173 and support HMR over Tailscale. Adjusted AppHost.cs to ensure proper endpoint targeting for Tailscale.
ci / server (push) Failing after 3m45s
ci / client (push) Successful in 17s
2026-08-20 10:02:42 +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 Pershin and Cursor
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 Pershin and Cursor
66451bc629
Center the login gate so the password field is not a full-width strip.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-20 09:18:48 +03:00
Leonid Pershin
4b236a7916
Merge main into phase/39-school-owners.
...
Keep school owners and phase 41 opinions/portraits together; ResetAsync wipes all saves so shared AppHost tests stay isolated.
2026-08-20 08:36:13 +03:00
Leonid Pershin
9d96108516
Add portrait settings support to school creation and update related API and UI components. Enhance error handling for invalid presets and ensure proper cloning of settings. Update tests to validate new functionality.
ci / server (push) Failing after 3m40s
ci / client (push) Failing after 14s
2026-08-20 08:17:58 +03:00
Leonid Pershin
db95de0ddf
Update AGENTS.md with new task documentation and enhance Russian and English localization for portrait settings.
ci / server (push) Failing after 1m16s
ci / client (push) Failing after 13s
2026-08-20 08:01:46 +03:00
Leonid Pershin
26be7c87f8
WIP phase 39: school owners, my/others menu, guest restrictions.
2026-08-20 07:58:12 +03:00
Leonid Pershin
6264034e4b
Merge branch 'phase/41-opinions'
...
# Conflicts:
# docs/phases/README.md
2026-08-20 07:58:05 +03:00
Leonid Pershin
b1b4f18b40
Add opinions storage, morning drift, and Connections card tab.
2026-08-20 07:34:57 +03:00
Leonid Pershin
40929aa3ce
Merge branch 'phase/38-session'
...
# Conflicts:
# docs/phases/README.md
# tests/HSchool.AppHost.Tests/PortraitApiTests.cs
2026-08-20 07:25:12 +03:00
Leonid Pershin
a444fc011e
Add alpha session gate with cookie auth and login UI.
2026-08-20 07:17:18 +03:00
Leonid Pershin
b9d91d387e
Merge phase/40-clock-tempo.
2026-08-20 07:07:00 +03:00
Leonid Pershin
9199ea36d2
Phase 40: clock tempo at 1 min/s, x5/x10 heavy stride.
2026-08-20 07:02:24 +03:00
Leonid Pershin
230563d5c5
Merge main into review/slice-7bc-climate-wear; journal 32-37.
...
Integrate stage A review from main; resolve reviewed.md; fix dressRulesPanel unused import, managementPanel test, PortraitApiTests URL.
2026-08-20 06:46:36 +03:00
Leonid Pershin
2a55a025f4
Merge review/slice-7a-wardrobe (phases 29-31)
...
ci / server (push) Failing after 1m57s
ci / client (push) Failing after 17s
# Conflicts:
# src/HSchool.Client/src/i18n/strings.ts
2026-08-20 06:39:09 +03:00
Leonid Pershin
dc9830f332
Merge branch 'phase/37-school-rules'
2026-08-20 06:23:35 +03:00
Leonid Pershin
d5547b7b02
Review slice 7A phases 29-31: fix strings duplicate, journal
2026-08-20 06:20:57 +03:00
Leonid Pershin
aab0c00988
Add school dress rules tab in Management with tests.
2026-08-20 06:20:06 +03:00
Leonid Pershin
5a400be792
Add SwarmUI settings management and portrait generation enhancements
...
- Introduced new API endpoints for managing SwarmUI settings, including fetching and saving presets and age rules.
- Updated the portrait generation logic to utilize the new settings structure, allowing for dynamic preset selection based on age.
- Enhanced UI components to support SwarmUI settings, including localization for new strings and improved styling for settings sections.
- Added tests to verify the functionality of new settings endpoints and portrait generation behavior.
This commit lays the groundwork for more flexible and user-friendly portrait generation options.
2026-08-20 06:06:45 +03:00
Leonid Pershin
6eb16d0edf
Enhance person card functionality: add custom prompt textarea persistence during input, streamline portrait prompt API by removing unused parameters, and ensure proper button state management based on input. Update tests to verify new behavior.
ci / server (push) Failing after 3m44s
ci / client (push) Failing after 14s
2026-08-20 05:32:40 +03:00
Leonid Pershin
3fa6ce95df
Implement portrait prompt API and UI enhancements. Added a new endpoint to fetch portrait prompts, updated the client to handle prompt display, and improved localization for prompt-related text. Enhanced styling for prompt elements in the UI.
ci / server (push) Failing after 3m40s
ci / client (push) Failing after 15s
2026-08-20 05:27:01 +03:00
Leonid Pershin
ac0470bbc4
Implement custom portrait generation: update API, UI, and localization to support user-defined prompts for portraits, replacing half-body option with custom variant.
ci / server (push) Failing after 3m38s
ci / client (push) Failing after 14s
2026-08-20 05:16:40 +03:00
Leonid Pershin
df0aaad403
Add half-body portrait support: update API, UI, and localization for new portrait type
ci / server (push) Failing after 3m40s
ci / client (push) Failing after 14s
2026-08-20 05:10:51 +03:00
Leonid Pershin
ee23fb4994
Merge branch 'phase/36-person-card-tabs'
ci / server (push) Failing after 4m1s
ci / client (push) Failing after 17s
2026-08-20 04:35:35 +03:00
Leonid Pershin
5991dcd5c4
Enhance SwarmUI integration by adding swarm connection status to the API and updating client-side components to reflect this status. Improved localization strings for various SwarmUI states and refactored ApplicantsDialog and PersonCard components to utilize the new connection information, ensuring a more responsive user experience.
ci / server (push) Failing after 4m56s
ci / client (push) Failing after 15s
2026-08-20 04:21:35 +03:00
Leonid Pershin
36b46774a7
Refactor ManagementPanel and PeoplePanel to remove unused painted property and streamline card painting logic. Updated paintCard method to use a more concise function for determining card placement.
ci / server (push) Failing after 3m47s
ci / client (push) Successful in 27s
2026-08-20 04:19:43 +03:00
Leonid Pershin
47241a5bd4
Merge branch 'phase/32-weather-warmth'
2026-08-20 04:18:49 +03:00
Leonid Pershin
d0e9f4a9d3
Enhance ApplicantsDialog by integrating game status fetching and updating card rendering logic. Introduced swarm configuration handling and improved person card rendering with tab support, ensuring a more dynamic user experience.
ci / server (push) Failing after 3m42s
ci / client (push) Failing after 15s
2026-08-20 04:17:40 +03:00
Leonid Pershin
3b9bfc0b9e
Refactor openCard method in ApplicantsDialog to streamline error handling and remove redundant checks against selectedId. This improves code clarity and maintains state management consistency.
ci / server (push) Failing after 3m45s
ci / client (push) Failing after 13s
2026-08-20 04:16:20 +03:00
Leonid Pershin
03378793be
Refactor ApplicantsDialog to remove unused cardToken and improve card fetching logic. Updated openCard method to check against selectedId instead of cardToken for better state management.
ci / server (push) Failing after 3m40s
ci / client (push) Failing after 13s
2026-08-20 04:15:41 +03:00
Leonid Pershin
dfa9a25dca
Implement portrait generation and retrieval for people in the school system. Added new API endpoints for generating and fetching portraits, including support for avatar and full-body images. Updated the client-side to handle portrait states and display options. Enhanced the person card UI to include tabs for overview and portrait, with appropriate localization strings. Updated solution files to include new test projects. Adjusted server configuration for SwarmUI integration.
ci / server (push) Failing after 3m46s
ci / client (push) Failing after 14s
2026-08-20 04:14:41 +03:00
Leonid Pershin
5a431bba99
Merge branch 'main' into phase/32-weather-warmth
...
Co-authored-by: Cursor <cursoragent@cursor.com >
# Conflicts:
# src/HSchool.Simulation/School.cs
2026-08-20 04:03:42 +03:00
Leonid Pershin and Cursor
6be4fa75ab
Split the person card into overview, clothes, carry and now tabs.
...
Today's history is a paged HTTP log on the worker, not on the card or in people.json.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-20 04:00:38 +03:00
Leonid Pershin
34acec16c2
Merge branch 'main' into phase/32-weather-warmth
2026-08-20 03:50:04 +03:00
Leonid Pershin and Cursor
8e7ab46e79
Sample outdoor weather from the climate preset so people can freeze and the clock can show it.
...
Protocol v8 adds tenths of a °C and precipitation to the clock frame; warmth drains from insulation versus place temperature.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-20 03:49:40 +03:00
Leonid Pershin and Cursor
1ba739dd9b
Wear worn clothes on campus and replace rags at the work morning.
...
Condition drops from catalog hours only while the person is at school; skip through the night issues the same fresh set as a lived night so the school does not walk in in rags.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-20 03:49:11 +03:00
Leonid Pershin and Cursor
37501c506a
Dress people at generation from a separate apparel stream.
...
Wardrobes live on the person in people.json: everyday layers, textbooks per parallel, and chance-based bags from catalog data. Hauling and the carry cap are defs, not constants. The golden roster gains an items column; later family members shift because Hauling consumes extra appearance rolls. Old saves without items are dressed on load.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-20 03:24:54 +03:00
Leonid Pershin and Cursor
d8f4958167
Merge phase 29 country.
...
ci / server (push) Failing after 3m53s
ci / client (push) Successful in 19s
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-20 02:59:46 +03:00
Leonid Pershin
ed80aa5d08
Update AGENTS.md to correct the behavior of presence frames during school pauses, clarify the design documentation regarding mod load order, and add a new test for uncovered teaching positions in the management panel. Enhance reviewed phase details for accuracy and completeness.
ci / server (push) Failing after 3m48s
ci / client (push) Successful in 42s
2026-08-20 02:57:13 +03:00