# moves

game_id: 5eb79689-5513-4bbc-9a72-038bfb053d1c
timestamp: 2026-01-26 11:53:46.634551
player_id: cpu_a8460466
player_name: Sage
action: draw_deck
card_rank: 4
card_suit: diamonds
discard_top_json: {"rank": "8", "suit": "clubs"}
decision_reason: drew from deck
hand_json:
[{"rank": "2", "suit": "clubs", "face_up": true}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "A", "suit": "hearts", "face_up": true}, {"rank": "K", "suit": "diamonds", "face_up": true}, {"rank": "3", "suit": "diamonds", "face_up": true}, {"rank": "A", "suit": "spades", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "6", "suit": "clubs"}, {"rank": "4", "suit": "spades"}, {"rank": "5", "suit": "spades"}, {"rank": "K", "suit": "hearts"}], "Maya": [{"rank": "4", "suit": "spades"}, {"rank": "7", "suit": "hearts"}, {"rank": "5", "suit": "clubs"}, {"rank": "4", "suit": "clubs"}], "Priya": [{"rank": "K", "suit": "spades"}, {"rank": "6", "suit": "diamonds"}, {"rank": "2", "suit": "hearts"}, {"rank": "8", "suit": "spades"}], "River": [{"rank": "3", "suit": "clubs"}, {"rank": "2", "suit": "spades"}, {"rank": "5", "suit": "clubs"}, {"rank": "6", "suit": "hearts"}, {"rank": "5", "suit": "diamonds"}]}


game_id: 5eb79689-5513-4bbc-9a72-038bfb053d1c
timestamp: 2026-01-26 11:53:47.293605
player_id: cpu_a8460466
player_name: Sage
action: swap
card_rank: 4
card_suit: diamonds
discard_top_json: {"rank": "A", "suit": "spades"}
decision_reason: swapped 4 into position 5, replaced A
hand_json:
[{"rank": "2", "suit": "clubs", "face_up": true}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "A", "suit": "hearts", "face_up": true}, {"rank": "K", "suit": "diamonds", "face_up": true}, {"rank": "3", "suit": "diamonds", "face_up": true}, {"rank": "4", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "6", "suit": "clubs"}, {"rank": "4", "suit": "spades"}, {"rank": "5", "suit": "spades"}, {"rank": "K", "suit": "hearts"}], "Maya": [{"rank": "4", "suit": "spades"}, {"rank": "7", "suit": "hearts"}, {"rank": "5", "suit": "clubs"}, {"rank": "4", "suit": "clubs"}], "Priya": [{"rank": "K", "suit": "spades"}, {"rank": "6", "suit": "diamonds"}, {"rank": "2", "suit": "hearts"}, {"rank": "8", "suit": "spades"}], "River": [{"rank": "3", "suit": "clubs"}, {"rank": "2", "suit": "spades"}, {"rank": "5", "suit": "clubs"}, {"rank": "6", "suit": "hearts"}, {"rank": "5", "suit": "diamonds"}]}


game_id: 5eb79689-5513-4bbc-9a72-038bfb053d1c
timestamp: 2026-01-26 11:53:48.377489
player_id: cpu_f9547245
player_name: River
action: take_discard
card_rank: A
card_suit: spades
discard_top_json: {"rank": "8", "suit": "clubs"}
decision_reason: took A from discard
hand_json:
[{"rank": "3", "suit": "clubs", "face_up": true}, {"rank": "2", "suit": "spades", "face_up": true}, {"rank": "5", "suit": "clubs", "face_up": true}, {"rank": "6", "suit": "hearts", "face_up": true}, {"rank": "Q", "suit": "clubs", "face_up": false}, {"rank": "5", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "6", "suit": "clubs"}, {"rank": "4", "suit": "spades"}, {"rank": "5", "suit": "spades"}, {"rank": "K", "suit": "hearts"}], "Maya": [{"rank": "4", "suit": "spades"}, {"rank": "7", "suit": "hearts"}, {"rank": "5", "suit": "clubs"}, {"rank": "4", "suit": "clubs"}], "Priya": [{"rank": "K", "suit": "spades"}, {"rank": "6", "suit": "diamonds"}, {"rank": "2", "suit": "hearts"}, {"rank": "8", "suit": "spades"}], "Sage": [{"rank": "2", "suit": "clubs"}, {"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "hearts"}, {"rank": "K", "suit": "diamonds"}, {"rank": "3", "suit": "diamonds"}, {"rank": "4", "suit": "diamonds"}]}


game_id: 5eb79689-5513-4bbc-9a72-038bfb053d1c
timestamp: 2026-01-26 11:53:48.831271
player_id: cpu_f9547245
player_name: River
action: swap
card_rank: A
card_suit: spades
discard_top_json: {"rank": "6", "suit": "hearts"}
decision_reason: swapped A into position 3, replaced 6
hand_json:
[{"rank": "3", "suit": "clubs", "face_up": true}, {"rank": "2", "suit": "spades", "face_up": true}, {"rank": "5", "suit": "clubs", "face_up": true}, {"rank": "A", "suit": "spades", "face_up": true}, {"rank": "Q", "suit": "clubs", "face_up": true}, {"rank": "5", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "6", "suit": "clubs"}, {"rank": "4", "suit": "spades"}, {"rank": "5", "suit": "spades"}, {"rank": "K", "suit": "hearts"}], "Maya": [{"rank": "4", "suit": "spades"}, {"rank": "7", "suit": "hearts"}, {"rank": "5", "suit": "clubs"}, {"rank": "4", "suit": "clubs"}], "Priya": [{"rank": "K", "suit": "spades"}, {"rank": "6", "suit": "diamonds"}, {"rank": "2", "suit": "hearts"}, {"rank": "8", "suit": "spades"}], "Sage": [{"rank": "2", "suit": "clubs"}, {"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "hearts"}, {"rank": "K", "suit": "diamonds"}, {"rank": "3", "suit": "diamonds"}, {"rank": "4", "suit": "diamonds"}]}


game_id: 5eb79689-5513-4bbc-9a72-038bfb053d1c
timestamp: 2026-01-26 11:55:00.034575
player_id: cpu_0441027f
player_name: Maya
action: take_discard
card_rank: 4
card_suit: spades
discard_top_json: {"rank": "8", "suit": "clubs"}
decision_reason: took 4 from discard
hand_json:
[{"rank": "3", "suit": "clubs", "face_up": false}, {"rank": "4", "suit": "spades", "face_up": true}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "5", "suit": "clubs", "face_up": true}, {"rank": "4", "suit": "clubs", "face_up": true}, {"rank": "3", "suit": "hearts", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "6", "suit": "clubs"}, {"rank": "2", "suit": "diamonds"}, {"rank": "7", "suit": "diamonds"}, {"rank": "6", "suit": "hearts"}, {"rank": "5", "suit": "spades"}, {"rank": "K", "suit": "hearts"}], "Priya": [{"rank": "K", "suit": "spades"}, {"rank": "6", "suit": "diamonds"}, {"rank": "2", "suit": "hearts"}, {"rank": "8", "suit": "spades"}], "Sage": [{"rank": "2", "suit": "clubs"}, {"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "hearts"}, {"rank": "K", "suit": "diamonds"}, {"rank": "3", "suit": "diamonds"}, {"rank": "4", "suit": "diamonds"}], "River": [{"rank": "3", "suit": "clubs"}, {"rank": "2", "suit": "spades"}, {"rank": "5", "suit": "clubs"}, {"rank": "A", "suit": "spades"}, {"rank": "Q", "suit": "clubs"}, {"rank": "5", "suit": "diamonds"}]}


game_id: 5eb79689-5513-4bbc-9a72-038bfb053d1c
timestamp: 2026-01-26 11:55:00.681495
player_id: cpu_0441027f
player_name: Maya
action: swap
card_rank: 4
card_suit: spades
discard_top_json: {"rank": "4", "suit": "spades"}
decision_reason: swapped 4 into position 1, replaced 4
hand_json:
[{"rank": "3", "suit": "clubs", "face_up": true}, {"rank": "4", "suit": "spades", "face_up": true}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "5", "suit": "clubs", "face_up": true}, {"rank": "4", "suit": "clubs", "face_up": true}, {"rank": "3", "suit": "hearts", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "6", "suit": "clubs"}, {"rank": "2", "suit": "diamonds"}, {"rank": "7", "suit": "diamonds"}, {"rank": "6", "suit": "hearts"}, {"rank": "5", "suit": "spades"}, {"rank": "K", "suit": "hearts"}], "Priya": [{"rank": "K", "suit": "spades"}, {"rank": "6", "suit": "diamonds"}, {"rank": "2", "suit": "hearts"}, {"rank": "8", "suit": "spades"}], "Sage": [{"rank": "2", "suit": "clubs"}, {"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "hearts"}, {"rank": "K", "suit": "diamonds"}, {"rank": "3", "suit": "diamonds"}, {"rank": "4", "suit": "diamonds"}], "River": [{"rank": "3", "suit": "clubs"}, {"rank": "2", "suit": "spades"}, {"rank": "5", "suit": "clubs"}, {"rank": "A", "suit": "spades"}, {"rank": "Q", "suit": "clubs"}, {"rank": "5", "suit": "diamonds"}]}


game_id: 5eb79689-5513-4bbc-9a72-038bfb053d1c
timestamp: 2026-01-26 11:55:01.933226
player_id: cpu_ec6be54b
player_name: Priya
action: take_discard
card_rank: 4
card_suit: spades
discard_top_json: {"rank": "8", "suit": "clubs"}
decision_reason: took 4 from discard
hand_json:
[{"rank": "K", "suit": "spades", "face_up": true}, {"rank": "4", "suit": "clubs", "face_up": false}, {"rank": "6", "suit": "diamonds", "face_up": true}, {"rank": "3", "suit": "spades", "face_up": false}, {"rank": "2", "suit": "hearts", "face_up": true}, {"rank": "8", "suit": "spades", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "6", "suit": "clubs"}, {"rank": "2", "suit": "diamonds"}, {"rank": "7", "suit": "diamonds"}, {"rank": "6", "suit": "hearts"}, {"rank": "5", "suit": "spades"}, {"rank": "K", "suit": "hearts"}], "Maya": [{"rank": "3", "suit": "clubs"}, {"rank": "4", "suit": "spades"}, {"rank": "7", "suit": "hearts"}, {"rank": "5", "suit": "clubs"}, {"rank": "4", "suit": "clubs"}, {"rank": "3", "suit": "hearts"}], "Sage": [{"rank": "2", "suit": "clubs"}, {"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "hearts"}, {"rank": "K", "suit": "diamonds"}, {"rank": "3", "suit": "diamonds"}, {"rank": "4", "suit": "diamonds"}], "River": [{"rank": "3", "suit": "clubs"}, {"rank": "2", "suit": "spades"}, {"rank": "5", "suit": "clubs"}, {"rank": "A", "suit": "spades"}, {"rank": "Q", "suit": "clubs"}, {"rank": "5", "suit": "diamonds"}]}


game_id: 5eb79689-5513-4bbc-9a72-038bfb053d1c
timestamp: 2026-01-26 11:55:02.707852
player_id: cpu_ec6be54b
player_name: Priya
action: swap
card_rank: 4
card_suit: spades
discard_top_json: {"rank": "8", "suit": "spades"}
decision_reason: swapped 4 into position 5, replaced 8
hand_json:
[{"rank": "K", "suit": "spades", "face_up": true}, {"rank": "4", "suit": "clubs", "face_up": true}, {"rank": "6", "suit": "diamonds", "face_up": true}, {"rank": "3", "suit": "spades", "face_up": true}, {"rank": "2", "suit": "hearts", "face_up": true}, {"rank": "4", "suit": "spades", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "6", "suit": "clubs"}, {"rank": "2", "suit": "diamonds"}, {"rank": "7", "suit": "diamonds"}, {"rank": "6", "suit": "hearts"}, {"rank": "5", "suit": "spades"}, {"rank": "K", "suit": "hearts"}], "Maya": [{"rank": "3", "suit": "clubs"}, {"rank": "4", "suit": "spades"}, {"rank": "7", "suit": "hearts"}, {"rank": "5", "suit": "clubs"}, {"rank": "4", "suit": "clubs"}, {"rank": "3", "suit": "hearts"}], "Sage": [{"rank": "2", "suit": "clubs"}, {"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "hearts"}, {"rank": "K", "suit": "diamonds"}, {"rank": "3", "suit": "diamonds"}, {"rank": "4", "suit": "diamonds"}], "River": [{"rank": "3", "suit": "clubs"}, {"rank": "2", "suit": "spades"}, {"rank": "5", "suit": "clubs"}, {"rank": "A", "suit": "spades"}, {"rank": "Q", "suit": "clubs"}, {"rank": "5", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:13.276872
player_id: cpu_709b519b
player_name: Sofia
action: draw_deck
card_rank: 2
card_suit: clubs
discard_top_json: {"rank": "Q", "suit": "hearts"}
decision_reason: drew from deck
hand_json:
[{"rank": "7", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "spades", "face_up": true}, {"rank": "7", "suit": "hearts", "face_up": false}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "3", "suit": "hearts", "face_up": false}, {"rank": "Q", "suit": "spades", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "10", "suit": "spades"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sage": [{"rank": "10", "suit": "spades"}, {"rank": "A", "suit": "diamonds"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "9", "suit": "hearts"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:13.783513
player_id: cpu_709b519b
player_name: Sofia
action: swap
card_rank: 2
card_suit: clubs
discard_top_json: {"rank": "7", "suit": "hearts"}
decision_reason: swapped 2 into position 2, replaced 7
hand_json:
[{"rank": "7", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "spades", "face_up": true}, {"rank": "2", "suit": "clubs", "face_up": true}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "3", "suit": "hearts", "face_up": false}, {"rank": "Q", "suit": "spades", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "10", "suit": "spades"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sage": [{"rank": "10", "suit": "spades"}, {"rank": "A", "suit": "diamonds"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "9", "suit": "hearts"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:14.814773
player_id: cpu_3bcba2f1
player_name: Sage
action: take_discard
card_rank: 7
card_suit: hearts
discard_top_json: {"rank": "Q", "suit": "hearts"}
decision_reason: took 7 from discard
hand_json:
[{"rank": "7", "suit": "diamonds", "face_up": false}, {"rank": "K", "suit": "spades", "face_up": false}, {"rank": "10", "suit": "spades", "face_up": true}, {"rank": "9", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "6", "suit": "hearts", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "10", "suit": "spades"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "A", "suit": "diamonds"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "9", "suit": "hearts"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:15.343483
player_id: cpu_3bcba2f1
player_name: Sage
action: swap
card_rank: 7
card_suit: hearts
discard_top_json: {"rank": "10", "suit": "spades"}
decision_reason: swapped 7 into position 2, replaced 10
hand_json:
[{"rank": "7", "suit": "diamonds", "face_up": false}, {"rank": "K", "suit": "spades", "face_up": false}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "9", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "6", "suit": "hearts", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "10", "suit": "spades"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "A", "suit": "diamonds"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "9", "suit": "hearts"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:16.478964
player_id: cpu_2460385d
player_name: Marcus
action: draw_deck
card_rank: 6
card_suit: diamonds
discard_top_json: {"rank": "10", "suit": "spades"}
decision_reason: drew from deck
hand_json:
[{"rank": "A", "suit": "spades", "face_up": true}, {"rank": "9", "suit": "hearts", "face_up": false}, {"rank": "Q", "suit": "diamonds", "face_up": false}, {"rank": "5", "suit": "clubs", "face_up": false}, {"rank": "5", "suit": "spades", "face_up": false}, {"rank": "9", "suit": "hearts", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "10", "suit": "spades"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "A", "suit": "diamonds"}], "Sage": [{"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:17.140383
player_id: cpu_2460385d
player_name: Marcus
action: swap
card_rank: 6
card_suit: diamonds
discard_top_json: {"rank": "9", "suit": "hearts"}
decision_reason: swapped 6 into position 5, replaced 9
hand_json:
[{"rank": "A", "suit": "spades", "face_up": true}, {"rank": "9", "suit": "hearts", "face_up": false}, {"rank": "Q", "suit": "diamonds", "face_up": false}, {"rank": "5", "suit": "clubs", "face_up": false}, {"rank": "5", "suit": "spades", "face_up": false}, {"rank": "6", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "10", "suit": "spades"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "A", "suit": "diamonds"}], "Sage": [{"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:21.895586
player_id: cpu_709b519b
player_name: Sofia
action: draw_deck
card_rank: 4
card_suit: spades
discard_top_json: {"rank": "10", "suit": "spades"}
decision_reason: drew from deck
hand_json:
[{"rank": "7", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "spades", "face_up": true}, {"rank": "2", "suit": "clubs", "face_up": true}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "3", "suit": "hearts", "face_up": false}, {"rank": "Q", "suit": "spades", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "8", "suit": "clubs"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sage": [{"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:22.436723
player_id: cpu_709b519b
player_name: Sofia
action: swap
card_rank: 4
card_suit: spades
discard_top_json: {"rank": "7", "suit": "spades"}
decision_reason: swapped 4 into position 0, replaced 7
hand_json:
[{"rank": "4", "suit": "spades", "face_up": true}, {"rank": "A", "suit": "spades", "face_up": true}, {"rank": "2", "suit": "clubs", "face_up": true}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "3", "suit": "hearts", "face_up": false}, {"rank": "Q", "suit": "spades", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "8", "suit": "clubs"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sage": [{"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:23.434732
player_id: cpu_3bcba2f1
player_name: Sage
action: take_discard
card_rank: 7
card_suit: spades
discard_top_json: {"rank": "10", "suit": "spades"}
decision_reason: took 7 from discard
hand_json:
[{"rank": "7", "suit": "diamonds", "face_up": false}, {"rank": "K", "suit": "spades", "face_up": false}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "9", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "6", "suit": "hearts", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "8", "suit": "clubs"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "A", "suit": "diamonds"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:23.964983
player_id: cpu_3bcba2f1
player_name: Sage
action: swap
card_rank: 7
card_suit: spades
discard_top_json: {"rank": "6", "suit": "hearts"}
decision_reason: swapped 7 into position 5, replaced 6
hand_json:
[{"rank": "7", "suit": "diamonds", "face_up": false}, {"rank": "K", "suit": "spades", "face_up": false}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "9", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "7", "suit": "spades", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "8", "suit": "clubs"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "A", "suit": "diamonds"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:24.780288
player_id: cpu_2460385d
player_name: Marcus
action: take_discard
card_rank: 6
card_suit: hearts
discard_top_json: {"rank": "10", "suit": "spades"}
decision_reason: took 6 from discard
hand_json:
[{"rank": "A", "suit": "spades", "face_up": true}, {"rank": "9", "suit": "hearts", "face_up": false}, {"rank": "Q", "suit": "diamonds", "face_up": false}, {"rank": "5", "suit": "clubs", "face_up": false}, {"rank": "5", "suit": "spades", "face_up": false}, {"rank": "6", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "8", "suit": "clubs"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "A", "suit": "diamonds"}], "Sage": [{"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:25.344036
player_id: cpu_2460385d
player_name: Marcus
action: swap
card_rank: 6
card_suit: hearts
discard_top_json: {"rank": "Q", "suit": "diamonds"}
decision_reason: swapped 6 into position 2, replaced Q
hand_json:
[{"rank": "A", "suit": "spades", "face_up": true}, {"rank": "9", "suit": "hearts", "face_up": false}, {"rank": "6", "suit": "hearts", "face_up": true}, {"rank": "5", "suit": "clubs", "face_up": false}, {"rank": "5", "suit": "spades", "face_up": false}, {"rank": "6", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "8", "suit": "clubs"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "A", "suit": "diamonds"}], "Sage": [{"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:31.772273
player_id: cpu_709b519b
player_name: Sofia
action: draw_deck
card_rank: 5
card_suit: diamonds
discard_top_json: {"rank": "8", "suit": "clubs"}
decision_reason: drew from deck
hand_json:
[{"rank": "4", "suit": "spades", "face_up": true}, {"rank": "A", "suit": "spades", "face_up": true}, {"rank": "2", "suit": "clubs", "face_up": true}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "3", "suit": "hearts", "face_up": false}, {"rank": "Q", "suit": "spades", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sage": [{"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:32.354935
player_id: cpu_709b519b
player_name: Sofia
action: swap
card_rank: 5
card_suit: diamonds
discard_top_json: {"rank": "3", "suit": "hearts"}
decision_reason: swapped 5 into position 4, replaced 3
hand_json:
[{"rank": "4", "suit": "spades", "face_up": true}, {"rank": "A", "suit": "spades", "face_up": true}, {"rank": "2", "suit": "clubs", "face_up": true}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "5", "suit": "diamonds", "face_up": true}, {"rank": "Q", "suit": "spades", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sage": [{"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:33.521071
player_id: cpu_3bcba2f1
player_name: Sage
action: take_discard
card_rank: 3
card_suit: hearts
discard_top_json: {"rank": "8", "suit": "clubs"}
decision_reason: took 3 from discard
hand_json:
[{"rank": "7", "suit": "diamonds", "face_up": false}, {"rank": "K", "suit": "spades", "face_up": false}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "9", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "7", "suit": "spades", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:34.143657
player_id: cpu_3bcba2f1
player_name: Sage
action: swap
card_rank: 3
card_suit: hearts
discard_top_json: {"rank": "7", "suit": "diamonds"}
decision_reason: swapped 3 into position 0, replaced 7
hand_json:
[{"rank": "3", "suit": "hearts", "face_up": true}, {"rank": "K", "suit": "spades", "face_up": false}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "9", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "7", "suit": "spades", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:35.002431
player_id: cpu_2460385d
player_name: Marcus
action: take_discard
card_rank: 7
card_suit: diamonds
discard_top_json: {"rank": "8", "suit": "clubs"}
decision_reason: took 7 from discard
hand_json:
[{"rank": "A", "suit": "spades", "face_up": true}, {"rank": "9", "suit": "hearts", "face_up": false}, {"rank": "6", "suit": "hearts", "face_up": true}, {"rank": "5", "suit": "clubs", "face_up": false}, {"rank": "5", "suit": "spades", "face_up": false}, {"rank": "6", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:35.658855
player_id: cpu_2460385d
player_name: Marcus
action: swap
card_rank: 7
card_suit: diamonds
discard_top_json: {"rank": "9", "suit": "hearts"}
decision_reason: swapped 7 into position 1, replaced 9
hand_json:
[{"rank": "A", "suit": "spades", "face_up": true}, {"rank": "7", "suit": "diamonds", "face_up": true}, {"rank": "6", "suit": "hearts", "face_up": true}, {"rank": "5", "suit": "clubs", "face_up": false}, {"rank": "5", "suit": "spades", "face_up": false}, {"rank": "6", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:42.067459
player_id: cpu_709b519b
player_name: Sofia
action: draw_deck
card_rank: 8
card_suit: hearts
discard_top_json: {"rank": "J", "suit": "spades"}
decision_reason: drew from deck
hand_json:
[{"rank": "4", "suit": "spades", "face_up": true}, {"rank": "A", "suit": "spades", "face_up": true}, {"rank": "2", "suit": "clubs", "face_up": true}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "5", "suit": "diamonds", "face_up": true}, {"rank": "Q", "suit": "spades", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "7", "suit": "diamonds"}, {"rank": "6", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:43.622712
player_id: cpu_3bcba2f1
player_name: Sage
action: draw_deck
card_rank: 9
card_suit: clubs
discard_top_json: {"rank": "8", "suit": "hearts"}
decision_reason: drew from deck
hand_json:
[{"rank": "3", "suit": "hearts", "face_up": true}, {"rank": "K", "suit": "spades", "face_up": false}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "9", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "7", "suit": "spades", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "7", "suit": "diamonds"}, {"rank": "6", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:45.307689
player_id: cpu_2460385d
player_name: Marcus
action: draw_deck
card_rank: 10
card_suit: clubs
discard_top_json: {"rank": "9", "suit": "clubs"}
decision_reason: drew from deck
hand_json:
[{"rank": "A", "suit": "spades", "face_up": true}, {"rank": "7", "suit": "diamonds", "face_up": true}, {"rank": "6", "suit": "hearts", "face_up": true}, {"rank": "5", "suit": "clubs", "face_up": false}, {"rank": "5", "suit": "spades", "face_up": false}, {"rank": "6", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:52.424958
player_id: cpu_709b519b
player_name: Sofia
action: swap
card_rank: 4
card_suit: hearts
discard_top_json: {"rank": "A", "suit": "diamonds"}
decision_reason: swapped 4 into position 3, replaced A
hand_json:
[{"rank": "4", "suit": "spades", "face_up": true}, {"rank": "A", "suit": "spades", "face_up": true}, {"rank": "2", "suit": "clubs", "face_up": true}, {"rank": "4", "suit": "hearts", "face_up": true}, {"rank": "5", "suit": "diamonds", "face_up": true}, {"rank": "Q", "suit": "spades", "face_up": false}]


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:53.288195
player_id: cpu_3bcba2f1
player_name: Sage
action: take_discard
card_rank: A
card_suit: diamonds
discard_top_json: {"rank": "8", "suit": "spades"}
decision_reason: took A from discard
visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "5", "suit": "diamonds"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "7", "suit": "diamonds"}, {"rank": "6", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:53.949645
player_id: cpu_3bcba2f1
player_name: Sage
action: swap
card_rank: A
card_suit: diamonds
discard_top_json: {"rank": "K", "suit": "spades"}
decision_reason: swapped A into position 1, replaced K
hand_json:
[{"rank": "3", "suit": "hearts", "face_up": true}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "9", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "7", "suit": "spades", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "5", "suit": "diamonds"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "7", "suit": "diamonds"}, {"rank": "6", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:55.090094
player_id: cpu_2460385d
player_name: Marcus
action: take_discard
card_rank: K
card_suit: spades
discard_top_json: {"rank": "8", "suit": "spades"}
decision_reason: took K from discard
visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "5", "suit": "diamonds"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:57:55.610899
player_id: cpu_2460385d
player_name: Marcus
action: swap
card_rank: K
card_suit: spades
discard_top_json: {"rank": "7", "suit": "diamonds"}
decision_reason: swapped K into position 1, replaced 7
hand_json:
[{"rank": "A", "suit": "spades", "face_up": true}, {"rank": "K", "suit": "spades", "face_up": true}, {"rank": "6", "suit": "hearts", "face_up": true}, {"rank": "5", "suit": "clubs", "face_up": false}, {"rank": "5", "suit": "spades", "face_up": false}, {"rank": "6", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "5", "suit": "diamonds"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:01.653946
player_id: cpu_709b519b
player_name: Sofia
action: draw_deck
card_rank: K
card_suit: clubs
discard_top_json: {"rank": "10", "suit": "diamonds"}
decision_reason: drew from deck
hand_json:
[{"rank": "4", "suit": "spades", "face_up": true}, {"rank": "A", "suit": "spades", "face_up": true}, {"rank": "2", "suit": "clubs", "face_up": true}, {"rank": "4", "suit": "hearts", "face_up": true}, {"rank": "5", "suit": "diamonds", "face_up": true}, {"rank": "Q", "suit": "spades", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "K", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:02.223733
player_id: cpu_709b519b
player_name: Sofia
action: swap
card_rank: K
card_suit: clubs
discard_top_json: {"rank": "5", "suit": "diamonds"}
decision_reason: swapped K into position 4, replaced 5
hand_json:
[{"rank": "4", "suit": "spades", "face_up": true}, {"rank": "A", "suit": "spades", "face_up": true}, {"rank": "2", "suit": "clubs", "face_up": true}, {"rank": "4", "suit": "hearts", "face_up": true}, {"rank": "K", "suit": "clubs", "face_up": true}, {"rank": "Q", "suit": "spades", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "K", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:03.317879
player_id: cpu_3bcba2f1
player_name: Sage
action: take_discard
card_rank: 5
card_suit: diamonds
discard_top_json: {"rank": "10", "suit": "diamonds"}
decision_reason: took 5 from discard
hand_json:
[{"rank": "3", "suit": "hearts", "face_up": true}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "9", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "7", "suit": "spades", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "K", "suit": "clubs"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "K", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:03.840045
player_id: cpu_3bcba2f1
player_name: Sage
action: swap
card_rank: 5
card_suit: diamonds
discard_top_json: {"rank": "7", "suit": "hearts"}
decision_reason: swapped 5 into position 2, replaced 7
hand_json:
[{"rank": "3", "suit": "hearts", "face_up": true}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "5", "suit": "diamonds", "face_up": true}, {"rank": "9", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "7", "suit": "spades", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "K", "suit": "clubs"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "K", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:04.865995
player_id: cpu_2460385d
player_name: Marcus
action: take_discard
card_rank: 7
card_suit: hearts
discard_top_json: {"rank": "10", "suit": "diamonds"}
decision_reason: took 7 from discard
hand_json:
[{"rank": "A", "suit": "spades", "face_up": true}, {"rank": "K", "suit": "spades", "face_up": true}, {"rank": "6", "suit": "hearts", "face_up": true}, {"rank": "5", "suit": "clubs", "face_up": false}, {"rank": "5", "suit": "spades", "face_up": false}, {"rank": "6", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "K", "suit": "clubs"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:05.476525
player_id: cpu_2460385d
player_name: Marcus
action: swap
card_rank: 7
card_suit: hearts
discard_top_json: {"rank": "5", "suit": "spades"}
decision_reason: swapped 7 into position 4, replaced 5
hand_json:
[{"rank": "A", "suit": "spades", "face_up": true}, {"rank": "K", "suit": "spades", "face_up": true}, {"rank": "6", "suit": "hearts", "face_up": true}, {"rank": "5", "suit": "clubs", "face_up": false}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "6", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "2", "suit": "diamonds"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "4", "suit": "spades"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "K", "suit": "clubs"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:09.991928
player_id: cpu_709b519b
player_name: Sofia
action: take_discard
card_rank: 2
card_suit: diamonds
discard_top_json: {"rank": "10", "suit": "diamonds"}
decision_reason: took 2 from discard
hand_json:
[{"rank": "4", "suit": "spades", "face_up": true}, {"rank": "A", "suit": "spades", "face_up": true}, {"rank": "2", "suit": "clubs", "face_up": true}, {"rank": "4", "suit": "hearts", "face_up": true}, {"rank": "K", "suit": "clubs", "face_up": true}, {"rank": "Q", "suit": "spades", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "5", "suit": "spades"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "K", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "7", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:10.634540
player_id: cpu_709b519b
player_name: Sofia
action: swap
card_rank: 2
card_suit: diamonds
discard_top_json: {"rank": "4", "suit": "spades"}
decision_reason: swapped 2 into position 0, replaced 4
hand_json:
[{"rank": "2", "suit": "diamonds", "face_up": true}, {"rank": "A", "suit": "spades", "face_up": true}, {"rank": "2", "suit": "clubs", "face_up": true}, {"rank": "4", "suit": "hearts", "face_up": true}, {"rank": "K", "suit": "clubs", "face_up": true}, {"rank": "Q", "suit": "spades", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "5", "suit": "spades"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}, {"rank": "A", "suit": "diamonds"}, {"rank": "7", "suit": "spades"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "K", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "7", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:11.614011
player_id: cpu_3bcba2f1
player_name: Sage
action: draw_deck
card_rank: 5
card_suit: hearts
discard_top_json: {"rank": "4", "suit": "spades"}
decision_reason: drew from deck
hand_json:
[{"rank": "3", "suit": "hearts", "face_up": true}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "5", "suit": "diamonds", "face_up": true}, {"rank": "9", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "7", "suit": "spades", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "5", "suit": "spades"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "2", "suit": "diamonds"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "K", "suit": "clubs"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "K", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "7", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:12.262068
player_id: cpu_3bcba2f1
player_name: Sage
action: swap
card_rank: 5
card_suit: hearts
discard_top_json: {"rank": "7", "suit": "spades"}
decision_reason: swapped 5 into position 5, replaced 7
hand_json:
[{"rank": "3", "suit": "hearts", "face_up": true}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "5", "suit": "diamonds", "face_up": true}, {"rank": "9", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "5", "suit": "hearts", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "5", "suit": "spades"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "2", "suit": "diamonds"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "K", "suit": "clubs"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "K", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "7", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:13.480129
player_id: cpu_2460385d
player_name: Marcus
action: take_discard
card_rank: 7
card_suit: spades
discard_top_json: {"rank": "4", "suit": "spades"}
decision_reason: took 7 from discard
hand_json:
[{"rank": "A", "suit": "spades", "face_up": true}, {"rank": "K", "suit": "spades", "face_up": true}, {"rank": "6", "suit": "hearts", "face_up": true}, {"rank": "5", "suit": "clubs", "face_up": false}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "6", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "5", "suit": "spades"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "2", "suit": "diamonds"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "K", "suit": "clubs"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "hearts"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:14.118338
player_id: cpu_2460385d
player_name: Marcus
action: swap
card_rank: 7
card_suit: spades
discard_top_json: {"rank": "K", "suit": "spades"}
decision_reason: swapped 7 into position 1, replaced K
hand_json:
[{"rank": "A", "suit": "spades", "face_up": true}, {"rank": "7", "suit": "spades", "face_up": true}, {"rank": "6", "suit": "hearts", "face_up": true}, {"rank": "5", "suit": "clubs", "face_up": false}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "6", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "5", "suit": "spades"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "6", "suit": "spades"}], "Sofia": [{"rank": "2", "suit": "diamonds"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "K", "suit": "clubs"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "hearts"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:23.568231
player_id: cpu_709b519b
player_name: Sofia
action: take_discard
card_rank: 6
card_suit: spades
discard_top_json: {"rank": "4", "suit": "spades"}
decision_reason: took 6 from discard
hand_json:
[{"rank": "2", "suit": "diamonds", "face_up": true}, {"rank": "A", "suit": "spades", "face_up": true}, {"rank": "2", "suit": "clubs", "face_up": true}, {"rank": "4", "suit": "hearts", "face_up": true}, {"rank": "K", "suit": "clubs", "face_up": true}, {"rank": "Q", "suit": "spades", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "5", "suit": "spades"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "K", "suit": "spades"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "hearts"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "7", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "7", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:24.154708
player_id: cpu_709b519b
player_name: Sofia
action: swap
card_rank: 6
card_suit: spades
discard_top_json: {"rank": "Q", "suit": "spades"}
decision_reason: swapped 6 into position 5, replaced Q
hand_json:
[{"rank": "2", "suit": "diamonds", "face_up": true}, {"rank": "A", "suit": "spades", "face_up": true}, {"rank": "2", "suit": "clubs", "face_up": true}, {"rank": "4", "suit": "hearts", "face_up": true}, {"rank": "K", "suit": "clubs", "face_up": true}, {"rank": "6", "suit": "spades", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "5", "suit": "spades"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "K", "suit": "spades"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "hearts"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "7", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "7", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:25.449797
player_id: cpu_3bcba2f1
player_name: Sage
action: draw_deck
card_rank: 7
card_suit: clubs
discard_top_json: {"rank": "Q", "suit": "spades"}
decision_reason: drew from deck
hand_json:
[{"rank": "3", "suit": "hearts", "face_up": true}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "5", "suit": "diamonds", "face_up": true}, {"rank": "9", "suit": "spades", "face_up": false}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "5", "suit": "hearts", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "5", "suit": "spades"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "K", "suit": "spades"}], "Sofia": [{"rank": "2", "suit": "diamonds"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "K", "suit": "clubs"}, {"rank": "6", "suit": "spades"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "7", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "7", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:25.926560
player_id: cpu_3bcba2f1
player_name: Sage
action: discard
card_rank: 7
card_suit: clubs
discard_top_json: {"rank": "7", "suit": "clubs"}
decision_reason: discarded 7
hand_json:
[{"rank": "3", "suit": "hearts", "face_up": true}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "5", "suit": "diamonds", "face_up": true}, {"rank": "9", "suit": "spades", "face_up": true}, {"rank": "A", "suit": "diamonds", "face_up": true}, {"rank": "5", "suit": "hearts", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "5", "suit": "spades"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "K", "suit": "spades"}], "Sofia": [{"rank": "2", "suit": "diamonds"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "K", "suit": "clubs"}, {"rank": "6", "suit": "spades"}], "Marcus": [{"rank": "A", "suit": "spades"}, {"rank": "7", "suit": "spades"}, {"rank": "6", "suit": "hearts"}, {"rank": "7", "suit": "hearts"}, {"rank": "6", "suit": "diamonds"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:27.184015
player_id: cpu_2460385d
player_name: Marcus
action: take_discard
card_rank: 7
card_suit: clubs
discard_top_json: {"rank": "Q", "suit": "spades"}
decision_reason: took 7 from discard
hand_json:
[{"rank": "A", "suit": "spades", "face_up": true}, {"rank": "7", "suit": "spades", "face_up": true}, {"rank": "6", "suit": "hearts", "face_up": true}, {"rank": "5", "suit": "clubs", "face_up": false}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "6", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "5", "suit": "spades"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "K", "suit": "spades"}], "Sofia": [{"rank": "2", "suit": "diamonds"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "K", "suit": "clubs"}, {"rank": "6", "suit": "spades"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}, {"rank": "9", "suit": "spades"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "hearts"}]}


game_id: 05ace6b9-8bd6-4bcc-985b-2628ad3afc82
timestamp: 2026-01-26 11:58:27.891106
player_id: cpu_2460385d
player_name: Marcus
action: swap
card_rank: 7
card_suit: clubs
discard_top_json: {"rank": "7", "suit": "spades"}
decision_reason: swapped 7 into position 1, replaced 7
hand_json:
[{"rank": "A", "suit": "spades", "face_up": true}, {"rank": "7", "suit": "clubs", "face_up": true}, {"rank": "6", "suit": "hearts", "face_up": true}, {"rank": "5", "suit": "clubs", "face_up": true}, {"rank": "7", "suit": "hearts", "face_up": true}, {"rank": "6", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "5", "suit": "spades"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}, {"rank": "2", "suit": "spades"}, {"rank": "K", "suit": "spades"}], "Sofia": [{"rank": "2", "suit": "diamonds"}, {"rank": "A", "suit": "spades"}, {"rank": "2", "suit": "clubs"}, {"rank": "4", "suit": "hearts"}, {"rank": "K", "suit": "clubs"}, {"rank": "6", "suit": "spades"}], "Sage": [{"rank": "3", "suit": "hearts"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "diamonds"}, {"rank": "9", "suit": "spades"}, {"rank": "A", "suit": "diamonds"}, {"rank": "5", "suit": "hearts"}]}


game_id: ff02551f-2e31-4d8c-826a-c24f3e358d53
timestamp: 2026-01-26 14:57:55.116711
player_id: cpu_3d42b365
player_name: Maya
action: take_discard
card_rank: 4
card_suit: clubs
discard_top_json: {"rank": "J", "suit": "spades"}
decision_reason: took 4 from discard
hand_json:
[{"rank": "A", "suit": "hearts", "face_up": true}, {"rank": "7", "suit": "spades", "face_up": false}, {"rank": "10", "suit": "diamonds", "face_up": false}, {"rank": "10", "suit": "clubs", "face_up": false}, {"rank": "5", "suit": "hearts", "face_up": true}, {"rank": "A", "suit": "spades", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "K", "suit": "diamonds"}, {"rank": "4", "suit": "spades"}, {"rank": "J", "suit": "hearts"}], "Marcus": [{"rank": "2", "suit": "hearts"}, {"rank": "7", "suit": "diamonds"}], "River": [{"rank": "A", "suit": "clubs"}, {"rank": "10", "suit": "spades"}], "Kenji": [{"rank": "10", "suit": "hearts"}, {"rank": "4", "suit": "clubs"}], "Player": [{"rank": "9", "suit": "spades"}, {"rank": "5", "suit": "clubs"}]}


game_id: ff02551f-2e31-4d8c-826a-c24f3e358d53
timestamp: 2026-01-26 14:57:55.560353
player_id: cpu_3d42b365
player_name: Maya
action: swap
card_rank: 4
card_suit: clubs
discard_top_json: {"rank": "10", "suit": "diamonds"}
decision_reason: swapped 4 into position 2, replaced 10
hand_json:
[{"rank": "A", "suit": "hearts", "face_up": true}, {"rank": "7", "suit": "spades", "face_up": false}, {"rank": "4", "suit": "clubs", "face_up": true}, {"rank": "10", "suit": "clubs", "face_up": false}, {"rank": "5", "suit": "hearts", "face_up": true}, {"rank": "A", "suit": "spades", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "K", "suit": "diamonds"}, {"rank": "4", "suit": "spades"}, {"rank": "J", "suit": "hearts"}], "Marcus": [{"rank": "2", "suit": "hearts"}, {"rank": "7", "suit": "diamonds"}], "River": [{"rank": "A", "suit": "clubs"}, {"rank": "10", "suit": "spades"}], "Kenji": [{"rank": "10", "suit": "hearts"}, {"rank": "4", "suit": "clubs"}], "Player": [{"rank": "9", "suit": "spades"}, {"rank": "5", "suit": "clubs"}]}


game_id: ff02551f-2e31-4d8c-826a-c24f3e358d53
timestamp: 2026-01-26 14:57:56.790354
player_id: cpu_009cb379
player_name: Marcus
action: draw_deck
card_rank: 10
card_suit: diamonds
discard_top_json: {"rank": "10", "suit": "diamonds"}
decision_reason: drew from deck
hand_json:
[{"rank": "9", "suit": "diamonds", "face_up": false}, {"rank": "2", "suit": "hearts", "face_up": true}, {"rank": "2", "suit": "clubs", "face_up": false}, {"rank": "8", "suit": "hearts", "face_up": false}, {"rank": "Q", "suit": "diamonds", "face_up": false}, {"rank": "7", "suit": "diamonds", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "K", "suit": "diamonds"}, {"rank": "4", "suit": "spades"}, {"rank": "J", "suit": "hearts"}], "Maya": [{"rank": "A", "suit": "hearts"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}], "River": [{"rank": "A", "suit": "clubs"}, {"rank": "10", "suit": "spades"}], "Kenji": [{"rank": "10", "suit": "hearts"}, {"rank": "4", "suit": "clubs"}], "Player": [{"rank": "9", "suit": "spades"}, {"rank": "5", "suit": "clubs"}]}


game_id: ff02551f-2e31-4d8c-826a-c24f3e358d53
timestamp: 2026-01-26 14:57:58.622709
player_id: cpu_c56fc0a3
player_name: River
action: take_discard
card_rank: 10
card_suit: diamonds
discard_top_json: {"rank": "10", "suit": "diamonds"}
decision_reason: took 10 from discard
hand_json:
[{"rank": "A", "suit": "clubs", "face_up": true}, {"rank": "7", "suit": "diamonds", "face_up": false}, {"rank": "2", "suit": "diamonds", "face_up": false}, {"rank": "4", "suit": "diamonds", "face_up": false}, {"rank": "10", "suit": "spades", "face_up": true}, {"rank": "9", "suit": "hearts", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "K", "suit": "diamonds"}, {"rank": "4", "suit": "spades"}, {"rank": "J", "suit": "hearts"}], "Maya": [{"rank": "A", "suit": "hearts"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}], "Marcus": [{"rank": "2", "suit": "hearts"}, {"rank": "7", "suit": "diamonds"}], "Kenji": [{"rank": "10", "suit": "hearts"}, {"rank": "4", "suit": "clubs"}], "Player": [{"rank": "9", "suit": "spades"}, {"rank": "5", "suit": "clubs"}]}


game_id: ff02551f-2e31-4d8c-826a-c24f3e358d53
timestamp: 2026-01-26 14:57:59.239492
player_id: cpu_c56fc0a3
player_name: River
action: swap
card_rank: 10
card_suit: diamonds
discard_top_json: {"rank": "7", "suit": "diamonds"}
decision_reason: swapped 10 into position 1, replaced 7
hand_json:
[{"rank": "A", "suit": "clubs", "face_up": true}, {"rank": "10", "suit": "diamonds", "face_up": true}, {"rank": "2", "suit": "diamonds", "face_up": false}, {"rank": "4", "suit": "diamonds", "face_up": false}, {"rank": "10", "suit": "spades", "face_up": true}, {"rank": "9", "suit": "hearts", "face_up": false}]

visible_opponents_json:
{"ADLee": [{"rank": "K", "suit": "diamonds"}, {"rank": "4", "suit": "spades"}, {"rank": "J", "suit": "hearts"}], "Maya": [{"rank": "A", "suit": "hearts"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}], "Marcus": [{"rank": "2", "suit": "hearts"}, {"rank": "7", "suit": "diamonds"}], "Kenji": [{"rank": "10", "suit": "hearts"}, {"rank": "4", "suit": "clubs"}], "Player": [{"rank": "9", "suit": "spades"}, {"rank": "5", "suit": "clubs"}]}


game_id: ff02551f-2e31-4d8c-826a-c24f3e358d53
timestamp: 2026-01-26 14:58:00.299028
player_id: cpu_e7865aed
player_name: Kenji
action: take_discard
card_rank: 7
card_suit: diamonds
discard_top_json: {"rank": "10", "suit": "diamonds"}
decision_reason: took 7 from discard
hand_json:
[{"rank": "4", "suit": "hearts", "face_up": false}, {"rank": "10", "suit": "hearts", "face_up": true}, {"rank": "4", "suit": "spades", "face_up": false}, {"rank": "7", "suit": "clubs", "face_up": false}, {"rank": "2", "suit": "hearts", "face_up": false}, {"rank": "4", "suit": "clubs", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "K", "suit": "diamonds"}, {"rank": "4", "suit": "spades"}, {"rank": "J", "suit": "hearts"}], "Maya": [{"rank": "A", "suit": "hearts"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}], "Marcus": [{"rank": "2", "suit": "hearts"}, {"rank": "7", "suit": "diamonds"}], "River": [{"rank": "A", "suit": "clubs"}, {"rank": "10", "suit": "diamonds"}, {"rank": "10", "suit": "spades"}], "Player": [{"rank": "9", "suit": "spades"}, {"rank": "5", "suit": "clubs"}]}


game_id: ff02551f-2e31-4d8c-826a-c24f3e358d53
timestamp: 2026-01-26 14:58:00.751038
player_id: cpu_e7865aed
player_name: Kenji
action: swap
card_rank: 7
card_suit: diamonds
discard_top_json: {"rank": "10", "suit": "hearts"}
decision_reason: swapped 7 into position 1, replaced 10
hand_json:
[{"rank": "4", "suit": "hearts", "face_up": false}, {"rank": "7", "suit": "diamonds", "face_up": true}, {"rank": "4", "suit": "spades", "face_up": false}, {"rank": "7", "suit": "clubs", "face_up": false}, {"rank": "2", "suit": "hearts", "face_up": false}, {"rank": "4", "suit": "clubs", "face_up": true}]

visible_opponents_json:
{"ADLee": [{"rank": "K", "suit": "diamonds"}, {"rank": "4", "suit": "spades"}, {"rank": "J", "suit": "hearts"}], "Maya": [{"rank": "A", "suit": "hearts"}, {"rank": "4", "suit": "clubs"}, {"rank": "5", "suit": "hearts"}], "Marcus": [{"rank": "2", "suit": "hearts"}, {"rank": "7", "suit": "diamonds"}], "River": [{"rank": "A", "suit": "clubs"}, {"rank": "10", "suit": "diamonds"}, {"rank": "10", "suit": "spades"}], "Player": [{"rank": "9", "suit": "spades"}, {"rank": "5", "suit": "clubs"}]}


