🚀 Features
-
Shop analytics
-
Add reset all players’ currency action to game servers
-
Add player and POG deletion functionality
-
Player name history tracking
-
Enhance module-updated event with detailed change metadata
-
Add Discord message update and delete endpoints
-
Discord role synchronization
-
Add quality tracking to inventory items
🐛 Bug Fixes
- Fix variable recreation after expiration
- Fix duplicate inventory data in player search responses
- Add missing data wrapper in game event documentation examples
- Optimize KPI data generation
- Add explicit LIMIT 1 to inventory snapshot query to prevent fetching 150k rows
- Allow setting player currency to 0
- Display error messages for inactive/maintenance domains on login
- Fixed player action menus being cut off when clicking on players at the bottom of the player list
- Add composite index to playerIpHistory for query performance
- Fix several issues with Discord role sync
- Fix naming of player related IDs in tracking endpoints
- Fix frontend validation for discord IDs
- Discord role IDs can be up to 20 chars
- Include author and supportedGames fields in module exports
- Add missing action buttons to module table view
🧰 Maintenance
- Prevent tracking of auto-generated OpenAPI metadata files
- Remove inventory cache debug log lines
- Add health check for mock game server Takaro connection
- Eliminate circular dependency between lib-queues and app-api
- Add centralized axios HTTP client with sane error handling
- Add transaction context tracking with AsyncLocalStorage
- Add domain ID logging to integration test failures