{"log_version": "1.0", "battle_id": "b_a87c3d67d3", "group_id": "278d35e9f2f0", "started_at": "2026-07-25T19:27:54Z", "finished_at": "2026-07-25T19:28:41Z", "duration_seconds": 47.016, "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": [1, 44, 41, 42, 32, 23, 27, 37, 11], "p2": [1, 18, 24, 21, 47, 19, 13, 12, 10]}, "actions": [{"turn": 1, "actor": 1000, "kind": "play_card", "action_dict": {"type": "play_card", "card_ref": 1, "board_position": 0, "target_id": null, "target_is_hero": false}, "timestamp_ms": 5017777480, "human_decision_time_ms": 2124, "state_after_summary": {"turn_number": 1, "p1_hp": 41, "p2_hp": 41, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 1, "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": 5017778371, "human_decision_time_ms": 887, "state_after_summary": {"turn_number": 2, "p1_hp": 41, "p2_hp": 41, "p1_mana": 0, "p2_mana": 1, "p1_max_mana": 1, "p2_max_mana": 1, "p1_board_count": 1, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 3, "actor": 2000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5017780788, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 3, "p1_hp": 41, "p2_hp": 41, "p1_mana": 2, "p2_mana": 1, "p1_max_mana": 2, "p2_max_mana": 1, "p1_board_count": 1, "p2_board_count": 0}, "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": 5017782610, "human_decision_time_ms": 1817, "state_after_summary": {"turn_number": 3, "p1_hp": 41, "p2_hp": 41, "p1_mana": 0, "p2_mana": 1, "p1_max_mana": 2, "p2_max_mana": 1, "p1_board_count": 2, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 3, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "bf463cd3-341c-4254-98c0-445044ade347", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5017783981, "human_decision_time_ms": 1366, "state_after_summary": {"turn_number": 3, "p1_hp": 41, "p2_hp": 37, "p1_mana": 0, "p2_mana": 1, "p1_max_mana": 2, "p2_max_mana": 1, "p1_board_count": 2, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 3, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "f4abfcce-ac27-453d-9c57-3c14d244522e", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5017785019, "human_decision_time_ms": 1033, "state_after_summary": {"turn_number": 3, "p1_hp": 41, "p2_hp": 35, "p1_mana": 0, "p2_mana": 1, "p1_max_mana": 2, "p2_max_mana": 1, "p1_board_count": 2, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 4, "actor": 1000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5017785858, "human_decision_time_ms": 834, "state_after_summary": {"turn_number": 4, "p1_hp": 41, "p2_hp": 35, "p1_mana": 0, "p2_mana": 2, "p1_max_mana": 2, "p2_max_mana": 2, "p1_board_count": 2, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 5, "actor": 2000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5017787722, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 5, "p1_hp": 41, "p2_hp": 35, "p1_mana": 3, "p2_mana": 2, "p1_max_mana": 3, "p2_max_mana": 2, "p1_board_count": 2, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 5, "actor": 1000, "kind": "play_card", "action_dict": {"type": "play_card", "card_ref": 0, "board_position": 2, "target_id": null, "target_is_hero": false}, "timestamp_ms": 5017789903, "human_decision_time_ms": 2174, "state_after_summary": {"turn_number": 5, "p1_hp": 41, "p2_hp": 35, "p1_mana": 2, "p2_mana": 2, "p1_max_mana": 3, "p2_max_mana": 2, "p1_board_count": 3, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 5, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "f4abfcce-ac27-453d-9c57-3c14d244522e", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5017792243, "human_decision_time_ms": 2334, "state_after_summary": {"turn_number": 5, "p1_hp": 41, "p2_hp": 33, "p1_mana": 2, "p2_mana": 2, "p1_max_mana": 3, "p2_max_mana": 2, "p1_board_count": 3, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 5, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "bf463cd3-341c-4254-98c0-445044ade347", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5017793299, "human_decision_time_ms": 1051, "state_after_summary": {"turn_number": 5, "p1_hp": 41, "p2_hp": 29, "p1_mana": 2, "p2_mana": 2, "p1_max_mana": 3, "p2_max_mana": 2, "p1_board_count": 3, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 5, "actor": 1000, "kind": "mana_draw", "action_dict": {"type": "mana_draw"}, "timestamp_ms": 5017794075, "human_decision_time_ms": 771, "state_after_summary": {"turn_number": 5, "p1_hp": 41, "p2_hp": 29, "p1_mana": 0, "p2_mana": 2, "p1_max_mana": 3, "p2_max_mana": 2, "p1_board_count": 3, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 6, "actor": 1000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5017795354, "human_decision_time_ms": 1273, "state_after_summary": {"turn_number": 6, "p1_hp": 41, "p2_hp": 29, "p1_mana": 0, "p2_mana": 3, "p1_max_mana": 3, "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": 5017797149, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 7, "p1_hp": 41, "p2_hp": 29, "p1_mana": 4, "p2_mana": 3, "p1_max_mana": 4, "p2_max_mana": 3, "p1_board_count": 3, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 7, "actor": 1000, "kind": "play_card", "action_dict": {"type": "play_card", "card_ref": 2, "board_position": 3, "target_id": null, "target_is_hero": false}, "timestamp_ms": 5017799315, "human_decision_time_ms": 2160, "state_after_summary": {"turn_number": 7, "p1_hp": 41, "p2_hp": 29, "p1_mana": 0, "p2_mana": 3, "p1_max_mana": 4, "p2_max_mana": 3, "p1_board_count": 4, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 7, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "fb6e16df-823a-4a55-9869-26591ba657f1", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5017800511, "human_decision_time_ms": 1190, "state_after_summary": {"turn_number": 7, "p1_hp": 41, "p2_hp": 22, "p1_mana": 0, "p2_mana": 3, "p1_max_mana": 4, "p2_max_mana": 3, "p1_board_count": 4, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 7, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "4e2564ab-496f-486f-a78d-00618917cf06", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5017801360, "human_decision_time_ms": 843, "state_after_summary": {"turn_number": 7, "p1_hp": 41, "p2_hp": 19, "p1_mana": 0, "p2_mana": 3, "p1_max_mana": 4, "p2_max_mana": 3, "p1_board_count": 4, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 7, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "bf463cd3-341c-4254-98c0-445044ade347", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5017802161, "human_decision_time_ms": 795, "state_after_summary": {"turn_number": 7, "p1_hp": 41, "p2_hp": 15, "p1_mana": 0, "p2_mana": 3, "p1_max_mana": 4, "p2_max_mana": 3, "p1_board_count": 4, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 7, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "f4abfcce-ac27-453d-9c57-3c14d244522e", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5017804123, "human_decision_time_ms": 1956, "state_after_summary": {"turn_number": 7, "p1_hp": 41, "p2_hp": 13, "p1_mana": 0, "p2_mana": 3, "p1_max_mana": 4, "p2_max_mana": 3, "p1_board_count": 4, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 8, "actor": 1000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5017805026, "human_decision_time_ms": 896, "state_after_summary": {"turn_number": 8, "p1_hp": 41, "p2_hp": 13, "p1_mana": 0, "p2_mana": 4, "p1_max_mana": 4, "p2_max_mana": 4, "p1_board_count": 4, "p2_board_count": 0}, "ok": true, "error": null}, {"turn": 8, "actor": 2000, "kind": "play_card", "action_dict": {"type": "play_card", "hand_index": 0, "target_id": "fb6e16df-823a-4a55-9869-26591ba657f1", "position": 0}, "timestamp_ms": 5017806984, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 8, "p1_hp": 41, "p2_hp": 13, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 4, "p2_max_mana": 4, "p1_board_count": 4, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 9, "actor": 2000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5017807663, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 9, "p1_hp": 41, "p2_hp": 13, "p1_mana": 5, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 4, "p1_board_count": 4, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 9, "actor": 1000, "kind": "play_card", "action_dict": {"type": "play_card", "card_ref": 1, "board_position": 4, "target_id": null, "target_is_hero": false}, "timestamp_ms": 5017809957, "human_decision_time_ms": 2287, "state_after_summary": {"turn_number": 9, "p1_hp": 41, "p2_hp": 13, "p1_mana": 1, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 4, "p1_board_count": 5, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 9, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "4e2564ab-496f-486f-a78d-00618917cf06", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5017812309, "human_decision_time_ms": 2345, "state_after_summary": {"turn_number": 9, "p1_hp": 41, "p2_hp": 10, "p1_mana": 1, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 4, "p1_board_count": 5, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 9, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "bf463cd3-341c-4254-98c0-445044ade347", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5017813473, "human_decision_time_ms": 1157, "state_after_summary": {"turn_number": 9, "p1_hp": 41, "p2_hp": 6, "p1_mana": 1, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 4, "p1_board_count": 5, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 9, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "f4abfcce-ac27-453d-9c57-3c14d244522e", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5017814431, "human_decision_time_ms": 951, "state_after_summary": {"turn_number": 9, "p1_hp": 41, "p2_hp": 4, "p1_mana": 1, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 4, "p1_board_count": 5, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 9, "actor": 1000, "kind": "play_card", "action_dict": {"type": "play_card", "card_ref": 2, "board_position": 0, "target_id": "de521456-ba22-4444-8372-d72126bdcf24", "target_is_hero": false}, "timestamp_ms": 5017816128, "human_decision_time_ms": 1691, "state_after_summary": {"turn_number": 9, "p1_hp": 41, "p2_hp": 4, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 4, "p1_board_count": 5, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 10, "actor": 1000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5017817468, "human_decision_time_ms": 1333, "state_after_summary": {"turn_number": 10, "p1_hp": 41, "p2_hp": 4, "p1_mana": 0, "p2_mana": 5, "p1_max_mana": 5, "p2_max_mana": 5, "p1_board_count": 5, "p2_board_count": 1}, "ok": true, "error": null}, {"turn": 10, "actor": 2000, "kind": "play_card", "action_dict": {"type": "play_card", "hand_index": 1, "target_id": "77694b34-1fcb-4534-ac00-2bbb540e6073", "position": 1}, "timestamp_ms": 5017819174, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 10, "p1_hp": 38, "p2_hp": 4, "p1_mana": 0, "p2_mana": 0, "p1_max_mana": 5, "p2_max_mana": 5, "p1_board_count": 5, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 11, "actor": 2000, "kind": "end_turn", "action_dict": {"type": "end_turn"}, "timestamp_ms": 5017819942, "human_decision_time_ms": null, "state_after_summary": {"turn_number": 11, "p1_hp": 38, "p2_hp": 4, "p1_mana": 6, "p2_mana": 0, "p1_max_mana": 6, "p2_max_mana": 5, "p1_board_count": 5, "p2_board_count": 2}, "ok": true, "error": null}, {"turn": 11, "actor": 1000, "kind": "attack", "action_dict": {"type": "attack", "attacker_id": "daf6d9ef-ccb1-444f-ab46-ba32120ab285", "target_id": null, "target_is_hero": true}, "timestamp_ms": 5017822367, "human_decision_time_ms": 2418, "state_after_summary": {"turn_number": 11, "p1_hp": 38, "p2_hp": 0, "p1_mana": 6, "p2_mana": 0, "p1_max_mana": 6, "p2_max_mana": 5, "p1_board_count": 5, "p2_board_count": 2}, "ok": true, "error": null}], "final_state_summary": {"turn_number": 11, "p1_hp": 38, "p2_hp": 0, "p1_mana": 6, "p2_mana": 0, "p1_max_mana": 6, "p2_max_mana": 5, "p1_board_count": 5, "p2_board_count": 2}, "policy_warnings": [], "degraded": false}