daniel156161
f14d780f29
feat: add live replays and PostgreSQL maintenance tools
...
Build and Push Docker Container / build-and-push (push) Successful in 7m53s
- Stream compact live replay updates across local and clustered dashboards.
- Render responsive snake bodies as SVG paths with aligned custom icons.
- Add cache-busted assets, replay fallback routes, and live-follow playback.
- Support PostgreSQL benchmark sampling and idempotent SQLite migration.
- Add dry-run cleanup for old low-quality PostgreSQL replay payloads.
- Reward safe perimeter lanes and bump Prism to version 1.5.0.
- Add backend, migration, dashboard, and perimeter regression coverage.
2026-08-02 00:50:46 +02:00
daniel156161
341bb27278
change that GameplayDatabase can have different backends, sqlite and postgresql with a Template example backend
2026-04-08 14:28:39 +02:00
daniel156161
a62501cf22
remove stroing of the Game Board State into Redis or Memory
2026-04-08 08:36:54 +02:00
daniel156161
abed259129
cleanup server extra variables that are only getting used into server.py
2026-04-07 00:23:23 +02:00
daniel156161
1b8fa67059
use snake class name and version from GameBoard and remove snake type and version from GameplayTrackingService init
2026-04-06 23:24:37 +02:00
daniel156161
59d01428a9
move side templates and static files into root folder structure to not have it in the code folder
Build and Push Docker Container / build-and-push (push) Failing after 14m3s
2026-04-06 19:35:53 +02:00
daniel156161
3da10189b7
move snake config read functions into battlesnake template and use TemplateSnake as default Version of Snakes
Build and Push Docker Container / build-and-push (push) Failing after 13m9s
2026-04-06 19:24:45 +02:00
daniel156161
01343472df
move all Databases into the database folder to not have storeage and Database when they are all Databases
2026-04-06 16:24:28 +02:00
daniel156161
5328252cf1
move snake builder into game_runtime.py to not pass it around very where
2026-04-06 05:27:37 +02:00
daniel156161
98be2fe6fe
move Server code into more services and use them into blueprints or server
2026-04-06 04:20:07 +02:00
daniel156161
30eb17bb83
reuse the code from quart_common.web.env to import env_bool and env_int into all classes that are useing this functions
2026-04-06 03:33:22 +02:00
daniel156161
d89986dba9
move route code out of server into own blueprints and cleanup the codebase
2026-04-06 03:10:49 +02:00
daniel156161
0ebb04f0a2
change websocket and game publish to redis backend with pub sub
Build and Push Docker Container / build-and-push (push) Successful in 1m59s
2026-04-06 02:05:56 +02:00
daniel156161
097a7f295a
update dashboards over websocket and remove database path from GameplayDatabase output
Build and Push Docker Container / build-and-push (push) Failing after 13m18s
2026-04-06 01:49:26 +02:00
daniel156161
4626a491f5
update Dashboard with new keyboard bindings fix errors with hazards, set win or loss on stale games (older) and push new games real time over the websocket connection when they are finished
Build and Push Docker Container / build-and-push (push) Failing after 12m39s
2026-04-06 00:36:06 +02:00
daniel156161
2d603a3b0b
add better dashboard with full snake game board
2026-04-05 19:57:43 +02:00
daniel156161
4151810f1b
add GameplayDatabase database with dashboard
2026-04-05 16:48:12 +02:00
daniel156161
eb290dd634
rework folder structure complitly
2026-04-04 23:01:34 +02:00
daniel156161
043d7654f9
rename Metric Classes and change Folder Structure
2026-04-04 22:14:14 +02:00
daniel156161
a38a600bdc
rename ServerMetricsCollector to MetricsCollector
2026-04-04 21:29:40 +02:00
daniel156161
9d33c6fded
cleanup all worker stats when starting up servers
2026-04-04 21:28:26 +02:00
daniel156161
5997a1f6c1
only update stuck game metric when game state backend is not redis
Build and Push Docker Container / build-and-push (push) Successful in 57s
2026-04-04 15:33:07 +02:00
daniel156161
561527a21b
correct end game active metric count
Build and Push Docker Container / build-and-push (push) Successful in 52s
2026-04-04 15:23:56 +02:00
daniel156161
47051a6068
make Metrics Collector Class and auto send to redis when change happend
Build and Push Docker Container / build-and-push (push) Successful in 1m0s
2026-04-04 14:52:21 +02:00
daniel156161
c3da096320
allow to send metrics to memory or redis
Build and Push Docker Container / build-and-push (push) Successful in 52s
2026-04-04 14:21:54 +02:00
daniel156161
65128b25c2
allow to disable self.running_games as L1 Cache into Worker when useing Redis Backend
Build and Push Docker Container / build-and-push (push) Successful in 54s
2026-04-04 12:53:31 +02:00
daniel156161
a1c4a4b68d
create MemoryGameBoardStore Class and rework Building of Game Board Storage
2026-04-04 12:34:00 +02:00
daniel156161
4547e3443b
add redis backend for storage of gameboards
2026-04-04 12:07:05 +02:00
daniel156161
c6ebb5834b
auto remove stuck games
Build and Push Docker Container / build-and-push (push) Successful in 51s
2026-04-04 10:23:12 +02:00
daniel156161
dbcf9cadaf
add more metrics data
Build and Push Docker Container / build-and-push (push) Successful in 1m2s
2026-04-04 09:58:11 +02:00
daniel156161
eace1872d7
move snake builder into __init__ of snakes file and use it into server class
2026-04-03 20:11:46 +02:00
daniel156161
0a3db6ba57
add versions to snakes and read it in server class
2026-04-03 19:57:55 +02:00
daniel156161
19e4aee454
rework logging and add metrics and prometheus metrics
2026-04-03 18:26:31 +02:00
daniel156161
37de34cc5e
update to store and curate data correctly
2026-04-03 15:43:19 +02:00
daniel156161
6e74b5fb57
change from sync to async and from flask to quart
Build and Push Docker Container / build-and-push (push) Successful in 1m35s
2026-01-06 13:36:43 +01:00
daniel156161
61721a7eb6
change request endpoints to async
2025-05-27 13:28:08 +02:00
daniel156161
58bbbf3cbd
allow to return cleaned up values
2025-05-15 09:55:12 +02:00
daniel156161
4d515f0784
init class when cleaning up
2025-04-28 17:06:49 +02:00
daniel156161
8424c324e8
fix function nameing
2025-04-28 16:14:04 +02:00
daniel156161
c5c2652f3a
add cleanup code for storage classes
2025-04-28 13:36:34 +02:00
daniel156161
0768e7f254
not check tls certificat when connection to server by default
2025-03-08 12:13:46 +01:00
daniel156161
31d2e7ea55
add code to reconnect to database if connection is gettring broken or database getting a reboot
2025-03-08 11:32:19 +01:00
daniel156161
b57ae5eab2
store all games and set standard when gameboard map is empty
2024-05-07 19:00:33 +02:00
daniel156161
5b8bf0da31
move storage classes into server folder and fix error in localStorage when winner_snake is none
2024-05-06 09:13:43 +02:00
daniel156161
7dd46dd72b
add env argument for StorageLoader to load correct module and use it when store game history is enabled
2024-05-05 22:12:14 +02:00
daniel156161
83bcf4f194
make new LocalStorage Class and move save functions into it
2024-05-05 17:02:18 +02:00
daniel156161
db3a353090
change over to new Game Board class from old Game Storage class
2024-04-18 23:41:53 +02:00
daniel156161
5743f5c111
print moves only if debug is on and better error handeling if running game into found in dict
2024-04-18 08:23:10 +02:00
daniel156161
4620ee31eb
split class name and print out with spaces
2024-04-17 20:09:34 +02:00
daniel156161
9103e3e139
store history into data folder
2024-04-17 19:57:39 +02:00