{"log_version": "1.0", "battle_id": "b_0b44a38935", "group_id": "1bc3e9a1e250", "started_at": "2026-07-25T15:48:21Z", "finished_at": "2026-07-25T15:49:20Z", "duration_seconds": 59.069, "result": {"status": "P2_WIN", "winner_user_id": 2000, "loser_user_id": 1000}, "models": {"p1": {"name": "human", "kind": "human", "is_human": true}, "p2": {"name": "extra-lr-v5-postB-preV5-u29250", "kind": "v5", "is_human": false}}, "decks": {"p1": [49, 32, 14, 39, 21, 48, 38, 27, 10], "p2": [3, 36, 21, 18, 47, 27, 13, 10, 8]}, "actions": [{"turn": 1, "actor": 2000, "kind": "play_card", "action_dict": {"type": "play_card", "hand_index": 0, "target_id": null, "position": 0}, "timestamp_ms": 5004603796, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 1, "p1_hp": 32, "p2_hp": 39, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 0, "p2_max_mana": 1, "p1_board_count": 0, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 2, "actor": 2000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5004604435, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 2, "p1_hp": 32, "p2_hp": 39, "p1_mana": 1, "p2_mana": 0, "p1_max_mana": 1, "p2_max_mana": 1, "p1_board_count": 0, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 2, "actor": 1000, "kind": "play_card", "action_dict": {"type": "play_card", "card_ref": 0, "board_position": 0, "target_id": null, "target_is_hero": false}, "timestamp_ms": 5004606492, "human_decision_time_ms": 2054, "state_after_summary": {"turn_number": 2, "p1_hp": 32, "p2_hp": 39, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 1, "p2_max_mana": 1, "p1_board_count": 1, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 3, "actor": 1000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5004607371, "human_decision_time_ms": 874, "state_after_summary": {"turn_number": 3, "p1_hp": 32, "p2_hp": 39, "p1_mana": 0, "p2_mana": 2, "p1_max_mana": 1, "p2_max_mana": 2, "p1_board_count": 1, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 3, "actor": 2000, "kind": "play_card", "action_dict": {"type": "play_card", "hand_index": 0, "target_id": "a72841fb-0672-4e5a-84f6-62281c6b66f3", "position": 1}, "timestamp_ms": 5004609422, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 3, "p1_hp": 32, "p2_hp": 39, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 1, "p2_max_mana": 2, "p1_board_count": 1, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 3, "actor": 2000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "527fa816-eb2e-4dc0-bb8d-9654015be055", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5004610150, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 3, "p1_hp": 28, "p2_hp": 39, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 1, "p2_max_mana": 2, "p1_board_count": 1, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 4, "actor": 2000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5004610900, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 4, "p1_hp": 28, "p2_hp": 39, "p1_mana": 2, "p2_mana": 0, "p1_max_mana": 2, "p2_max_mana": 2, "p1_board_count": 1, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 4, "actor": 1000, "kind": "play_card", "action_dict": {"type": "play_card", "card_ref": 1, "board_position": 1, "target_id": null, "target_is_hero": false}, "timestamp_ms": 5004613018, "human_decision_time_ms": 2112, "state_after_summary": {"turn_number": 4, "p1_hp": 28, "p2_hp": 39, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 2, "p2_max_mana": 2, "p1_board_count": 2, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 4, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "52c69f7e-9476-4ab8-bd52-583b613f8c68", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5004615378, "human_decision_time_ms": 2355, "state_after_summary": {"turn_number": 4, "p1_hp": 28, "p2_hp": 36, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 2, "p2_max_mana": 2, "p1_board_count": 2, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 5, "actor": 1000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5004616741, "human_decision_time_ms": 1357, "state_after_summary": {"turn_number": 5, "p1_hp": 28, "p2_hp": 36, "p1_mana": 0, "p2_mana": 3, "p1_max_mana": 2, "p2_max_mana": 3, "p1_board_count": 2, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 5, "actor": 2000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "1b039f4a-3269-49ef-8c99-e0f150ee01ce", "target_id": "5c8145c5-f611-4515-80d5-f0fc8fc52222", "target_is_hero": false}, "timestamp_ms": 5004619040, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 5, "p1_hp": 28, "p2_hp": 34, "p1_mana": 0, "p2_mana": 3, "p1_max_mana": 2, "p2_max_mana": 3, "p1_board_count": 1, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 5, "actor": 2000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "527fa816-eb2e-4dc0-bb8d-9654015be055", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5004619570, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 5, "p1_hp": 24, "p2_hp": 34, "p1_mana": 0, "p2_mana": 3, "p1_max_mana": 2, "p2_max_mana": 3, "p1_board_count": 1, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 6, "actor": 2000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5004620227, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 6, "p1_hp": 24, "p2_hp": 34, "p1_mana": 3, "p2_mana": 3, "p1_max_mana": 3, "p2_max_mana": 3, "p1_board_count": 1, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 6, "actor": 1000, "kind": "play_card", "action_dict": {"type": "play_card", "card_ref": 0, "board_position": 1, "target_id": null, "target_is_hero": false}, "timestamp_ms": 5004622661, "human_decision_time_ms": 2428, "state_after_summary": {"turn_number": 6, "p1_hp": 26, "p2_hp": 34, "p1_mana": 1, "p2_mana": 3, "p1_max_mana": 3, "p2_max_mana": 3, "p1_board_count": 2, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 6, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "52c69f7e-9476-4ab8-bd52-583b613f8c68", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5004625887, "human_decision_time_ms": 3221, "state_after_summary": {"turn_number": 6, "p1_hp": 26, "p2_hp": 31, "p1_mana": 1, "p2_mana": 3, "p1_max_mana": 3, "p2_max_mana": 3, "p1_board_count": 2, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 7, "actor": 1000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5004629182, "human_decision_time_ms": 3288, "state_after_summary": {"turn_number": 7, "p1_hp": 26, "p2_hp": 31, "p1_mana": 1, "p2_mana": 4, "p1_max_mana": 3, "p2_max_mana": 4, "p1_board_count": 2, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 7, "actor": 2000, "kind": "play_card", "action_dict": {"type": "play_card", "hand_index": 3, "target_id": null, "position": null}, "timestamp_ms": 5004631239, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 7, "p1_hp": 26, "p2_hp": 29, "p1_mana": 1, "p2_mana": 0, "p1_max_mana": 3, "p2_max_mana": 4, "p1_board_count": 1, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 7, "actor": 2000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "1b039f4a-3269-49ef-8c99-e0f150ee01ce", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5004631982, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 7, "p1_hp": 23, "p2_hp": 29, "p1_mana": 1, "p2_mana": 0, "p1_max_mana": 3, "p2_max_mana": 4, "p1_board_count": 1, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 7, "actor": 2000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "527fa816-eb2e-4dc0-bb8d-9654015be055", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5004632693, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 7, "p1_hp": 19, "p2_hp": 29, "p1_mana": 1, "p2_mana": 0, "p1_max_mana": 3, "p2_max_mana": 4, "p1_board_count": 1, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 8, "actor": 2000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5004633185, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 8, "p1_hp": 19, "p2_hp": 29, "p1_mana": 4, "p2_mana": 0, "p1_max_mana": 4, "p2_max_mana": 4, "p1_board_count": 1, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 8, "actor": 1000, "kind": "play_card", "action_dict": {"type": "play_card", "card_ref": 2, "board_position": 1, "target_id": null, "target_is_hero": false}, "timestamp_ms": 5004635112, "human_decision_time_ms": 1916, "state_after_summary": {"turn_number": 8, "p1_hp": 19, "p2_hp": 29, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 4, "p2_max_mana": 4, "p1_board_count": 1, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 8, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "23fb75ca-2632-4517-a417-67b85ba270aa", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5004637246, "human_decision_time_ms": 2127, "state_after_summary": {"turn_number": 8, "p1_hp": 19, "p2_hp": 26, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 4, "p2_max_mana": 4, "p1_board_count": 1, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 9, "actor": 1000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5004638508, "human_decision_time_ms": 1256, "state_after_summary": {"turn_number": 9, "p1_hp": 19, "p2_hp": 26, "p1_mana": 0, "p2_mana": 5, "p1_max_mana": 4, "p2_max_mana": 5, "p1_board_count": 1, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 9, "actor": 2000, "kind": "play_card", "action_dict": {"type": "play_card", "hand_index": 1, "target_id": null, "position": 0}, "timestamp_ms": 5004640618, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 9, "p1_hp": 19, "p2_hp": 26, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 4, "p2_max_mana": 5, "p1_board_count": 1, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 10, "actor": 2000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5004641200, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 10, "p1_hp": 19, "p2_hp": 26, "p1_mana": 5, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 5, "p1_board_count": 1, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 10, "actor": 1000, "kind": "play_card", "action_dict": {"type": "play_card", "card_ref": 3, "board_position": 1, "target_id": null, "target_is_hero": false}, "timestamp_ms": 5004643475, "human_decision_time_ms": 2268, "state_after_summary": {"turn_number": 10, "p1_hp": 19, "p2_hp": 26, "p1_mana": 1, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 5, "p1_board_count": 2, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 10, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "5686a6df-30fd-44dd-b4e6-b4de6b708bbd", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5004645341, "human_decision_time_ms": 1859, "state_after_summary": {"turn_number": 10, "p1_hp": 19, "p2_hp": 21, "p1_mana": 1, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 5, "p1_board_count": 2, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 10, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "23fb75ca-2632-4517-a417-67b85ba270aa", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5004646671, "human_decision_time_ms": 1322, "state_after_summary": {"turn_number": 10, "p1_hp": 19, "p2_hp": 18, "p1_mana": 1, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 5, "p1_board_count": 2, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 11, "actor": 1000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5004647977, "human_decision_time_ms": 1300, "state_after_summary": {"turn_number": 11, "p1_hp": 19, "p2_hp": 18, "p1_mana": 1, "p2_mana": 6, "p1_max_mana": 5, "p2_max_mana": 6, "p1_board_count": 2, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 11, "actor": 2000, "kind": "play_card", "action_dict": {"type": "play_card", "hand_index": 0, "target_id": "29178dab-544d-4e4e-954c-b5d2654d017d", "position": 1}, "timestamp_ms": 5004650106, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 11, "p1_hp": 16, "p2_hp": 18, "p1_mana": 1, "p2_mana": 1, "p1_max_mana": 5, "p2_max_mana": 6, "p1_board_count": 2, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 11, "actor": 2000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "dcdbe779-20fc-42b8-9b8a-8b7e01a7bb4b", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5004650786, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 11, "p1_hp": 7, "p2_hp": 18, "p1_mana": 1, "p2_mana": 1, "p1_max_mana": 5, "p2_max_mana": 6, "p1_board_count": 2, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 11, "actor": 2000, "kind": "play_card", "action_dict": {"type": "play_card", "hand_index": 2, "target_id": "29178dab-544d-4e4e-954c-b5d2654d017d", "position": null}, "timestamp_ms": 5004651480, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 11, "p1_hp": 6, "p2_hp": 18, "p1_mana": 1, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 6, "p1_board_count": 2, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 12, "actor": 2000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5004652121, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 12, "p1_hp": 6, "p2_hp": 18, "p1_mana": 6, "p2_mana": 0, "p1_max_mana": 6, "p2_max_mana": 6, "p1_board_count": 2, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 12, "actor": 1000, "kind": "play_card", "action_dict": {"type": "play_card", "card_ref": 3, "board_position": 2, "target_id": null, "target_is_hero": false}, "timestamp_ms": 5004655276, "human_decision_time_ms": 3147, "state_after_summary": {"turn_number": 12, "p1_hp": 6, "p2_hp": 18, "p1_mana": 4, "p2_mana": 0, "p1_max_mana": 6, "p2_max_mana": 6, "p1_board_count": 3, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 12, "actor": 1000, "kind": "play_card", "action_dict": {"type": "play_card", "card_ref": 0, "board_position": 3, "target_id": null, "target_is_hero": false}, "timestamp_ms": 5004657285, "human_decision_time_ms": 2002, "state_after_summary": {"turn_number": 12, "p1_hp": 6, "p2_hp": 18, "p1_mana": 2, "p2_mana": 0, "p1_max_mana": 6, "p2_max_mana": 6, "p1_board_count": 4, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 13, "actor": 1000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5004658130, "human_decision_time_ms": 837, "state_after_summary": {"turn_number": 13, "p1_hp": 6, "p2_hp": 18, "p1_mana": 2, "p2_mana": 7, "p1_max_mana": 6, "p2_max_mana": 7, "p1_board_count": 4, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 13, "actor": 2000, "kind": "play_card", "action_dict": {"type": "play_card", "hand_index": 1, "target_id": null, "position": 2}, "timestamp_ms": 5004660296, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 13, "p1_hp": 6, "p2_hp": 18, "p1_mana": 2, "p2_mana": 0, "p1_max_mana": 6, "p2_max_mana": 7, "p1_board_count": 4, "p2_board_count": 3}, "ok": true, "error": null}, {"turn": 13, "actor": 2000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "dcdbe779-20fc-42b8-9b8a-8b7e01a7bb4b", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5004660996, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 13, "p1_hp": 0, "p2_hp": 18, "p1_mana": 2, "p2_mana": 0, "p1_max_mana": 6, "p2_max_mana": 7, "p1_board_count": 4, "p2_board_count": 3}, "ok": true, "error": null}], "final_state_summary": {"turn_number": 13, "p1_hp": 0, "p2_hp": 18, "p1_mana": 2, "p2_mana": 0, "p1_max_mana": 6, "p2_max_mana": 7, "p1_board_count": 4, "p2_board_count": 3}, "policy_warnings": [], "degraded": false}