Sandbox table — демо-стол (realtime, §13)
Flow: session.init → create room → subscribe/join/ready/start → sandbox.move_object / sandbox.end_session (или spectateJoin для публичного матча)
Step 0: connect socket
connection: disconnected
foundation: idle
room: -
match: -
module: sandbox-table
game: not started
match mode (create): casual
No active match | moves: 0 | actor: -
Чат комнаты будет доступен после входа и подписки на комнату.