{"log_version": "1.0", "battle_id": "b_3b25a2eb2c", "group_id": "d4ef83de846d", "started_at": "2026-07-17T11:32:16Z", "finished_at": "2026-07-17T11:33:06Z", "duration_seconds": 49.869, "result": {"status": "P1_WIN", "winner_user_id": 1000, "loser_user_id": 2000}, "models": {"p1": {"name": "human", "kind": "human", "is_human": true}, "p2": {"name": "extra-lr-v5-postB-preV5-u29250", "kind": "v5", "is_human": false}}, "decks": {"p1": [7, 17, 42, 28, 36, 26, 11, 13, 8], "p2": [49, 38, 20, 33, 37, 44, 11, 10, 12]}, "actions": [{"turn": 1, "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": 4298041652, "human_decision_time_ms": 4913, "state_after_summary": {"turn_number": 1, "p1_hp": 39, "p2_hp": 48, "p1_mana": 2, "p2_mana": 0, "p1_max_mana": 4, "p2_max_mana": 0, "p1_board_count": 1, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 1, "actor": 1000, "kind": "mana_draw", "action_dict": {"type": "mana_draw"}, "timestamp_ms": 4298042759, "human_decision_time_ms": 1103, "state_after_summary": {"turn_number": 1, "p1_hp": 39, "p2_hp": 48, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 4, "p2_max_mana": 0, "p1_board_count": 1, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 2, "actor": 1000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 4298043232, "human_decision_time_ms": 469, "state_after_summary": {"turn_number": 2, "p1_hp": 39, "p2_hp": 48, "p1_mana": 0, "p2_mana": 1, "p1_max_mana": 4, "p2_max_mana": 1, "p1_board_count": 1, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 2, "actor": 2000, "kind": "play_card", "action_dict": {"type": "play_card", "hand_index": 0, "target_id": null, "position": 0}, "timestamp_ms": 4298045704, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 2, "p1_hp": 39, "p2_hp": 48, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 4, "p2_max_mana": 1, "p1_board_count": 1, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 3, "actor": 2000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 4298046128, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 3, "p1_hp": 39, "p2_hp": 48, "p1_mana": 5, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 1, "p1_board_count": 1, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 3, "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": 4298048753, "human_decision_time_ms": 2620, "state_after_summary": {"turn_number": 3, "p1_hp": 39, "p2_hp": 48, "p1_mana": 2, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 1, "p1_board_count": 2, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 3, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "34496c09-3713-4466-9b76-4137d20520b9", "target_id": null, "target_is_hero": true}, "timestamp_ms": 4298050128, "human_decision_time_ms": 1370, "state_after_summary": {"turn_number": 3, "p1_hp": 39, "p2_hp": 38, "p1_mana": 2, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 1, "p1_board_count": 2, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 4, "actor": 1000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 4298050713, "human_decision_time_ms": 580, "state_after_summary": {"turn_number": 4, "p1_hp": 39, "p2_hp": 38, "p1_mana": 2, "p2_mana": 2, "p1_max_mana": 5, "p2_max_mana": 2, "p1_board_count": 2, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 4, "actor": 2000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "a4d14b9f-faa0-4dc3-bd84-dcfe8ca5ccd4", "target_id": "34496c09-3713-4466-9b76-4137d20520b9", "target_is_hero": false}, "timestamp_ms": 4298052848, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 4, "p1_hp": 35, "p2_hp": 38, "p1_mana": 2, "p2_mana": 2, "p1_max_mana": 5, "p2_max_mana": 2, "p1_board_count": 2, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 4, "actor": 2000, "kind": "play_card", "action_dict": {"type": "play_card", "hand_index": 0, "target_id": null, "position": 0}, "timestamp_ms": 4298053545, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 4, "p1_hp": 35, "p2_hp": 38, "p1_mana": 2, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 2, "p1_board_count": 2, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 5, "actor": 2000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 4298054307, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 5, "p1_hp": 35, "p2_hp": 38, "p1_mana": 6, "p2_mana": 0, "p1_max_mana": 6, "p2_max_mana": 2, "p1_board_count": 2, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 5, "actor": 1000, "kind": "play_card", "action_dict": {"type": "play_card", "card_ref": 2, "board_position": 2, "target_id": null, "target_is_hero": false}, "timestamp_ms": 4298066636, "human_decision_time_ms": 12323, "state_after_summary": {"turn_number": 5, "p1_hp": 35, "p2_hp": 38, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 6, "p2_max_mana": 2, "p1_board_count": 3, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 5, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "7d3b71c1-d52d-4aca-a751-2547713b6674", "target_id": null, "target_is_hero": true}, "timestamp_ms": 4298069263, "human_decision_time_ms": 2621, "state_after_summary": {"turn_number": 5, "p1_hp": 35, "p2_hp": 33, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 6, "p2_max_mana": 2, "p1_board_count": 3, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 5, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "34496c09-3713-4466-9b76-4137d20520b9", "target_id": null, "target_is_hero": true}, "timestamp_ms": 4298070617, "human_decision_time_ms": 1348, "state_after_summary": {"turn_number": 5, "p1_hp": 35, "p2_hp": 23, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 6, "p2_max_mana": 2, "p1_board_count": 3, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 6, "actor": 1000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 4298071312, "human_decision_time_ms": 687, "state_after_summary": {"turn_number": 6, "p1_hp": 35, "p2_hp": 23, "p1_mana": 0, "p2_mana": 3, "p1_max_mana": 6, "p2_max_mana": 3, "p1_board_count": 3, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 6, "actor": 2000, "kind": "play_card", "action_dict": {"type": "play_card", "hand_index": 0, "target_id": null, "position": 1}, "timestamp_ms": 4298073136, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 6, "p1_hp": 35, "p2_hp": 23, "p1_mana": 0, "p2_mana": 1, "p1_max_mana": 6, "p2_max_mana": 3, "p1_board_count": 3, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 6, "actor": 2000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "fced4557-a628-4afd-81bb-e4839ba9dfc5", "target_id": "5ffa8fd6-6f84-4760-aada-1bd98b0c5323", "target_is_hero": false}, "timestamp_ms": 4298073853, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 6, "p1_hp": 31, "p2_hp": 23, "p1_mana": 0, "p2_mana": 1, "p1_max_mana": 6, "p2_max_mana": 3, "p1_board_count": 3, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 6, "actor": 2000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "446d481c-3142-4247-b4ee-bc5d400cd5b4", "target_id": "5ffa8fd6-6f84-4760-aada-1bd98b0c5323", "target_is_hero": false}, "timestamp_ms": 4298074568, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 6, "p1_hp": 27, "p2_hp": 23, "p1_mana": 0, "p2_mana": 1, "p1_max_mana": 6, "p2_max_mana": 3, "p1_board_count": 3, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 7, "actor": 2000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 4298075366, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 7, "p1_hp": 27, "p2_hp": 23, "p1_mana": 7, "p2_mana": 1, "p1_max_mana": 7, "p2_max_mana": 3, "p1_board_count": 3, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 7, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "5ffa8fd6-6f84-4760-aada-1bd98b0c5323", "target_id": null, "target_is_hero": true}, "timestamp_ms": 4298084119, "human_decision_time_ms": 8746, "state_after_summary": {"turn_number": 7, "p1_hp": 27, "p2_hp": 8, "p1_mana": 7, "p2_mana": 1, "p1_max_mana": 7, "p2_max_mana": 3, "p1_board_count": 3, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 7, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "7d3b71c1-d52d-4aca-a751-2547713b6674", "target_id": null, "target_is_hero": true}, "timestamp_ms": 4298085485, "human_decision_time_ms": 1359, "state_after_summary": {"turn_number": 7, "p1_hp": 27, "p2_hp": 3, "p1_mana": 7, "p2_mana": 1, "p1_max_mana": 7, "p2_max_mana": 3, "p1_board_count": 3, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 7, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "34496c09-3713-4466-9b76-4137d20520b9", "target_id": null, "target_is_hero": true}, "timestamp_ms": 4298086604, "human_decision_time_ms": 1112, "state_after_summary": {"turn_number": 7, "p1_hp": 27, "p2_hp": 0, "p1_mana": 7, "p2_mana": 1, "p1_max_mana": 7, "p2_max_mana": 3, "p1_board_count": 3, "p2_board_count": 0}, "ok": true, "error": null}], "final_state_summary": {"turn_number": 7, "p1_hp": 27, "p2_hp": 0, "p1_mana": 7, "p2_mana": 1, "p1_max_mana": 7, "p2_max_mana": 3, "p1_board_count": 3, "p2_board_count": 0}, "policy_warnings": [], "degraded": false}