{
  "partida": {
    "id": 200,
    "room_code": 62649,
    "max_players": 4,
    "created_at_utc": "2026-07-22T16:23:42.1055145Z",
    "configured_at_utc": "2026-07-22T16:23:43.3453966Z",
    "started_at_utc": null,
    "finished_at_utc": "2026-07-22T16:31:39.9267898Z",
    "doubles": 0,
    "rounds_json": "[\"ultima\",\"subir\",\"bajar\",\"subastado\"]",
    "final_state_json": "{\"roomCode\":62649,\"currentRoundIndex\":0,\"roundType\":\"\",\"roundCards\":0,\"dealerName\":\"\",\"turnName\":\"\",\"started\":false,\"finished\":false,\"roundsConfigured\":[\"ultima\",\"subir\",\"bajar\",\"subastado\"],\"doubles\":false,\"bidders\":[],\"subastadoBidders\":[],\"disconnectedPlayers\":[],\"trump\":null,\"subastado\":null,\"totals\":{\"bids\":0,\"made\":0},\"players\":[],\"table\":[]}",
    "bot_version": "v2"
  },
  "jugadores": [],
  "rondas": [],
  "manos": [],
  "puntuaciones": [],
  "bazas": [],
  "cartas": [],
  "eventos": [
    {
      "id": 33896,
      "room_session_id": 200,
      "created_at_utc": "2026-07-22T16:23:42.5586748Z",
      "event_type": "room_created",
      "player_name": null,
      "round_index": 0,
      "round_type": null,
      "round_cards": null,
      "dealer_name": null,
      "turn_player_name": null,
      "payload_json": "{\"roomCode\":62649,\"maxPlayers\":4}",
      "state_json": "{\"roomCode\":62649,\"currentRoundIndex\":0,\"roundType\":\"\",\"roundCards\":0,\"dealerName\":\"\",\"turnName\":\"\",\"started\":false,\"finished\":false,\"roundsConfigured\":[],\"doubles\":false,\"bidders\":[],\"subastadoBidders\":[],\"disconnectedPlayers\":[],\"trump\":null,\"subastado\":null,\"totals\":{\"bids\":0,\"made\":0},\"players\":[],\"table\":[]}",
      "before_state_json": null,
      "after_state_json": null
    },
    {
      "id": 33897,
      "room_session_id": 200,
      "created_at_utc": "2026-07-22T16:23:43.7029740Z",
      "event_type": "room_configured",
      "player_name": null,
      "round_index": 0,
      "round_type": null,
      "round_cards": null,
      "dealer_name": null,
      "turn_player_name": null,
      "payload_json": "{\"roomCode\":62649,\"dobles\":false,\"rounds\":[\"ultima\",\"subir\",\"bajar\",\"subastado\"]}",
      "state_json": "{\"roomCode\":62649,\"currentRoundIndex\":0,\"roundType\":\"\",\"roundCards\":0,\"dealerName\":\"\",\"turnName\":\"\",\"started\":false,\"finished\":false,\"roundsConfigured\":[\"ultima\",\"subir\",\"bajar\",\"subastado\"],\"doubles\":false,\"bidders\":[],\"subastadoBidders\":[],\"disconnectedPlayers\":[],\"trump\":null,\"subastado\":null,\"totals\":{\"bids\":0,\"made\":0},\"players\":[],\"table\":[]}",
      "before_state_json": null,
      "after_state_json": null
    },
    {
      "id": 33898,
      "room_session_id": 200,
      "created_at_utc": "2026-07-22T16:23:44.2144157Z",
      "event_type": "player_joined",
      "player_name": "LongVoiceA",
      "round_index": 0,
      "round_type": null,
      "round_cards": null,
      "dealer_name": null,
      "turn_player_name": null,
      "payload_json": "{\"connectedPlayers\":1,\"maxPlayers\":4,\"shouldStartGame\":false}",
      "state_json": "{\"roomCode\":62649,\"currentRoundIndex\":0,\"roundType\":\"\",\"roundCards\":0,\"dealerName\":\"\",\"turnName\":\"\",\"started\":false,\"finished\":false,\"roundsConfigured\":[\"ultima\",\"subir\",\"bajar\",\"subastado\"],\"doubles\":false,\"bidders\":[],\"subastadoBidders\":[],\"disconnectedPlayers\":[],\"trump\":null,\"subastado\":null,\"totals\":{\"bids\":0,\"made\":0},\"players\":[{\"name\":\"LongVoiceA\",\"id\":\"785abc80-3504-45f9-bbb5-369008373c83\",\"bid\":0,\"made\":0,\"points\":0,\"variation\":0,\"cardCount\":0,\"hand\":[]}],\"table\":[]}",
      "before_state_json": null,
      "after_state_json": null
    },
    {
      "id": 33899,
      "room_session_id": 200,
      "created_at_utc": "2026-07-22T16:23:44.6416566Z",
      "event_type": "player_joined",
      "player_name": "LongVoiceB",
      "round_index": 0,
      "round_type": null,
      "round_cards": null,
      "dealer_name": "LongVoiceB",
      "turn_player_name": null,
      "payload_json": "{\"connectedPlayers\":2,\"maxPlayers\":4,\"shouldStartGame\":false}",
      "state_json": "{\"roomCode\":62649,\"currentRoundIndex\":0,\"roundType\":\"\",\"roundCards\":0,\"dealerName\":\"LongVoiceB\",\"turnName\":\"\",\"started\":false,\"finished\":false,\"roundsConfigured\":[\"ultima\",\"subir\",\"bajar\",\"subastado\"],\"doubles\":false,\"bidders\":[],\"subastadoBidders\":[],\"disconnectedPlayers\":[],\"trump\":null,\"subastado\":null,\"totals\":{\"bids\":0,\"made\":0},\"players\":[{\"name\":\"LongVoiceA\",\"id\":\"785abc80-3504-45f9-bbb5-369008373c83\",\"bid\":0,\"made\":0,\"points\":0,\"variation\":0,\"cardCount\":0,\"hand\":[]},{\"name\":\"LongVoiceB\",\"id\":\"a84b7062-f114-490b-b4d0-4e4d15fe3d69\",\"bid\":0,\"made\":0,\"points\":0,\"variation\":0,\"cardCount\":0,\"hand\":[]}],\"table\":[]}",
      "before_state_json": null,
      "after_state_json": null
    },
    {
      "id": 33900,
      "room_session_id": 200,
      "created_at_utc": "2026-07-22T16:23:46.6088575Z",
      "event_type": "player_disconnected",
      "player_name": "LongVoiceA",
      "round_index": 0,
      "round_type": null,
      "round_cards": null,
      "dealer_name": null,
      "turn_player_name": null,
      "payload_json": "{\"connectedPlayers\":1,\"maxPlayers\":4,\"partidaIniciada\":false}",
      "state_json": "{\"roomCode\":62649,\"currentRoundIndex\":0,\"roundType\":\"\",\"roundCards\":0,\"dealerName\":\"\",\"turnName\":\"\",\"started\":false,\"finished\":false,\"roundsConfigured\":[\"ultima\",\"subir\",\"bajar\",\"subastado\"],\"doubles\":false,\"bidders\":[],\"subastadoBidders\":[],\"disconnectedPlayers\":[],\"trump\":null,\"subastado\":null,\"totals\":{\"bids\":0,\"made\":0},\"players\":[{\"name\":\"LongVoiceB\",\"id\":\"a84b7062-f114-490b-b4d0-4e4d15fe3d69\",\"bid\":0,\"made\":0,\"points\":0,\"variation\":0,\"cardCount\":0,\"hand\":[]}],\"table\":[]}",
      "before_state_json": null,
      "after_state_json": null
    },
    {
      "id": 33901,
      "room_session_id": 200,
      "created_at_utc": "2026-07-22T16:23:47.0427709Z",
      "event_type": "player_disconnected",
      "player_name": "LongVoiceB",
      "round_index": 0,
      "round_type": null,
      "round_cards": null,
      "dealer_name": null,
      "turn_player_name": null,
      "payload_json": "{\"connectedPlayers\":0,\"maxPlayers\":4,\"partidaIniciada\":false}",
      "state_json": "{\"roomCode\":62649,\"currentRoundIndex\":0,\"roundType\":\"\",\"roundCards\":0,\"dealerName\":\"\",\"turnName\":\"\",\"started\":false,\"finished\":false,\"roundsConfigured\":[\"ultima\",\"subir\",\"bajar\",\"subastado\"],\"doubles\":false,\"bidders\":[],\"subastadoBidders\":[],\"disconnectedPlayers\":[],\"trump\":null,\"subastado\":null,\"totals\":{\"bids\":0,\"made\":0},\"players\":[],\"table\":[]}",
      "before_state_json": null,
      "after_state_json": null
    },
    {
      "id": 33916,
      "room_session_id": 200,
      "created_at_utc": "2026-07-22T16:31:39.6102771Z",
      "event_type": "admin_operation",
      "player_name": null,
      "round_index": 0,
      "round_type": null,
      "round_cards": null,
      "dealer_name": null,
      "turn_player_name": null,
      "payload_json": "{\"operation\":\"close_room\",\"result\":\"voice_test_cleanup\",\"utc\":\"2026-07-22T16:31:39.6101861Z\"}",
      "state_json": "{\"roomCode\":62649,\"currentRoundIndex\":0,\"roundType\":\"\",\"roundCards\":0,\"dealerName\":\"\",\"turnName\":\"\",\"started\":false,\"finished\":false,\"roundsConfigured\":[\"ultima\",\"subir\",\"bajar\",\"subastado\"],\"doubles\":false,\"bidders\":[],\"subastadoBidders\":[],\"disconnectedPlayers\":[],\"trump\":null,\"subastado\":null,\"totals\":{\"bids\":0,\"made\":0},\"players\":[],\"table\":[]}",
      "before_state_json": null,
      "after_state_json": null
    },
    {
      "id": 33917,
      "room_session_id": 200,
      "created_at_utc": "2026-07-22T16:31:40.1875955Z",
      "event_type": "room_removed",
      "player_name": null,
      "round_index": 0,
      "round_type": null,
      "round_cards": null,
      "dealer_name": null,
      "turn_player_name": null,
      "payload_json": "{\"reason\":\"cierre administrativo: voice_test_cleanup\"}",
      "state_json": "{\"roomCode\":62649,\"currentRoundIndex\":0,\"roundType\":\"\",\"roundCards\":0,\"dealerName\":\"\",\"turnName\":\"\",\"started\":false,\"finished\":false,\"roundsConfigured\":[\"ultima\",\"subir\",\"bajar\",\"subastado\"],\"doubles\":false,\"bidders\":[],\"subastadoBidders\":[],\"disconnectedPlayers\":[],\"trump\":null,\"subastado\":null,\"totals\":{\"bids\":0,\"made\":0},\"players\":[],\"table\":[]}",
      "before_state_json": null,
      "after_state_json": null
    }
  ]
}