fix(multiplayer): project complete queue lifecycle

This commit is contained in:
Josh Creek
2026-09-01 21:55:19 +01:00
parent 6ac2d0fbb1
commit 30a5a89164
5 changed files with 32 additions and 4 deletions
@@ -49,6 +49,10 @@ func test_websocket_event_validation_requires_contract_specific_fields() -> void
var accepted := envelope.duplicate()
accepted["state"] = "ACCEPTED"
assert_true(ControlPlaneClient._valid_websocket_event(accepted), "authoritative accepted queue event is accepted")
for phase in ["ASSIGNED", "RESULT_PENDING", "COMPLETED"]:
var lifecycle := envelope.duplicate()
lifecycle["state"] = phase
assert_true(ControlPlaneClient._valid_websocket_event(lifecycle), "post-match queue event is accepted: " + phase)
var bad_state := envelope.duplicate()
bad_state["state"] = "SECRET"
assert_true(not ControlPlaneClient._valid_websocket_event(bad_state), "unknown state event is rejected")