fix(multiplayer): enforce assignment opaque ids

This commit is contained in:
Josh Creek
2026-09-01 22:40:43 +01:00
parent dac414274e
commit 2bdf876b47
5 changed files with 23 additions and 5 deletions
+2
View File
@@ -1589,6 +1589,8 @@ Ranked profile projection now rejects fractional `ranked_games` values instead o
Ranked profile projection now enforces the OpenAPI tier enum, rejecting unknown tier labels before they reach the HUD.
Assignment projections and assignment-changed events now enforce the published opaque-ID shape for match, server, and player identifiers; short or unsafe IDs fail closed.
Signed MatchNet claims now also require exact JSON string/integer types for every identity, protocol, expiry, slot, team, and generation field; string-number coercion is rejected before canonical signature verification.
Presentation progress: a shared `Game/themes/cosmic_clash_theme.tres` now gives the menu, lobby, matchmaking, and settings surfaces consistent button, input, option, and label styling. The custom-font portion of `TODO.md` remains open until a distributable font asset is selected.