admin
e9d59a4ca2
Distinguish unlisted games from missing saves
2026-07-15 13:29:06 -07:00
admin
811761ca19
Recover orphaned Postgres games in admin
2026-07-15 13:20:34 -07:00
admin and GitHub
c49c4d26e1
Include client texts in save downloads ( #8617 )
...
* Include client texts in save downloads
* Fix admin service client text dependencies
2026-07-15 13:16:58 -07:00
admin and GitHub
68906df5b9
Clarify diplomacy with departing heroes ( #8618 )
2026-07-15 13:15:52 -07:00
admin and GitHub
dc54584fa3
Limit support deadline tutorial to first year ( #8616 )
...
* Limit support deadline tutorial to first year
* Use the actual tutorial start year
2026-07-15 13:11:37 -07:00
admin and GitHub
d665eb53f3
Remove tutorial phase from game state view ( #8615 )
2026-07-15 13:06:01 -07:00
admin and GitHub
59143a2e04
Add tutorial dialogue for battle conditions ( #8613 )
...
* Add tutorial dialogue for battle conditions
* Mention castle morale recovery in tutorial
* Mention Holy Wave battle recovery
2026-07-15 13:01:58 -07:00
admin and GitHub
f9825861e3
Order generated hero names before backstories ( #8614 )
2026-07-15 13:01:09 -07:00
admin and GitHub
9b5dcc40a0
Keep editor OAuth flow in polling mode ( #8612 )
2026-07-15 13:00:32 -07:00
admin and GitHub
44514fb2f2
Activate unused-hero warning in tutorial battle ( #8609 )
2026-07-15 12:08:40 -07:00
admin and GitHub
3014602331
Retry transient OAuth polling failures ( #8611 )
2026-07-15 12:08:10 -07:00
admin and GitHub
bb182efc3e
Add dormant tutorial end-turn warning support ( #8608 )
2026-07-15 11:57:29 -07:00
admin and GitHub
3a04d865b6
Add OAuth login to text client ( #8610 )
2026-07-15 11:56:42 -07:00
admin and GitHub
f2f81d1cda
Add tutorial unused-hero warning protocol ( #8607 )
2026-07-15 11:54:11 -07:00
admin and GitHub
72dc8ba9fb
Fix command title vertical centering ( #8605 )
2026-07-15 11:38:51 -07:00
admin and GitHub
7adc38fe12
Report and isolate game loading failures ( #8604 )
2026-07-15 11:35:19 -07:00
admin and GitHub
67dbf928d6
Isolate running game serialization failures ( #8603 )
2026-07-15 11:26:58 -07:00
admin and GitHub
efad456bef
Add tutorial dialogue for duel outcomes ( #8601 )
...
* Add tutorial dialogue for duel outcomes
* Distinguish lost and inconclusive duels
* Simplify duel outcome consequences
2026-07-15 11:21:18 -07:00
admin and GitHub
9ebc517c9f
Reject unauthenticated game requests ( #8602 )
...
* Preserve authentication context for game streams
* Reject unauthenticated game requests
2026-07-15 11:19:11 -07:00
admin and GitHub
49020af5e9
Serialize unit selector touch targets ( #8600 )
2026-07-15 11:04:15 -07:00
admin and GitHub
e5e5dd9fdc
Serialize March touch targets ( #8598 )
...
* Serialize March touch targets
* Preserve March slider handle aspect
2026-07-15 10:56:25 -07:00
admin and GitHub
0dd780fc63
Add tutorial attack readiness guidance ( #8599 )
2026-07-15 10:53:39 -07:00
admin and GitHub
ae4c441427
Clarify province abandonment before tutorial march ( #8597 )
2026-07-15 10:38:06 -07:00
admin and GitHub
f01a2ee378
Show game over state in text client ( #8595 )
2026-07-15 10:34:49 -07:00
admin and GitHub
e4901b6414
Clarify Retreat and Flee outcomes ( #8596 )
2026-07-15 10:31:51 -07:00
admin and GitHub
f0b2fd5f5e
Add attack preparation tutorial sequence ( #8591 )
...
* Add attack preparation tutorial sequence
* Emphasize hiring troops in attack tutorial
* Recommend Champions for troop training
2026-07-15 10:27:46 -07:00
admin and GitHub
a28a0ef8d5
Serialize Battle Aftermath touch targets ( #8594 )
2026-07-15 10:26:22 -07:00
admin and GitHub
88ff742bb1
Serialize Attack Decision touch targets ( #8593 )
2026-07-15 10:21:12 -07:00
admin and GitHub
d549c0642b
Prevent duplicate gRPC stream closure ( #8592 )
2026-07-15 10:19:39 -07:00
admin and GitHub
00c677d12a
Serialize Improve selector touch targets ( #8590 )
2026-07-15 10:15:06 -07:00
admin and GitHub
6c47019e8e
Explain hero-only March units ( #8588 )
2026-07-15 09:33:11 -07:00
admin and GitHub
f7932c6681
Serialize organize troops touch targets ( #8589 )
2026-07-15 09:32:44 -07:00
admin and GitHub
13e734d9ae
Serialize popup Next button touch sizes ( #8587 )
2026-07-15 08:28:03 -07:00
admin and GitHub
a4f934105f
Fix text consistency across game rewinds ( #8585 )
2026-07-15 07:59:14 -07:00
admin and GitHub
1300ec9ab9
Serialize Eagle play-area touch targets ( #8586 )
2026-07-15 07:58:36 -07:00
admin and GitHub
bfba377c57
Serialize shared UI touch target sizes ( #8584 )
2026-07-15 07:40:09 -07:00
admin and GitHub
56564c1bee
Prevent disposed connections from reconnecting ( #8583 )
...
* Prevent disposed connections from reconnecting
* Disambiguate lifecycle test timer
2026-07-15 07:32:29 -07:00
admin and GitHub
1728d719a4
Preserve tutorial games across Eagle deploys ( #8578 )
...
* Restore tutorial battle config after deploy
* Invalidate warmed game index after deploy
2026-07-15 07:31:55 -07:00
admin and GitHub
3314ef191f
Show valid trade command payloads ( #8580 )
2026-07-15 07:17:05 -07:00
admin and GitHub
1fbd2e8438
Balance command panel header layout ( #8581 )
2026-07-15 07:16:40 -07:00
admin and GitHub
7f50b61419
Rewire status UI after connection replacement ( #8579 )
2026-07-15 07:04:55 -07:00
admin and GitHub
c7dea02861
Defer strategic tutorial dialogue during battles ( #8572 )
2026-07-15 06:54:50 -07:00
admin and GitHub
afd8028665
Report malformed command protos as command errors ( #8577 )
2026-07-15 06:53:41 -07:00
admin and GitHub
2263977668
Preserve pending tutorial dialogue on reconnect ( #8574 )
...
* Preserve pending tutorial dialogue on reconnect
* Fix hero departure regression test calls
* Reset tutorial state when switching games
2026-07-15 06:52:59 -07:00
admin and GitHub
4cfec68ef8
Fix stale tutorial battle reinforcements ( #8576 )
...
* Fix stale tutorial battle reinforcements
* Limit fix to future tutorial battles
2026-07-15 06:40:23 -07:00
admin and GitHub
432276f550
Show attack decision payloads in text client ( #8575 )
...
* Show attack decision command payloads
* Expand complex command templates
2026-07-15 05:31:17 -07:00
admin and GitHub
ef179e67ef
Improve organize troops text client template ( #8573 )
2026-07-14 22:28:59 -07:00
admin and GitHub
7ee9fbb8da
Recommend tutorial battle starting positions ( #8571 )
2026-07-14 21:48:25 -07:00
admin and GitHub
3d46bee7dd
Prevent game loading lock inversion ( #8570 )
2026-07-14 21:39:14 -07:00
admin and GitHub
c6dc5477f5
Remove client-driven tutorial content ( #8569 )
2026-07-14 21:38:34 -07:00
admin and GitHub
ab7499ca7a
Migrate remaining strategic tutorial dialogue to server ( #8564 )
...
* Migrate remaining strategic tutorial dialogue
* Restore province replacement in tutorial dialogue
2026-07-14 19:08:44 -07:00
admin and GitHub
7d95c81a00
Resolve province tutorial replacements in text client ( #8566 )
2026-07-14 18:38:39 -07:00
admin and GitHub
e523ebf96e
Resolve province tutorial replacements in Unity ( #8568 )
2026-07-14 18:38:13 -07:00
admin and GitHub
b740e1ad59
Refresh same-token strategic updates ( #8567 )
2026-07-14 17:01:44 -07:00
admin and GitHub
3a612426f6
Add province tutorial replacement schema ( #8565 )
2026-07-14 16:46:00 -07:00
admin and GitHub
452d0cac5a
Show under attack alert in command panel ( #8563 )
2026-07-14 15:08:04 -07:00
admin and GitHub
bdb7b324c4
Use layout groups for command panel ( #8562 )
2026-07-14 14:53:38 -07:00
admin and GitHub
145f7e9f9c
Prepare game schema before client text ( #8561 )
2026-07-14 14:22:20 -07:00
admin and GitHub
09e5f4801d
Explain Shardok command mechanics ( #8560 )
2026-07-14 14:20:55 -07:00
admin and GitHub
2aa5fa181a
Use recommended Shardok starting positions ( #8557 )
...
* Use recommended Shardok starting positions
* Snapshot reserves before applying recommendations
2026-07-14 14:20:16 -07:00
admin and GitHub
f438c4bbe2
Expose recommended Shardok placements ( #8559 )
2026-07-14 14:19:44 -07:00
admin and GitHub
66ecc25075
Add Shardok map queries to text client ( #8558 )
2026-07-14 14:15:20 -07:00
admin and GitHub
562d32d296
Recommend Shardok starting positions ( #8556 )
...
* Recommend Shardok starting positions
* Require explicit AI time limits
2026-07-14 14:09:03 -07:00
admin and GitHub
bdf9b09b26
Persist creation history in one batch ( #8551 )
2026-07-14 13:37:29 -07:00
admin and GitHub
d2559ff67c
Show tactical conditions in text client ( #8555 )
2026-07-14 13:36:51 -07:00
admin and GitHub
88433fbc18
Batch decision logging off the game thread ( #8548 )
2026-07-14 13:36:27 -07:00
admin and GitHub
9426488913
Use server-driven tactical tutorial dialogue ( #8554 )
2026-07-14 13:35:35 -07:00
admin and GitHub
81395a9467
Document Holy Wave mechanics ( #8553 )
2026-07-14 13:15:10 -07:00
admin and GitHub
fb4e0c1bac
Validate tactical tutorial dialogues before delivery ( #8552 )
2026-07-14 11:12:44 -07:00
admin and GitHub
94b273ff60
Validate tutorial dialogue references before delivery ( #8544 )
...
* Validate tutorial dialogue references before delivery
* Allow supported tactical tutorial focus
2026-07-14 10:54:12 -07:00
admin and GitHub
b179e250dd
Render tactical tutorial dialogue in text client ( #8550 )
2026-07-14 10:51:54 -07:00
admin and GitHub
b3e35b60c0
Dispose replaced game model updater ( #8545 )
2026-07-14 10:47:05 -07:00
admin and GitHub
3a0fa9e59c
Instrument AI command phases ( #8547 )
2026-07-14 10:42:13 -07:00
admin and GitHub
cdf7c5649b
Serve tactical tutorial dialogue ( #8549 )
2026-07-14 10:40:27 -07:00
admin and GitHub
743737555e
Test tutorial server dialogue queue behavior ( #8543 )
2026-07-14 10:38:28 -07:00
admin and GitHub
94f2366af3
Reuse AI command availability snapshot ( #8546 )
2026-07-14 10:36:25 -07:00
admin and GitHub
5d4399cad6
Prefer server copies of tutorial dialogue ( #8518 )
...
* Prefer server copies of tutorial dialogue
* Preserve tutorial dialogue model during battle transition
* Retry tutorial dialogue when dependencies arrive
* Pass tutorial model directly to dialogue manager
* Ignore stale game model callbacks
* Ignore incomplete tutorial game identity
* Initialize provisional model game ID
* Persist new game histories with their game ID
* Revert "Persist new game histories with their game ID"
This reverts commit e23610a7c3152b4f4cb5623f1c31b60d1ad23756.
* Remove redundant dialogue text listeners
2026-07-14 09:46:06 -07:00
admin and GitHub
011562a2d6
Avoid Postgres waits during Shardok reconnects ( #8542 )
2026-07-14 09:44:04 -07:00
admin and GitHub
781c7a8c3d
Dispatch initial LLM requests asynchronously ( #8541 )
2026-07-14 09:26:33 -07:00
admin and GitHub
bce1ddaf81
Persist new game histories with their game ID ( #8540 )
2026-07-14 08:39:30 -07:00
admin and GitHub
d734c591a8
Clarify mixed-border AI decision reasons ( #8539 )
2026-07-14 08:34:45 -07:00
admin and GitHub
c5aca2666c
Tune AI Rest priority for hero depth ( #8537 )
...
* Tune AI rest priority for hero depth
* Raise shallow AI rest threshold
* Consider feast for RestProvince quests
2026-07-14 08:08:42 -07:00
admin and GitHub
6e261ef7b5
Omit unrestricted client text visibility rows ( #8538 )
2026-07-14 08:02:51 -07:00
admin and GitHub
71240cd9ed
Keep one PostgreSQL connection warm ( #8536 )
2026-07-14 07:05:48 -07:00
admin and GitHub
15d7d30ccf
Defer schema pool refill after game creation ( #8533 )
2026-07-14 06:37:21 -07:00
admin and GitHub
f52d54b7c2
Sync Xcode before TestFlight Unity builds ( #8534 )
2026-07-14 06:35:58 -07:00
6314d3e4e3
Fix water crossing flee scoring ( #8527 )
...
* Fix water crossing flee scoring
* Strengthen water crossing creator penalty
* Score crossing creators on one saturating distance scale
Replace the flat unavailable-creator penalty with a single loop over
every crossing-capable unit. Unavailable (fled/captured/destroyed) and
unplaced creators sit at the max distance sentinel, and live distances
(including IMPOSSIBLE) are clamped to it, so losing a crossing creator
can never score better than any placed position. This also removes the
formula discontinuity between the creator-alive and creator-lost
branches that the flee transition crossed.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
* Name water crossing distance sentinel
---------
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-07-13 21:37:41 -07:00
admin and GitHub
0e126faee2
Move navigation touch sizing into prefabs ( #8529 )
...
* Move navigation touch sizing into prefabs
* Increase Chronicle dismiss touch height
2026-07-13 21:10:10 -07:00
admin and GitHub
763ab63860
Preserve chronicle history on rejoin ( #8531 )
2026-07-13 18:18:08 -07:00
admin and GitHub
38a15fdf9f
Enable PostgreSQL batched insert rewriting ( #8530 )
2026-07-13 15:11:34 -07:00
admin and GitHub
b0446d99e4
Move command panel touch sizing into prefabs ( #8528 )
2026-07-13 14:32:26 -07:00
admin and GitHub
b155494b4d
Move Manage Prisoners touch sizing into prefab ( #8459 )
2026-07-13 14:19:51 -07:00
admin and GitHub
04a51c9fb6
Cap leader relocation marches ( #8524 )
2026-07-13 14:13:51 -07:00
admin and GitHub
ee5cf07db3
Reserve incoming leader destinations ( #8523 )
2026-07-13 14:13:15 -07:00
admin and GitHub
5c4470b090
Allow left info panels to shrink for alerts ( #8467 )
...
* Allow left info panels to shrink for alerts
* Resize left panels only during attacks
* Preserve panel height under attack
2026-07-13 14:10:32 -07:00
admin and GitHub
025bcbbff6
Instrument create-game phases in JFR ( #8521 )
2026-07-13 08:56:33 -07:00
admin and GitHub
c67dc76ed5
Upgrade LLVM toolchain to 22.1.8 ( #8520 )
2026-07-13 08:40:23 -07:00
admin and GitHub
55c55adf8a
Automate Bazel and LLVM Renovate updates ( #8519 )
2026-07-13 08:23:23 -07:00
admin and GitHub
2c3135a493
Render server-driven tutorial dialogue in Unity ( #8487 )
...
* Render server-driven tutorial dialogue in Unity
* Keep startup dialogue fallback available
* Revert "Keep startup dialogue fallback available"
This reverts commit 40ca3b35b3f29c29428f8a08b899ebda13f50dc0.
* Backfill dialogue text for tutorial games
* Restore tutorial runtime for split scenes
2026-07-13 07:38:15 -07:00
admin and GitHub
b3b69474e4
Preprovision PostgreSQL game schemas ( #8515 )
2026-07-13 07:37:37 -07:00