0430_094833_robustness_job_000007/source/baseline -> 404 2026-04-30 04:28:25,855 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000019/source/baseline -> 404 2026-04-30 04:28:26,398 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000025/source/baseline -> 404 2026-04-30 04:28:26,922 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000001/source/baseline -> 404 2026-04-30 04:28:27,490 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000013/source/baseline -> 404 2026-04-30 04:28:27,942 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/context-pack -> 200 2026-04-30 04:28:28,487 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/context-pack -> 200 2026-04-30 04:28:28,983 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/context-pack -> 200 2026-04-30 04:28:29,541 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000002/files -> 200 2026-04-30 04:28:30,064 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000002/files -> 200 2026-04-30 04:28:30,612 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000001/files -> 200 2026-04-30 04:28:31,117 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000003/files -> 200 2026-04-30 04:28:31,617 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000004/files -> 200 2026-04-30 04:28:32,166 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033746_277743_dynamic_role_switching_20260430_123736_smoke/results -> 200 2026-04-30 04:28:32,726 INFO [battle_engine.api] GET /runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval -> 200 2026-04-30 04:28:33,250 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000002/logs/stderr -> 200 2026-04-30 04:28:33,762 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000009/logs/stderr -> 200 2026-04-30 04:28:34,240 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000002/logs/stdout -> 200 2026-04-30 04:28:34,800 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k/jobs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k_job_000001/logs/stdout -> 200 2026-04-30 04:28:35,317 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000011/logs/stderr -> 200 2026-04-30 04:28:35,860 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k/jobs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k_job_000007/logs/stdout -> 200 2026-04-30 04:28:36,391 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000004/logs/stderr -> 200 2026-04-30 04:28:36,906 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k/jobs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k_job_000009/logs/stdout -> 200 2026-04-30 04:28:37,430 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000020/logs/stderr -> 200 2026-04-30 04:28:37,796 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:28:37,828 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:28:37,958 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k/jobs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k_job_000004/logs/stdout -> 200 2026-04-30 04:28:38,481 INFO [battle_engine.api] GET /debug/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:28:39,029 INFO [battle_engine.api] GET /debug/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000001 -> 200 2026-04-30 04:28:39,520 INFO [battle_engine.api] GET /debug/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000004 -> 200 2026-04-30 04:28:40,028 INFO [battle_engine.api] GET /debug/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000003 -> 200 2026-04-30 04:28:40,588 INFO [battle_engine.api] GET /debug/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000002 -> 200 2026-04-30 04:28:41,079 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000008/logs/stderr -> 200 2026-04-30 04:28:41,602 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k/jobs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k_job_000018/source/your_best -> 200 2026-04-30 04:28:42,104 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000003/logs/stdout -> 200 2026-04-30 04:28:42,632 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k/jobs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k_job_000005/logs/stdout -> 200 2026-04-30 04:28:43,161 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000006/logs/stdout -> 200 2026-04-30 04:28:43,656 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k/jobs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k_job_000006/logs/stdout -> 200 2026-04-30 04:28:44,198 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000013/logs/stderr -> 200 2026-04-30 04:28:44,806 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:28:45,267 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000001/logs/stdout -> 200 2026-04-30 04:28:45,812 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000030/logs/stdout -> 200 2026-04-30 04:28:46,372 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000006/logs/stderr -> 200 2026-04-30 04:28:46,908 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000025/source/baseline -> 200 2026-04-30 04:28:47,438 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k/jobs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k_job_000026/logs/stderr -> 200 2026-04-30 04:28:47,886 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke_job_000002/source/your_best -> 404 2026-04-30 04:28:48,472 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke_job_000001/source/your_best -> 404 2026-04-30 04:28:48,953 INFO [battle_engine.api] GET /debug/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000005 -> 200 2026-04-30 04:28:49,448 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:28:50,041 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:28:50,604 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:28:51,136 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:28:51,620 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:28:52,094 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033727_455115_risk_aware_courier_20260430_123510_layout_top_k/context-pack -> 200 2026-04-30 04:28:52,628 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034058_281107_risk_aware_courier_20260430_123920_layout_top_k/context-pack -> 200 2026-04-30 04:28:53,210 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010829_682637_portal_planner_defense_20260430_100806_smoke/context-pack -> 200 2026-04-30 04:28:53,722 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/results -> 200 2026-04-30 04:28:54,125 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_042837_817275_risk_courier_portal_20260430_042826_smoke/results -> 200 2026-04-30 04:28:54,201 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:28:54,741 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000005 -> 200 2026-04-30 04:28:55,257 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:28:55,814 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:28:56,360 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:28:56,877 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:28:57,450 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:28:57,942 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:28:58,446 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:28:58,970 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:28:59,528 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:29:00,066 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:29:00,572 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:29:01,088 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:29:01,251 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:29:01,632 INFO [battle_engine.api] GET /debug/runs/run_20260430_033936_301174_risk_aware_courier_20260430_123920_smoke/jobs/run_20260430_033936_301174_risk_aware_courier_20260430_123920_smoke_job_000002/source/baseline -> 200 2026-04-30 04:29:02,176 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000001 -> 200 2026-04-30 04:29:02,704 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000003 -> 200 2026-04-30 04:29:03,227 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000002 -> 200 2026-04-30 04:29:03,732 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000004 -> 200 2026-04-30 04:29:04,232 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000005 -> 200 2026-04-30 04:29:04,741 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000005 -> 200 2026-04-30 04:29:05,254 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:29:05,775 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:29:06,315 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:29:06,829 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke_job_000001/source/baseline -> 404 2026-04-30 04:29:07,352 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:29:07,930 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke_job_000002/source/your_best -> 404 2026-04-30 04:29:08,434 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:29:08,957 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke_job_000001/source/baseline -> 404 2026-04-30 04:29:09,481 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke_job_000002/source/baseline -> 404 2026-04-30 04:29:10,076 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:29:10,535 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:29:11,057 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:29:11,580 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke_job_000002/source/baseline -> 404 2026-04-30 04:29:12,114 INFO [battle_engine.api] GET /runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval -> 200 2026-04-30 04:29:12,674 INFO [battle_engine.api] GET /runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval -> 200 2026-04-30 04:29:13,159 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033746_277743_dynamic_role_switching_20260430_123736_smoke/jobs -> 200 2026-04-30 04:29:13,701 INFO [battle_engine.api] GET /debug/runs/run_20260430_033739_450058_capsule_power_play_20260430_033142_smoke/jobs/run_20260430_033739_450058_capsule_power_play_20260430_033142_smoke_job_000002/source/your_best -> 200 2026-04-30 04:29:14,212 INFO [battle_engine.api] GET /debug/runs/run_20260430_033747_561049_capsule_power_play_20260430_033723_smoke/jobs/run_20260430_033747_561049_capsule_power_play_20260430_033723_smoke_job_000001/source/your_best -> 200 2026-04-30 04:29:14,716 INFO [battle_engine.api] GET /debug/runs/run_20260430_033739_450058_capsule_power_play_20260430_033142_smoke/jobs/run_20260430_033739_450058_capsule_power_play_20260430_033142_smoke_job_000001/source/your_best -> 200 2026-04-30 04:29:15,248 INFO [battle_engine.api] GET /debug/runs/run_20260430_033747_561049_capsule_power_play_20260430_033723_smoke/jobs/run_20260430_033747_561049_capsule_power_play_20260430_033723_smoke_job_000002/source/your_best -> 200 2026-04-30 04:29:15,756 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:29:16,302 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:29:16,808 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:29:17,333 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:29:17,851 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:29:18,392 INFO [battle_engine.api] GET /debug/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:29:18,955 INFO [battle_engine.api] GET /debug/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000004 -> 200 2026-04-30 04:29:19,502 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:29:19,993 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:29:20,534 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:29:21,136 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:29:21,618 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:29:22,160 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:29:22,676 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:29:23,178 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:29:23,695 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:29:24,214 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:29:24,796 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:29:25,302 INFO [battle_engine.api] GET /debug/runs/run_20260430_033259_512102_capsule_power_play_20260430_033142_smoke/jobs/run_20260430_033259_512102_capsule_power_play_20260430_033142_smoke_job_000002/source/your_best -> 404 2026-04-30 04:29:25,853 INFO [battle_engine.api] GET /debug/runs/run_20260430_033259_512102_capsule_power_play_20260430_033142_smoke/jobs/run_20260430_033259_512102_capsule_power_play_20260430_033142_smoke_job_000001/source/your_best -> 404 2026-04-30 04:29:26,375 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:29:26,902 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:29:27,421 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:29:27,962 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:29:28,504 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:29:29,007 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:29:29,560 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:29:30,083 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/results -> 200 2026-04-30 04:29:30,608 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs -> 200 2026-04-30 04:29:31,129 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs -> 200 2026-04-30 04:29:31,686 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs -> 200 2026-04-30 04:29:32,192 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/results -> 200 2026-04-30 04:29:32,751 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/results -> 200 2026-04-30 04:29:33,290 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/results -> 200 2026-04-30 04:29:33,809 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/results -> 200 2026-04-30 04:29:34,357 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/results -> 200 2026-04-30 04:29:34,867 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs -> 200 2026-04-30 04:29:35,365 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000003 -> 200 2026-04-30 04:29:35,923 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000004 -> 200 2026-04-30 04:29:36,440 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000002 -> 200 2026-04-30 04:29:36,986 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000001 -> 200 2026-04-30 04:29:37,523 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/context-pack -> 200 2026-04-30 04:29:38,021 INFO [battle_engine.api] GET /debug/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000001 -> 200 2026-04-30 04:29:38,537 INFO [battle_engine.api] GET /debug/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000002 -> 200 2026-04-30 04:29:39,061 INFO [battle_engine.api] GET /debug/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000001 -> 200 2026-04-30 04:29:39,563 INFO [battle_engine.api] GET /debug/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000001 -> 200 2026-04-30 04:29:40,072 INFO [battle_engine.api] GET /debug/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000001 -> 200 2026-04-30 04:29:40,619 INFO [battle_engine.api] GET /debug/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000002 -> 200 2026-04-30 04:29:40,673 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_042901_237984_risk_courier_portal_20260430_042826_candidate_eval/results -> 200 2026-04-30 04:29:41,141 INFO [battle_engine.api] GET /debug/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000001 -> 200 2026-04-30 04:29:41,673 INFO [battle_engine.api] GET /debug/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000002 -> 200 2026-04-30 04:29:42,186 INFO [battle_engine.api] GET /debug/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000002 -> 200 2026-04-30 04:29:42,679 INFO [battle_engine.api] GET /debug/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000002 -> 200 2026-04-30 04:29:43,253 INFO [battle_engine.api] GET /debug/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000001 -> 200 2026-04-30 04:29:43,785 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000001 -> 200 2026-04-30 04:29:44,302 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000002 -> 200 2026-04-30 04:29:44,834 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000001 -> 200 2026-04-30 04:29:45,380 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000001 -> 200 2026-04-30 04:29:45,923 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000001 -> 200 2026-04-30 04:29:46,476 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000002 -> 200 2026-04-30 04:29:47,014 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000001 -> 200 2026-04-30 04:29:47,506 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000002 -> 200 2026-04-30 04:29:48,018 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000002 -> 200 2026-04-30 04:29:48,570 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000002 -> 200 2026-04-30 04:29:49,104 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000001 -> 200 2026-04-30 04:29:49,612 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000001/source/your_best -> 200 2026-04-30 04:29:50,130 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000002/source/your_best -> 200 2026-04-30 04:29:50,649 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000002/source/your_best -> 200 2026-04-30 04:29:51,218 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000002/source/your_best -> 200 2026-04-30 04:29:51,697 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000001/source/your_best -> 404 2026-04-30 04:29:52,220 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000002/source/baseline -> 200 2026-04-30 04:29:52,753 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000001/source/baseline -> 200 2026-04-30 04:29:53,274 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000001/source/baseline -> 200 2026-04-30 04:29:53,840 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000002/source/baseline -> 200 2026-04-30 04:29:54,326 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000001/source/baseline -> 404 2026-04-30 04:29:54,833 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000002/source/baseline -> 200 2026-04-30 04:29:55,401 INFO [battle_engine.api] GET /debug/runs/run_20260430_005318_214570_portal_planner_defense_20260430_095235_smoke/jobs/run_20260430_005318_214570_portal_planner_defense_20260430_095235_smoke_job_000002/source/baseline -> 200 2026-04-30 04:29:55,915 INFO [battle_engine.api] GET /debug/runs/run_20260430_005318_214570_portal_planner_defense_20260430_095235_smoke/jobs/run_20260430_005318_214570_portal_planner_defense_20260430_095235_smoke_job_000001/source/baseline -> 200 2026-04-30 04:29:56,422 INFO [battle_engine.api] GET /debug/runs/run_20260430_005447_340603_dynamic_role_switching_20260430_095422_smoke/jobs/run_20260430_005447_340603_dynamic_role_switching_20260430_095422_smoke_job_000002/source/baseline -> 200 2026-04-30 04:29:56,958 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/results -> 200 2026-04-30 04:29:57,543 INFO [battle_engine.api] GET /debug/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000001 -> 200 2026-04-30 04:29:58,064 INFO [battle_engine.api] GET /debug/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000002 -> 200 2026-04-30 04:29:58,565 INFO [battle_engine.api] GET /debug/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000001 -> 200 2026-04-30 04:29:59,065 INFO [battle_engine.api] GET /debug/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000002 -> 200 2026-04-30 04:29:59,607 INFO [battle_engine.api] GET /debug/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000002 -> 200 2026-04-30 04:30:00,151 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000004/result -> 200 2026-04-30 04:30:00,709 INFO [battle_engine.api] GET /debug/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:30:01,152 INFO [battle_engine.api] GET /debug/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:30:01,704 INFO [battle_engine.api] GET /debug/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:30:02,162 INFO [battle_engine.api] GET /debug/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:30:02,697 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/jobs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval_job_000003/result -> 200 2026-04-30 04:30:03,232 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000001 -> 200 2026-04-30 04:30:03,754 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000002 -> 200 2026-04-30 04:30:04,273 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000001 -> 200 2026-04-30 04:30:04,760 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000002 -> 200 2026-04-30 04:30:05,298 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000002 -> 200 2026-04-30 04:30:05,807 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000001/source/your_best -> 200 2026-04-30 04:30:06,336 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000001/source/your_best -> 404 2026-04-30 04:30:06,864 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000002/source/your_best -> 404 2026-04-30 04:30:07,366 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000002/source/your_best -> 200 2026-04-30 04:30:07,859 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000002/source/your_best -> 404 2026-04-30 04:30:08,422 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000002/source/baseline -> 404 2026-04-30 04:30:08,924 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000002/source/baseline -> 404 2026-04-30 04:30:09,470 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000002/source/baseline -> 200 2026-04-30 04:30:10,034 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000001/source/baseline -> 404 2026-04-30 04:30:10,546 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000001/source/baseline -> 200 2026-04-30 04:30:10,688 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:30:10,717 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:30:11,100 INFO [battle_engine.api] GET /debug/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:30:11,634 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/jobs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval_job_000004/result -> 200 2026-04-30 04:30:12,173 INFO [battle_engine.api] GET /debug/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:30:12,708 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/jobs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval_job_000003/result -> 200 2026-04-30 04:30:13,297 INFO [battle_engine.api] GET /debug/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:30:13,815 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000001/result -> 200 2026-04-30 04:30:14,274 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000005/result -> 200 2026-04-30 04:30:14,804 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000001/result -> 200 2026-04-30 04:30:15,321 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/jobs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval_job_000004/result -> 200 2026-04-30 04:30:15,817 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000005/result -> 200 2026-04-30 04:30:16,349 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval/jobs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval_job_000005/result -> 200 2026-04-30 04:30:16,882 INFO [battle_engine.api] GET /debug/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/jobs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:30:17,413 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000003/result -> 200 2026-04-30 04:30:17,956 INFO [battle_engine.api] GET /debug/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/jobs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:30:18,474 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000001/result -> 200 2026-04-30 04:30:19,026 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000002/result -> 200 2026-04-30 04:30:19,528 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/jobs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval_job_000003/result -> 200 2026-04-30 04:30:20,048 INFO [battle_engine.api] GET /debug/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:30:20,599 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000004/result -> 200 2026-04-30 04:30:21,118 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000004/result -> 200 2026-04-30 04:30:21,628 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000005/result -> 200 2026-04-30 04:30:22,168 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/jobs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval_job_000002/result -> 200 2026-04-30 04:30:22,667 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000003/result -> 200 2026-04-30 04:30:23,193 INFO [battle_engine.api] GET /debug/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/jobs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:30:23,712 INFO [battle_engine.api] GET /debug/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:30:24,263 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000002/result -> 200 2026-04-30 04:30:24,772 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000005/result -> 200 2026-04-30 04:30:25,323 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000003/result -> 200 2026-04-30 04:30:25,832 INFO [battle_engine.api] GET /debug/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:30:25,981 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043010_709169_risk_courier_portal_20260430_043000_smoke/results -> 200 2026-04-30 04:30:26,358 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/jobs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval_job_000005/result -> 200 2026-04-30 04:30:26,716 INFO [battle_engine.api] GET /api/v1/health -> 200 2026-04-30 04:30:26,733 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:30:26,736 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:30:26,754 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:30:26,776 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:30:26,805 INFO [battle_engine.api] GET /api/v1/candidates -> 200 2026-04-30 04:30:26,882 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000002/result -> 200 2026-04-30 04:30:27,368 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/jobs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval_job_000002/result -> 200 2026-04-30 04:30:27,927 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/jobs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval_job_000003/result -> 200 2026-04-30 04:30:28,479 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/jobs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval_job_000005/result -> 200 2026-04-30 04:30:29,031 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000001/result -> 200 2026-04-30 04:30:29,496 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/jobs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval_job_000001/result -> 200 2026-04-30 04:30:30,003 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000004/result -> 200 2026-04-30 04:30:30,524 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/jobs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval_job_000004/result -> 200 2026-04-30 04:30:31,111 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000002/result -> 200 2026-04-30 04:30:31,640 INFO [battle_engine.api] GET /debug/runs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval/jobs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:30:32,170 INFO [battle_engine.api] GET /debug/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:30:32,695 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/jobs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval_job_000001/result -> 200 2026-04-30 04:30:32,890 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:30:33,226 INFO [battle_engine.api] GET /debug/runs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval/jobs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:30:33,745 INFO [battle_engine.api] GET /debug/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:30:34,106 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041026_791265_dynamic_role_switching_20260430_130855_candidate_eval/artifacts/results.jsonl -> 200 2026-04-30 04:30:34,278 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000002/result -> 200 2026-04-30 04:30:34,775 INFO [battle_engine.api] GET /debug/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/jobs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:30:35,320 INFO [battle_engine.api] GET /debug/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:30:35,859 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/jobs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval_job_000001/result -> 200 2026-04-30 04:30:36,386 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/jobs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval_job_000004/result -> 200 2026-04-30 04:30:36,840 INFO [battle_engine.api] GET /debug/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/jobs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:30:37,397 INFO [battle_engine.api] GET /debug/runs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval/jobs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:30:37,928 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000002/result -> 200 2026-04-30 04:30:38,435 INFO [battle_engine.api] GET /debug/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/jobs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:30:38,953 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/jobs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval_job_000002/result -> 200 2026-04-30 04:30:39,459 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000001/result -> 200 2026-04-30 04:30:39,995 INFO [battle_engine.api] GET /debug/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/jobs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:30:40,529 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:30:40,531 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:30:40,545 INFO [battle_engine.api] GET /debug/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:30:41,027 INFO [battle_engine.api] GET /api/v1/health -> 200 2026-04-30 04:30:41,092 INFO [battle_engine.api] GET /debug/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/jobs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:30:41,585 INFO [battle_engine.api] GET /debug/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:30:42,107 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval/jobs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval_job_000002/result -> 200 2026-04-30 04:30:42,473 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041242_016596_invader_intercept_defense_20260430_130902_robustness/jobs -> 200 2026-04-30 04:30:42,676 INFO [battle_engine.api] GET /debug/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/jobs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:30:42,938 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:30:43,132 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000002/result -> 200 2026-04-30 04:30:43,658 INFO [battle_engine.api] GET /debug/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:30:44,158 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval/jobs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval_job_000003/result -> 200 2026-04-30 04:30:44,664 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/jobs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval_job_000005/result -> 200 2026-04-30 04:30:45,210 INFO [battle_engine.api] GET /debug/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:30:45,761 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000004/result -> 200 2026-04-30 04:30:46,255 INFO [battle_engine.api] GET /debug/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:30:46,436 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:30:46,781 INFO [battle_engine.api] GET /debug/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/jobs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:30:47,330 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/jobs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval_job_000001/result -> 200 2026-04-30 04:30:47,873 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000004/result -> 200 2026-04-30 04:30:48,408 INFO [battle_engine.api] GET /debug/runs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval/jobs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:30:48,811 INFO [battle_engine.api] GET /runs/run_20260430_041242_016596_invader_intercept_defense_20260430_130902_robustness/jobs/run_20260430_041242_016596_invader_intercept_defense_20260430_130902_robustness_job_000031/stdout.log -> 404 2026-04-30 04:30:48,813 INFO [battle_engine.api] GET /runs/run_20260430_041242_016596_invader_intercept_defense_20260430_130902_robustness/jobs/run_20260430_041242_016596_invader_intercept_defense_20260430_130902_robustness_job_000031/stderr.log -> 404 2026-04-30 04:30:49,029 INFO [battle_engine.api] GET /debug/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/jobs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:30:49,492 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval/jobs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval_job_000001/result -> 200 2026-04-30 04:30:50,020 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000004/result -> 200 2026-04-30 04:30:50,551 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000005/result -> 200 2026-04-30 04:30:51,062 INFO [battle_engine.api] GET /debug/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/jobs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:30:51,623 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000003/result -> 200 2026-04-30 04:30:52,188 INFO [battle_engine.api] GET /debug/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:30:52,590 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:30:52,719 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000005/result -> 200 2026-04-30 04:30:53,229 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/jobs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval_job_000005/result -> 200 2026-04-30 04:30:53,738 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000001/result -> 200 2026-04-30 04:30:54,276 INFO [battle_engine.api] GET /debug/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/jobs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:30:54,815 INFO [battle_engine.api] GET /debug/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:30:55,388 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000003/result -> 200 2026-04-30 04:30:55,858 INFO [battle_engine.api] GET /debug/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:30:56,361 INFO [battle_engine.api] GET /debug/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:30:56,884 INFO [battle_engine.api] GET /debug/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:30:57,420 INFO [battle_engine.api] GET /debug/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/jobs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:30:57,802 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:30:57,936 INFO [battle_engine.api] GET /debug/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/jobs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:30:58,125 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:30:58,455 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:30:58,456 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043052_585517_capsule_power_play_20260430_043040_smoke -> 200 2026-04-30 04:30:58,459 INFO [battle_engine.api] GET /debug/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/jobs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:30:58,981 INFO [battle_engine.api] GET /debug/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:30:59,013 INFO [battle_engine.api] GET /candidates -> 200 2026-04-30 04:30:59,487 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval/jobs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval_job_000004/result -> 200 2026-04-30 04:30:59,556 INFO [battle_engine.api] GET /layouts -> 200 2026-04-30 04:30:59,613 INFO [battle_engine.api] GET /leaderboard -> 404 2026-04-30 04:30:59,746 INFO [battle_engine.api] GET /history -> 200 2026-04-30 04:30:59,995 INFO [battle_engine.api] GET /debug -> 200 2026-04-30 04:31:00,017 INFO [battle_engine.api] GET /debug/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/jobs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:31:00,321 INFO [battle_engine.api] GET /leaderboard -> 404 2026-04-30 04:31:00,503 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/jobs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval_job_000002/result -> 200 2026-04-30 04:31:00,539 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_095819 -> 200 2026-04-30 04:31:00,933 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_095825 -> 200 2026-04-30 04:31:01,017 INFO [battle_engine.api] GET /debug/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/jobs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:31:01,079 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_123920 -> 200 2026-04-30 04:31:01,089 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_095900 -> 200 2026-04-30 04:31:01,416 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_095814 -> 200 2026-04-30 04:31:01,521 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000003/result -> 200 2026-04-30 04:31:01,719 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_130902 -> 200 2026-04-30 04:31:01,781 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_100532 -> 200 2026-04-30 04:31:02,063 INFO [battle_engine.api] GET /debug/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/jobs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:31:02,580 INFO [battle_engine.api] GET /leaderboard -> 404 2026-04-30 04:31:02,620 INFO [battle_engine.api] GET /debug/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/jobs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:31:02,697 INFO [battle_engine.api] GET /leaderboard -> 404 2026-04-30 04:31:02,716 INFO [battle_engine.api] GET /runs/run_20260430_043032_872992_risk_courier_portal_20260430_043000_candidate_eval -> 200 2026-04-30 04:31:03,130 INFO [battle_engine.api] GET /debug/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:31:03,487 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043052_585517_capsule_power_play_20260430_043040_smoke -> 200 2026-04-30 04:31:03,673 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000003/result -> 200 2026-04-30 04:31:04,174 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000003/result -> 200 2026-04-30 04:31:04,692 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000001/result -> 200 2026-04-30 04:31:05,275 INFO [battle_engine.api] GET /runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval -> 200 2026-04-30 04:31:05,785 INFO [battle_engine.api] GET /debug/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:31:06,291 INFO [battle_engine.api] GET /debug/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:31:06,457 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041152_815235_risk_aware_courier_20260430_123920_robustness/jobs -> 200 2026-04-30 04:31:06,465 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041152_815235_risk_aware_courier_20260430_123920_robustness/results -> 200 2026-04-30 04:31:06,633 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041152_815235_risk_aware_courier_20260430_123920_robustness/results -> 200 2026-04-30 04:31:06,839 INFO [battle_engine.api] GET /debug/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:31:07,324 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000005/result -> 200 2026-04-30 04:31:07,858 INFO [battle_engine.api] GET /debug/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:31:08,454 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000005/result -> 200 2026-04-30 04:31:08,519 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043052_585517_capsule_power_play_20260430_043040_smoke -> 200 2026-04-30 04:31:08,942 INFO [battle_engine.api] GET /debug/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:31:09,512 INFO [battle_engine.api] GET /debug/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:31:09,925 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041152_815235_risk_aware_courier_20260430_123920_robustness/results -> 200 2026-04-30 04:31:10,016 INFO [battle_engine.api] GET /debug/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:31:10,539 INFO [battle_engine.api] GET /debug/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:31:11,093 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/context-pack -> 200 2026-04-30 04:31:11,386 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043032_872992_risk_courier_portal_20260430_043000_candidate_eval/results -> 200 2026-04-30 04:31:11,579 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:31:12,117 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:31:12,619 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:31:13,122 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:31:13,550 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043052_585517_capsule_power_play_20260430_043040_smoke -> 200 2026-04-30 04:31:13,661 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:31:14,198 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:31:14,777 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:31:15,275 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:31:15,798 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:31:16,308 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:31:16,515 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043052_585517_capsule_power_play_20260430_043040_smoke/results -> 200 2026-04-30 04:31:16,837 INFO [battle_engine.api] GET /debug/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000001 -> 200 2026-04-30 04:31:17,328 INFO [battle_engine.api] GET /debug/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000005 -> 200 2026-04-30 04:31:17,866 INFO [battle_engine.api] GET /debug/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000004 -> 200 2026-04-30 04:31:18,409 INFO [battle_engine.api] GET /debug/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000003 -> 200 2026-04-30 04:31:18,914 INFO [battle_engine.api] GET /debug/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000002 -> 200 2026-04-30 04:31:19,429 INFO [battle_engine.api] GET /debug/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:31:19,937 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000002/result -> 200 2026-04-30 04:31:19,952 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041152_815235_risk_aware_courier_20260430_123920_robustness/results -> 200 2026-04-30 04:31:19,968 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041152_815235_risk_aware_courier_20260430_123920_robustness/results -> 200 2026-04-30 04:31:19,985 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041152_815235_risk_aware_courier_20260430_123920_robustness/jobs/run_20260430_041152_815235_risk_aware_courier_20260430_123920_robustness_job_000031/result -> 200 2026-04-30 04:31:19,987 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041152_815235_risk_aware_courier_20260430_123920_robustness/jobs/run_20260430_041152_815235_risk_aware_courier_20260430_123920_robustness_job_000030/result -> 200 2026-04-30 04:31:20,448 INFO [battle_engine.api] GET /debug/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:31:21,008 INFO [battle_engine.api] GET /debug/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:31:21,521 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000004/result -> 200 2026-04-30 04:31:22,082 INFO [battle_engine.api] GET /debug/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:31:22,624 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000001 -> 200 2026-04-30 04:31:23,110 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000005 -> 200 2026-04-30 04:31:23,668 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000004 -> 200 2026-04-30 04:31:24,131 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043032_872992_risk_courier_portal_20260430_043000_candidate_eval/context-pack -> 200 2026-04-30 04:31:24,132 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000003 -> 200 2026-04-30 04:31:24,216 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:31:24,232 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:31:24,236 INFO [battle_engine.api] GET /api/v1/candidates/risk_courier_portal_20260430_043000 -> 200 2026-04-30 04:31:24,237 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:31:24,254 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:31:24,649 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000002 -> 200 2026-04-30 04:31:25,122 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:31:25,199 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:31:25,723 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:31:26,198 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:31:26,716 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:31:27,264 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:31:27,794 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:31:28,329 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:31:28,892 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:31:29,404 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:31:29,913 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:31:30,457 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000001/files -> 200 2026-04-30 04:31:30,996 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000004/files -> 200 2026-04-30 04:31:31,558 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000003/files -> 200 2026-04-30 04:31:32,073 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000005/files -> 200 2026-04-30 04:31:32,104 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043125_107743_capsule_power_play_20260430_043040_candidate_eval -> 200 2026-04-30 04:31:32,559 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000002/files -> 200 2026-04-30 04:31:33,099 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000001/result -> 200 2026-04-30 04:31:33,613 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000003/result -> 200 2026-04-30 04:31:34,141 INFO [battle_engine.api] GET /debug/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:31:34,673 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000005/result -> 200 2026-04-30 04:31:35,237 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs -> 200 2026-04-30 04:31:35,745 INFO [battle_engine.api] GET /debug/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:31:36,248 INFO [battle_engine.api] GET /debug/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:31:36,783 INFO [battle_engine.api] GET /debug/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:31:37,134 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043125_107743_capsule_power_play_20260430_043040_candidate_eval -> 200 2026-04-30 04:31:37,328 INFO [battle_engine.api] GET /debug/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:31:37,835 INFO [battle_engine.api] GET /debug/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/jobs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:31:38,405 INFO [battle_engine.api] GET /debug/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:31:38,911 INFO [battle_engine.api] GET /api/v1/candidates/smoke_your_best/source -> 200 2026-04-30 04:31:39,432 INFO [battle_engine.api] GET /debug/runs/run_20260430_010151_490137_risk_aware_courier_20260430_100139_smoke/jobs/run_20260430_010151_490137_risk_aware_courier_20260430_100139_smoke_job_000002/source/your_best -> 200 2026-04-30 04:31:39,960 INFO [battle_engine.api] GET /debug/runs/run_20260430_034210_272100_dead_end_avoidance_20260430_034158_smoke/jobs/run_20260430_034210_272100_dead_end_avoidance_20260430_034158_smoke_job_000001/source/your_best -> 200 2026-04-30 04:31:40,475 INFO [battle_engine.api] GET /debug/runs/run_20260430_034210_272100_dead_end_avoidance_20260430_034158_smoke/jobs/run_20260430_034210_272100_dead_end_avoidance_20260430_034158_smoke_job_000002/source/your_best -> 200 2026-04-30 04:31:40,980 INFO [battle_engine.api] GET /debug/runs/run_20260430_033936_301174_risk_aware_courier_20260430_123920_smoke/jobs/run_20260430_033936_301174_risk_aware_courier_20260430_123920_smoke_job_000001/source/your_best -> 200 2026-04-30 04:31:41,469 INFO [battle_engine.api] GET /debug/runs/run_20260430_034402_710644_dead_end_avoidance_20260430_034351_smoke/jobs/run_20260430_034402_710644_dead_end_avoidance_20260430_034351_smoke_job_000001/source/your_best -> 200 2026-04-30 04:31:42,007 INFO [battle_engine.api] GET /debug/runs/run_20260430_010151_490137_risk_aware_courier_20260430_100139_smoke/jobs/run_20260430_010151_490137_risk_aware_courier_20260430_100139_smoke_job_000001/source/your_best -> 200 2026-04-30 04:31:42,165 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043125_107743_capsule_power_play_20260430_043040_candidate_eval -> 200 2026-04-30 04:31:42,526 INFO [battle_engine.api] GET /debug/runs/run_20260430_034402_710644_dead_end_avoidance_20260430_034351_smoke/jobs/run_20260430_034402_710644_dead_end_avoidance_20260430_034351_smoke_job_000002/source/your_best -> 200 2026-04-30 04:31:43,000 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:31:43,547 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke_job_000001/source/baseline -> 404 2026-04-30 04:31:44,018 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:31:44,563 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke_job_000002/source/baseline -> 404 2026-04-30 04:31:45,078 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/results -> 200 2026-04-30 04:31:45,581 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke/jobs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke_job_000001 -> 200 2026-04-30 04:31:46,120 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000001 -> 200 2026-04-30 04:31:46,638 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000002 -> 200 2026-04-30 04:31:47,197 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043125_107743_capsule_power_play_20260430_043040_candidate_eval -> 200 2026-04-30 04:31:47,214 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/context-pack -> 200 2026-04-30 04:31:47,680 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval/context-pack -> 200 2026-04-30 04:31:48,235 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/context-pack -> 200 2026-04-30 04:31:48,620 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:31:48,724 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/context-pack -> 200 2026-04-30 04:31:49,259 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:31:49,787 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:31:50,340 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:31:50,832 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:31:51,390 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:31:51,895 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs -> 200 2026-04-30 04:31:52,226 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043125_107743_capsule_power_play_20260430_043040_candidate_eval -> 200 2026-04-30 04:31:52,424 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:31:52,949 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:31:53,469 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:31:53,983 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:31:54,493 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:31:54,598 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:31:55,019 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:31:55,504 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:31:56,048 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:31:56,636 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:31:57,073 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:31:57,610 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:31:58,204 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:31:58,702 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:31:59,266 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:31:59,507 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043125_107743_capsule_power_play_20260430_043040_candidate_eval/results -> 200 2026-04-30 04:31:59,592 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043125_107743_capsule_power_play_20260430_043040_candidate_eval/artifacts/summary.csv -> 200 2026-04-30 04:31:59,596 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043125_107743_capsule_power_play_20260430_043040_candidate_eval/context-pack -> 200 2026-04-30 04:31:59,790 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010143_243471_food_roi_targeting_20260430_100058_candidate_eval/results -> 200 2026-04-30 04:32:00,313 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000003 -> 200 2026-04-30 04:32:00,864 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000002 -> 200 2026-04-30 04:32:01,358 INFO [battle_engine.api] GET /debug/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000005 -> 200 2026-04-30 04:32:01,946 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034020_929333_food_roi_targeting_20260430_123906_candidate_eval/results -> 200 2026-04-30 04:32:02,464 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000003/result -> 200 2026-04-30 04:32:03,001 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000004/result -> 200 2026-04-30 04:32:03,490 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000002/result -> 200 2026-04-30 04:32:04,044 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000004/result -> 200 2026-04-30 04:32:04,548 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000003/result -> 200 2026-04-30 04:32:05,086 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000001/result -> 200 2026-04-30 04:32:05,607 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000001/result -> 200 2026-04-30 04:32:06,147 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000002/result -> 200 2026-04-30 04:32:06,645 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/results -> 200 2026-04-30 04:32:07,165 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005447_340603_dynamic_role_switching_20260430_095422_smoke/jobs/run_20260430_005447_340603_dynamic_role_switching_20260430_095422_smoke_job_000002/files -> 200 2026-04-30 04:32:07,690 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005447_340603_dynamic_role_switching_20260430_095422_smoke/jobs/run_20260430_005447_340603_dynamic_role_switching_20260430_095422_smoke_job_000001/files -> 200 2026-04-30 04:32:08,259 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005447_340603_dynamic_role_switching_20260430_095422_smoke/jobs/run_20260430_005447_340603_dynamic_role_switching_20260430_095422_smoke_job_000001/result -> 200 2026-04-30 04:32:08,758 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000001/result -> 200 2026-04-30 04:32:09,305 INFO [battle_engine.api] GET /debug/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000002/source/your_best -> 200 2026-04-30 04:32:09,841 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000001/files -> 200 2026-04-30 04:32:10,366 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000002/files -> 200 2026-04-30 04:32:10,882 INFO [battle_engine.api] GET /debug/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000001/source/your_best -> 200 2026-04-30 04:32:11,388 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:32:11,932 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:32:12,447 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:32:13,001 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/context-pack -> 200 2026-04-30 04:32:13,517 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/results -> 200 2026-04-30 04:32:14,000 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/results -> 200 2026-04-30 04:32:14,549 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000002/files -> 200 2026-04-30 04:32:15,029 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000004/result -> 200 2026-04-30 04:32:15,604 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000001/files -> 200 2026-04-30 04:32:16,119 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000004/files -> 200 2026-04-30 04:32:16,619 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000003/files -> 200 2026-04-30 04:32:17,138 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000005/result -> 200 2026-04-30 04:32:17,677 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000002/result -> 200 2026-04-30 04:32:18,218 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000003/result -> 200 2026-04-30 04:32:18,744 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000001/result -> 200 2026-04-30 04:32:19,046 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:32:19,320 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000005/files -> 200 2026-04-30 04:32:19,585 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:32:19,821 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/results -> 200 2026-04-30 04:32:20,377 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/results -> 200 2026-04-30 04:32:20,938 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/results -> 200 2026-04-30 04:32:21,455 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:32:21,952 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:32:22,453 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:32:22,972 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:32:23,362 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:32:23,522 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:32:24,049 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:32:24,621 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k/jobs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k_job_000018/files -> 200 2026-04-30 04:32:24,790 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:32:25,099 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043154_590569_dynamic_role_switching_20260430_133142_smoke -> 200 2026-04-30 04:32:25,104 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043154_590569_dynamic_role_switching_20260430_133142_smoke/results -> 200 2026-04-30 04:32:25,112 INFO [battle_engine.api] GET /debug/runs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k/jobs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k_job_000018/source/your_best -> 200 2026-04-30 04:32:25,647 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/context-pack -> 200 2026-04-30 04:32:26,228 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000001 -> 200 2026-04-30 04:32:26,734 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000022 -> 200 2026-04-30 04:32:27,260 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000003 -> 200 2026-04-30 04:32:27,781 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000028 -> 200 2026-04-30 04:32:28,299 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000004 -> 200 2026-04-30 04:32:28,596 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043223_354772_risk_aware_courier_20260430_133213_smoke -> 200 2026-04-30 04:32:28,808 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000010 -> 200 2026-04-30 04:32:29,352 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000020 -> 200 2026-04-30 04:32:29,857 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000030 -> 200 2026-04-30 04:32:30,389 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000008 -> 200 2026-04-30 04:32:30,938 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000005 -> 200 2026-04-30 04:32:31,408 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000009 -> 200 2026-04-30 04:32:31,970 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000004 -> 200 2026-04-30 04:32:32,463 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000002 -> 200 2026-04-30 04:32:32,846 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:32:32,970 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043223_354772_risk_aware_courier_20260430_133213_smoke -> 200 2026-04-30 04:32:33,003 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000001 -> 200 2026-04-30 04:32:33,265 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043224_780229_invader_intercept_defense_20260430_133157_smoke -> 200 2026-04-30 04:32:33,523 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000023 -> 200 2026-04-30 04:32:34,077 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000006 -> 200 2026-04-30 04:32:34,567 INFO [battle_engine.api] GET /debug/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000003 -> 200 2026-04-30 04:32:35,117 INFO [battle_engine.api] GET /debug/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000003 -> 200 2026-04-30 04:32:35,638 INFO [battle_engine.api] GET /debug/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000002 -> 200 2026-04-30 04:32:36,143 INFO [battle_engine.api] GET /debug/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000004 -> 200 2026-04-30 04:32:36,437 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043223_354772_risk_aware_courier_20260430_133213_smoke/results -> 200 2026-04-30 04:32:36,679 INFO [battle_engine.api] GET /debug/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000002 -> 200 2026-04-30 04:32:37,158 INFO [battle_engine.api] GET /debug/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000001 -> 200 2026-04-30 04:32:37,703 INFO [battle_engine.api] GET /debug/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000005 -> 200 2026-04-30 04:32:38,214 INFO [battle_engine.api] GET /debug/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000025/source/baseline -> 200 2026-04-30 04:32:38,756 INFO [battle_engine.api] GET /debug/runs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k/jobs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k_job_000018/source/baseline -> 200 2026-04-30 04:32:39,278 INFO [battle_engine.api] GET /debug/runs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k/jobs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k_job_000012/source/baseline -> 200 2026-04-30 04:32:39,461 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:32:39,766 INFO [battle_engine.api] GET /debug/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000007/source/baseline -> 200 2026-04-30 04:32:40,336 INFO [battle_engine.api] GET /debug/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000013/source/baseline -> 200 2026-04-30 04:32:40,824 INFO [battle_engine.api] GET /debug/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000019/source/baseline -> 200 2026-04-30 04:32:41,368 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005318_214570_portal_planner_defense_20260430_095235_smoke/jobs/run_20260430_005318_214570_portal_planner_defense_20260430_095235_smoke_job_000002/result -> 200 2026-04-30 04:32:41,876 INFO [battle_engine.api] GET /debug/runs/run_20260430_033739_450058_capsule_power_play_20260430_033142_smoke/jobs/run_20260430_033739_450058_capsule_power_play_20260430_033142_smoke_job_000002/source/baseline -> 200 2026-04-30 04:32:42,194 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:32:42,418 INFO [battle_engine.api] GET /debug/runs/run_20260430_033739_450058_capsule_power_play_20260430_033142_smoke/jobs/run_20260430_033739_450058_capsule_power_play_20260430_033142_smoke_job_000001/source/baseline -> 200 2026-04-30 04:32:42,976 INFO [battle_engine.api] GET /debug/runs/run_20260430_033747_561049_capsule_power_play_20260430_033723_smoke/jobs/run_20260430_033747_561049_capsule_power_play_20260430_033723_smoke_job_000002/source/baseline -> 200 2026-04-30 04:32:43,469 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000005/files -> 200 2026-04-30 04:32:44,010 INFO [battle_engine.api] GET /debug/runs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke/jobs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke_job_000002/source/your_best -> 200 2026-04-30 04:32:44,489 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005318_214570_portal_planner_defense_20260430_095235_smoke/jobs/run_20260430_005318_214570_portal_planner_defense_20260430_095235_smoke_job_000001/result -> 200 2026-04-30 04:32:45,029 INFO [battle_engine.api] GET /debug/runs/run_20260430_033259_512102_capsule_power_play_20260430_033142_smoke/jobs/run_20260430_033259_512102_capsule_power_play_20260430_033142_smoke_job_000001/source/baseline -> 404 2026-04-30 04:32:45,567 INFO [battle_engine.api] GET /debug/runs/run_20260430_033747_561049_capsule_power_play_20260430_033723_smoke/jobs/run_20260430_033747_561049_capsule_power_play_20260430_033723_smoke_job_000001/source/baseline -> 200 2026-04-30 04:32:45,949 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043224_780229_invader_intercept_defense_20260430_133157_smoke -> 200 2026-04-30 04:32:46,108 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005318_214570_portal_planner_defense_20260430_095235_smoke/jobs/run_20260430_005318_214570_portal_planner_defense_20260430_095235_smoke_job_000002/files -> 200 2026-04-30 04:32:46,634 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_896956_food_roi_targeting_20260430_123906_smoke/jobs/run_20260430_033915_896956_food_roi_targeting_20260430_123906_smoke_job_000002/source/baseline -> 200 2026-04-30 04:32:46,808 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043242_187982_risk_aware_courier_20260430_133213_candidate_eval -> 200 2026-04-30 04:32:47,006 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:32:47,166 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005318_214570_portal_planner_defense_20260430_095235_smoke/jobs/run_20260430_005318_214570_portal_planner_defense_20260430_095235_smoke_job_000001/files -> 200 2026-04-30 04:32:47,715 INFO [battle_engine.api] GET /debug/runs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke/jobs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke_job_000001/source/your_best -> 200 2026-04-30 04:32:48,259 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000001/files -> 200 2026-04-30 04:32:48,554 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043224_780229_invader_intercept_defense_20260430_133157_smoke/results -> 200 2026-04-30 04:32:48,777 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000004/files -> 200 2026-04-30 04:32:49,313 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000005/files -> 200 2026-04-30 04:32:49,861 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000001/files -> 200 2026-04-30 04:32:50,371 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033727_455115_risk_aware_courier_20260430_123510_layout_top_k/jobs/run_20260430_033727_455115_risk_aware_courier_20260430_123510_layout_top_k_job_000014/logs/stdout -> 200 2026-04-30 04:32:50,893 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033727_455115_risk_aware_courier_20260430_123510_layout_top_k/jobs/run_20260430_033727_455115_risk_aware_courier_20260430_123510_layout_top_k_job_000014/logs/stderr -> 200 2026-04-30 04:32:51,364 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000001/files -> 200 2026-04-30 04:32:51,935 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000005/files -> 200 2026-04-30 04:32:52,200 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043247_001452_capsule_power_play_20260430_043232_smoke -> 200 2026-04-30 04:32:52,462 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000002/files -> 200 2026-04-30 04:32:52,964 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000005/files -> 200 2026-04-30 04:32:53,480 INFO [battle_engine.api] GET /debug/runs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke_job_000001/source/your_best -> 200 2026-04-30 04:32:54,021 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010829_682637_portal_planner_defense_20260430_100806_smoke/jobs/run_20260430_010829_682637_portal_planner_defense_20260430_100806_smoke_job_000001/result -> 200 2026-04-30 04:32:54,549 INFO [battle_engine.api] GET /debug/runs/run_20260430_033259_512102_capsule_power_play_20260430_033142_smoke/jobs/run_20260430_033259_512102_capsule_power_play_20260430_033142_smoke_job_000002/source/baseline -> 404 2026-04-30 04:32:55,091 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke/jobs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke_job_000002/result -> 200 2026-04-30 04:32:55,620 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010829_682637_portal_planner_defense_20260430_100806_smoke/jobs/run_20260430_010829_682637_portal_planner_defense_20260430_100806_smoke_job_000002/files -> 200 2026-04-30 04:32:56,168 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke/jobs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke_job_000001/files -> 200 2026-04-30 04:32:56,393 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:32:56,669 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke/jobs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke_job_000002/files -> 200 2026-04-30 04:32:56,953 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043242_187982_risk_aware_courier_20260430_133213_candidate_eval -> 200 2026-04-30 04:32:57,182 INFO [battle_engine.api] GET /debug/runs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke_job_000002/source/your_best -> 200 2026-04-30 04:32:57,229 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043247_001452_capsule_power_play_20260430_043232_smoke -> 200 2026-04-30 04:32:57,724 INFO [battle_engine.api] GET /debug/runs/run_20260430_005529_224656_risk_aware_courier_20260430_095517_smoke/jobs/run_20260430_005529_224656_risk_aware_courier_20260430_095517_smoke_job_000002/source/baseline -> 200 2026-04-30 04:32:58,204 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke/jobs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke_job_000001/result -> 200 2026-04-30 04:32:58,793 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010829_682637_portal_planner_defense_20260430_100806_smoke/jobs/run_20260430_010829_682637_portal_planner_defense_20260430_100806_smoke_job_000001/files -> 200 2026-04-30 04:32:59,287 INFO [battle_engine.api] GET /debug/runs/run_20260430_005529_224656_risk_aware_courier_20260430_095517_smoke/jobs/run_20260430_005529_224656_risk_aware_courier_20260430_095517_smoke_job_000001/source/baseline -> 200 2026-04-30 04:32:59,797 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010829_682637_portal_planner_defense_20260430_100806_smoke/jobs/run_20260430_010829_682637_portal_planner_defense_20260430_100806_smoke_job_000002/result -> 200 2026-04-30 04:33:00,347 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke_job_000001/files -> 200 2026-04-30 04:33:00,923 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005447_340603_dynamic_role_switching_20260430_095422_smoke/jobs/run_20260430_005447_340603_dynamic_role_switching_20260430_095422_smoke_job_000002/result -> 200 2026-04-30 04:33:01,437 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000001/source/your_best -> 200 2026-04-30 04:33:01,905 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000002/source/your_best -> 200 2026-04-30 04:33:02,257 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043247_001452_capsule_power_play_20260430_043232_smoke -> 200 2026-04-30 04:33:02,411 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000001/source/your_best -> 200 2026-04-30 04:33:02,995 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k/context-pack -> 200 2026-04-30 04:33:03,482 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/context-pack -> 200 2026-04-30 04:33:04,041 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005244_307385_risk_aware_courier_20260430_094857_layout_top_k/context-pack -> 200 2026-04-30 04:33:04,579 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/context-pack -> 200 2026-04-30 04:33:05,124 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/context-pack -> 200 2026-04-30 04:33:05,597 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/context-pack -> 200 2026-04-30 04:33:06,123 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/context-pack -> 200 2026-04-30 04:33:06,631 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/context-pack -> 200 2026-04-30 04:33:07,140 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005318_214570_portal_planner_defense_20260430_095235_smoke/context-pack -> 200 2026-04-30 04:33:07,196 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043242_187982_risk_aware_courier_20260430_133213_candidate_eval -> 200 2026-04-30 04:33:07,289 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043247_001452_capsule_power_play_20260430_043232_smoke -> 200 2026-04-30 04:33:07,666 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/context-pack -> 200 2026-04-30 04:33:08,165 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005447_340603_dynamic_role_switching_20260430_095422_smoke/context-pack -> 200 2026-04-30 04:33:08,693 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/context-pack -> 200 2026-04-30 04:33:09,193 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/context-pack -> 200 2026-04-30 04:33:09,713 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/context-pack -> 200 2026-04-30 04:33:10,256 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke/context-pack -> 200 2026-04-30 04:33:10,848 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000019 -> 200 2026-04-30 04:33:11,356 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000007 -> 200 2026-04-30 04:33:11,863 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000004 -> 200 2026-04-30 04:33:12,318 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043247_001452_capsule_power_play_20260430_043232_smoke -> 200 2026-04-30 04:33:12,403 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000021 -> 200 2026-04-30 04:33:12,934 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000004 -> 200 2026-04-30 04:33:13,484 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000011 -> 200 2026-04-30 04:33:14,044 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000027 -> 200 2026-04-30 04:33:14,254 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043256_386975_invader_intercept_defense_20260430_133157_candidate_eval -> 200 2026-04-30 04:33:14,521 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000018 -> 200 2026-04-30 04:33:15,064 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000001 -> 200 2026-04-30 04:33:15,578 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000013 -> 200 2026-04-30 04:33:16,112 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000012 -> 200 2026-04-30 04:33:16,643 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000002 -> 200 2026-04-30 04:33:17,184 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000025 -> 200 2026-04-30 04:33:17,333 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043242_187982_risk_aware_courier_20260430_133213_candidate_eval -> 200 2026-04-30 04:33:17,350 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043247_001452_capsule_power_play_20260430_043232_smoke -> 200 2026-04-30 04:33:17,698 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000029 -> 200 2026-04-30 04:33:18,246 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000003 -> 200 2026-04-30 04:33:18,729 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000026 -> 200 2026-04-30 04:33:19,292 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000003 -> 200 2026-04-30 04:33:19,827 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000002 -> 200 2026-04-30 04:33:20,316 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000024 -> 200 2026-04-30 04:33:20,886 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000005 -> 200 2026-04-30 04:33:21,401 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000005 -> 200 2026-04-30 04:33:21,945 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000014 -> 200 2026-04-30 04:33:22,380 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043247_001452_capsule_power_play_20260430_043232_smoke -> 200 2026-04-30 04:33:22,457 INFO [battle_engine.api] GET /debug/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000005 -> 200 2026-04-30 04:33:23,001 INFO [battle_engine.api] GET /debug/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000001 -> 200 2026-04-30 04:33:23,504 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034020_929333_food_roi_targeting_20260430_123906_candidate_eval/context-pack -> 200 2026-04-30 04:33:24,033 INFO [battle_engine.api] GET /debug/runs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k/jobs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k_job_000001/source/baseline -> 200 2026-04-30 04:33:24,579 INFO [battle_engine.api] GET /debug/runs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k/jobs/run_20260430_005706_761939_risk_aware_courier_20260430_095517_layout_top_k_job_000023/source/baseline -> 200 2026-04-30 04:33:25,085 INFO [battle_engine.api] GET /debug/runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k/jobs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k_job_000001/source/baseline -> 200 2026-04-30 04:33:25,641 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005447_340603_dynamic_role_switching_20260430_095422_smoke/jobs/run_20260430_005447_340603_dynamic_role_switching_20260430_095422_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:33:26,177 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000003/files -> 200 2026-04-30 04:33:26,694 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000004/files -> 200 2026-04-30 04:33:26,914 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:33:27,238 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000002/files -> 200 2026-04-30 04:33:27,411 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043247_001452_capsule_power_play_20260430_043232_smoke -> 200 2026-04-30 04:33:27,782 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000004/files -> 200 2026-04-30 04:33:27,783 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043242_187982_risk_aware_courier_20260430_133213_candidate_eval -> 200 2026-04-30 04:33:28,264 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000005 -> 200 2026-04-30 04:33:28,819 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000001 -> 200 2026-04-30 04:33:29,325 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000003/files -> 200 2026-04-30 04:33:29,859 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000002/files -> 200 2026-04-30 04:33:30,393 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000021/source/your_best -> 200 2026-04-30 04:33:30,886 INFO [battle_engine.api] GET /debug/runs/run_20260430_034210_272100_dead_end_avoidance_20260430_034158_smoke/jobs/run_20260430_034210_272100_dead_end_avoidance_20260430_034158_smoke_job_000001/source/baseline -> 200 2026-04-30 04:33:31,334 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval -> 200 2026-04-30 04:33:31,337 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval/results -> 200 2026-04-30 04:33:31,433 INFO [battle_engine.api] GET /debug/runs/run_20260430_034402_710644_dead_end_avoidance_20260430_034351_smoke/jobs/run_20260430_034402_710644_dead_end_avoidance_20260430_034351_smoke_job_000002/source/baseline -> 200 2026-04-30 04:33:31,906 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:33:31,956 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke_job_000001/result -> 200 2026-04-30 04:33:32,442 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043247_001452_capsule_power_play_20260430_043232_smoke -> 200 2026-04-30 04:33:32,462 INFO [battle_engine.api] GET /debug/runs/run_20260430_010314_753004_food_roi_targeting_20260430_100303_smoke/jobs/run_20260430_010314_753004_food_roi_targeting_20260430_100303_smoke_job_000002/source/baseline -> 200 2026-04-30 04:33:32,989 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke_job_000001/files -> 200 2026-04-30 04:33:33,506 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke_job_000002/result -> 404 2026-04-30 04:33:34,048 INFO [battle_engine.api] GET /debug/runs/run_20260430_010543_550141_food_roi_targeting_20260430_100532_smoke/jobs/run_20260430_010543_550141_food_roi_targeting_20260430_100532_smoke_job_000001/source/baseline -> 200 2026-04-30 04:33:34,542 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke_job_000001/result -> 404 2026-04-30 04:33:34,852 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:33:34,856 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043242_187982_risk_aware_courier_20260430_133213_candidate_eval/results -> 200 2026-04-30 04:33:35,008 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043242_187982_risk_aware_courier_20260430_133213_candidate_eval/context-pack -> 200 2026-04-30 04:33:35,089 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:33:35,092 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke_job_000002/files -> 200 2026-04-30 04:33:35,095 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:33:35,241 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:33:35,336 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:33:35,608 INFO [battle_engine.api] GET /debug/runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke_job_000001/source/your_best -> 404 2026-04-30 04:33:36,141 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke_job_000001/files -> 200 2026-04-30 04:33:36,656 INFO [battle_engine.api] GET /debug/runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke_job_000002/source/your_best -> 404 2026-04-30 04:33:36,919 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:33:36,920 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043247_001452_capsule_power_play_20260430_043232_smoke/results -> 200 2026-04-30 04:33:37,013 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043331_902113_blended_roi_intercept_v01_20260430_043319_smoke -> 200 2026-04-30 04:33:37,166 INFO [battle_engine.api] GET /debug/runs/run_20260430_034402_710644_dead_end_avoidance_20260430_034351_smoke/jobs/run_20260430_034402_710644_dead_end_avoidance_20260430_034351_smoke_job_000001/source/baseline -> 200 2026-04-30 04:33:37,685 INFO [battle_engine.api] GET /debug/runs/run_20260430_033936_301174_risk_aware_courier_20260430_123920_smoke/jobs/run_20260430_033936_301174_risk_aware_courier_20260430_123920_smoke_job_000001/source/baseline -> 200 2026-04-30 04:33:38,213 INFO [battle_engine.api] GET /debug/runs/run_20260430_033032_168785_risk_aware_courier_20260430_123022_smoke/jobs/run_20260430_033032_168785_risk_aware_courier_20260430_123022_smoke_job_000002/source/baseline -> 404 2026-04-30 04:33:38,758 INFO [battle_engine.api] GET /debug/runs/run_20260430_034210_272100_dead_end_avoidance_20260430_034158_smoke/jobs/run_20260430_034210_272100_dead_end_avoidance_20260430_034158_smoke_job_000002/source/baseline -> 200 2026-04-30 04:33:39,232 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke_job_000001/result -> 404 2026-04-30 04:33:39,434 INFO [battle_engine.api] GET /history -> 200 2026-04-30 04:33:39,809 INFO [battle_engine.api] GET /debug/runs/run_20260430_010543_550141_food_roi_targeting_20260430_100532_smoke/jobs/run_20260430_010543_550141_food_roi_targeting_20260430_100532_smoke_job_000002/source/baseline -> 200 2026-04-30 04:33:40,232 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:33:40,236 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval/context-pack -> 200 2026-04-30 04:33:40,257 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:33:40,257 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:33:40,332 INFO [battle_engine.api] GET /debug/runs/run_20260430_010314_753004_food_roi_targeting_20260430_100303_smoke/jobs/run_20260430_010314_753004_food_roi_targeting_20260430_100303_smoke_job_000001/source/baseline -> 200 2026-04-30 04:33:40,841 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke_job_000002/files -> 200 2026-04-30 04:33:41,316 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke_job_000002/result -> 200 2026-04-30 04:33:41,866 INFO [battle_engine.api] GET /debug/runs/run_20260430_010151_490137_risk_aware_courier_20260430_100139_smoke/jobs/run_20260430_010151_490137_risk_aware_courier_20260430_100139_smoke_job_000001/source/baseline -> 200 2026-04-30 04:33:42,393 INFO [battle_engine.api] GET /debug/runs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke_job_000002/source/your_best -> 404 2026-04-30 04:33:42,907 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke_job_000002/files -> 200 2026-04-30 04:33:43,458 INFO [battle_engine.api] GET /debug/runs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke_job_000001/source/your_best -> 404 2026-04-30 04:33:43,943 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:33:44,438 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:33:44,958 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:33:45,136 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:33:45,541 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:33:46,021 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:33:46,547 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000002/source/your_best -> 200 2026-04-30 04:33:47,110 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000001/source/your_best -> 200 2026-04-30 04:33:47,614 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000001/source/your_best -> 200 2026-04-30 04:33:48,114 INFO [battle_engine.api] GET /debug/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:33:48,150 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043256_386975_invader_intercept_defense_20260430_133157_candidate_eval -> 200 2026-04-30 04:33:48,625 INFO [battle_engine.api] GET /debug/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:33:49,152 INFO [battle_engine.api] GET /debug/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:33:49,694 INFO [battle_engine.api] GET /debug/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:33:49,990 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043345_129045_capsule_power_play_20260430_043232_candidate_eval -> 200 2026-04-30 04:33:50,229 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000005/files -> 200 2026-04-30 04:33:50,753 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000029/files -> 200 2026-04-30 04:33:51,308 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000016/result -> 200 2026-04-30 04:33:51,811 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043331_902113_blended_roi_intercept_v01_20260430_043319_smoke -> 200 2026-04-30 04:33:51,814 INFO [battle_engine.api] GET /debug/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000002/source/your_best -> 200 2026-04-30 04:33:52,347 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000026/files -> 200 2026-04-30 04:33:52,371 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:33:52,866 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000011/files -> 200 2026-04-30 04:33:53,352 INFO [battle_engine.api] GET /debug/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/jobs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:33:53,895 INFO [battle_engine.api] GET /debug/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:33:54,408 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000003/files -> 200 2026-04-30 04:33:54,927 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000005/files -> 200 2026-04-30 04:33:55,019 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043345_129045_capsule_power_play_20260430_043232_candidate_eval -> 200 2026-04-30 04:33:55,472 INFO [battle_engine.api] GET /debug/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/jobs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:33:56,021 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000027/files -> 200 2026-04-30 04:33:56,518 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000014/result -> 200 2026-04-30 04:33:57,032 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000008/files -> 200 2026-04-30 04:33:57,559 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness -> 200 2026-04-30 04:33:57,617 INFO [battle_engine.api] GET /debug/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/jobs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:33:58,098 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000007/files -> 200 2026-04-30 04:33:58,619 INFO [battle_engine.api] GET /debug/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/jobs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:33:59,208 INFO [battle_engine.api] GET /debug/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/jobs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:33:59,743 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000015/result -> 200 2026-04-30 04:34:00,049 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043345_129045_capsule_power_play_20260430_043232_candidate_eval -> 200 2026-04-30 04:34:00,246 INFO [battle_engine.api] GET /debug/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/jobs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:34:00,969 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000003/result -> 200 2026-04-30 04:34:01,317 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000019/files -> 200 2026-04-30 04:34:01,819 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000024/files -> 200 2026-04-30 04:34:02,361 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000021/result -> 200 2026-04-30 04:34:02,871 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000002/result -> 200 2026-04-30 04:34:03,444 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000012/result -> 200 2026-04-30 04:34:03,927 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000023/files -> 200 2026-04-30 04:34:04,463 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000019/result -> 200 2026-04-30 04:34:05,034 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000002/files -> 200 2026-04-30 04:34:05,077 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043345_129045_capsule_power_play_20260430_043232_candidate_eval -> 200 2026-04-30 04:34:05,511 INFO [battle_engine.api] GET /debug/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:34:06,029 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000002/files -> 200 2026-04-30 04:34:06,605 INFO [battle_engine.api] GET /debug/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000002/source/your_best -> 404 2026-04-30 04:34:07,141 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000003/files -> 200 2026-04-30 04:34:07,565 INFO [battle_engine.api] GET /debug -> 200 2026-04-30 04:34:07,671 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000002/result -> 200 2026-04-30 04:34:07,794 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness -> 200 2026-04-30 04:34:08,160 INFO [battle_engine.api] GET /debug/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/jobs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:34:08,213 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043256_386975_invader_intercept_defense_20260430_133157_candidate_eval -> 200 2026-04-30 04:34:08,337 INFO [battle_engine.api] GET /candidates -> 200 2026-04-30 04:34:08,684 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000020/files -> 200 2026-04-30 04:34:09,108 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:34:09,173 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000001/files -> 200 2026-04-30 04:34:09,701 INFO [battle_engine.api] GET /debug/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:34:10,107 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043345_129045_capsule_power_play_20260430_043232_candidate_eval -> 200 2026-04-30 04:34:10,253 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000001/files -> 200 2026-04-30 04:34:10,785 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000017/result -> 200 2026-04-30 04:34:11,361 INFO [battle_engine.api] GET /debug/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:34:11,837 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000025/result -> 200 2026-04-30 04:34:12,087 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:34:12,410 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000014/files -> 200 2026-04-30 04:34:12,889 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000012/result -> 200 2026-04-30 04:34:13,403 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000003/files -> 200 2026-04-30 04:34:13,915 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000002/result -> 200 2026-04-30 04:34:14,433 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000011/result -> 200 2026-04-30 04:34:14,938 INFO [battle_engine.api] GET /debug/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/jobs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:34:15,147 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043345_129045_capsule_power_play_20260430_043232_candidate_eval -> 200 2026-04-30 04:34:15,470 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000024/files -> 200 2026-04-30 04:34:16,037 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000018/files -> 200 2026-04-30 04:34:16,501 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000001/files -> 200 2026-04-30 04:34:17,046 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000022/files -> 200 2026-04-30 04:34:17,126 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043256_386975_invader_intercept_defense_20260430_133157_candidate_eval/results -> 200 2026-04-30 04:34:17,148 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:34:17,151 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043256_386975_invader_intercept_defense_20260430_133157_candidate_eval/context-pack -> 200 2026-04-30 04:34:17,171 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:34:17,219 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:34:17,219 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:34:17,575 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000011/result -> 200 2026-04-30 04:34:18,005 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness -> 200 2026-04-30 04:34:18,139 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000010/result -> 200 2026-04-30 04:34:18,645 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000005/result -> 200 2026-04-30 04:34:19,043 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:34:19,187 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000022/result -> 200 2026-04-30 04:34:19,711 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000001/files -> 200 2026-04-30 04:34:20,190 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043345_129045_capsule_power_play_20260430_043232_candidate_eval -> 200 2026-04-30 04:34:20,249 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000013/files -> 200 2026-04-30 04:34:20,736 INFO [battle_engine.api] GET /debug/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000001/source/your_best -> 200 2026-04-30 04:34:20,803 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:34:21,216 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000014/result -> 200 2026-04-30 04:34:21,740 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000028/files -> 200 2026-04-30 04:34:22,270 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000003/files -> 200 2026-04-30 04:34:22,675 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:34:22,809 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000026/result -> 200 2026-04-30 04:34:23,378 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000003/result -> 200 2026-04-30 04:34:23,833 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000003/files -> 200 2026-04-30 04:34:24,061 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:34:24,378 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000013/files -> 200 2026-04-30 04:34:24,924 INFO [battle_engine.api] GET /debug/runs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval/jobs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:34:25,035 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:34:25,219 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043345_129045_capsule_power_play_20260430_043232_candidate_eval -> 200 2026-04-30 04:34:25,457 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000012/result -> 200 2026-04-30 04:34:25,598 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:34:26,004 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000002/result -> 200 2026-04-30 04:34:26,044 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:34:26,499 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000024/result -> 200 2026-04-30 04:34:27,014 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000001/result -> 200 2026-04-30 04:34:27,176 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:34:27,541 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000006/files -> 200 2026-04-30 04:34:27,813 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:34:27,838 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:34:28,032 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043331_902113_blended_roi_intercept_v01_20260430_043319_smoke -> 200 2026-04-30 04:34:28,078 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000001/result -> 200 2026-04-30 04:34:28,301 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness -> 200 2026-04-30 04:34:28,593 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000015/files -> 200 2026-04-30 04:34:29,187 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000001/files -> 200 2026-04-30 04:34:29,661 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000013/result -> 200 2026-04-30 04:34:30,028 INFO [battle_engine.api] GET /candidates -> 200 2026-04-30 04:34:30,209 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000004/files -> 200 2026-04-30 04:34:30,723 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000010/result -> 200 2026-04-30 04:34:31,273 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000018/files -> 200 2026-04-30 04:34:31,748 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000013/files -> 200 2026-04-30 04:34:32,291 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000020/result -> 200 2026-04-30 04:34:32,789 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043331_902113_blended_roi_intercept_v01_20260430_043319_smoke/results -> 200 2026-04-30 04:34:32,844 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000028/files -> 200 2026-04-30 04:34:33,341 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000009/files -> 200 2026-04-30 04:34:33,914 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000001/result -> 200 2026-04-30 04:34:34,445 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000028/result -> 200 2026-04-30 04:34:34,895 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043345_129045_capsule_power_play_20260430_043232_candidate_eval/results -> 200 2026-04-30 04:34:34,948 INFO [battle_engine.api] GET /debug/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/jobs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:34:34,976 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043345_129045_capsule_power_play_20260430_043232_candidate_eval/context-pack -> 200 2026-04-30 04:34:34,988 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043345_129045_capsule_power_play_20260430_043232_candidate_eval/artifacts/summary.csv -> 200 2026-04-30 04:34:35,437 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000011/files -> 200 2026-04-30 04:34:36,002 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000018/result -> 200 2026-04-30 04:34:36,564 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000027/result -> 200 2026-04-30 04:34:37,033 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000001/result -> 200 2026-04-30 04:34:37,566 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000007/result -> 200 2026-04-30 04:34:38,074 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000026/files -> 200 2026-04-30 04:34:38,626 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness -> 200 2026-04-30 04:34:38,661 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000008/files -> 200 2026-04-30 04:34:39,117 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000021/files -> 200 2026-04-30 04:34:39,642 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000021/files -> 200 2026-04-30 04:34:39,657 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:34:40,166 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000013/result -> 200 2026-04-30 04:34:40,698 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000026/result -> 200 2026-04-30 04:34:41,215 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000027/result -> 200 2026-04-30 04:34:41,754 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000001/files -> 200 2026-04-30 04:34:42,262 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000004/result -> 200 2026-04-30 04:34:42,825 INFO [battle_engine.api] GET /debug/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:34:43,334 INFO [battle_engine.api] GET /debug/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:34:43,833 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000027/result -> 200 2026-04-30 04:34:44,097 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043427_833818_risk_courier_portal_20260430_043416_smoke/results -> 200 2026-04-30 04:34:44,412 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000006/result -> 200 2026-04-30 04:34:44,955 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000001/result -> 200 2026-04-30 04:34:45,417 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000020/files -> 200 2026-04-30 04:34:45,940 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000006/result -> 200 2026-04-30 04:34:46,503 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000017/result -> 200 2026-04-30 04:34:46,993 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000002/result -> 200 2026-04-30 04:34:47,506 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000013/files -> 200 2026-04-30 04:34:48,067 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000010/files -> 200 2026-04-30 04:34:48,569 INFO [battle_engine.api] GET /debug/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/jobs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:34:48,762 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness -> 200 2026-04-30 04:34:49,088 INFO [battle_engine.api] GET /debug/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:34:49,577 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000014/files -> 200 2026-04-30 04:34:50,177 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000018/files -> 200 2026-04-30 04:34:50,678 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000001/files -> 200 2026-04-30 04:34:51,029 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043427_148052_invader_intercept_defense_20260430_133157_robustness -> 200 2026-04-30 04:34:51,228 INFO [battle_engine.api] GET /debug/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/jobs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:34:51,754 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000011/files -> 200 2026-04-30 04:34:52,267 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000011/result -> 200 2026-04-30 04:34:52,800 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000009/files -> 200 2026-04-30 04:34:53,315 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000004/result -> 200 2026-04-30 04:34:53,794 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000007/files -> 200 2026-04-30 04:34:54,315 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000010/result -> 200 2026-04-30 04:34:54,844 INFO [battle_engine.api] GET /debug/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:34:55,401 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000021/files -> 200 2026-04-30 04:34:55,965 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000019/result -> 200 2026-04-30 04:34:56,465 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000020/result -> 200 2026-04-30 04:34:56,995 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000016/result -> 200 2026-04-30 04:34:57,530 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000010/result -> 200 2026-04-30 04:34:58,016 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000017/result -> 200 2026-04-30 04:34:58,175 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:34:58,177 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval/jobs -> 200 2026-04-30 04:34:58,370 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:34:58,544 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000017/result -> 200 2026-04-30 04:34:58,943 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness -> 200 2026-04-30 04:34:59,055 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000026/result -> 200 2026-04-30 04:34:59,593 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000016/result -> 200 2026-04-30 04:35:00,095 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000019/files -> 200 2026-04-30 04:35:00,586 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000012/files -> 200 2026-04-30 04:35:01,111 INFO [battle_engine.api] GET /static/style/protect/index.js -> 404 2026-04-30 04:35:01,132 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000009/result -> 200 2026-04-30 04:35:01,624 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000016/result -> 200 2026-04-30 04:35:02,170 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000005/result -> 200 2026-04-30 04:35:02,728 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000028/files -> 200 2026-04-30 04:35:03,180 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000021/files -> 200 2026-04-30 04:35:03,741 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000019/result -> 200 2026-04-30 04:35:04,259 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000021/result -> 200 2026-04-30 04:35:04,762 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000020/result -> 200 2026-04-30 04:35:05,305 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000016/files -> 200 2026-04-30 04:35:05,803 INFO [battle_engine.api] GET /debug/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/jobs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:35:05,993 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval/context-pack -> 200 2026-04-30 04:35:06,395 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000023/result -> 200 2026-04-30 04:35:06,672 INFO [battle_engine.api] GET /bot-connect.js -> 404 2026-04-30 04:35:06,864 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000004/files -> 200 2026-04-30 04:35:07,386 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000002/result -> 200 2026-04-30 04:35:07,887 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000012/result -> 200 2026-04-30 04:35:08,434 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000024/files -> 200 2026-04-30 04:35:08,951 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000026/files -> 200 2026-04-30 04:35:09,096 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness -> 200 2026-04-30 04:35:09,496 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000008/files -> 200 2026-04-30 04:35:10,044 INFO [battle_engine.api] GET /debug/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:35:10,577 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000005/result -> 200 2026-04-30 04:35:11,111 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000024/files -> 200 2026-04-30 04:35:11,619 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000002/result -> 200 2026-04-30 04:35:12,160 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000024/result -> 200 2026-04-30 04:35:12,676 INFO [battle_engine.api] GET /debug/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:35:12,754 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043439_651411_blended_roi_intercept_v01_20260430_043319_candidate_eval -> 200 2026-04-30 04:35:13,187 INFO [battle_engine.api] GET /debug/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:35:13,751 INFO [battle_engine.api] GET /debug/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000001/source/your_best -> 200 2026-04-30 04:35:14,256 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000005/result -> 200 2026-04-30 04:35:14,740 INFO [battle_engine.api] GET /debug/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/jobs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:35:14,799 INFO [battle_engine.api] GET /static/style/sys_files/index.js -> 404 2026-04-30 04:35:15,265 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000015/result -> 200 2026-04-30 04:35:15,365 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness/results -> 200 2026-04-30 04:35:15,374 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness/jobs -> 200 2026-04-30 04:35:15,384 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness/context-pack -> 200 2026-04-30 04:35:15,677 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043427_833818_risk_courier_portal_20260430_043416_smoke -> 200 2026-04-30 04:35:15,705 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043427_833818_risk_courier_portal_20260430_043416_smoke/results -> 200 2026-04-30 04:35:15,802 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000023/result -> 200 2026-04-30 04:35:16,317 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000024/result -> 200 2026-04-30 04:35:16,860 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000015/result -> 200 2026-04-30 04:35:17,274 INFO [battle_engine.api] GET /robots.txt -> 404 2026-04-30 04:35:17,383 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000001/files -> 200 2026-04-30 04:35:17,878 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000005/files -> 200 2026-04-30 04:35:18,414 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000019/files -> 200 2026-04-30 04:35:18,483 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval/jobs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval_job_000001/stdout -> 404 2026-04-30 04:35:18,559 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval/jobs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:35:18,832 INFO [battle_engine.api] GET /assets/js/auth.js -> 404 2026-04-30 04:35:18,932 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000001/result -> 200 2026-04-30 04:35:19,428 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000025/result -> 200 2026-04-30 04:35:19,980 INFO [battle_engine.api] GET /debug/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/jobs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:35:20,528 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000022/files -> 200 2026-04-30 04:35:20,855 INFO [battle_engine.api] GET /js/twint_ch.js -> 404 2026-04-30 04:35:21,011 INFO [battle_engine.api] GET /debug/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000001/source/your_best -> 404 2026-04-30 04:35:21,591 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000010/result -> 200 2026-04-30 04:35:21,781 INFO [battle_engine.api] GET /api/v1/health -> 200 2026-04-30 04:35:21,800 INFO [battle_engine.api] GET /api/v1/config -> 200 2026-04-30 04:35:21,865 INFO [battle_engine.api] GET /api/v1/runs -> 200 2026-04-30 04:35:21,946 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness/jobs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness_job_000032/result -> 200 2026-04-30 04:35:21,948 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_133213 -> 200 2026-04-30 04:35:22,042 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness/jobs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness_job_000033/result -> 200 2026-04-30 04:35:22,095 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000023/result -> 200 2026-04-30 04:35:22,129 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness/jobs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness_job_000034/result -> 200 2026-04-30 04:35:22,228 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness/jobs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness_job_000035/result -> 200 2026-04-30 04:35:22,605 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000024/files -> 200 2026-04-30 04:35:23,111 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000003/result -> 200 2026-04-30 04:35:23,673 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000025/files -> 200 2026-04-30 04:35:24,074 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043427_148052_invader_intercept_defense_20260430_133157_robustness -> 200 2026-04-30 04:35:24,166 INFO [battle_engine.api] GET /debug/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:35:24,691 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000014/files -> 200 2026-04-30 04:35:25,233 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000029/result -> 200 2026-04-30 04:35:25,747 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000018/result -> 200 2026-04-30 04:35:25,829 INFO [battle_engine.api] GET /runs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval/jobs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval_job_000001/stdout.log -> 404 2026-04-30 04:35:25,832 INFO [battle_engine.api] GET /runs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval/jobs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval_job_000001/stderr.log -> 404 2026-04-30 04:35:25,836 INFO [battle_engine.api] GET /debug/runs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval/jobs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval_job_000001 -> 200 2026-04-30 04:35:26,278 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000019/files -> 200 2026-04-30 04:35:26,837 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000025/files -> 200 2026-04-30 04:35:27,323 INFO [battle_engine.api] GET /debug/runs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval/jobs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:35:27,834 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000008/result -> 200 2026-04-30 04:35:28,364 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000011/result -> 200 2026-04-30 04:35:28,873 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000020/files -> 200 2026-04-30 04:35:29,437 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000016/files -> 200 2026-04-30 04:35:29,936 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000008/result -> 200 2026-04-30 04:35:30,509 INFO [battle_engine.api] GET /debug/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:35:31,037 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000006/files -> 200 2026-04-30 04:35:31,598 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000001/files -> 200 2026-04-30 04:35:32,109 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000012/files -> 200 2026-04-30 04:35:32,615 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000025/result -> 200 2026-04-30 04:35:33,026 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness/jobs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness_job_000032/logs/stdout -> 200 2026-04-30 04:35:33,173 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000007/files -> 200 2026-04-30 04:35:33,683 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000002/files -> 200 2026-04-30 04:35:34,202 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000009/files -> 200 2026-04-30 04:35:34,726 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000015/files -> 200 2026-04-30 04:35:35,238 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000024/result -> 200 2026-04-30 04:35:35,814 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000014/result -> 200 2026-04-30 04:35:36,287 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000011/files -> 200 2026-04-30 04:35:36,877 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000002/files -> 200 2026-04-30 04:35:37,386 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000021/result -> 200 2026-04-30 04:35:37,931 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval/jobs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:35:37,934 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval/jobs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval_job_000008/logs/stdout -> 200 2026-04-30 04:35:37,935 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval/jobs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:35:37,936 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval/jobs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval_job_000008/logs/stderr -> 200 2026-04-30 04:35:37,937 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000001/result -> 200 2026-04-30 04:35:38,485 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000006/result -> 200 2026-04-30 04:35:39,014 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000005/files -> 200 2026-04-30 04:35:39,544 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000022/result -> 200 2026-04-30 04:35:40,028 INFO [battle_engine.api] GET /debug/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:35:40,545 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000005/result -> 200 2026-04-30 04:35:41,090 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000007/files -> 200 2026-04-30 04:35:41,614 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000028/result -> 200 2026-04-30 04:35:42,117 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000011/files -> 200 2026-04-30 04:35:42,650 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000009/result -> 200 2026-04-30 04:35:43,188 INFO [battle_engine.api] GET /debug/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000002/source/your_best -> 200 2026-04-30 04:35:43,701 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000025/files -> 200 2026-04-30 04:35:43,938 INFO [battle_engine.api] GET /candidates -> 200 2026-04-30 04:35:44,259 INFO [battle_engine.api] GET /debug/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:35:44,738 INFO [battle_engine.api] GET /debug/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:35:45,297 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000028/result -> 200 2026-04-30 04:35:45,831 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000018/result -> 200 2026-04-30 04:35:46,333 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000029/result -> 200 2026-04-30 04:35:46,831 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000016/files -> 200 2026-04-30 04:35:47,066 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043439_651411_blended_roi_intercept_v01_20260430_043319_candidate_eval -> 200 2026-04-30 04:35:47,357 INFO [battle_engine.api] GET /debug/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000002/source/your_best -> 404 2026-04-30 04:35:47,514 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:35:47,935 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000001/result -> 404 2026-04-30 04:35:48,439 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000001/result -> 200 2026-04-30 04:35:48,999 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000023/result -> 200 2026-04-30 04:35:49,481 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000008/result -> 200 2026-04-30 04:35:50,022 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000022/result -> 200 2026-04-30 04:35:50,575 INFO [battle_engine.api] GET /debug/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:35:51,105 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000015/result -> 200 2026-04-30 04:35:51,650 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000001/files -> 200 2026-04-30 04:35:52,176 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000023/files -> 200 2026-04-30 04:35:52,711 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000008/result -> 200 2026-04-30 04:35:53,200 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000004/files -> 200 2026-04-30 04:35:53,725 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000014/files -> 200 2026-04-30 04:35:54,252 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000013/result -> 200 2026-04-30 04:35:54,771 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000013/files -> 200 2026-04-30 04:35:55,275 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000020/files -> 200 2026-04-30 04:35:55,811 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000001/files -> 200 2026-04-30 04:35:56,265 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043427_148052_invader_intercept_defense_20260430_133157_robustness -> 200 2026-04-30 04:35:56,336 INFO [battle_engine.api] GET /debug/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:35:56,872 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000028/files -> 200 2026-04-30 04:35:57,416 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000002/files -> 200 2026-04-30 04:35:57,951 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000002/files -> 200 2026-04-30 04:35:58,458 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000007/result -> 200 2026-04-30 04:35:58,981 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000022/files -> 200 2026-04-30 04:35:59,586 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000002/files -> 200 2026-04-30 04:36:00,093 INFO [battle_engine.api] GET /debug/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/jobs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:36:00,572 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000006/result -> 200 2026-04-30 04:36:01,080 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000012/result -> 200 2026-04-30 04:36:01,611 INFO [battle_engine.api] GET /debug/runs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval/jobs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:36:02,115 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000008/files -> 200 2026-04-30 04:36:02,693 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000005/files -> 200 2026-04-30 04:36:03,182 INFO [battle_engine.api] GET /debug/runs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval/jobs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:36:03,717 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000010/files -> 200 2026-04-30 04:36:04,234 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000002/files -> 200 2026-04-30 04:36:04,646 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043427_148052_invader_intercept_defense_20260430_133157_robustness/results -> 200 2026-04-30 04:36:04,648 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043427_148052_invader_intercept_defense_20260430_133157_robustness/context-pack -> 200 2026-04-30 04:36:04,651 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043427_148052_invader_intercept_defense_20260430_133157_robustness/jobs -> 200 2026-04-30 04:36:04,652 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043427_148052_invader_intercept_defense_20260430_133157_robustness/source/your_best -> 200 2026-04-30 04:36:04,812 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000001/files -> 200 2026-04-30 04:36:05,289 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000018/result -> 200 2026-04-30 04:36:05,835 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000023/result -> 200 2026-04-30 04:36:06,393 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000010/files -> 200 2026-04-30 04:36:06,906 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000016/result -> 200 2026-04-30 04:36:07,426 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000018/files -> 200 2026-04-30 04:36:07,985 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000023/files -> 200 2026-04-30 04:36:08,111 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:36:08,532 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000024/result -> 200 2026-04-30 04:36:09,017 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000004/files -> 200 2026-04-30 04:36:09,545 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000002/result -> 200 2026-04-30 04:36:10,086 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000022/result -> 200 2026-04-30 04:36:10,606 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000001/result -> 200 2026-04-30 04:36:11,149 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000012/files -> 200 2026-04-30 04:36:11,694 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000015/files -> 200 2026-04-30 04:36:11,996 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043427_833818_risk_courier_portal_20260430_043416_smoke -> 200 2026-04-30 04:36:12,020 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043427_833818_risk_courier_portal_20260430_043416_smoke/results -> 200 2026-04-30 04:36:12,245 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000005/result -> 200 2026-04-30 04:36:12,440 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:36:12,801 INFO [battle_engine.api] GET /debug/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/jobs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:36:13,315 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000019/result -> 200 2026-04-30 04:36:13,847 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000025/files -> 200 2026-04-30 04:36:14,349 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000002/result -> 200 2026-04-30 04:36:14,553 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:36:14,882 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000018/result -> 200 2026-04-30 04:36:15,250 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:36:15,396 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000017/result -> 200 2026-04-30 04:36:15,906 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000026/files -> 200 2026-04-30 04:36:15,970 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:36:16,282 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:36:16,488 INFO [battle_engine.api] GET /debug/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:36:16,952 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000006/files -> 200 2026-04-30 04:36:17,232 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:36:17,515 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000015/files -> 200 2026-04-30 04:36:17,542 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043612_436788_risk_aware_courier_20260430_133602_smoke -> 200 2026-04-30 04:36:18,045 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000014/result -> 200 2026-04-30 04:36:18,263 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:36:18,541 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000022/files -> 200 2026-04-30 04:36:19,096 INFO [battle_engine.api] GET /debug/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000001/source/your_best -> 404 2026-04-30 04:36:19,519 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:36:19,593 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:36:19,606 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000004/result -> 200 2026-04-30 04:36:20,119 INFO [battle_engine.api] GET /debug/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/jobs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:36:20,247 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:36:20,679 INFO [battle_engine.api] GET /debug/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:36:21,081 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:36:21,216 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000022/files -> 200 2026-04-30 04:36:21,736 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000005/files -> 200 2026-04-30 04:36:21,998 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:36:22,248 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000013/result -> 200 2026-04-30 04:36:22,433 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:36:22,757 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043612_436788_risk_aware_courier_20260430_133602_smoke -> 200 2026-04-30 04:36:22,776 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000011/result -> 200 2026-04-30 04:36:23,295 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000003/files -> 200 2026-04-30 04:36:23,400 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:36:23,821 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000004/files -> 200 2026-04-30 04:36:24,351 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000004/result -> 200 2026-04-30 04:36:24,879 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000003/result -> 200 2026-04-30 04:36:25,355 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000007/result -> 200 2026-04-30 04:36:25,390 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:36:25,919 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000002/files -> 200 2026-04-30 04:36:26,463 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000015/files -> 200 2026-04-30 04:36:26,968 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000017/files -> 200 2026-04-30 04:36:26,973 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:36:27,471 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000017/files -> 200 2026-04-30 04:36:27,878 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043612_436788_risk_aware_courier_20260430_133602_smoke -> 200 2026-04-30 04:36:28,034 INFO [battle_engine.api] GET /debug/runs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval/jobs/run_20260430_005612_065360_risk_aware_courier_20260430_095517_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:36:28,540 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000003/result -> 200 2026-04-30 04:36:29,046 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000006/files -> 200 2026-04-30 04:36:29,573 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000004/result -> 200 2026-04-30 04:36:30,125 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000021/result -> 200 2026-04-30 04:36:30,637 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000002/files -> 200 2026-04-30 04:36:31,174 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000016/files -> 200 2026-04-30 04:36:31,691 INFO [battle_engine.api] GET /debug/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000002/source/your_best -> 200 2026-04-30 04:36:31,942 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043612_436788_risk_aware_courier_20260430_133602_smoke/results -> 200 2026-04-30 04:36:32,221 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000014/files -> 200 2026-04-30 04:36:32,765 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000007/result -> 200 2026-04-30 04:36:33,241 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000001/result -> 200 2026-04-30 04:36:33,821 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000012/files -> 200 2026-04-30 04:36:34,313 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000023/files -> 200 2026-04-30 04:36:34,853 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000009/files -> 200 2026-04-30 04:36:35,378 INFO [battle_engine.api] GET /debug/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:36:35,935 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000017/files -> 200 2026-04-30 04:36:36,439 INFO [battle_engine.api] GET /debug/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000001/source/your_best -> 200 2026-04-30 04:36:36,985 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000007/files -> 200 2026-04-30 04:36:37,450 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000017/files -> 200 2026-04-30 04:36:37,540 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:36:38,002 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000017/files -> 200 2026-04-30 04:36:38,541 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000019/files -> 200 2026-04-30 04:36:39,057 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000021/files -> 200 2026-04-30 04:36:39,596 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000008/files -> 200 2026-04-30 04:36:40,116 INFO [battle_engine.api] GET /debug/runs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval/jobs/run_20260430_010226_763884_risk_aware_courier_20260430_100139_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:36:40,686 INFO [battle_engine.api] GET /debug/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:36:41,229 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000006/files -> 200 2026-04-30 04:36:41,751 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000002/result -> 200 2026-04-30 04:36:42,229 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000012/files -> 200 2026-04-30 04:36:42,435 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043637_533437_risk_aware_courier_20260430_133602_candidate_eval -> 200 2026-04-30 04:36:42,791 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000002/result -> 200 2026-04-30 04:36:43,251 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000015/result -> 200 2026-04-30 04:36:43,762 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000001/result -> 200 2026-04-30 04:36:44,351 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000027/files -> 200 2026-04-30 04:36:44,840 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000002/result -> 200 2026-04-30 04:36:45,372 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000013/result -> 200 2026-04-30 04:36:45,899 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000002/result -> 404 2026-04-30 04:36:46,433 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000028/result -> 200 2026-04-30 04:36:46,950 INFO [battle_engine.api] GET /debug/runs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval/jobs/run_20260430_010015_709981_risk_aware_courier_20260430_095900_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:36:47,478 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000023/files -> 200 2026-04-30 04:36:48,035 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000019/result -> 200 2026-04-30 04:36:48,558 INFO [battle_engine.api] GET /debug/runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval/jobs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:36:49,052 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000026/result -> 200 2026-04-30 04:36:49,562 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000003/result -> 200 2026-04-30 04:36:50,165 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000027/files -> 200 2026-04-30 04:36:50,527 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043439_651411_blended_roi_intercept_v01_20260430_043319_candidate_eval -> 200 2026-04-30 04:36:50,617 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000008/result -> 200 2026-04-30 04:36:51,159 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000002/files -> 200 2026-04-30 04:36:51,677 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000009/result -> 200 2026-04-30 04:36:52,210 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000020/result -> 200 2026-04-30 04:36:52,653 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043637_533437_risk_aware_courier_20260430_133602_candidate_eval -> 200 2026-04-30 04:36:52,718 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000002/files -> 200 2026-04-30 04:36:53,269 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000006/result -> 200 2026-04-30 04:36:53,761 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000025/result -> 200 2026-04-30 04:36:54,310 INFO [battle_engine.api] GET /debug/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/jobs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:36:54,869 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000027/result -> 200 2026-04-30 04:36:55,311 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043439_651411_blended_roi_intercept_v01_20260430_043319_candidate_eval/results -> 200 2026-04-30 04:36:55,416 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000014/result -> 200 2026-04-30 04:36:55,821 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:36:55,906 INFO [battle_engine.api] GET /debug/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/jobs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:36:56,454 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000029/files -> 200 2026-04-30 04:36:56,930 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000002/files -> 200 2026-04-30 04:36:57,496 INFO [battle_engine.api] GET /debug/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:36:58,004 INFO [battle_engine.api] GET /debug/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/jobs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:36:58,508 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000020/result -> 200 2026-04-30 04:36:59,029 INFO [battle_engine.api] GET /debug/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/jobs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:36:59,548 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000009/files -> 200 2026-04-30 04:37:00,064 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000020/files -> 200 2026-04-30 04:37:00,579 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000004/files -> 200 2026-04-30 04:37:01,055 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000027/files -> 200 2026-04-30 04:37:01,617 INFO [battle_engine.api] GET /debug/runs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval/jobs/run_20260430_005308_021390_food_roi_targeting_20260430_095228_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:37:02,129 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000018/files -> 200 2026-04-30 04:37:02,664 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000001/result -> 200 2026-04-30 04:37:02,774 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043637_533437_risk_aware_courier_20260430_133602_candidate_eval -> 200 2026-04-30 04:37:03,200 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000021/result -> 200 2026-04-30 04:37:03,743 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000007/result -> 200 2026-04-30 04:37:04,251 INFO [battle_engine.api] GET /debug/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000002/source/your_best -> 200 2026-04-30 04:37:04,771 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000001/files -> 200 2026-04-30 04:37:05,316 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000010/files -> 200 2026-04-30 04:37:05,828 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000004/result -> 200 2026-04-30 04:37:06,400 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000009/result -> 200 2026-04-30 04:37:06,936 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000016/files -> 200 2026-04-30 04:37:07,428 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs -> 200 2026-04-30 04:37:07,988 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/context-pack -> 200 2026-04-30 04:37:08,451 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000001/result -> 404 2026-04-30 04:37:08,581 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043619_506516_risk_courier_portal_20260430_043416_candidate_eval -> 200 2026-04-30 04:37:08,608 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043619_506516_risk_courier_portal_20260430_043416_candidate_eval/results -> 200 2026-04-30 04:37:09,013 INFO [battle_engine.api] GET /debug/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:37:09,493 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000003/result -> 200 2026-04-30 04:37:10,028 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000005/result -> 200 2026-04-30 04:37:10,546 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000005/files -> 200 2026-04-30 04:37:11,094 INFO [battle_engine.api] GET /debug/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:37:11,623 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000002/files -> 200 2026-04-30 04:37:12,142 INFO [battle_engine.api] GET /debug/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:37:12,669 INFO [battle_engine.api] GET /debug/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:37:12,917 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043637_533437_risk_aware_courier_20260430_133602_candidate_eval -> 200 2026-04-30 04:37:13,175 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000001/result -> 200 2026-04-30 04:37:13,708 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000004/result -> 200 2026-04-30 04:37:14,208 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000003/files -> 200 2026-04-30 04:37:14,724 INFO [battle_engine.api] GET /debug/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:37:15,286 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000002/result -> 404 2026-04-30 04:37:15,780 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000001/files -> 200 2026-04-30 04:37:16,299 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000002/result -> 200 2026-04-30 04:37:16,821 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000004/files -> 200 2026-04-30 04:37:17,358 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000002/files -> 200 2026-04-30 04:37:17,450 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:37:17,870 INFO [battle_engine.api] GET /debug/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:37:18,448 INFO [battle_engine.api] GET /debug/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:37:18,958 INFO [battle_engine.api] GET /debug/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:37:19,495 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000001/files -> 200 2026-04-30 04:37:20,054 INFO [battle_engine.api] GET /debug/runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval/jobs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:37:20,572 INFO [battle_engine.api] GET /debug/runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval/jobs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:37:21,063 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:37:21,572 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:37:22,080 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:37:22,558 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:37:22,593 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs -> 200 2026-04-30 04:37:23,095 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043637_533437_risk_aware_courier_20260430_133602_candidate_eval -> 200 2026-04-30 04:37:23,120 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs -> 200 2026-04-30 04:37:23,660 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000001/source/baseline -> 200 2026-04-30 04:37:24,228 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:37:24,735 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:37:25,300 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000002/source/baseline -> 200 2026-04-30 04:37:25,824 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000003/logs/stderr -> 200 2026-04-30 04:37:26,343 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:37:26,892 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:37:27,456 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:37:27,968 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:37:28,486 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000008/source/your_best -> 404 2026-04-30 04:37:29,060 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:37:29,564 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:37:29,638 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043637_533437_risk_aware_courier_20260430_133602_candidate_eval/results -> 200 2026-04-30 04:37:29,647 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:37:29,651 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043637_533437_risk_aware_courier_20260430_133602_candidate_eval/context-pack -> 200 2026-04-30 04:37:29,902 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:37:29,985 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:37:30,030 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:37:30,070 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:37:30,587 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000023/source/your_best -> 404 2026-04-30 04:37:31,068 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:37:31,619 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000022/source/your_best -> 404 2026-04-30 04:37:32,166 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000028/source/your_best -> 404 2026-04-30 04:37:32,697 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:37:33,266 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000002/source/your_best -> 404 2026-04-30 04:37:33,332 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043722_549257_invader_intercept_defense_20260430_133703_smoke -> 200 2026-04-30 04:37:33,773 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000001/source/baseline -> 200 2026-04-30 04:37:34,316 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000002/logs/stderr -> 200 2026-04-30 04:37:34,860 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000006/source/your_best -> 404 2026-04-30 04:37:35,346 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:37:35,380 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:37:35,409 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000004/source/your_best -> 404 2026-04-30 04:37:35,915 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000030/logs/stderr -> 200 2026-04-30 04:37:36,236 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043722_549257_invader_intercept_defense_20260430_133703_smoke/results -> 200 2026-04-30 04:37:36,370 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000001/source/your_best -> 404 2026-04-30 04:37:36,530 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:37:36,886 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000003/logs/stdout -> 200 2026-04-30 04:37:37,433 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000009/source/your_best -> 404 2026-04-30 04:37:37,961 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000020/source/your_best -> 404 2026-04-30 04:37:38,474 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000010/source/your_best -> 404 2026-04-30 04:37:39,029 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000020/logs/stderr -> 200 2026-04-30 04:37:39,556 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:37:40,097 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:37:40,649 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000030/logs/stdout -> 200 2026-04-30 04:37:41,160 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000030/source/your_best -> 404 2026-04-30 04:37:41,642 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness -> 200 2026-04-30 04:37:41,688 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000001/result -> 200 2026-04-30 04:37:42,259 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000002/files -> 200 2026-04-30 04:37:42,737 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000001/files -> 200 2026-04-30 04:37:43,295 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000002/result -> 200 2026-04-30 04:37:43,819 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000003/result -> 200 2026-04-30 04:37:44,385 INFO [battle_engine.api] GET /debug/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke_job_000002/source/baseline -> 404 2026-04-30 04:37:44,791 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:37:44,873 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke_job_000001/files -> 200 2026-04-30 04:37:45,402 INFO [battle_engine.api] GET /debug/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke_job_000002/source/your_best -> 404 2026-04-30 04:37:45,900 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000003/files -> 200 2026-04-30 04:37:46,464 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000005/files -> 200 2026-04-30 04:37:46,975 INFO [battle_engine.api] GET /debug/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke_job_000001/source/baseline -> 404 2026-04-30 04:37:47,197 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:37:47,503 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000004/result -> 200 2026-04-30 04:37:48,050 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000005/result -> 200 2026-04-30 04:37:48,584 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke_job_000002/result -> 404 2026-04-30 04:37:49,101 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke_job_000001/result -> 404 2026-04-30 04:37:49,363 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:37:49,609 INFO [battle_engine.api] GET /debug/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke_job_000001/source/your_best -> 404 2026-04-30 04:37:50,121 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000004/files -> 200 2026-04-30 04:37:50,427 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:37:50,641 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:37:51,132 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:37:51,196 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:37:51,684 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000001/source/your_best -> 404 2026-04-30 04:37:51,830 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:37:52,216 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness -> 200 2026-04-30 04:37:52,261 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke_job_000001/source/your_best -> 200 2026-04-30 04:37:52,725 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000001/source/your_best -> 200 2026-04-30 04:37:53,258 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000002/source/your_best -> 404 2026-04-30 04:37:53,796 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:37:54,342 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:37:54,862 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000002/source/baseline -> 404 2026-04-30 04:37:54,939 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:37:55,412 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000002/source/baseline -> 200 2026-04-30 04:37:55,738 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:37:55,986 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:37:56,251 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:37:56,485 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:37:57,084 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000001/source/baseline -> 404 2026-04-30 04:37:57,085 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:37:57,569 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke/jobs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke_job_000001/source/your_best -> 200 2026-04-30 04:37:57,741 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:37:58,097 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:37:58,277 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:37:58,645 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke/jobs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:37:59,051 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:37:59,146 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:37:59,672 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:38:00,049 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:38:00,152 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:38:00,669 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:38:00,671 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke_job_000001/source/baseline -> 200 2026-04-30 04:38:01,221 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:38:01,656 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:38:01,740 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:38:02,060 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:38:02,251 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:38:02,399 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness -> 200 2026-04-30 04:38:02,623 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:38:02,780 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:38:03,323 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:38:03,326 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000002/source/your_best -> 200 2026-04-30 04:38:03,814 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:38:03,847 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:38:04,326 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:38:04,585 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:38:04,874 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke_job_000002/source/your_best -> 200 2026-04-30 04:38:05,249 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:38:05,425 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:38:05,790 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:38:05,956 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:38:06,329 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:38:06,548 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000001/source/baseline -> 200 2026-04-30 04:38:07,115 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:38:07,115 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000002/source/your_best -> 200 2026-04-30 04:38:07,587 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:38:07,716 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043735_370086_blended_roi_intercept_v01_20260430_043722_smoke -> 200 2026-04-30 04:38:07,742 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043735_370086_blended_roi_intercept_v01_20260430_043722_smoke/results -> 200 2026-04-30 04:38:07,901 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:38:07,942 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043744_785072_invader_intercept_defense_20260430_133703_candidate_eval -> 200 2026-04-30 04:38:08,145 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:38:08,681 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000002/source/baseline -> 200 2026-04-30 04:38:09,182 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:38:09,681 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:38:10,207 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke_job_000002/source/baseline -> 200 2026-04-30 04:38:10,745 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:38:11,284 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke/jobs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:38:11,629 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_133142 -> 200 2026-04-30 04:38:11,769 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval/context-pack -> 200 2026-04-30 04:38:12,319 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005636_534284_food_roi_targeting_20260430_095526_candidate_eval/context-pack -> 200 2026-04-30 04:38:12,526 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness -> 200 2026-04-30 04:38:12,886 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/context-pack -> 200 2026-04-30 04:38:13,418 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval/context-pack -> 200 2026-04-30 04:38:13,894 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005908_395486_food_roi_targeting_20260430_095825_candidate_eval/context-pack -> 200 2026-04-30 04:38:14,467 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/context-pack -> 200 2026-04-30 04:38:14,965 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005100_403985_risk_aware_courier_20260430_094857_candidate_eval/context-pack -> 200 2026-04-30 04:38:15,004 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:38:15,464 INFO [battle_engine.api] GET /api/v1/candidates/remote_smoke_baseline1/source -> 404 2026-04-30 04:38:15,992 INFO [battle_engine.api] GET /debug/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000002/source/baseline -> 200 2026-04-30 04:38:16,497 INFO [battle_engine.api] GET /debug/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000001/source/baseline -> 200 2026-04-30 04:38:17,047 INFO [battle_engine.api] GET /debug/runs/run_20260430_005910_105419_risk_aware_courier_20260430_095900_smoke/jobs/run_20260430_005910_105419_risk_aware_courier_20260430_095900_smoke_job_000002/source/baseline -> 200 2026-04-30 04:38:17,546 INFO [battle_engine.api] GET /debug/runs/run_20260430_005910_105419_risk_aware_courier_20260430_095900_smoke/jobs/run_20260430_005910_105419_risk_aware_courier_20260430_095900_smoke_job_000001/source/baseline -> 200 2026-04-30 04:38:18,067 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke_job_000002/result -> 404 2026-04-30 04:38:18,622 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033359_406738_invader_intercept_defense_20260430_123336_smoke/results -> 200 2026-04-30 04:38:19,167 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010827_443332_invader_intercept_defense_20260430_100812_smoke/results -> 200 2026-04-30 04:38:19,650 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010040_356699_invader_intercept_defense_20260430_100026_smoke/results -> 200 2026-04-30 04:38:20,175 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/results -> 200 2026-04-30 04:38:20,705 INFO [battle_engine.api] GET /debug/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:38:21,249 INFO [battle_engine.api] GET /debug/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:38:21,766 INFO [battle_engine.api] GET /debug/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:38:22,345 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000005/result -> 200 2026-04-30 04:38:22,669 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness -> 200 2026-04-30 04:38:22,845 INFO [battle_engine.api] GET /debug/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:38:23,017 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:38:23,388 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000001/result -> 200 2026-04-30 04:38:23,948 INFO [battle_engine.api] GET /debug/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:38:24,468 INFO [battle_engine.api] GET /debug/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:38:25,011 INFO [battle_engine.api] GET /debug/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:38:25,510 INFO [battle_engine.api] GET /debug/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:38:26,042 INFO [battle_engine.api] GET /debug/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:38:26,568 INFO [battle_engine.api] GET /debug/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:38:27,103 INFO [battle_engine.api] GET /debug/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:38:27,679 INFO [battle_engine.api] GET /debug/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:38:28,206 INFO [battle_engine.api] GET /debug/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:38:28,648 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:38:28,710 INFO [battle_engine.api] GET /debug/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:38:29,239 INFO [battle_engine.api] GET /debug/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:38:29,778 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000005/result -> 200 2026-04-30 04:38:30,312 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000002/logs/stdout -> 200 2026-04-30 04:38:30,845 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000001/source/baseline -> 200 2026-04-30 04:38:31,392 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:38:31,910 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:38:32,415 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000002/source/baseline -> 200 2026-04-30 04:38:32,464 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043828_641050_dynamic_role_switching_20260430_133803_smoke -> 200 2026-04-30 04:38:32,940 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000002/logs/stderr -> 200 2026-04-30 04:38:32,943 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness -> 200 2026-04-30 04:38:33,487 INFO [battle_engine.api] GET /debug/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000002 -> 200 2026-04-30 04:38:33,996 INFO [battle_engine.api] GET /debug/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000001 -> 200 2026-04-30 04:38:34,571 INFO [battle_engine.api] GET /debug/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000001 -> 200 2026-04-30 04:38:35,044 INFO [battle_engine.api] GET /debug/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000002 -> 200 2026-04-30 04:38:35,563 INFO [battle_engine.api] GET /debug/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000001 -> 200 2026-04-30 04:38:35,979 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043828_641050_dynamic_role_switching_20260430_133803_smoke -> 200 2026-04-30 04:38:36,079 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/context-pack -> 200 2026-04-30 04:38:36,573 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:38:37,146 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033257_921111_portal_planner_defense_20260430_123030_smoke/context-pack -> 200 2026-04-30 04:38:37,608 INFO [battle_engine.api] GET /debug/runs/run_20260430_010829_682637_portal_planner_defense_20260430_100806_smoke/jobs/run_20260430_010829_682637_portal_planner_defense_20260430_100806_smoke_job_000002/source/baseline -> 200 2026-04-30 04:38:38,118 INFO [battle_engine.api] GET /debug/runs/run_20260430_010829_682637_portal_planner_defense_20260430_100806_smoke/jobs/run_20260430_010829_682637_portal_planner_defense_20260430_100806_smoke_job_000001/source/baseline -> 200 2026-04-30 04:38:38,691 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs -> 200 2026-04-30 04:38:39,215 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000002 -> 200 2026-04-30 04:38:39,709 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000001 -> 200 2026-04-30 04:38:40,208 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000001 -> 200 2026-04-30 04:38:40,763 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000002 -> 200 2026-04-30 04:38:40,930 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness/context-pack -> 200 2026-04-30 04:38:40,933 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness/jobs -> 200 2026-04-30 04:38:40,937 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness/results -> 200 2026-04-30 04:38:41,208 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043744_785072_invader_intercept_defense_20260430_133703_candidate_eval -> 200 2026-04-30 04:38:41,246 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000001 -> 200 2026-04-30 04:38:41,756 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000001/source/baseline -> 200 2026-04-30 04:38:42,290 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000001/source/baseline -> 200 2026-04-30 04:38:42,809 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000001/source/your_best -> 200 2026-04-30 04:38:43,346 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000002/source/baseline -> 200 2026-04-30 04:38:43,858 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000001/source/baseline -> 200 2026-04-30 04:38:44,395 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000002/source/your_best -> 200 2026-04-30 04:38:45,016 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000002/source/your_best -> 200 2026-04-30 04:38:45,508 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000001/source/your_best -> 200 2026-04-30 04:38:45,975 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000002/source/baseline -> 200 2026-04-30 04:38:46,101 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043828_641050_dynamic_role_switching_20260430_133803_smoke -> 200 2026-04-30 04:38:46,511 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs -> 200 2026-04-30 04:38:47,052 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs -> 200 2026-04-30 04:38:47,564 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs -> 200 2026-04-30 04:38:48,065 INFO [battle_engine.api] GET /debug/runs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke_job_000002/source/baseline -> 200 2026-04-30 04:38:48,577 INFO [battle_engine.api] GET /debug/runs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke/jobs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke_job_000002/source/baseline -> 200 2026-04-30 04:38:48,580 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness/jobs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness_job_000034/result -> 200 2026-04-30 04:38:48,706 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness/jobs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness_job_000035/result -> 200 2026-04-30 04:38:48,891 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness/jobs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness_job_000036/result -> 200 2026-04-30 04:38:49,105 INFO [battle_engine.api] GET /debug/runs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke/jobs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke_job_000001/source/baseline -> 200 2026-04-30 04:38:49,123 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness/jobs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness_job_000037/result -> 200 2026-04-30 04:38:49,324 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness/jobs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness_job_000038/result -> 200 2026-04-30 04:38:49,610 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness/jobs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness_job_000039/result -> 200 2026-04-30 04:38:49,657 INFO [battle_engine.api] GET /debug/runs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke_job_000001/source/baseline -> 200 2026-04-30 04:38:50,170 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010040_356699_invader_intercept_defense_20260430_100026_smoke/context-pack -> 200 2026-04-30 04:38:50,715 INFO [battle_engine.api] GET /debug/runs/run_20260430_005447_340603_dynamic_role_switching_20260430_095422_smoke/jobs/run_20260430_005447_340603_dynamic_role_switching_20260430_095422_smoke_job_000001/source/baseline -> 200 2026-04-30 04:38:51,282 INFO [battle_engine.api] GET /runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval -> 200 2026-04-30 04:38:51,799 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000002/result -> 200 2026-04-30 04:38:52,343 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000004/result -> 200 2026-04-30 04:38:52,839 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/context-pack -> 200 2026-04-30 04:38:53,350 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/context-pack -> 200 2026-04-30 04:38:53,888 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000023/source/your_best -> 200 2026-04-30 04:38:54,378 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000013/source/your_best -> 200 2026-04-30 04:38:54,916 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:38:55,453 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000021/source/your_best -> 200 2026-04-30 04:38:55,943 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000027/source/your_best -> 200 2026-04-30 04:38:56,469 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000021/source/your_best -> 200 2026-04-30 04:38:57,011 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs -> 200 2026-04-30 04:38:57,566 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000003/source/your_best -> 200 2026-04-30 04:38:58,117 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000004/source/your_best -> 200 2026-04-30 04:38:58,610 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:38:59,151 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000008/source/your_best -> 200 2026-04-30 04:38:59,724 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000025/source/your_best -> 200 2026-04-30 04:39:00,200 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000012/source/your_best -> 200 2026-04-30 04:39:00,274 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:39:00,712 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000020/source/your_best -> 200 2026-04-30 04:39:01,293 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000029/source/your_best -> 200 2026-04-30 04:39:01,800 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000012/source/your_best -> 200 2026-04-30 04:39:02,311 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000018/source/your_best -> 200 2026-04-30 04:39:02,851 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000026/source/your_best -> 200 2026-04-30 04:39:03,364 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000010/source/your_best -> 200 2026-04-30 04:39:03,684 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043814_998303_blended_roi_intercept_v01_20260430_043722_candidate_eval -> 200 2026-04-30 04:39:03,877 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000023/source/your_best -> 200 2026-04-30 04:39:04,397 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000009/source/your_best -> 200 2026-04-30 04:39:04,878 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000014/source/your_best -> 200 2026-04-30 04:39:05,384 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000011/source/your_best -> 200 2026-04-30 04:39:05,917 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000019/source/your_best -> 200 2026-04-30 04:39:06,406 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043744_785072_invader_intercept_defense_20260430_133703_candidate_eval -> 200 2026-04-30 04:39:06,413 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000022/source/your_best -> 200 2026-04-30 04:39:06,940 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000026/source/your_best -> 200 2026-04-30 04:39:07,470 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000018/source/your_best -> 200 2026-04-30 04:39:08,066 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000007/source/your_best -> 200 2026-04-30 04:39:08,554 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:39:09,098 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000009/source/your_best -> 200 2026-04-30 04:39:09,596 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000013/source/your_best -> 200 2026-04-30 04:39:10,010 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043828_641050_dynamic_role_switching_20260430_133803_smoke -> 200 2026-04-30 04:39:10,168 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000023/source/your_best -> 200 2026-04-30 04:39:10,687 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000002/source/your_best -> 200 2026-04-30 04:39:11,256 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000024/source/your_best -> 200 2026-04-30 04:39:11,745 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000005/source/your_best -> 200 2026-04-30 04:39:12,265 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000010/source/your_best -> 200 2026-04-30 04:39:12,795 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:39:13,354 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000010/source/your_best -> 200 2026-04-30 04:39:13,902 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000005/source/your_best -> 200 2026-04-30 04:39:14,402 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000025/source/your_best -> 200 2026-04-30 04:39:14,510 INFO [battle_engine.api] GET /api/v1/runs -> 200 2026-04-30 04:39:14,512 INFO [battle_engine.api] GET /api/v1/health -> 200 2026-04-30 04:39:15,011 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000023/source/your_best -> 200 2026-04-30 04:39:15,493 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000022/source/your_best -> 200 2026-04-30 04:39:16,048 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000020/source/your_best -> 200 2026-04-30 04:39:16,491 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000014/source/your_best -> 200 2026-04-30 04:39:16,942 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043744_785072_invader_intercept_defense_20260430_133703_candidate_eval/context-pack -> 200 2026-04-30 04:39:16,945 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043744_785072_invader_intercept_defense_20260430_133703_candidate_eval/results -> 200 2026-04-30 04:39:16,960 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:39:16,961 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:39:16,963 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:39:16,963 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:39:17,064 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000012/source/your_best -> 200 2026-04-30 04:39:17,573 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000024/source/your_best -> 200 2026-04-30 04:39:18,104 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000024/source/your_best -> 200 2026-04-30 04:39:18,660 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:39:19,136 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000015/source/your_best -> 200 2026-04-30 04:39:19,642 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000008/source/your_best -> 200 2026-04-30 04:39:20,204 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:39:20,679 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000006/source/your_best -> 200 2026-04-30 04:39:21,201 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000027/source/your_best -> 200 2026-04-30 04:39:21,746 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000022/source/your_best -> 200 2026-04-30 04:39:22,282 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000016/source/your_best -> 200 2026-04-30 04:39:22,797 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000007/source/your_best -> 200 2026-04-30 04:39:23,326 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000017/source/your_best -> 200 2026-04-30 04:39:23,868 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000028/source/your_best -> 200 2026-04-30 04:39:24,360 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000024/source/your_best -> 200 2026-04-30 04:39:24,917 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000006/source/your_best -> 200 2026-04-30 04:39:25,409 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000019/source/your_best -> 200 2026-04-30 04:39:25,901 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000026/source/your_best -> 200 2026-04-30 04:39:26,428 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000003/source/your_best -> 200 2026-04-30 04:39:26,486 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:39:26,996 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000006/source/your_best -> 200 2026-04-30 04:39:27,528 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000001/source/your_best -> 200 2026-04-30 04:39:27,985 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000001/source/your_best -> 200 2026-04-30 04:39:28,523 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000027/source/your_best -> 200 2026-04-30 04:39:29,051 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000015/source/your_best -> 200 2026-04-30 04:39:29,578 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000009/source/your_best -> 200 2026-04-30 04:39:30,051 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:39:30,598 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:39:31,161 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000010/source/your_best -> 200 2026-04-30 04:39:31,662 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000009/source/your_best -> 200 2026-04-30 04:39:32,182 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000006/source/your_best -> 200 2026-04-30 04:39:32,744 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000019/source/your_best -> 200 2026-04-30 04:39:33,280 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:39:33,322 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:39:33,805 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000014/source/your_best -> 200 2026-04-30 04:39:34,371 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000015/source/your_best -> 200 2026-04-30 04:39:34,862 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000002/source/your_best -> 200 2026-04-30 04:39:35,433 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000008/source/your_best -> 200 2026-04-30 04:39:35,945 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000028/source/your_best -> 200 2026-04-30 04:39:36,459 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000002/source/your_best -> 200 2026-04-30 04:39:36,973 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000005/source/your_best -> 200 2026-04-30 04:39:37,475 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000002/source/your_best -> 200 2026-04-30 04:39:37,624 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:39:38,041 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000004/source/your_best -> 200 2026-04-30 04:39:38,528 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000011/source/your_best -> 200 2026-04-30 04:39:39,028 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000028/source/your_best -> 200 2026-04-30 04:39:39,550 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000013/source/your_best -> 200 2026-04-30 04:39:40,044 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000007/source/your_best -> 200 2026-04-30 04:39:40,601 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000016/source/your_best -> 200 2026-04-30 04:39:41,131 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000003/source/your_best -> 200 2026-04-30 04:39:41,687 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000012/source/your_best -> 200 2026-04-30 04:39:42,217 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000018/source/your_best -> 200 2026-04-30 04:39:42,549 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke -> 200 2026-04-30 04:39:42,736 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000017/source/your_best -> 200 2026-04-30 04:39:43,288 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000007/source/your_best -> 200 2026-04-30 04:39:43,801 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000003/source/your_best -> 200 2026-04-30 04:39:44,371 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000020/source/your_best -> 200 2026-04-30 04:39:44,867 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000016/source/your_best -> 200 2026-04-30 04:39:45,420 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000025/source/your_best -> 200 2026-04-30 04:39:45,909 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000001/source/your_best -> 200 2026-04-30 04:39:46,450 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000004/source/your_best -> 200 2026-04-30 04:39:47,015 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000025/source/your_best -> 200 2026-04-30 04:39:47,466 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000013/source/your_best -> 200 2026-04-30 04:39:47,727 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043814_998303_blended_roi_intercept_v01_20260430_043722_candidate_eval -> 200 2026-04-30 04:39:47,752 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043814_998303_blended_roi_intercept_v01_20260430_043722_candidate_eval/results -> 200 2026-04-30 04:39:47,760 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke -> 200 2026-04-30 04:39:48,014 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:39:48,548 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000015/source/your_best -> 200 2026-04-30 04:39:49,049 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000011/source/your_best -> 200 2026-04-30 04:39:49,546 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000021/source/your_best -> 200 2026-04-30 04:39:50,084 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000022/source/your_best -> 200 2026-04-30 04:39:50,652 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000014/source/your_best -> 200 2026-04-30 04:39:51,112 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000016/source/your_best -> 200 2026-04-30 04:39:51,673 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000020/source/your_best -> 200 2026-04-30 04:39:52,229 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000004/source/your_best -> 200 2026-04-30 04:39:52,727 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000005/source/your_best -> 200 2026-04-30 04:39:52,986 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke -> 200 2026-04-30 04:39:53,253 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000001/source/your_best -> 200 2026-04-30 04:39:53,760 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000021/source/your_best -> 200 2026-04-30 04:39:54,294 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000019/source/your_best -> 200 2026-04-30 04:39:54,790 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000017/source/your_best -> 200 2026-04-30 04:39:55,342 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043828_641050_dynamic_role_switching_20260430_133803_smoke -> 200 2026-04-30 04:39:55,346 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000029/source/your_best -> 200 2026-04-30 04:39:55,850 INFO [battle_engine.api] GET /debug/runs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke_job_000002/source/baseline -> 404 2026-04-30 04:39:56,357 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043926_461681_invader_intercept_defense_20260430_133703_robustness -> 200 2026-04-30 04:39:56,379 INFO [battle_engine.api] GET /debug/runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke_job_000002/source/baseline -> 404 2026-04-30 04:39:56,889 INFO [battle_engine.api] GET /debug/runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke_job_000001/source/baseline -> 404 2026-04-30 04:39:57,416 INFO [battle_engine.api] GET /debug/runs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke/jobs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke_job_000001/source/baseline -> 404 2026-04-30 04:39:57,722 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_043319 -> 200 2026-04-30 04:39:57,807 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_043722 -> 200 2026-04-30 04:39:57,833 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:39:57,854 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:39:57,874 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:39:57,896 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:39:57,938 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:39:58,327 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke -> 200 2026-04-30 04:39:58,439 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:39:58,963 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:39:59,556 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:40:00,040 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:40:00,555 INFO [battle_engine.api] GET /runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval -> 200 2026-04-30 04:40:01,081 INFO [battle_engine.api] GET /runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval -> 200 2026-04-30 04:40:01,780 INFO [battle_engine.api] GET /runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval -> 200 2026-04-30 04:40:02,309 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/context-pack -> 200 2026-04-30 04:40:02,814 INFO [battle_engine.api] GET /debug/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:40:03,357 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke_job_000002/result -> 200 2026-04-30 04:40:03,547 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke -> 200 2026-04-30 04:40:03,931 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/results -> 200 2026-04-30 04:40:04,438 INFO [battle_engine.api] GET /debug/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:40:04,948 INFO [battle_engine.api] GET /debug/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:40:05,485 INFO [battle_engine.api] GET /debug/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:40:05,952 INFO [battle_engine.api] GET /debug/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:40:06,502 INFO [battle_engine.api] GET /debug/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:40:07,047 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:40:07,531 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:40:08,089 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000021 -> 200 2026-04-30 04:40:08,611 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000014 -> 200 2026-04-30 04:40:08,757 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke -> 200 2026-04-30 04:40:09,169 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs -> 200 2026-04-30 04:40:09,696 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs -> 200 2026-04-30 04:40:10,223 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs -> 200 2026-04-30 04:40:10,783 INFO [battle_engine.api] GET /debug/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:40:11,287 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000003/logs/stdout -> 200 2026-04-30 04:40:11,786 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000003/logs/stderr -> 200 2026-04-30 04:40:12,308 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000019/logs/stderr -> 200 2026-04-30 04:40:12,879 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000022/logs/stderr -> 200 2026-04-30 04:40:13,187 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043828_641050_dynamic_role_switching_20260430_133803_smoke/results -> 200 2026-04-30 04:40:13,380 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000020/logs/stdout -> 200 2026-04-30 04:40:13,901 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000014/logs/stderr -> 200 2026-04-30 04:40:13,989 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke -> 200 2026-04-30 04:40:14,450 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000024/logs/stdout -> 200 2026-04-30 04:40:14,955 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000010/logs/stdout -> 200 2026-04-30 04:40:15,514 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:40:16,018 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000009/logs/stdout -> 200 2026-04-30 04:40:16,576 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000017/logs/stdout -> 200 2026-04-30 04:40:17,112 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000025/logs/stderr -> 200 2026-04-30 04:40:17,615 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000027/logs/stdout -> 200 2026-04-30 04:40:18,101 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000005/logs/stderr -> 200 2026-04-30 04:40:18,690 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000004/logs/stdout -> 200 2026-04-30 04:40:19,138 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000021/logs/stdout -> 200 2026-04-30 04:40:19,238 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke -> 200 2026-04-30 04:40:19,700 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000024/logs/stdout -> 200 2026-04-30 04:40:20,236 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000015/logs/stdout -> 200 2026-04-30 04:40:20,722 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000029/logs/stdout -> 200 2026-04-30 04:40:21,271 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000023/logs/stdout -> 200 2026-04-30 04:40:21,786 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:40:22,340 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000020/logs/stderr -> 200 2026-04-30 04:40:22,872 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000013/logs/stderr -> 200 2026-04-30 04:40:23,367 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000011/logs/stderr -> 200 2026-04-30 04:40:23,921 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000020/logs/stderr -> 200 2026-04-30 04:40:24,406 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000022/logs/stdout -> 200 2026-04-30 04:40:24,513 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke -> 200 2026-04-30 04:40:24,959 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000024/logs/stdout -> 200 2026-04-30 04:40:25,460 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000016/logs/stderr -> 200 2026-04-30 04:40:25,579 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:40:26,060 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000013/logs/stderr -> 200 2026-04-30 04:40:26,560 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000007/logs/stdout -> 200 2026-04-30 04:40:27,100 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000023/logs/stdout -> 200 2026-04-30 04:40:27,596 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000023/logs/stdout -> 200 2026-04-30 04:40:28,139 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000021/logs/stdout -> 200 2026-04-30 04:40:28,672 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000002/logs/stdout -> 200 2026-04-30 04:40:29,228 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000023/logs/stderr -> 200 2026-04-30 04:40:29,700 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000015/logs/stderr -> 200 2026-04-30 04:40:29,741 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke -> 200 2026-04-30 04:40:30,253 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000021/logs/stderr -> 200 2026-04-30 04:40:30,484 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043926_461681_invader_intercept_defense_20260430_133703_robustness -> 200 2026-04-30 04:40:30,745 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:40:31,263 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000029/logs/stderr -> 200 2026-04-30 04:40:31,824 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000001/logs/stderr -> 200 2026-04-30 04:40:32,354 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000010/logs/stdout -> 200 2026-04-30 04:40:32,654 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_040900_855429_dead_end_avoidance_20260430_034351_candidate_eval/artifacts/results.jsonl -> 200 2026-04-30 04:40:32,758 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:40:32,844 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000010/logs/stderr -> 200 2026-04-30 04:40:33,363 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000009/logs/stdout -> 200 2026-04-30 04:40:33,891 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000004/logs/stderr -> 200 2026-04-30 04:40:34,418 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:40:34,935 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000024/logs/stderr -> 200 2026-04-30 04:40:35,264 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke -> 200 2026-04-30 04:40:35,458 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000017/logs/stderr -> 200 2026-04-30 04:40:35,948 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:40:36,483 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000001/logs/stderr -> 200 2026-04-30 04:40:37,026 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000024/logs/stdout -> 200 2026-04-30 04:40:37,552 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000007/logs/stderr -> 200 2026-04-30 04:40:38,066 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000001/logs/stdout -> 200 2026-04-30 04:40:38,597 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000005/logs/stderr -> 200 2026-04-30 04:40:39,095 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000008/logs/stderr -> 200 2026-04-30 04:40:39,642 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000007/logs/stdout -> 200 2026-04-30 04:40:40,163 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000018/logs/stdout -> 200 2026-04-30 04:40:40,434 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke -> 200 2026-04-30 04:40:40,644 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000001/logs/stderr -> 200 2026-04-30 04:40:41,226 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000017/logs/stdout -> 200 2026-04-30 04:40:41,507 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043926_461681_invader_intercept_defense_20260430_133703_robustness/results -> 200 2026-04-30 04:40:41,733 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000009/logs/stdout -> 200 2026-04-30 04:40:41,734 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043926_461681_invader_intercept_defense_20260430_133703_robustness/context-pack -> 200 2026-04-30 04:40:41,788 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043926_461681_invader_intercept_defense_20260430_133703_robustness/jobs -> 200 2026-04-30 04:40:41,811 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043926_461681_invader_intercept_defense_20260430_133703_robustness/source/your_best -> 200 2026-04-30 04:40:42,278 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000008/logs/stdout -> 200 2026-04-30 04:40:42,820 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000024/logs/stdout -> 200 2026-04-30 04:40:43,334 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000025/logs/stderr -> 200 2026-04-30 04:40:43,868 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000016/logs/stdout -> 200 2026-04-30 04:40:44,395 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000001/logs/stdout -> 200 2026-04-30 04:40:44,705 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke/results -> 200 2026-04-30 04:40:44,886 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000024/logs/stderr -> 200 2026-04-30 04:40:45,393 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000012/logs/stdout -> 200 2026-04-30 04:40:45,926 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000017/logs/stderr -> 200 2026-04-30 04:40:46,504 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000009/logs/stderr -> 200 2026-04-30 04:40:47,004 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000017/logs/stdout -> 200 2026-04-30 04:40:47,544 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:40:48,094 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000026/logs/stderr -> 200 2026-04-30 04:40:48,620 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000021/logs/stderr -> 200 2026-04-30 04:40:49,165 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000002/logs/stderr -> 200 2026-04-30 04:40:49,707 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000004/logs/stderr -> 200 2026-04-30 04:40:49,961 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:40:50,164 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043439_651411_blended_roi_intercept_v01_20260430_043319_candidate_eval/context-pack -> 200 2026-04-30 04:40:50,181 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043439_651411_blended_roi_intercept_v01_20260430_043319_candidate_eval/artifacts/summary.csv -> 200 2026-04-30 04:40:50,219 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000026/logs/stderr -> 200 2026-04-30 04:40:50,808 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000008/logs/stdout -> 200 2026-04-30 04:40:51,373 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000001/logs/stdout -> 200 2026-04-30 04:40:51,860 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000027/logs/stdout -> 200 2026-04-30 04:40:52,347 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000014/logs/stderr -> 200 2026-04-30 04:40:52,898 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000002/logs/stderr -> 200 2026-04-30 04:40:53,417 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000004/logs/stdout -> 200 2026-04-30 04:40:53,475 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044025_573263_dynamic_role_switching_20260430_133803_candidate_eval -> 200 2026-04-30 04:40:53,906 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000007/logs/stderr -> 200 2026-04-30 04:40:54,448 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000018/logs/stderr -> 200 2026-04-30 04:40:54,946 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000008/logs/stdout -> 200 2026-04-30 04:40:55,498 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000004/logs/stderr -> 200 2026-04-30 04:40:55,660 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044049_955447_risk_aware_courier_20260430_133926_candidate_eval -> 200 2026-04-30 04:40:55,980 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000011/logs/stderr -> 200 2026-04-30 04:40:56,561 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000004/logs/stderr -> 200 2026-04-30 04:40:57,039 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000021/logs/stdout -> 200 2026-04-30 04:40:57,562 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000027/logs/stderr -> 200 2026-04-30 04:40:58,141 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000028/logs/stdout -> 200 2026-04-30 04:40:58,640 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000026/logs/stdout -> 200 2026-04-30 04:40:59,152 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000023/logs/stderr -> 200 2026-04-30 04:40:59,660 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000029/logs/stderr -> 200 2026-04-30 04:41:00,168 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000029/logs/stdout -> 200 2026-04-30 04:41:00,456 INFO [battle_engine.api] GET /api/v1/health -> 200 2026-04-30 04:41:00,672 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000019/logs/stdout -> 200 2026-04-30 04:41:00,739 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:01,231 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000025/logs/stdout -> 200 2026-04-30 04:41:01,760 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000019/logs/stdout -> 200 2026-04-30 04:41:02,300 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000009/logs/stdout -> 200 2026-04-30 04:41:02,451 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:02,792 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000008/logs/stderr -> 200 2026-04-30 04:41:03,334 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:41:03,821 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000020/logs/stderr -> 200 2026-04-30 04:41:04,329 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000011/logs/stdout -> 200 2026-04-30 04:41:04,908 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000012/logs/stderr -> 200 2026-04-30 04:41:05,096 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:05,416 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000006/logs/stderr -> 200 2026-04-30 04:41:05,911 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044049_955447_risk_aware_courier_20260430_133926_candidate_eval -> 200 2026-04-30 04:41:05,963 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000016/logs/stderr -> 200 2026-04-30 04:41:06,016 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:41:06,461 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000005/logs/stderr -> 200 2026-04-30 04:41:06,638 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:07,008 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000001/logs/stdout -> 200 2026-04-30 04:41:07,525 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:41:07,782 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:08,038 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000012/logs/stderr -> 200 2026-04-30 04:41:08,546 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000022/logs/stdout -> 200 2026-04-30 04:41:09,065 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000013/logs/stderr -> 200 2026-04-30 04:41:09,464 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:09,619 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000012/logs/stdout -> 200 2026-04-30 04:41:10,164 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000017/logs/stderr -> 200 2026-04-30 04:41:10,309 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:10,671 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000006/logs/stdout -> 200 2026-04-30 04:41:10,975 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:11,153 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000006/logs/stderr -> 200 2026-04-30 04:41:11,539 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:11,684 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000023/logs/stderr -> 200 2026-04-30 04:41:12,097 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:12,220 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000006/logs/stderr -> 200 2026-04-30 04:41:12,717 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:12,718 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000014/logs/stdout -> 200 2026-04-30 04:41:13,280 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000004/logs/stdout -> 200 2026-04-30 04:41:13,427 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:13,799 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000016/logs/stdout -> 200 2026-04-30 04:41:14,130 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:41:14,306 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000010/logs/stderr -> 200 2026-04-30 04:41:14,863 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:14,864 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000006/logs/stdout -> 200 2026-04-30 04:41:15,305 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000016/logs/stdout -> 200 2026-04-30 04:41:15,555 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:15,870 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000025/logs/stdout -> 200 2026-04-30 04:41:16,039 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044025_573263_dynamic_role_switching_20260430_133803_candidate_eval -> 200 2026-04-30 04:41:16,064 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044049_955447_risk_aware_courier_20260430_133926_candidate_eval -> 200 2026-04-30 04:41:16,397 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:16,398 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000005/logs/stderr -> 200 2026-04-30 04:41:16,921 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000005/logs/stdout -> 200 2026-04-30 04:41:17,102 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:17,502 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000012/logs/stdout -> 200 2026-04-30 04:41:18,007 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:41:18,008 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000006/logs/stderr -> 200 2026-04-30 04:41:18,528 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000010/logs/stdout -> 200 2026-04-30 04:41:19,050 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:41:19,554 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000012/logs/stdout -> 200 2026-04-30 04:41:20,095 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000015/logs/stdout -> 200 2026-04-30 04:41:20,208 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044114_124724_capsule_power_play_20260430_044100_smoke -> 200 2026-04-30 04:41:20,658 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000015/logs/stdout -> 200 2026-04-30 04:41:21,196 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000011/logs/stderr -> 200 2026-04-30 04:41:21,700 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000012/logs/stdout -> 200 2026-04-30 04:41:22,188 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000019/logs/stderr -> 200 2026-04-30 04:41:22,736 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000024/logs/stderr -> 200 2026-04-30 04:41:23,022 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044025_573263_dynamic_role_switching_20260430_133803_candidate_eval/results -> 200 2026-04-30 04:41:23,220 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:41:23,221 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:41:23,225 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044025_573263_dynamic_role_switching_20260430_133803_candidate_eval/context-pack -> 200 2026-04-30 04:41:23,258 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000014/logs/stderr -> 200 2026-04-30 04:41:23,840 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000023/logs/stderr -> 200 2026-04-30 04:41:24,368 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000004/logs/stdout -> 200 2026-04-30 04:41:24,865 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000009/logs/stderr -> 200 2026-04-30 04:41:25,239 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044114_124724_capsule_power_play_20260430_044100_smoke -> 200 2026-04-30 04:41:25,391 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000021/logs/stderr -> 200 2026-04-30 04:41:25,950 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000023/logs/stdout -> 200 2026-04-30 04:41:26,207 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044049_955447_risk_aware_courier_20260430_133926_candidate_eval -> 200 2026-04-30 04:41:26,474 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000023/logs/stderr -> 200 2026-04-30 04:41:26,985 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:41:27,519 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:41:28,041 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000024/logs/stderr -> 200 2026-04-30 04:41:28,523 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000021/logs/stderr -> 200 2026-04-30 04:41:29,080 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000005/logs/stdout -> 200 2026-04-30 04:41:29,637 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000003/logs/stderr -> 200 2026-04-30 04:41:30,139 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000019/logs/stdout -> 200 2026-04-30 04:41:30,269 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044114_124724_capsule_power_play_20260430_044100_smoke -> 200 2026-04-30 04:41:30,692 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000007/logs/stdout -> 200 2026-04-30 04:41:31,209 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000012/logs/stderr -> 200 2026-04-30 04:41:31,533 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:41:31,778 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000027/logs/stderr -> 200 2026-04-30 04:41:32,359 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000020/logs/stderr -> 200 2026-04-30 04:41:32,618 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044049_955447_risk_aware_courier_20260430_133926_candidate_eval/context-pack -> 200 2026-04-30 04:41:32,622 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044049_955447_risk_aware_courier_20260430_133926_candidate_eval/results -> 200 2026-04-30 04:41:32,623 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:41:32,844 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000001/logs/stderr -> 200 2026-04-30 04:41:32,849 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:41:33,003 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:41:33,146 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:41:33,343 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000011/logs/stderr -> 200 2026-04-30 04:41:33,917 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000028/logs/stdout -> 200 2026-04-30 04:41:34,435 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000003/logs/stderr -> 200 2026-04-30 04:41:34,968 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000003/logs/stderr -> 200 2026-04-30 04:41:35,301 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044114_124724_capsule_power_play_20260430_044100_smoke -> 200 2026-04-30 04:41:35,504 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000018/logs/stdout -> 200 2026-04-30 04:41:36,016 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000015/logs/stderr -> 200 2026-04-30 04:41:36,030 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:41:36,566 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000010/logs/stderr -> 200 2026-04-30 04:41:36,601 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:41:37,096 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000020/logs/stderr -> 200 2026-04-30 04:41:37,584 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000002/logs/stdout -> 200 2026-04-30 04:41:38,125 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000028/logs/stderr -> 200 2026-04-30 04:41:38,667 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000003/logs/stdout -> 200 2026-04-30 04:41:39,197 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000026/logs/stdout -> 200 2026-04-30 04:41:39,686 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:41:39,725 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:41:40,252 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000025/logs/stdout -> 200 2026-04-30 04:41:40,747 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000016/logs/stderr -> 200 2026-04-30 04:41:41,271 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000009/logs/stdout -> 200 2026-04-30 04:41:41,861 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000010/logs/stderr -> 200 2026-04-30 04:41:42,268 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:41:42,332 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000010/logs/stdout -> 200 2026-04-30 04:41:42,337 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044114_124724_capsule_power_play_20260430_044100_smoke/results -> 200 2026-04-30 04:41:42,773 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:41:42,799 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:41:42,861 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000024/logs/stderr -> 200 2026-04-30 04:41:43,278 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:41:43,387 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:41:43,425 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000013/logs/stdout -> 200 2026-04-30 04:41:43,471 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044025_573263_dynamic_role_switching_20260430_133803_candidate_eval/jobs -> 200 2026-04-30 04:41:43,930 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000019/logs/stderr -> 200 2026-04-30 04:41:44,484 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000003/logs/stdout -> 200 2026-04-30 04:41:45,025 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000020/logs/stdout -> 200 2026-04-30 04:41:45,210 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness -> 200 2026-04-30 04:41:45,541 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000003/logs/stdout -> 200 2026-04-30 04:41:46,046 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000021/logs/stderr -> 200 2026-04-30 04:41:46,563 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000020/logs/stdout -> 200 2026-04-30 04:41:47,105 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000011/logs/stdout -> 200 2026-04-30 04:41:47,655 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000028/logs/stdout -> 200 2026-04-30 04:41:47,721 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044136_592778_dead_end_avoidance_20260430_044124_smoke/results -> 200 2026-04-30 04:41:48,141 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000025/logs/stderr -> 200 2026-04-30 04:41:48,648 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:41:49,174 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000028/logs/stderr -> 200 2026-04-30 04:41:49,682 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000013/logs/stderr -> 200 2026-04-30 04:41:50,210 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000016/logs/stdout -> 200 2026-04-30 04:41:50,742 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000019/logs/stderr -> 200 2026-04-30 04:41:50,818 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:41:51,279 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000025/logs/stderr -> 200 2026-04-30 04:41:51,810 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000022/logs/stderr -> 200 2026-04-30 04:41:52,356 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000022/logs/stderr -> 200 2026-04-30 04:41:52,852 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000012/logs/stderr -> 200 2026-04-30 04:41:53,133 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044142_257903_invader_intercept_defense_20260430_134124_smoke -> 200 2026-04-30 04:41:53,371 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000016/logs/stdout -> 200 2026-04-30 04:41:53,895 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:41:54,437 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000022/logs/stdout -> 200 2026-04-30 04:41:54,970 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000014/logs/stdout -> 200 2026-04-30 04:41:55,252 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:41:55,380 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness -> 200 2026-04-30 04:41:55,463 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000015/logs/stdout -> 200 2026-04-30 04:41:55,968 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:41:56,534 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000002/logs/stderr -> 200 2026-04-30 04:41:56,658 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:41:57,024 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000006/logs/stderr -> 200 2026-04-30 04:41:57,568 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000002/logs/stdout -> 200 2026-04-30 04:41:58,097 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000008/logs/stderr -> 200 2026-04-30 04:41:58,579 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000014/logs/stdout -> 200 2026-04-30 04:41:59,133 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000007/logs/stderr -> 200 2026-04-30 04:41:59,636 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000011/logs/stdout -> 200 2026-04-30 04:42:00,148 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000026/logs/stdout -> 200 2026-04-30 04:42:00,684 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000007/logs/stderr -> 200 2026-04-30 04:42:01,169 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:42:01,692 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000022/logs/stderr -> 200 2026-04-30 04:42:01,705 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:42:02,221 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000019/logs/stdout -> 200 2026-04-30 04:42:02,728 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000015/logs/stderr -> 200 2026-04-30 04:42:03,278 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000009/logs/stderr -> 200 2026-04-30 04:42:03,790 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000013/logs/stderr -> 200 2026-04-30 04:42:04,314 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000014/logs/stderr -> 200 2026-04-30 04:42:04,878 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000004/logs/stdout -> 200 2026-04-30 04:42:05,370 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000026/logs/stderr -> 200 2026-04-30 04:42:05,672 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness -> 200 2026-04-30 04:42:05,884 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000019/logs/stderr -> 200 2026-04-30 04:42:06,388 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000006/logs/stdout -> 200 2026-04-30 04:42:06,738 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:42:06,949 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000012/logs/stderr -> 200 2026-04-30 04:42:07,468 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000009/logs/stderr -> 200 2026-04-30 04:42:08,002 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:42:08,492 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000008/logs/stderr -> 200 2026-04-30 04:42:09,011 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000027/logs/stderr -> 200 2026-04-30 04:42:09,600 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000026/logs/stderr -> 200 2026-04-30 04:42:10,072 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000002/logs/stdout -> 200 2026-04-30 04:42:10,600 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000022/logs/stdout -> 200 2026-04-30 04:42:11,136 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000009/logs/stderr -> 200 2026-04-30 04:42:11,237 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044142_257903_invader_intercept_defense_20260430_134124_smoke -> 200 2026-04-30 04:42:11,690 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000003/logs/stderr -> 200 2026-04-30 04:42:11,769 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:42:12,178 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000013/logs/stdout -> 200 2026-04-30 04:42:12,720 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000005/logs/stdout -> 200 2026-04-30 04:42:13,235 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000006/logs/stdout -> 200 2026-04-30 04:42:13,752 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000025/logs/stdout -> 200 2026-04-30 04:42:14,256 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000018/logs/stderr -> 200 2026-04-30 04:42:14,810 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000011/logs/stdout -> 200 2026-04-30 04:42:15,351 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000028/logs/stderr -> 200 2026-04-30 04:42:15,855 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness -> 200 2026-04-30 04:42:15,886 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000013/logs/stdout -> 200 2026-04-30 04:42:16,279 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044142_794785_risk_courier_portal_20260430_044132_smoke -> 200 2026-04-30 04:42:16,304 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044142_794785_risk_courier_portal_20260430_044132_smoke/results -> 200 2026-04-30 04:42:16,440 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000002/logs/stdout -> 200 2026-04-30 04:42:16,814 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:42:16,942 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000016/logs/stderr -> 200 2026-04-30 04:42:17,476 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000008/logs/stdout -> 200 2026-04-30 04:42:17,992 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000020/logs/stdout -> 200 2026-04-30 04:42:18,552 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000002/logs/stderr -> 200 2026-04-30 04:42:19,023 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000021/logs/stdout -> 200 2026-04-30 04:42:19,556 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000006/logs/stdout -> 200 2026-04-30 04:42:20,095 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000018/logs/stderr -> 200 2026-04-30 04:42:20,672 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000008/logs/stderr -> 200 2026-04-30 04:42:21,114 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000015/logs/stderr -> 200 2026-04-30 04:42:21,650 INFO [battle_engine.api] GET /api/v1/runs -> 200 2026-04-30 04:42:21,684 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000018/logs/stderr -> 200 2026-04-30 04:42:21,726 INFO [battle_engine.api] GET /api/v1/health -> 200 2026-04-30 04:42:21,849 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:42:22,190 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000016/logs/stderr -> 200 2026-04-30 04:42:22,712 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000010/logs/stderr -> 200 2026-04-30 04:42:23,221 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000005/logs/stdout -> 200 2026-04-30 04:42:23,740 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000017/logs/stderr -> 200 2026-04-30 04:42:24,294 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:42:24,812 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:42:25,289 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000018/logs/stdout -> 200 2026-04-30 04:42:25,442 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044155_242198_dead_end_avoidance_20260430_044124_candidate_eval -> 200 2026-04-30 04:42:25,798 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000017/logs/stdout -> 200 2026-04-30 04:42:26,108 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness -> 200 2026-04-30 04:42:26,316 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000011/logs/stderr -> 200 2026-04-30 04:42:26,856 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000013/logs/stdout -> 200 2026-04-30 04:42:26,882 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:42:27,393 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000027/logs/stderr -> 200 2026-04-30 04:42:27,898 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:42:28,450 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000004/logs/stderr -> 200 2026-04-30 04:42:28,984 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000015/logs/stderr -> 200 2026-04-30 04:42:29,519 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000001/logs/stderr -> 200 2026-04-30 04:42:30,005 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000027/logs/stdout -> 200 2026-04-30 04:42:30,564 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000027/logs/stdout -> 200 2026-04-30 04:42:31,092 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000022/logs/stdout -> 200 2026-04-30 04:42:31,577 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000007/logs/stdout -> 200 2026-04-30 04:42:31,916 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:42:32,116 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000014/logs/stderr -> 200 2026-04-30 04:42:32,648 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000021/logs/stdout -> 200 2026-04-30 04:42:33,222 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000020/logs/stdout -> 200 2026-04-30 04:42:33,760 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000005/logs/stdout -> 200 2026-04-30 04:42:34,271 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000014/logs/stdout -> 200 2026-04-30 04:42:34,751 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000018/logs/stderr -> 200 2026-04-30 04:42:35,261 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000001/logs/stdout -> 200 2026-04-30 04:42:35,799 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000022/logs/stderr -> 200 2026-04-30 04:42:36,304 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000026/logs/stdout -> 200 2026-04-30 04:42:36,321 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness -> 200 2026-04-30 04:42:36,862 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000002/logs/stderr -> 200 2026-04-30 04:42:36,954 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:42:37,386 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000005/logs/stderr -> 200 2026-04-30 04:42:37,955 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000028/logs/stderr -> 200 2026-04-30 04:42:38,436 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000003/logs/stdout -> 200 2026-04-30 04:42:39,007 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/context-pack -> 200 2026-04-30 04:42:39,496 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/context-pack -> 200 2026-04-30 04:42:39,892 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:42:40,031 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/context-pack -> 200 2026-04-30 04:42:40,507 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/context-pack -> 200 2026-04-30 04:42:41,054 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/context-pack -> 200 2026-04-30 04:42:41,580 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/context-pack -> 200 2026-04-30 04:42:41,984 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:42:42,121 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/context-pack -> 200 2026-04-30 04:42:42,641 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/context-pack -> 200 2026-04-30 04:42:43,159 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/context-pack -> 200 2026-04-30 04:42:43,726 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/context-pack -> 200 2026-04-30 04:42:44,235 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/context-pack -> 200 2026-04-30 04:42:44,729 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:42:44,733 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/context-pack -> 200 2026-04-30 04:42:45,300 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/context-pack -> 200 2026-04-30 04:42:45,773 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044142_257903_invader_intercept_defense_20260430_134124_smoke -> 200 2026-04-30 04:42:45,822 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/context-pack -> 200 2026-04-30 04:42:46,346 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/context-pack -> 200 2026-04-30 04:42:46,420 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness -> 200 2026-04-30 04:42:46,862 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/context-pack -> 200 2026-04-30 04:42:47,025 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:42:47,386 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/context-pack -> 200 2026-04-30 04:42:47,895 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:42:48,399 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:42:48,948 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:42:49,463 INFO [battle_engine.api] GET /debug/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000002/source/baseline -> 200 2026-04-30 04:42:50,004 INFO [battle_engine.api] GET /debug/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000002/source/baseline -> 404 2026-04-30 04:42:50,491 INFO [battle_engine.api] GET /debug/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000002/source/baseline -> 200 2026-04-30 04:42:51,097 INFO [battle_engine.api] GET /debug/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000001/source/baseline -> 404 2026-04-30 04:42:51,558 INFO [battle_engine.api] GET /debug/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000001/source/baseline -> 200 2026-04-30 04:42:52,073 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:42:52,101 INFO [battle_engine.api] GET /debug/runs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke/jobs/run_20260430_005357_640751_invader_intercept_defense_20260430_095327_smoke_job_000002/source/baseline -> 200 2026-04-30 04:42:52,636 INFO [battle_engine.api] GET /debug/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke_job_000001/source/baseline -> 200 2026-04-30 04:42:53,140 INFO [battle_engine.api] GET /debug/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000002/source/baseline -> 200 2026-04-30 04:42:53,688 INFO [battle_engine.api] GET /debug/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke_job_000001/source/baseline -> 200 2026-04-30 04:42:54,115 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044142_257903_invader_intercept_defense_20260430_134124_smoke/results -> 200 2026-04-30 04:42:54,195 INFO [battle_engine.api] GET /debug/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke_job_000001/source/baseline -> 404 2026-04-30 04:42:54,723 INFO [battle_engine.api] GET /debug/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke_job_000002/source/baseline -> 404 2026-04-30 04:42:55,315 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000002/result -> 200 2026-04-30 04:42:55,837 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000003/files -> 200 2026-04-30 04:42:56,197 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness/results -> 200 2026-04-30 04:42:56,211 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness/context-pack -> 200 2026-04-30 04:42:56,214 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness/jobs -> 200 2026-04-30 04:42:56,355 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000001/result -> 404 2026-04-30 04:42:56,911 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000022/result -> 404 2026-04-30 04:42:57,102 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:42:57,393 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000030/result -> 404 2026-04-30 04:42:57,623 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044244_724629_dynamic_role_switching_20260430_134234_smoke -> 200 2026-04-30 04:42:57,950 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000018/result -> 404 2026-04-30 04:42:58,441 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000024/result -> 404 2026-04-30 04:42:58,959 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000009/result -> 404 2026-04-30 04:42:59,479 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000002/result -> 404 2026-04-30 04:43:00,055 INFO [battle_engine.api] GET /debug/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:43:00,603 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000030/files -> 200 2026-04-30 04:43:00,689 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness/jobs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness_job_000035/result -> 200 2026-04-30 04:43:00,918 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness/jobs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness_job_000036/result -> 200 2026-04-30 04:43:01,018 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness/jobs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness_job_000037/result -> 200 2026-04-30 04:43:01,072 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000013/result -> 404 2026-04-30 04:43:01,101 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:43:01,215 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness/jobs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness_job_000038/result -> 200 2026-04-30 04:43:01,490 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness/jobs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness_job_000039/result -> 200 2026-04-30 04:43:01,587 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness/jobs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness_job_000040/result -> 200 2026-04-30 04:43:01,655 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000028/result -> 404 2026-04-30 04:43:01,745 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness/jobs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness_job_000041/result -> 200 2026-04-30 04:43:02,140 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:43:02,170 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000005/result -> 200 2026-04-30 04:43:02,310 INFO [battle_engine.api] GET /api/v1/runs -> 200 2026-04-30 04:43:02,658 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000026/result -> 404 2026-04-30 04:43:03,209 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000004/files -> 200 2026-04-30 04:43:03,741 INFO [battle_engine.api] GET /debug/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:43:04,258 INFO [battle_engine.api] GET /debug/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000001/source/your_best -> 200 2026-04-30 04:43:04,370 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044155_242198_dead_end_avoidance_20260430_044124_candidate_eval -> 200 2026-04-30 04:43:04,789 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000021/result -> 404 2026-04-30 04:43:05,299 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000001/result -> 200 2026-04-30 04:43:05,873 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000004/result -> 200 2026-04-30 04:43:06,400 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000020/result -> 404 2026-04-30 04:43:06,946 INFO [battle_engine.api] GET /debug/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000001/source/your_best -> 200 2026-04-30 04:43:07,190 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:43:07,495 INFO [battle_engine.api] GET /debug/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:43:08,004 INFO [battle_engine.api] GET /debug/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:43:08,482 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000029/result -> 404 2026-04-30 04:43:09,021 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000001/files -> 200 2026-04-30 04:43:09,561 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000002/files -> 200 2026-04-30 04:43:09,881 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:43:10,096 INFO [battle_engine.api] GET /debug/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:43:10,646 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000010/result -> 404 2026-04-30 04:43:11,208 INFO [battle_engine.api] GET /debug/runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval/jobs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:43:11,338 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044142_794785_risk_courier_portal_20260430_044132_smoke -> 200 2026-04-30 04:43:11,363 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044142_794785_risk_courier_portal_20260430_044132_smoke/results -> 200 2026-04-30 04:43:11,723 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000003/files -> 200 2026-04-30 04:43:12,230 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:43:12,255 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000023/result -> 404 2026-04-30 04:43:12,772 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000003/result -> 200 2026-04-30 04:43:13,317 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000008/result -> 404 2026-04-30 04:43:13,872 INFO [battle_engine.api] GET /debug/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000002/source/your_best -> 200 2026-04-30 04:43:14,351 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000005/files -> 200 2026-04-30 04:43:14,713 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 04:43:14,938 INFO [battle_engine.api] GET /debug/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:43:15,383 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000012/result -> 404 2026-04-30 04:43:15,979 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000003/result -> 404 2026-04-30 04:43:16,437 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000004/result -> 404 2026-04-30 04:43:16,955 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000006/result -> 404 2026-04-30 04:43:17,262 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:43:17,449 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:43:17,971 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:43:18,487 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:43:18,636 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:43:19,023 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:43:19,538 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:43:20,052 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:43:20,597 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:43:21,144 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke_job_000001/result -> 200 2026-04-30 04:43:21,203 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:43:21,576 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:43:21,620 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000001/files -> 200 2026-04-30 04:43:22,169 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000002/files -> 200 2026-04-30 04:43:22,293 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 04:43:22,752 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke/jobs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke_job_000001/result -> 200 2026-04-30 04:43:23,268 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke/jobs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke_job_000001/files -> 200 2026-04-30 04:43:23,273 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:43:23,739 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000002/files -> 200 2026-04-30 04:43:24,282 INFO [battle_engine.api] GET /debug/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000001/source/your_best -> 200 2026-04-30 04:43:24,775 INFO [battle_engine.api] GET /debug/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000001/source/your_best -> 200 2026-04-30 04:43:25,301 INFO [battle_engine.api] GET /debug/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000002/source/your_best -> 200 2026-04-30 04:43:25,883 INFO [battle_engine.api] GET /debug/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000002/source/your_best -> 404 2026-04-30 04:43:26,371 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000002/files -> 200 2026-04-30 04:43:26,425 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:43:26,883 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000001/result -> 200 2026-04-30 04:43:27,371 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:43:27,433 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000002/result -> 200 2026-04-30 04:43:27,966 INFO [battle_engine.api] GET /debug/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke_job_000001/source/your_best -> 200 2026-04-30 04:43:28,541 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000001/files -> 200 2026-04-30 04:43:29,043 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000001/result -> 404 2026-04-30 04:43:29,598 INFO [battle_engine.api] GET /debug/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000002/source/your_best -> 200 2026-04-30 04:43:30,103 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000001/files -> 200 2026-04-30 04:43:30,586 INFO [battle_engine.api] GET /debug/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000002/source/your_best -> 200 2026-04-30 04:43:30,602 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044301_094370_invader_intercept_defense_20260430_134124_candidate_eval -> 200 2026-04-30 04:43:31,100 INFO [battle_engine.api] GET /debug/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000001/source/your_best -> 200 2026-04-30 04:43:31,626 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000002/result -> 200 2026-04-30 04:43:32,140 INFO [battle_engine.api] GET /debug/runs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke/jobs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke_job_000001/source/your_best -> 200 2026-04-30 04:43:32,357 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044244_724629_dynamic_role_switching_20260430_134234_smoke -> 200 2026-04-30 04:43:32,379 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval/results -> 200 2026-04-30 04:43:32,463 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval/artifacts/summary.csv -> 200 2026-04-30 04:43:32,467 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval/context-pack -> 200 2026-04-30 04:43:32,702 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000001/files -> 200 2026-04-30 04:43:33,171 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke_job_000002/files -> 200 2026-04-30 04:43:33,723 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000001/result -> 200 2026-04-30 04:43:34,250 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke_job_000001/files -> 200 2026-04-30 04:43:34,753 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000002/files -> 200 2026-04-30 04:43:34,964 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_123920 -> 200 2026-04-30 04:43:35,271 INFO [battle_engine.api] GET /debug/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke_job_000002/source/your_best -> 200 2026-04-30 04:43:35,807 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000001/result -> 200 2026-04-30 04:43:36,318 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000002/result -> 200 2026-04-30 04:43:36,884 INFO [battle_engine.api] GET /debug/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000001/source/your_best -> 404 2026-04-30 04:43:37,406 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/results -> 200 2026-04-30 04:43:37,941 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/results -> 200 2026-04-30 04:43:38,488 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/results -> 200 2026-04-30 04:43:38,991 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/results -> 200 2026-04-30 04:43:39,528 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/results -> 200 2026-04-30 04:43:40,065 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/results -> 200 2026-04-30 04:43:40,568 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/results -> 200 2026-04-30 04:43:41,068 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/results -> 200 2026-04-30 04:43:41,627 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs -> 200 2026-04-30 04:43:42,150 INFO [battle_engine.api] GET /debug/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:43:42,669 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010827_443332_invader_intercept_defense_20260430_100812_smoke/context-pack -> 200 2026-04-30 04:43:43,180 INFO [battle_engine.api] GET /debug/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:43:43,725 INFO [battle_engine.api] GET /debug/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:43:44,256 INFO [battle_engine.api] GET /debug/runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval/jobs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:43:44,803 INFO [battle_engine.api] GET /debug/runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval/jobs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:43:45,379 INFO [battle_engine.api] GET /debug/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000001/source/your_best -> 200 2026-04-30 04:43:45,854 INFO [battle_engine.api] GET /debug/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000002/source/your_best -> 200 2026-04-30 04:43:46,407 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000001/source/baseline -> 200 2026-04-30 04:43:46,936 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:43:47,151 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_095819 -> 200 2026-04-30 04:43:47,532 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000018/source/baseline -> 200 2026-04-30 04:43:48,044 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:43:48,578 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:43:49,065 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000012/source/baseline -> 200 2026-04-30 04:43:49,590 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:43:50,156 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:43:50,620 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:43:51,196 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:43:51,732 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:43:52,239 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:43:52,755 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:43:53,270 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:43:53,279 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:43:53,281 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:43:53,361 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:43:53,363 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:43:53,768 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:43:54,267 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:43:54,330 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000007/source/baseline -> 200 2026-04-30 04:43:54,830 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:43:55,337 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:43:55,824 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:43:56,277 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_095819 -> 200 2026-04-30 04:43:56,329 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:43:56,881 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:43:57,416 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000007/source/baseline -> 200 2026-04-30 04:43:57,931 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:43:58,136 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:43:58,162 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:43:58,443 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:43:58,972 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:43:59,473 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000024/source/baseline -> 200 2026-04-30 04:43:59,965 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:44:00,466 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000024/source/baseline -> 200 2026-04-30 04:44:00,990 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:44:01,496 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:44:02,011 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:44:02,561 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:44:03,140 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000025/source/baseline -> 200 2026-04-30 04:44:03,674 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:44:04,233 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000013/source/baseline -> 200 2026-04-30 04:44:04,389 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044301_094370_invader_intercept_defense_20260430_134124_candidate_eval -> 200 2026-04-30 04:44:04,709 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:44:05,264 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:44:05,802 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:44:06,296 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:44:06,799 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000001/source/baseline -> 200 2026-04-30 04:44:07,375 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:44:07,912 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000001/source/baseline -> 200 2026-04-30 04:44:08,452 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:44:08,997 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:44:09,505 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:44:09,717 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:44:10,026 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044155_242198_dead_end_avoidance_20260430_044124_candidate_eval -> 200 2026-04-30 04:44:10,066 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:44:10,144 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:44:10,296 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:44:10,597 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000012/source/baseline -> 200 2026-04-30 04:44:11,165 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:44:11,493 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:44:11,647 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:44:12,182 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:44:12,550 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:44:12,756 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000013/source/baseline -> 200 2026-04-30 04:44:12,914 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:44:13,261 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000001/source/baseline -> 200 2026-04-30 04:44:13,575 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:44:13,800 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:44:13,979 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:44:14,316 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:44:14,663 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:44:14,840 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:44:15,175 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:44:15,340 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000007/source/baseline -> 200 2026-04-30 04:44:15,895 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:44:15,896 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:44:16,403 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000012/source/baseline -> 200 2026-04-30 04:44:16,522 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:44:16,901 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:44:17,452 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000019/source/baseline -> 200 2026-04-30 04:44:18,008 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000018/source/baseline -> 200 2026-04-30 04:44:18,549 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000023/source/baseline -> 200 2026-04-30 04:44:19,068 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000019/source/baseline -> 200 2026-04-30 04:44:19,180 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:44:19,568 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:44:20,146 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:44:20,214 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044155_242198_dead_end_avoidance_20260430_044124_candidate_eval/results -> 200 2026-04-30 04:44:20,263 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:44:20,265 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044155_242198_dead_end_avoidance_20260430_044124_candidate_eval/context-pack -> 200 2026-04-30 04:44:20,297 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:44:20,320 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:44:20,343 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:44:20,611 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:44:21,184 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:44:21,692 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000007/source/baseline -> 200 2026-04-30 04:44:22,172 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:44:22,709 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:44:23,191 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260430_094200 -> 200 2026-04-30 04:44:23,237 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:44:23,781 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000001/source/baseline -> 200 2026-04-30 04:44:24,309 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000023/source/baseline -> 200 2026-04-30 04:44:24,867 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:44:25,376 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000021 -> 200 2026-04-30 04:44:25,483 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044244_724629_dynamic_role_switching_20260430_134234_smoke -> 200 2026-04-30 04:44:25,892 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000017 -> 200 2026-04-30 04:44:26,415 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000015 -> 200 2026-04-30 04:44:26,735 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:44:26,983 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000014 -> 200 2026-04-30 04:44:27,539 INFO [battle_engine.api] GET /debug/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000003 -> 200 2026-04-30 04:44:28,035 INFO [battle_engine.api] GET /debug/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000001 -> 200 2026-04-30 04:44:28,093 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044358_157739_blended_roi_intercept_v01_20260430_044344_smoke -> 200 2026-04-30 04:44:28,118 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044358_157739_blended_roi_intercept_v01_20260430_044344_smoke/results -> 200 2026-04-30 04:44:28,461 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044244_724629_dynamic_role_switching_20260430_134234_smoke/results -> 200 2026-04-30 04:44:28,568 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000002 -> 200 2026-04-30 04:44:29,083 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000018 -> 200 2026-04-30 04:44:29,624 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000017 -> 200 2026-04-30 04:44:30,222 INFO [battle_engine.api] GET /debug/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000004 -> 200 2026-04-30 04:44:30,695 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000026 -> 200 2026-04-30 04:44:31,217 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044301_094370_invader_intercept_defense_20260430_134124_candidate_eval -> 200 2026-04-30 04:44:31,261 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000005 -> 200 2026-04-30 04:44:31,773 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000019 -> 200 2026-04-30 04:44:32,261 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000001 -> 200 2026-04-30 04:44:32,792 INFO [battle_engine.api] GET /debug/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000001 -> 200 2026-04-30 04:44:33,358 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000003 -> 200 2026-04-30 04:44:33,842 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000001 -> 200 2026-04-30 04:44:34,060 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:44:34,177 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_123920 -> 200 2026-04-30 04:44:34,361 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044321_195153_risk_courier_portal_20260430_044132_candidate_eval -> 200 2026-04-30 04:44:34,387 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044321_195153_risk_courier_portal_20260430_044132_candidate_eval/results -> 200 2026-04-30 04:44:34,389 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000002 -> 200 2026-04-30 04:44:34,902 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000018 -> 200 2026-04-30 04:44:35,407 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000017 -> 200 2026-04-30 04:44:35,961 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000004 -> 200 2026-04-30 04:44:36,475 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000026 -> 200 2026-04-30 04:44:36,951 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000005 -> 200 2026-04-30 04:44:37,456 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000019 -> 200 2026-04-30 04:44:37,762 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044155_242198_dead_end_avoidance_20260430_044124_candidate_eval/artifacts/results.jsonl -> 200 2026-04-30 04:44:37,851 INFO [battle_engine.api] GET /api/v1/candidates/dead_end_avoidance_20260430_044124 -> 200 2026-04-30 04:44:38,015 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000001 -> 200 2026-04-30 04:44:38,523 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000001 -> 200 2026-04-30 04:44:39,065 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000004 -> 200 2026-04-30 04:44:39,539 INFO [battle_engine.api] GET /debug/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000002 -> 200 2026-04-30 04:44:40,037 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000029 -> 200 2026-04-30 04:44:40,351 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044301_094370_invader_intercept_defense_20260430_134124_candidate_eval/results -> 200 2026-04-30 04:44:40,484 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:44:40,486 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:44:40,488 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:44:40,489 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:44:40,492 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044301_094370_invader_intercept_defense_20260430_134124_candidate_eval/context-pack -> 200 2026-04-30 04:44:40,597 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000015 -> 200 2026-04-30 04:44:41,131 INFO [battle_engine.api] GET /debug/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000004 -> 200 2026-04-30 04:44:41,687 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000024 -> 200 2026-04-30 04:44:42,195 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000012 -> 200 2026-04-30 04:44:42,719 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000006 -> 200 2026-04-30 04:44:43,201 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000020 -> 200 2026-04-30 04:44:43,747 INFO [battle_engine.api] GET /debug/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000005 -> 200 2026-04-30 04:44:44,238 INFO [battle_engine.api] GET /debug/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000001 -> 200 2026-04-30 04:44:44,735 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000004 -> 200 2026-04-30 04:44:45,284 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000002 -> 200 2026-04-30 04:44:45,849 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000029/files -> 200 2026-04-30 04:44:46,304 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000015 -> 200 2026-04-30 04:44:46,816 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000004 -> 200 2026-04-30 04:44:47,372 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000024 -> 200 2026-04-30 04:44:47,840 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000012 -> 200 2026-04-30 04:44:48,368 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000006 -> 200 2026-04-30 04:44:48,915 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000020 -> 200 2026-04-30 04:44:49,428 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000005 -> 200 2026-04-30 04:44:49,962 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000001 -> 200 2026-04-30 04:44:49,977 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:44:50,481 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000029 -> 200 2026-04-30 04:44:50,999 INFO [battle_engine.api] GET /debug/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000005 -> 200 2026-04-30 04:44:51,531 INFO [battle_engine.api] GET /debug/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000005 -> 200 2026-04-30 04:44:52,065 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000011 -> 200 2026-04-30 04:44:52,556 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000030 -> 200 2026-04-30 04:44:53,086 INFO [battle_engine.api] GET /debug/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000004 -> 200 2026-04-30 04:44:53,595 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000028 -> 200 2026-04-30 04:44:54,157 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000023 -> 200 2026-04-30 04:44:54,620 INFO [battle_engine.api] GET /debug/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000001 -> 200 2026-04-30 04:44:55,122 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000010 -> 200 2026-04-30 04:44:55,654 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000003 -> 200 2026-04-30 04:44:56,195 INFO [battle_engine.api] GET /debug/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000003 -> 200 2026-04-30 04:44:56,700 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000005 -> 200 2026-04-30 04:44:57,205 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:44:57,752 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000011 -> 200 2026-04-30 04:44:58,272 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000005 -> 200 2026-04-30 04:44:58,800 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000004 -> 200 2026-04-30 04:44:59,341 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000028 -> 200 2026-04-30 04:44:59,915 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000023 -> 200 2026-04-30 04:45:00,450 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000001 -> 200 2026-04-30 04:45:00,949 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000010 -> 200 2026-04-30 04:45:01,453 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000003 -> 200 2026-04-30 04:45:01,495 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044321_195153_risk_courier_portal_20260430_044132_candidate_eval/results -> 200 2026-04-30 04:45:02,013 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000003 -> 200 2026-04-30 04:45:02,543 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000030 -> 200 2026-04-30 04:45:03,050 INFO [battle_engine.api] GET /debug/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000002 -> 200 2026-04-30 04:45:03,587 INFO [battle_engine.api] GET /debug/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000005 -> 200 2026-04-30 04:45:04,134 INFO [battle_engine.api] GET /debug/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000002 -> 200 2026-04-30 04:45:04,667 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000025 -> 200 2026-04-30 04:45:05,198 INFO [battle_engine.api] GET /debug/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000003 -> 200 2026-04-30 04:45:05,733 INFO [battle_engine.api] GET /debug/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000003 -> 200 2026-04-30 04:45:06,218 INFO [battle_engine.api] GET /debug/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000002 -> 200 2026-04-30 04:45:06,779 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000013 -> 200 2026-04-30 04:45:07,285 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000016 -> 200 2026-04-30 04:45:07,775 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044434_053567_dynamic_role_switching_20260430_134234_candidate_eval -> 200 2026-04-30 04:45:07,805 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000009 -> 200 2026-04-30 04:45:08,333 INFO [battle_engine.api] GET /debug/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000004 -> 200 2026-04-30 04:45:08,801 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000002 -> 200 2026-04-30 04:45:09,324 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000005 -> 200 2026-04-30 04:45:09,414 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044358_157739_blended_roi_intercept_v01_20260430_044344_smoke -> 200 2026-04-30 04:45:09,445 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044358_157739_blended_roi_intercept_v01_20260430_044344_smoke/results -> 200 2026-04-30 04:45:09,848 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000002 -> 200 2026-04-30 04:45:10,365 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000025 -> 200 2026-04-30 04:45:10,869 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000003 -> 200 2026-04-30 04:45:11,385 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000003 -> 200 2026-04-30 04:45:11,896 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000002 -> 200 2026-04-30 04:45:12,427 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000013 -> 200 2026-04-30 04:45:12,940 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000016/source/your_best -> 404 2026-04-30 04:45:13,523 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000009 -> 200 2026-04-30 04:45:14,038 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000004 -> 200 2026-04-30 04:45:14,560 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000016 -> 200 2026-04-30 04:45:15,138 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000008 -> 200 2026-04-30 04:45:15,632 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000022 -> 200 2026-04-30 04:45:16,154 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000007 -> 200 2026-04-30 04:45:16,634 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000027 -> 200 2026-04-30 04:45:17,173 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000001/source/your_best -> 200 2026-04-30 04:45:17,655 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000001/logs/stdout -> 200 2026-04-30 04:45:18,179 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:45:18,720 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:45:19,233 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:45:19,536 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:45:19,760 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:45:20,381 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:45:20,810 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000008 -> 200 2026-04-30 04:45:21,365 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000022 -> 200 2026-04-30 04:45:21,832 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000007 -> 200 2026-04-30 04:45:22,371 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000027 -> 200 2026-04-30 04:45:22,931 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:45:23,425 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:45:23,918 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:45:24,474 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:45:24,527 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044449_961307_invader_intercept_defense_20260430_134124_robustness -> 200 2026-04-30 04:45:25,006 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:45:25,537 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:45:26,054 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:45:26,550 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:45:27,119 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:45:27,646 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:45:28,234 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:45:28,721 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:45:29,252 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:45:29,764 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:45:30,258 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:45:30,805 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:45:31,318 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/context-pack -> 200 2026-04-30 04:45:31,762 INFO [battle_engine.api] GET /robots.txt -> 404 2026-04-30 04:45:31,858 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/context-pack -> 200 2026-04-30 04:45:31,998 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:45:32,400 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:45:32,920 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:45:33,463 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:45:33,984 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:45:34,526 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000023/source/your_best -> 200 2026-04-30 04:45:35,064 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000003/source/your_best -> 200 2026-04-30 04:45:35,616 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000012/source/your_best -> 200 2026-04-30 04:45:36,124 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000007/source/your_best -> 200 2026-04-30 04:45:36,674 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000008/source/your_best -> 200 2026-04-30 04:45:37,200 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000019/source/your_best -> 200 2026-04-30 04:45:37,688 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000021/source/your_best -> 200 2026-04-30 04:45:37,779 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044434_053567_dynamic_role_switching_20260430_134234_candidate_eval -> 200 2026-04-30 04:45:38,223 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000011/source/your_best -> 200 2026-04-30 04:45:38,726 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000016/source/your_best -> 200 2026-04-30 04:45:39,275 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000024/source/your_best -> 200 2026-04-30 04:45:39,815 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000018/source/your_best -> 200 2026-04-30 04:45:40,364 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000018/source/your_best -> 200 2026-04-30 04:45:40,909 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000015/source/your_best -> 200 2026-04-30 04:45:41,386 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000014/source/your_best -> 200 2026-04-30 04:45:41,891 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000009/source/your_best -> 200 2026-04-30 04:45:42,461 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000013/source/your_best -> 200 2026-04-30 04:45:42,928 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000017/source/your_best -> 200 2026-04-30 04:45:43,463 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000009/logs/stdout -> 200 2026-04-30 04:45:44,032 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000025/source/your_best -> 404 2026-04-30 04:45:44,512 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000020/logs/stdout -> 200 2026-04-30 04:45:44,538 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044434_053567_dynamic_role_switching_20260430_134234_candidate_eval/context-pack -> 200 2026-04-30 04:45:44,541 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044434_053567_dynamic_role_switching_20260430_134234_candidate_eval/results -> 200 2026-04-30 04:45:44,564 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044434_053567_dynamic_role_switching_20260430_134234_candidate_eval/jobs -> 200 2026-04-30 04:45:45,065 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000011/logs/stderr -> 200 2026-04-30 04:45:45,630 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000029/logs/stderr -> 200 2026-04-30 04:45:46,174 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000014/logs/stderr -> 200 2026-04-30 04:45:46,727 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000015/source/your_best -> 404 2026-04-30 04:45:47,247 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000007/source/your_best -> 404 2026-04-30 04:45:47,748 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000017/source/your_best -> 404 2026-04-30 04:45:48,245 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000019/logs/stdout -> 200 2026-04-30 04:45:48,764 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000027/logs/stdout -> 200 2026-04-30 04:45:49,271 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000024/logs/stderr -> 200 2026-04-30 04:45:49,824 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000005/source/your_best -> 404 2026-04-30 04:45:50,330 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000016/source/your_best -> 404 2026-04-30 04:45:50,884 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000008/logs/stderr -> 200 2026-04-30 04:45:51,391 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000005/logs/stderr -> 200 2026-04-30 04:45:51,952 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000029/source/your_best -> 404 2026-04-30 04:45:52,476 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000018/source/your_best -> 404 2026-04-30 04:45:52,997 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000006/logs/stdout -> 200 2026-04-30 04:45:53,548 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000026/source/your_best -> 404 2026-04-30 04:45:54,042 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000026/logs/stdout -> 200 2026-04-30 04:45:54,583 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000023/logs/stderr -> 200 2026-04-30 04:45:55,126 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000002/logs/stdout -> 200 2026-04-30 04:45:55,627 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000024/logs/stdout -> 200 2026-04-30 04:45:56,185 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000007/logs/stdout -> 200 2026-04-30 04:45:56,706 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000001/logs/stdout -> 200 2026-04-30 04:45:57,220 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000012/logs/stderr -> 200 2026-04-30 04:45:57,716 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000015/logs/stderr -> 200 2026-04-30 04:45:58,241 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000021/source/your_best -> 404 2026-04-30 04:45:58,776 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000021/logs/stderr -> 200 2026-04-30 04:45:59,294 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000025/logs/stdout -> 200 2026-04-30 04:45:59,814 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000008/logs/stdout -> 200 2026-04-30 04:46:00,357 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000022/logs/stderr -> 200 2026-04-30 04:46:00,846 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000014/source/your_best -> 404 2026-04-30 04:46:00,985 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:46:01,012 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:46:01,098 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_095814 -> 200 2026-04-30 04:46:01,212 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_095422 -> 200 2026-04-30 04:46:01,214 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_100138 -> 200 2026-04-30 04:46:01,400 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000022/logs/stdout -> 200 2026-04-30 04:46:01,894 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000027/logs/stderr -> 200 2026-04-30 04:46:02,421 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000013/source/your_best -> 404 2026-04-30 04:46:02,917 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000004/logs/stderr -> 200 2026-04-30 04:46:03,434 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000021/logs/stdout -> 200 2026-04-30 04:46:03,968 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000009/logs/stderr -> 200 2026-04-30 04:46:04,516 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000013/logs/stdout -> 200 2026-04-30 04:46:05,032 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000017/logs/stdout -> 200 2026-04-30 04:46:05,589 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000015/logs/stdout -> 200 2026-04-30 04:46:06,063 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000027/source/your_best -> 404 2026-04-30 04:46:06,605 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000007/logs/stderr -> 200 2026-04-30 04:46:07,138 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000029/logs/stdout -> 200 2026-04-30 04:46:07,652 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000013/logs/stderr -> 200 2026-04-30 04:46:08,204 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000005/logs/stdout -> 200 2026-04-30 04:46:08,693 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000011/source/your_best -> 404 2026-04-30 04:46:09,226 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000014/logs/stdout -> 200 2026-04-30 04:46:09,572 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044519_529977_blended_roi_intercept_v01_20260430_044344_candidate_eval -> 200 2026-04-30 04:46:09,764 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000028/logs/stderr -> 200 2026-04-30 04:46:10,290 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000012/logs/stdout -> 200 2026-04-30 04:46:10,775 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044449_961307_invader_intercept_defense_20260430_134124_robustness -> 200 2026-04-30 04:46:10,868 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000028/logs/stdout -> 200 2026-04-30 04:46:11,382 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000016/logs/stderr -> 200 2026-04-30 04:46:11,890 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000025/logs/stderr -> 200 2026-04-30 04:46:12,400 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000010/logs/stderr -> 200 2026-04-30 04:46:12,968 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000001/logs/stderr -> 200 2026-04-30 04:46:13,459 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000011/logs/stdout -> 200 2026-04-30 04:46:14,006 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000018/logs/stderr -> 200 2026-04-30 04:46:14,588 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000010/logs/stdout -> 200 2026-04-30 04:46:15,071 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000019/source/your_best -> 404 2026-04-30 04:46:15,606 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000017/logs/stderr -> 200 2026-04-30 04:46:16,152 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000006/logs/stderr -> 200 2026-04-30 04:46:16,700 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000004/logs/stdout -> 200 2026-04-30 04:46:17,220 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000024/source/your_best -> 404 2026-04-30 04:46:17,767 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000018/logs/stdout -> 200 2026-04-30 04:46:18,295 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000012/source/your_best -> 404 2026-04-30 04:46:18,785 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000016/logs/stdout -> 200 2026-04-30 04:46:19,329 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000026/logs/stderr -> 200 2026-04-30 04:46:19,859 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033746_277743_dynamic_role_switching_20260430_123736_smoke/context-pack -> 200 2026-04-30 04:46:20,355 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/jobs -> 200 2026-04-30 04:46:20,895 INFO [battle_engine.api] GET /debug/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000002/source/baseline -> 404 2026-04-30 04:46:21,421 INFO [battle_engine.api] GET /debug/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke_job_000001/source/baseline -> 200 2026-04-30 04:46:21,914 INFO [battle_engine.api] GET /debug/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000002/source/baseline -> 200 2026-04-30 04:46:22,462 INFO [battle_engine.api] GET /debug/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000001/source/baseline -> 200 2026-04-30 04:46:23,007 INFO [battle_engine.api] GET /debug/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000001/source/baseline -> 404 2026-04-30 04:46:23,507 INFO [battle_engine.api] GET /debug/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke_job_000002/source/baseline -> 200 2026-04-30 04:46:24,007 INFO [battle_engine.api] GET /debug/runs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke/jobs/run_20260430_010148_997786_dynamic_role_switching_20260430_100138_smoke_job_000001/source/baseline -> 200 2026-04-30 04:46:24,558 INFO [battle_engine.api] GET /debug/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000001/source/baseline -> 200 2026-04-30 04:46:25,083 INFO [battle_engine.api] GET /debug/runs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke/jobs/run_20260430_005823_717301_dynamic_role_switching_20260430_095814_smoke_job_000002/source/baseline -> 200 2026-04-30 04:46:25,660 INFO [battle_engine.api] GET /debug/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke_job_000002/source/baseline -> 200 2026-04-30 04:46:26,133 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000010/source/your_best -> 200 2026-04-30 04:46:26,654 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000006/source/your_best -> 200 2026-04-30 04:46:27,193 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000028/source/your_best -> 200 2026-04-30 04:46:27,716 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000001/source/your_best -> 200 2026-04-30 04:46:28,198 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000005/source/your_best -> 200 2026-04-30 04:46:28,716 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000004/source/your_best -> 200 2026-04-30 04:46:29,268 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000002/source/your_best -> 200 2026-04-30 04:46:29,827 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000017/source/your_best -> 200 2026-04-30 04:46:30,314 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000022/source/your_best -> 200 2026-04-30 04:46:30,858 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000008/source/your_best -> 200 2026-04-30 04:46:31,358 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000020/source/your_best -> 200 2026-04-30 04:46:31,922 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000027/source/your_best -> 200 2026-04-30 04:46:32,415 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:46:32,952 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:46:33,481 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:46:34,009 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:46:34,385 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044449_961307_invader_intercept_defense_20260430_134124_robustness -> 200 2026-04-30 04:46:34,522 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000007/logs/stdout -> 200 2026-04-30 04:46:35,047 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:46:35,589 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:46:36,110 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:46:36,654 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000017/logs/stderr -> 200 2026-04-30 04:46:37,167 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000018/logs/stdout -> 200 2026-04-30 04:46:37,710 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000017/logs/stdout -> 200 2026-04-30 04:46:38,272 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:46:38,749 INFO [battle_engine.api] GET /debug/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:46:39,270 INFO [battle_engine.api] GET /debug/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:46:39,806 INFO [battle_engine.api] GET /debug/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:46:40,342 INFO [battle_engine.api] GET /debug/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/jobs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:46:40,905 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:46:41,386 INFO [battle_engine.api] GET /debug/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000002/source/baseline -> 200 2026-04-30 04:46:41,800 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044601_007800_risk_courier_portal_20260430_044551_smoke -> 200 2026-04-30 04:46:41,825 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044601_007800_risk_courier_portal_20260430_044551_smoke/results -> 200 2026-04-30 04:46:41,948 INFO [battle_engine.api] GET /debug/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000001/source/baseline -> 200 2026-04-30 04:46:42,460 INFO [battle_engine.api] GET /debug/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000001/source/baseline -> 200 2026-04-30 04:46:42,530 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044449_961307_invader_intercept_defense_20260430_134124_robustness/context-pack -> 200 2026-04-30 04:46:42,534 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044449_961307_invader_intercept_defense_20260430_134124_robustness/jobs -> 200 2026-04-30 04:46:42,538 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044449_961307_invader_intercept_defense_20260430_134124_robustness/results -> 200 2026-04-30 04:46:42,986 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000013/logs/stdout -> 200 2026-04-30 04:46:43,502 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000014/logs/stdout -> 200 2026-04-30 04:46:44,042 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000018/logs/stdout -> 200 2026-04-30 04:46:44,530 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000015/logs/stdout -> 200 2026-04-30 04:46:45,060 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000008/logs/stdout -> 200 2026-04-30 04:46:45,598 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000023/logs/stdout -> 200 2026-04-30 04:46:46,144 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000007/logs/stderr -> 200 2026-04-30 04:46:46,651 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_133157/source -> 200 2026-04-30 04:46:47,193 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133926/source -> 200 2026-04-30 04:46:47,703 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133213/source -> 200 2026-04-30 04:46:48,268 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133602/source -> 200 2026-04-30 04:46:48,788 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_133703/source -> 200 2026-04-30 04:46:49,280 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:46:49,286 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_134124/source -> 200 2026-04-30 04:46:49,770 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_133703 -> 200 2026-04-30 04:46:50,321 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_134124 -> 200 2026-04-30 04:46:50,844 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_133157 -> 200 2026-04-30 04:46:51,354 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_044344/source -> 200 2026-04-30 04:46:51,862 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_044344 -> 200 2026-04-30 04:46:52,421 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133926 -> 200 2026-04-30 04:46:52,900 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133213 -> 200 2026-04-30 04:46:53,448 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133602 -> 200 2026-04-30 04:46:53,847 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:46:53,969 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_133157/source -> 200 2026-04-30 04:46:54,477 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_133703/source -> 200 2026-04-30 04:46:55,002 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_134124/source -> 200 2026-04-30 04:46:55,552 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_133602/source -> 200 2026-04-30 04:46:56,059 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_133213/source -> 200 2026-04-30 04:46:56,607 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_133926/source -> 200 2026-04-30 04:46:57,132 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_044344/source -> 200 2026-04-30 04:46:57,665 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000019/logs/stdout -> 200 2026-04-30 04:46:58,152 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000011/logs/stdout -> 200 2026-04-30 04:46:58,688 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:46:59,174 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:46:59,768 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:47:00,259 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:47:00,802 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:47:01,286 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000003/result -> 200 2026-04-30 04:47:01,845 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000002/files -> 200 2026-04-30 04:47:02,383 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000003/result -> 200 2026-04-30 04:47:02,915 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000004/files -> 200 2026-04-30 04:47:03,393 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000005/result -> 200 2026-04-30 04:47:03,953 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000004/result -> 200 2026-04-30 04:47:04,449 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000001/result -> 200 2026-04-30 04:47:04,995 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000003/files -> 200 2026-04-30 04:47:05,523 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000004/files -> 200 2026-04-30 04:47:06,051 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000001/result -> 200 2026-04-30 04:47:06,587 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000003/result -> 200 2026-04-30 04:47:07,107 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000004/result -> 200 2026-04-30 04:47:07,601 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000001/files -> 200 2026-04-30 04:47:08,113 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000005/files -> 200 2026-04-30 04:47:08,620 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000002/result -> 200 2026-04-30 04:47:09,147 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000003/result -> 200 2026-04-30 04:47:09,673 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000005/files -> 200 2026-04-30 04:47:10,227 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000002/result -> 200 2026-04-30 04:47:10,754 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000001/files -> 200 2026-04-30 04:47:11,283 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000005/files -> 200 2026-04-30 04:47:11,825 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000002/files -> 200 2026-04-30 04:47:12,331 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000003/files -> 200 2026-04-30 04:47:12,872 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000003/files -> 200 2026-04-30 04:47:13,392 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000001/files -> 200 2026-04-30 04:47:13,847 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044519_529977_blended_roi_intercept_v01_20260430_044344_candidate_eval -> 200 2026-04-30 04:47:13,895 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000005/result -> 200 2026-04-30 04:47:14,421 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000004/result -> 200 2026-04-30 04:47:14,985 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000003/result -> 200 2026-04-30 04:47:15,494 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000005/files -> 200 2026-04-30 04:47:15,999 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000002/result -> 200 2026-04-30 04:47:16,534 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000005/result -> 200 2026-04-30 04:47:17,109 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000002/result -> 200 2026-04-30 04:47:17,382 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044519_529977_blended_roi_intercept_v01_20260430_044344_candidate_eval/results -> 200 2026-04-30 04:47:17,616 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000004/files -> 200 2026-04-30 04:47:18,144 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000001/result -> 200 2026-04-30 04:47:18,694 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000003/files -> 200 2026-04-30 04:47:19,197 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000005/files -> 200 2026-04-30 04:47:19,762 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000005/result -> 200 2026-04-30 04:47:20,263 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000001/files -> 200 2026-04-30 04:47:20,765 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000002/result -> 200 2026-04-30 04:47:21,316 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000004/files -> 200 2026-04-30 04:47:21,823 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000004/result -> 200 2026-04-30 04:47:22,342 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000001/files -> 200 2026-04-30 04:47:22,869 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000003/files -> 200 2026-04-30 04:47:23,378 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000002/files -> 200 2026-04-30 04:47:23,917 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000004/files -> 200 2026-04-30 04:47:24,434 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000002/files -> 200 2026-04-30 04:47:24,971 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000004/result -> 200 2026-04-30 04:47:25,442 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000001/result -> 200 2026-04-30 04:47:26,006 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000001/result -> 200 2026-04-30 04:47:26,580 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000005/result -> 200 2026-04-30 04:47:27,046 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044653_842729_dynamic_role_switching_20260430_134644_smoke -> 200 2026-04-30 04:47:27,079 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000003/result -> 200 2026-04-30 04:47:27,612 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000002/result -> 200 2026-04-30 04:47:28,141 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000004/files -> 200 2026-04-30 04:47:28,656 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000002/files -> 200 2026-04-30 04:47:29,233 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000001/result -> 200 2026-04-30 04:47:29,731 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000005/files -> 200 2026-04-30 04:47:30,337 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000003/files -> 200 2026-04-30 04:47:30,839 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000004/result -> 200 2026-04-30 04:47:31,362 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000005/result -> 200 2026-04-30 04:47:31,861 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044601_007800_risk_courier_portal_20260430_044551_smoke -> 200 2026-04-30 04:47:31,879 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000001/files -> 200 2026-04-30 04:47:31,886 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044601_007800_risk_courier_portal_20260430_044551_smoke/results -> 200 2026-04-30 04:47:32,433 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000022/source/your_best -> 200 2026-04-30 04:47:32,479 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044653_842729_dynamic_role_switching_20260430_134644_smoke/results -> 200 2026-04-30 04:47:32,942 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000010/source/your_best -> 200 2026-04-30 04:47:33,438 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000020/source/your_best -> 200 2026-04-30 04:47:33,981 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000014/source/your_best -> 200 2026-04-30 04:47:34,511 INFO [battle_engine.api] GET /debug/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:47:35,042 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000013/source/your_best -> 200 2026-04-30 04:47:35,552 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000006/source/your_best -> 200 2026-04-30 04:47:36,063 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000005/source/your_best -> 200 2026-04-30 04:47:36,575 INFO [battle_engine.api] GET /debug/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:47:37,123 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000024/source/your_best -> 200 2026-04-30 04:47:37,656 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000023/source/your_best -> 200 2026-04-30 04:47:38,100 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:47:38,248 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000028/source/your_best -> 200 2026-04-30 04:47:38,741 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000001/source/your_best -> 200 2026-04-30 04:47:38,871 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:47:39,210 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000004/source/your_best -> 200 2026-04-30 04:47:39,746 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000010/source/your_best -> 200 2026-04-30 04:47:40,295 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000004/source/your_best -> 200 2026-04-30 04:47:40,812 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000022/source/your_best -> 200 2026-04-30 04:47:41,388 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000002/source/your_best -> 200 2026-04-30 04:47:41,842 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000023/source/your_best -> 200 2026-04-30 04:47:42,368 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000024/source/your_best -> 200 2026-04-30 04:47:42,893 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000016/source/your_best -> 200 2026-04-30 04:47:43,420 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000011/source/your_best -> 200 2026-04-30 04:47:43,936 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000009/source/your_best -> 200 2026-04-30 04:47:44,452 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000006/source/your_best -> 200 2026-04-30 04:47:44,950 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000018/source/your_best -> 200 2026-04-30 04:47:45,529 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000029/source/your_best -> 200 2026-04-30 04:47:46,031 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000017/source/your_best -> 200 2026-04-30 04:47:46,572 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000020/source/your_best -> 200 2026-04-30 04:47:47,140 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000025/source/your_best -> 200 2026-04-30 04:47:47,632 INFO [battle_engine.api] GET /debug/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:47:48,156 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000019/source/your_best -> 200 2026-04-30 04:47:48,744 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000013/source/your_best -> 200 2026-04-30 04:47:49,279 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000002/source/your_best -> 200 2026-04-30 04:47:49,749 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000009/source/your_best -> 200 2026-04-30 04:47:50,320 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000012/source/your_best -> 200 2026-04-30 04:47:50,844 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000026/source/your_best -> 200 2026-04-30 04:47:51,326 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000021/source/your_best -> 200 2026-04-30 04:47:51,895 INFO [battle_engine.api] GET /debug/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:47:52,392 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000009/source/your_best -> 200 2026-04-30 04:47:52,924 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000011/source/your_best -> 200 2026-04-30 04:47:53,494 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000028/source/your_best -> 200 2026-04-30 04:47:53,981 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000005/source/your_best -> 200 2026-04-30 04:47:54,564 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000026/source/your_best -> 200 2026-04-30 04:47:55,045 INFO [battle_engine.api] GET /debug/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:47:55,591 INFO [battle_engine.api] GET /debug/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:47:56,108 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000027/source/your_best -> 200 2026-04-30 04:47:56,634 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000010/source/your_best -> 200 2026-04-30 04:47:57,174 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000011/source/your_best -> 200 2026-04-30 04:47:57,729 INFO [battle_engine.api] GET /debug/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:47:58,273 INFO [battle_engine.api] GET /debug/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:47:58,793 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000014/source/your_best -> 200 2026-04-30 04:47:59,330 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000003/source/your_best -> 200 2026-04-30 04:47:59,900 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000008/source/your_best -> 200 2026-04-30 04:48:00,373 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000003/source/your_best -> 200 2026-04-30 04:48:00,921 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000024/source/your_best -> 200 2026-04-30 04:48:01,442 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000007/source/your_best -> 200 2026-04-30 04:48:01,987 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000001/source/your_best -> 200 2026-04-30 04:48:02,513 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000026/source/your_best -> 200 2026-04-30 04:48:03,040 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000001/source/your_best -> 200 2026-04-30 04:48:03,522 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000006/source/your_best -> 200 2026-04-30 04:48:04,069 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000003/source/your_best -> 200 2026-04-30 04:48:04,570 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000027/source/your_best -> 200 2026-04-30 04:48:05,110 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000007/source/your_best -> 200 2026-04-30 04:48:05,660 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000020/source/your_best -> 200 2026-04-30 04:48:06,182 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000022/source/your_best -> 200 2026-04-30 04:48:06,744 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000007/source/your_best -> 200 2026-04-30 04:48:07,269 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000003/source/your_best -> 200 2026-04-30 04:48:07,797 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000004/source/your_best -> 200 2026-04-30 04:48:08,354 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000012/source/your_best -> 200 2026-04-30 04:48:08,871 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000006/source/your_best -> 200 2026-04-30 04:48:09,388 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000002/source/your_best -> 200 2026-04-30 04:48:09,932 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000005/source/your_best -> 200 2026-04-30 04:48:10,441 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000021/source/your_best -> 200 2026-04-30 04:48:10,958 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000021/source/your_best -> 200 2026-04-30 04:48:11,281 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044738_088061_dynamic_role_switching_20260430_134644_candidate_eval -> 200 2026-04-30 04:48:11,493 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000012/source/your_best -> 200 2026-04-30 04:48:12,024 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000020/source/your_best -> 200 2026-04-30 04:48:12,534 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000012/source/your_best -> 200 2026-04-30 04:48:13,050 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000016/source/your_best -> 200 2026-04-30 04:48:13,589 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000002/source/your_best -> 200 2026-04-30 04:48:14,112 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000008/source/your_best -> 200 2026-04-30 04:48:14,664 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000001/source/your_best -> 200 2026-04-30 04:48:15,162 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000023/source/your_best -> 200 2026-04-30 04:48:15,728 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000025/source/your_best -> 200 2026-04-30 04:48:16,241 INFO [battle_engine.api] GET /debug/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:48:16,773 INFO [battle_engine.api] GET /debug/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:48:17,276 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000010/source/your_best -> 200 2026-04-30 04:48:17,811 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000004/source/your_best -> 200 2026-04-30 04:48:18,317 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000022/source/your_best -> 200 2026-04-30 04:48:18,857 INFO [battle_engine.api] GET /debug/runs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke/jobs/run_20260430_005833_012493_invader_intercept_defense_20260430_095819_smoke_job_000001/source/baseline -> 200 2026-04-30 04:48:19,469 INFO [battle_engine.api] GET /debug/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke_job_000002/source/baseline -> 200 2026-04-30 04:48:19,928 INFO [battle_engine.api] GET /debug/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:48:20,500 INFO [battle_engine.api] GET /debug/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:48:20,580 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:48:20,584 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044738_088061_dynamic_role_switching_20260430_134644_candidate_eval/context-pack -> 200 2026-04-30 04:48:20,587 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044738_088061_dynamic_role_switching_20260430_134644_candidate_eval/results -> 200 2026-04-30 04:48:20,880 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:48:21,038 INFO [battle_engine.api] GET /debug/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:48:21,213 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:48:21,317 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:48:21,519 INFO [battle_engine.api] GET /debug/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:48:22,050 INFO [battle_engine.api] GET /debug/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:48:22,562 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:48:23,079 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/jobs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke_job_000002/result -> 404 2026-04-30 04:48:23,616 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:48:24,116 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:48:24,631 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:48:25,165 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:48:25,709 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:48:26,248 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:48:26,730 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:48:27,220 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:48:27,740 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:48:28,247 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:48:28,797 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000007/source/baseline -> 200 2026-04-30 04:48:29,302 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:48:29,824 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:48:30,361 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:48:30,922 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:48:31,441 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:48:31,943 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:48:32,520 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:48:33,030 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:48:33,566 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:48:34,120 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:48:34,647 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:48:35,193 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:48:35,790 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:48:36,315 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:48:36,824 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:48:37,297 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:48:37,822 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:48:38,125 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044738_858390_risk_courier_portal_20260430_044551_candidate_eval -> 200 2026-04-30 04:48:38,152 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044738_858390_risk_courier_portal_20260430_044551_candidate_eval/results -> 200 2026-04-30 04:48:38,370 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:48:38,968 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:48:39,456 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:48:39,961 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:48:40,503 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:48:41,018 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:48:41,550 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:48:42,023 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044738_088061_dynamic_role_switching_20260430_134644_candidate_eval/jobs/run_20260430_044738_088061_dynamic_role_switching_20260430_134644_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:48:42,025 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044738_088061_dynamic_role_switching_20260430_134644_candidate_eval/jobs/run_20260430_044738_088061_dynamic_role_switching_20260430_134644_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:48:42,027 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044738_088061_dynamic_role_switching_20260430_134644_candidate_eval/jobs/run_20260430_044738_088061_dynamic_role_switching_20260430_134644_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:48:42,075 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:48:42,634 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:48:43,168 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:48:43,672 INFO [battle_engine.api] GET /debug/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:48:44,168 INFO [battle_engine.api] GET /debug/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:48:44,736 INFO [battle_engine.api] GET /debug/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:48:45,228 INFO [battle_engine.api] GET /debug/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:48:45,754 INFO [battle_engine.api] GET /debug/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:48:46,311 INFO [battle_engine.api] GET /debug/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:48:46,770 INFO [battle_engine.api] GET /debug/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:48:47,269 INFO [battle_engine.api] GET /debug/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:48:47,814 INFO [battle_engine.api] GET /debug/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:48:48,353 INFO [battle_engine.api] GET /debug/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:48:48,892 INFO [battle_engine.api] GET /debug/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:48:49,379 INFO [battle_engine.api] GET /debug/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:48:49,935 INFO [battle_engine.api] GET /debug/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:48:50,406 INFO [battle_engine.api] GET /debug/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:48:50,937 INFO [battle_engine.api] GET /debug/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:48:51,484 INFO [battle_engine.api] GET /debug/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:48:52,022 INFO [battle_engine.api] GET /debug/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:48:52,616 INFO [battle_engine.api] GET /debug/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:48:53,065 INFO [battle_engine.api] GET /debug/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:48:53,609 INFO [battle_engine.api] GET /debug/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:48:54,149 INFO [battle_engine.api] GET /debug/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:48:54,661 INFO [battle_engine.api] GET /debug/runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval/jobs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:48:55,184 INFO [battle_engine.api] GET /debug/runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval/jobs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:48:55,709 INFO [battle_engine.api] GET /debug/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:48:56,276 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:48:56,783 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:48:57,343 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:48:57,872 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval/jobs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:48:58,372 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:48:58,900 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:48:59,436 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:48:59,964 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:49:00,218 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044738_858390_risk_courier_portal_20260430_044551_candidate_eval/results -> 200 2026-04-30 04:49:00,475 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:49:01,006 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:49:01,541 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000014/files -> 200 2026-04-30 04:49:01,797 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:49:02,057 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000005/result -> 200 2026-04-30 04:49:02,562 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000004/result -> 200 2026-04-30 04:49:02,685 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:49:03,133 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000025/files -> 200 2026-04-30 04:49:03,348 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:49:03,630 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000009/files -> 200 2026-04-30 04:49:04,108 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000001/files -> 200 2026-04-30 04:49:04,684 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000004/result -> 200 2026-04-30 04:49:05,170 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000004/result -> 404 2026-04-30 04:49:05,678 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000011/files -> 200 2026-04-30 04:49:05,995 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:49:06,230 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000005/files -> 200 2026-04-30 04:49:06,753 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000016/result -> 404 2026-04-30 04:49:07,308 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000026/files -> 200 2026-04-30 04:49:07,840 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000002/files -> 200 2026-04-30 04:49:08,434 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000001/files -> 200 2026-04-30 04:49:08,596 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:49:08,899 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000026/result -> 404 2026-04-30 04:49:09,422 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000005/files -> 200 2026-04-30 04:49:10,163 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000008/result -> 404 2026-04-30 04:49:10,503 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000012/result -> 404 2026-04-30 04:49:11,033 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000003/result -> 200 2026-04-30 04:49:11,503 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000009/files -> 200 2026-04-30 04:49:12,053 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000027/files -> 200 2026-04-30 04:49:12,511 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000005/files -> 200 2026-04-30 04:49:13,036 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000012/files -> 200 2026-04-30 04:49:13,425 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_095819 -> 200 2026-04-30 04:49:13,593 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000003/files -> 200 2026-04-30 04:49:14,105 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000006/files -> 200 2026-04-30 04:49:14,644 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000002/files -> 200 2026-04-30 04:49:15,137 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000027/files -> 200 2026-04-30 04:49:15,666 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000002/files -> 200 2026-04-30 04:49:16,180 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000019/files -> 200 2026-04-30 04:49:16,693 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000028/files -> 200 2026-04-30 04:49:17,252 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000018/files -> 200 2026-04-30 04:49:17,748 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000019/result -> 404 2026-04-30 04:49:18,213 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133926 -> 200 2026-04-30 04:49:18,269 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000015/result -> 404 2026-04-30 04:49:18,756 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000002/files -> 200 2026-04-30 04:49:19,282 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000015/files -> 200 2026-04-30 04:49:19,785 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000004/files -> 200 2026-04-30 04:49:20,346 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000010/files -> 200 2026-04-30 04:49:20,882 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000008/files -> 200 2026-04-30 04:49:21,365 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000029/result -> 404 2026-04-30 04:49:21,895 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000020/result -> 404 2026-04-30 04:49:22,421 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000019/result -> 404 2026-04-30 04:49:22,989 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000024/files -> 200 2026-04-30 04:49:23,517 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000028/files -> 200 2026-04-30 04:49:24,028 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000021/files -> 200 2026-04-30 04:49:24,581 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000001/files -> 200 2026-04-30 04:49:25,124 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000002/result -> 200 2026-04-30 04:49:25,614 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000008/files -> 200 2026-04-30 04:49:26,129 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000024/files -> 200 2026-04-30 04:49:26,633 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000001/result -> 404 2026-04-30 04:49:27,175 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000028/result -> 404 2026-04-30 04:49:27,715 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000023/files -> 200 2026-04-30 04:49:27,827 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:49:28,227 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000005/files -> 200 2026-04-30 04:49:28,765 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000005/result -> 200 2026-04-30 04:49:29,037 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:49:29,331 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000004/result -> 200 2026-04-30 04:49:29,851 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000007/files -> 200 2026-04-30 04:49:30,384 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000020/files -> 200 2026-04-30 04:49:30,921 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000001/files -> 200 2026-04-30 04:49:31,429 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000004/files -> 200 2026-04-30 04:49:31,975 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000016/files -> 200 2026-04-30 04:49:32,509 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000026/files -> 200 2026-04-30 04:49:33,013 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000016/files -> 200 2026-04-30 04:49:33,537 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000001/result -> 200 2026-04-30 04:49:34,068 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000017/files -> 200 2026-04-30 04:49:34,631 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000001/files -> 200 2026-04-30 04:49:35,121 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000021/files -> 200 2026-04-30 04:49:35,611 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000002/result -> 200 2026-04-30 04:49:36,172 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000005/files -> 200 2026-04-30 04:49:36,642 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000024/result -> 404 2026-04-30 04:49:36,783 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:49:37,170 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000003/result -> 200 2026-04-30 04:49:37,727 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000007/files -> 200 2026-04-30 04:49:38,220 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000005/result -> 404 2026-04-30 04:49:38,747 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000003/result -> 200 2026-04-30 04:49:39,273 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000002/result -> 200 2026-04-30 04:49:39,785 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000003/result -> 404 2026-04-30 04:49:40,359 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000029/files -> 200 2026-04-30 04:49:40,893 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000005/result -> 404 2026-04-30 04:49:41,407 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000030/result -> 404 2026-04-30 04:49:41,902 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000020/files -> 200 2026-04-30 04:49:42,412 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000017/result -> 404 2026-04-30 04:49:42,986 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000002/files -> 200 2026-04-30 04:49:43,495 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000009/result -> 404 2026-04-30 04:49:44,057 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000019/files -> 200 2026-04-30 04:49:44,566 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000005/files -> 200 2026-04-30 04:49:45,103 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000006/result -> 404 2026-04-30 04:49:45,606 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000005/result -> 200 2026-04-30 04:49:46,137 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000001/result -> 200 2026-04-30 04:49:46,705 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000001/result -> 200 2026-04-30 04:49:47,192 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000003/files -> 200 2026-04-30 04:49:47,743 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000023/files -> 200 2026-04-30 04:49:48,248 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000003/files -> 200 2026-04-30 04:49:48,790 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000014/result -> 404 2026-04-30 04:49:49,357 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000001/files -> 200 2026-04-30 04:49:49,873 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000015/files -> 200 2026-04-30 04:49:50,396 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000005/result -> 200 2026-04-30 04:49:50,462 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044936_776930_invader_intercept_defense_20260430_134913_smoke -> 200 2026-04-30 04:49:50,919 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000005/result -> 200 2026-04-30 04:49:51,423 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000004/result -> 200 2026-04-30 04:49:51,747 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:49:51,951 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000010/result -> 404 2026-04-30 04:49:52,528 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044738_858390_risk_courier_portal_20260430_044551_candidate_eval/context-pack -> 200 2026-04-30 04:49:52,550 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000012/files -> 200 2026-04-30 04:49:53,051 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000004/files -> 200 2026-04-30 04:49:53,547 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000001/result -> 200 2026-04-30 04:49:54,132 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000021/result -> 404 2026-04-30 04:49:54,598 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044936_776930_invader_intercept_defense_20260430_134913_smoke/results -> 200 2026-04-30 04:49:54,617 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000003/result -> 200 2026-04-30 04:49:55,181 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000014/files -> 200 2026-04-30 04:49:55,656 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000025/result -> 404 2026-04-30 04:49:56,202 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000004/files -> 200 2026-04-30 04:49:56,751 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000001/result -> 200 2026-04-30 04:49:57,259 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000003/files -> 200 2026-04-30 04:49:57,781 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000004/files -> 200 2026-04-30 04:49:58,322 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000002/result -> 404 2026-04-30 04:49:58,802 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000005/files -> 200 2026-04-30 04:49:59,311 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000002/result -> 200 2026-04-30 04:49:59,853 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000013/files -> 200 2026-04-30 04:50:00,346 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000004/files -> 200 2026-04-30 04:50:00,901 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000002/files -> 200 2026-04-30 04:50:01,386 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000003/result -> 200 2026-04-30 04:50:01,921 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000018/result -> 404 2026-04-30 04:50:02,425 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000011/files -> 200 2026-04-30 04:50:02,593 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:50:02,980 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000022/files -> 200 2026-04-30 04:50:03,520 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000005/result -> 200 2026-04-30 04:50:04,011 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000002/result -> 200 2026-04-30 04:50:04,571 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000018/files -> 200 2026-04-30 04:50:05,077 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000007/result -> 404 2026-04-30 04:50:05,588 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000016/result -> 404 2026-04-30 04:50:06,156 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000003/files -> 200 2026-04-30 04:50:06,680 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000002/result -> 200 2026-04-30 04:50:07,160 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000017/result -> 404 2026-04-30 04:50:07,723 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000027/result -> 404 2026-04-30 04:50:08,195 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000013/result -> 404 2026-04-30 04:50:08,714 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000004/result -> 200 2026-04-30 04:50:09,286 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000004/files -> 200 2026-04-30 04:50:09,819 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000004/files -> 200 2026-04-30 04:50:10,354 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000025/result -> 404 2026-04-30 04:50:10,912 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000011/result -> 404 2026-04-30 04:50:11,441 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000001/files -> 200 2026-04-30 04:50:11,989 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000014/result -> 404 2026-04-30 04:50:12,489 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000003/result -> 200 2026-04-30 04:50:13,024 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000010/files -> 200 2026-04-30 04:50:13,575 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000004/result -> 200 2026-04-30 04:50:14,154 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000002/files -> 200 2026-04-30 04:50:14,623 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000013/files -> 200 2026-04-30 04:50:15,139 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000025/files -> 200 2026-04-30 04:50:15,666 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000030/files -> 200 2026-04-30 04:50:16,181 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000001/result -> 200 2026-04-30 04:50:16,739 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000006/files -> 200 2026-04-30 04:50:17,253 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000023/result -> 404 2026-04-30 04:50:17,779 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000022/result -> 404 2026-04-30 04:50:18,293 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:18,299 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000022/files -> 200 2026-04-30 04:50:18,510 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044519_529977_blended_roi_intercept_v01_20260430_044344_candidate_eval/artifacts/results.jsonl -> 200 2026-04-30 04:50:18,868 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000007/result -> 404 2026-04-30 04:50:18,870 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:19,303 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:19,413 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000001/files -> 200 2026-04-30 04:50:19,573 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:19,882 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000011/result -> 404 2026-04-30 04:50:20,414 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000002/files -> 200 2026-04-30 04:50:20,940 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000017/files -> 200 2026-04-30 04:50:21,493 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000003/files -> 200 2026-04-30 04:50:22,001 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000015/result -> 404 2026-04-30 04:50:22,504 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000027/result -> 404 2026-04-30 04:50:23,041 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000003/files -> 200 2026-04-30 04:50:23,550 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005850_370555_invader_intercept_defense_20260430_095819_candidate_eval/context-pack -> 200 2026-04-30 04:50:24,096 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:50:24,630 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:50:25,145 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:50:25,684 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:50:26,030 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:26,185 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:50:26,664 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:50:26,884 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:27,186 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:50:27,593 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:27,764 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000018/source/baseline -> 200 2026-04-30 04:50:28,240 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000013/source/baseline -> 404 2026-04-30 04:50:28,309 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:28,736 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000007/source/baseline -> 404 2026-04-30 04:50:28,972 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:29,320 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000025/source/baseline -> 404 2026-04-30 04:50:29,800 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:29,873 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000001/source/baseline -> 404 2026-04-30 04:50:30,382 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000019/source/baseline -> 404 2026-04-30 04:50:30,893 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:50:31,268 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045002_580656_invader_intercept_defense_20260430_134913_candidate_eval -> 200 2026-04-30 04:50:31,383 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:50:31,603 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:31,892 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:50:32,314 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:32,469 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:32,845 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:33,003 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005423_821117_portal_planner_defense_20260430_095235_candidate_eval/context-pack -> 200 2026-04-30 04:50:33,360 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:33,472 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033359_406738_invader_intercept_defense_20260430_123336_smoke/context-pack -> 200 2026-04-30 04:50:33,885 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:34,007 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval/jobs/run_20260430_004932_405561_invader_intercept_defense_20260430_094830_candidate_eval_job_000002/files -> 200 2026-04-30 04:50:34,287 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:34,586 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:34,738 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:35,133 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:35,679 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:36,011 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:36,179 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:36,339 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:36,733 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:36,848 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:37,246 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:37,255 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:50:37,422 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:37,795 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:38,245 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:38,268 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000010/source/your_best -> 404 2026-04-30 04:50:38,795 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:38,797 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000005/source/your_best -> 404 2026-04-30 04:50:39,328 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:50:39,481 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:50:39,831 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000018/source/your_best -> 404 2026-04-30 04:50:40,397 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000017/source/your_best -> 404 2026-04-30 04:50:40,910 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000002/source/your_best -> 404 2026-04-30 04:50:41,033 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:50:41,127 INFO [battle_engine.api] GET /api/v1/health -> 200 2026-04-30 04:50:41,431 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:50:41,938 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000027/source/your_best -> 404 2026-04-30 04:50:42,500 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000004/source/your_best -> 404 2026-04-30 04:50:42,634 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045002_580656_invader_intercept_defense_20260430_134913_candidate_eval/context-pack -> 200 2026-04-30 04:50:42,638 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:50:42,759 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:50:42,760 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:50:42,762 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:50:42,762 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:50:42,766 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045002_580656_invader_intercept_defense_20260430_134913_candidate_eval/results -> 200 2026-04-30 04:50:42,990 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000029/source/your_best -> 404 2026-04-30 04:50:43,536 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:50:44,052 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:50:44,568 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:50:44,648 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_095819 -> 200 2026-04-30 04:50:45,098 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:50:45,637 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000020/source/your_best -> 404 2026-04-30 04:50:46,181 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000011/source/your_best -> 404 2026-04-30 04:50:46,183 INFO [battle_engine.api] GET /api/v1/leaderboard -> 422 2026-04-30 04:50:46,737 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:50:47,234 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:50:47,752 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:50:48,272 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000021/source/your_best -> 404 2026-04-30 04:50:48,770 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000015/source/your_best -> 404 2026-04-30 04:50:49,334 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:50:49,850 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000025/source/your_best -> 404 2026-04-30 04:50:50,383 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:50:50,938 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:50:51,510 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:50:51,993 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:50:52,556 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:50:53,041 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000022/source/your_best -> 404 2026-04-30 04:50:53,598 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:50:54,109 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000014/source/your_best -> 404 2026-04-30 04:50:54,626 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:50:54,830 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:50:54,831 INFO [battle_engine.api] GET /api/v1/layouts -> 200 2026-04-30 04:50:54,832 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:50:54,850 INFO [battle_engine.api] GET /api/v1/candidates -> 200 2026-04-30 04:50:55,204 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000023/source/your_best -> 404 2026-04-30 04:50:55,561 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:50:55,673 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:50:55,921 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045042_629070_dead_end_avoidance_20260430_045031_smoke/results -> 200 2026-04-30 04:50:56,186 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000001/source/your_best -> 404 2026-04-30 04:50:56,693 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000012/source/your_best -> 404 2026-04-30 04:50:57,240 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000028/source/your_best -> 404 2026-04-30 04:50:57,740 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000008/source/your_best -> 404 2026-04-30 04:50:58,256 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:50:58,767 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:50:59,324 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:50:59,857 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000003/source/your_best -> 404 2026-04-30 04:51:00,369 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:51:00,392 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:51:00,407 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:51:00,882 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:51:01,437 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:51:01,910 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000006/source/your_best -> 404 2026-04-30 04:51:02,441 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:51:02,950 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:51:03,199 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:51:03,489 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:51:04,052 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:51:04,544 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000009/source/your_best -> 404 2026-04-30 04:51:05,056 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000019/source/your_best -> 404 2026-04-30 04:51:05,547 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000030/source/your_best -> 404 2026-04-30 04:51:06,073 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:51:06,568 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:51:07,127 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000024/source/your_best -> 404 2026-04-30 04:51:07,663 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:51:08,194 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000007/source/your_best -> 404 2026-04-30 04:51:08,725 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000013/source/your_best -> 404 2026-04-30 04:51:08,812 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:51:08,839 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:51:09,217 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:51:09,762 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000026/source/your_best -> 404 2026-04-30 04:51:10,285 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:51:10,778 INFO [battle_engine.api] GET /debug/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:51:11,329 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000018/source/baseline -> 200 2026-04-30 04:51:11,869 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000024/source/baseline -> 200 2026-04-30 04:51:12,404 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000001/source/baseline -> 200 2026-04-30 04:51:12,879 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000007/source/baseline -> 200 2026-04-30 04:51:13,385 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000019/source/baseline -> 200 2026-04-30 04:51:13,935 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000007/source/baseline -> 200 2026-04-30 04:51:14,456 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000023/source/baseline -> 200 2026-04-30 04:51:14,988 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000001/source/baseline -> 200 2026-04-30 04:51:15,449 INFO [battle_engine.api] GET /debug/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:51:15,998 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000012/source/baseline -> 200 2026-04-30 04:51:16,511 INFO [battle_engine.api] GET /debug/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:51:17,054 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000013/source/baseline -> 200 2026-04-30 04:51:17,591 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000001/source/baseline -> 200 2026-04-30 04:51:18,122 INFO [battle_engine.api] GET /debug/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:51:18,700 INFO [battle_engine.api] GET /debug/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:51:19,214 INFO [battle_engine.api] GET /debug/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:51:19,722 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000025/source/baseline -> 200 2026-04-30 04:51:20,261 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000001/source/baseline -> 200 2026-04-30 04:51:20,765 INFO [battle_engine.api] GET /debug/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:51:21,302 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000013/source/baseline -> 200 2026-04-30 04:51:21,775 INFO [battle_engine.api] GET /debug/runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval/jobs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:51:22,295 INFO [battle_engine.api] GET /debug/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:51:22,719 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:51:22,836 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000007/source/baseline -> 200 2026-04-30 04:51:23,201 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:51:23,325 INFO [battle_engine.api] GET /debug/runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval/jobs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:51:23,866 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000018/source/baseline -> 200 2026-04-30 04:51:24,400 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000012/source/baseline -> 200 2026-04-30 04:51:24,910 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000024/source/baseline -> 200 2026-04-30 04:51:25,427 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000019/source/baseline -> 200 2026-04-30 04:51:25,933 INFO [battle_engine.api] GET /debug/runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval/jobs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:51:26,463 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000002/source/your_best -> 200 2026-04-30 04:51:27,028 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000024/source/your_best -> 200 2026-04-30 04:51:27,544 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000001/source/your_best -> 200 2026-04-30 04:51:28,037 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000016/source/your_best -> 200 2026-04-30 04:51:28,251 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:51:28,519 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000005/source/your_best -> 200 2026-04-30 04:51:29,068 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000006/source/your_best -> 200 2026-04-30 04:51:29,509 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045055_536677_invader_intercept_defense_20260430_134913_robustness -> 200 2026-04-30 04:51:29,619 INFO [battle_engine.api] GET /debug/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:51:30,160 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000011/source/your_best -> 200 2026-04-30 04:51:30,664 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000014/source/your_best -> 200 2026-04-30 04:51:31,196 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000028/source/your_best -> 200 2026-04-30 04:51:31,702 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000022/source/your_best -> 200 2026-04-30 04:51:32,201 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000007/source/your_best -> 200 2026-04-30 04:51:32,744 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000015/source/your_best -> 200 2026-04-30 04:51:33,231 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000028/source/your_best -> 200 2026-04-30 04:51:33,754 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000023/source/your_best -> 200 2026-04-30 04:51:34,259 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000008/source/your_best -> 200 2026-04-30 04:51:34,665 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133926 -> 200 2026-04-30 04:51:34,838 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000018/source/your_best -> 200 2026-04-30 04:51:35,336 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000010/source/your_best -> 200 2026-04-30 04:51:35,856 INFO [battle_engine.api] GET /debug/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:51:36,364 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000007/source/your_best -> 200 2026-04-30 04:51:36,413 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133926 -> 200 2026-04-30 04:51:36,899 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000027/source/your_best -> 200 2026-04-30 04:51:36,960 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045103_190367_dead_end_avoidance_20260430_045031_candidate_eval -> 200 2026-04-30 04:51:37,420 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133926/source -> 200 2026-04-30 04:51:37,424 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000029/source/your_best -> 200 2026-04-30 04:51:37,955 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000021/source/your_best -> 200 2026-04-30 04:51:38,492 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000004/source/your_best -> 200 2026-04-30 04:51:39,046 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000017/source/your_best -> 200 2026-04-30 04:51:39,054 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_133926/source -> 200 2026-04-30 04:51:39,557 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000012/source/your_best -> 200 2026-04-30 04:51:40,086 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000013/source/your_best -> 200 2026-04-30 04:51:40,600 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000017/source/your_best -> 200 2026-04-30 04:51:41,172 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000019/source/your_best -> 200 2026-04-30 04:51:41,668 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000008/source/your_best -> 200 2026-04-30 04:51:42,186 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000009/source/your_best -> 200 2026-04-30 04:51:42,674 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000020/source/your_best -> 200 2026-04-30 04:51:43,182 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000015/source/your_best -> 200 2026-04-30 04:51:43,724 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000003/source/your_best -> 200 2026-04-30 04:51:44,062 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045108_834715_blended_roi_intercept_v01_20260430_045100_smoke -> 200 2026-04-30 04:51:44,088 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045108_834715_blended_roi_intercept_v01_20260430_045100_smoke/results -> 200 2026-04-30 04:51:44,285 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000019/source/your_best -> 200 2026-04-30 04:51:44,771 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000018/source/your_best -> 200 2026-04-30 04:51:45,325 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000017/source/your_best -> 200 2026-04-30 04:51:45,816 INFO [battle_engine.api] GET /debug/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:51:46,346 INFO [battle_engine.api] GET /debug/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:51:46,873 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000018/source/your_best -> 200 2026-04-30 04:51:47,448 INFO [battle_engine.api] GET /debug/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:51:47,990 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:51:48,509 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:51:49,005 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:51:49,539 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:51:49,770 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045100_401988_risk_courier_portal_20260430_045048_smoke -> 200 2026-04-30 04:51:49,795 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045100_401988_risk_courier_portal_20260430_045048_smoke/results -> 200 2026-04-30 04:51:50,104 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000008/logs/stdout -> 200 2026-04-30 04:51:50,616 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:51:51,140 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000008/logs/stderr -> 200 2026-04-30 04:51:51,686 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:51:52,247 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:51:52,758 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:51:53,340 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:51:53,805 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:51:54,376 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:51:54,852 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000009/logs/stderr -> 200 2026-04-30 04:51:55,371 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000029/logs/stderr -> 200 2026-04-30 04:51:55,600 INFO [battle_engine.api] GET /api/v1/runs -> 200 2026-04-30 04:51:55,916 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000025/logs/stderr -> 200 2026-04-30 04:51:56,427 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:51:56,956 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000027/logs/stderr -> 200 2026-04-30 04:51:57,501 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:51:58,026 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:51:58,537 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:51:59,096 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:51:59,616 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000021/logs/stderr -> 200 2026-04-30 04:52:00,136 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:52:00,715 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:52:01,233 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:52:01,790 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:52:02,321 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:52:02,882 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000014/logs/stderr -> 200 2026-04-30 04:52:02,934 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045055_536677_invader_intercept_defense_20260430_134913_robustness -> 200 2026-04-30 04:52:03,460 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:52:03,612 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_095819 -> 200 2026-04-30 04:52:03,931 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:52:04,445 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:52:04,872 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_095819/source -> 200 2026-04-30 04:52:05,020 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:52:05,495 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000013/logs/stderr -> 200 2026-04-30 04:52:06,092 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000026/logs/stdout -> 200 2026-04-30 04:52:06,588 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:52:07,076 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000030/logs/stdout -> 200 2026-04-30 04:52:07,598 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:52:08,119 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:52:08,617 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:52:09,126 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:52:09,632 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:52:10,193 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000025/logs/stdout -> 200 2026-04-30 04:52:10,314 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045055_536677_invader_intercept_defense_20260430_134913_robustness/context-pack -> 200 2026-04-30 04:52:10,315 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045055_536677_invader_intercept_defense_20260430_134913_robustness/jobs -> 200 2026-04-30 04:52:10,320 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045055_536677_invader_intercept_defense_20260430_134913_robustness/results -> 200 2026-04-30 04:52:10,666 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000016/logs/stderr -> 200 2026-04-30 04:52:11,169 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:52:11,712 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:52:12,244 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000013/logs/stdout -> 200 2026-04-30 04:52:12,739 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:52:13,225 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000006/logs/stdout -> 200 2026-04-30 04:52:13,796 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:52:14,302 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:52:14,868 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000015/logs/stderr -> 200 2026-04-30 04:52:15,372 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:52:15,880 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:52:16,378 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:52:16,895 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000024/logs/stdout -> 200 2026-04-30 04:52:17,472 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000017/logs/stdout -> 200 2026-04-30 04:52:17,988 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000019/logs/stderr -> 200 2026-04-30 04:52:18,516 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:52:19,066 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000028/logs/stdout -> 200 2026-04-30 04:52:19,574 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:52:20,113 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000016/logs/stdout -> 200 2026-04-30 04:52:20,648 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000011/logs/stdout -> 200 2026-04-30 04:52:21,184 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:52:21,701 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:52:22,214 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000006/logs/stderr -> 200 2026-04-30 04:52:22,789 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000017/logs/stderr -> 200 2026-04-30 04:52:23,301 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000004/logs/stdout -> 200 2026-04-30 04:52:23,862 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:52:24,414 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000021/logs/stdout -> 200 2026-04-30 04:52:24,934 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:52:25,457 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:52:25,967 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:52:26,538 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:52:27,032 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:52:27,620 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000018/logs/stderr -> 200 2026-04-30 04:52:28,127 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:52:28,637 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000004/logs/stderr -> 200 2026-04-30 04:52:29,201 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:52:29,749 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000014/logs/stdout -> 200 2026-04-30 04:52:30,216 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000015/logs/stdout -> 200 2026-04-30 04:52:30,724 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000007/logs/stdout -> 200 2026-04-30 04:52:31,265 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000029/logs/stdout -> 200 2026-04-30 04:52:31,814 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:52:32,306 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000023/logs/stderr -> 200 2026-04-30 04:52:32,830 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:52:33,359 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:52:33,546 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:52:33,920 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000018/logs/stdout -> 200 2026-04-30 04:52:34,468 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:52:35,009 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000011/logs/stderr -> 200 2026-04-30 04:52:35,520 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:52:36,001 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000024/logs/stderr -> 200 2026-04-30 04:52:36,519 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000009/logs/stdout -> 200 2026-04-30 04:52:37,068 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000012/logs/stderr -> 200 2026-04-30 04:52:37,557 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000023/logs/stdout -> 200 2026-04-30 04:52:37,842 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045108_834715_blended_roi_intercept_v01_20260430_045100_smoke -> 200 2026-04-30 04:52:37,866 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045108_834715_blended_roi_intercept_v01_20260430_045100_smoke/results -> 200 2026-04-30 04:52:38,132 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:52:38,652 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000020/logs/stdout -> 200 2026-04-30 04:52:39,142 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:52:39,671 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000001/logs/stdout -> 200 2026-04-30 04:52:40,204 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000026/logs/stderr -> 200 2026-04-30 04:52:40,714 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000030/logs/stderr -> 200 2026-04-30 04:52:41,229 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045103_190367_dead_end_avoidance_20260430_045031_candidate_eval -> 200 2026-04-30 04:52:41,253 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000020/logs/stderr -> 200 2026-04-30 04:52:41,762 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:52:42,296 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:52:42,841 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:52:43,374 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000022/logs/stdout -> 200 2026-04-30 04:52:43,903 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000022/logs/stderr -> 200 2026-04-30 04:52:44,437 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000019/logs/stdout -> 200 2026-04-30 04:52:44,938 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000028/logs/stderr -> 200 2026-04-30 04:52:45,445 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000010/logs/stderr -> 200 2026-04-30 04:52:45,981 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000007/logs/stderr -> 200 2026-04-30 04:52:46,456 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000012/logs/stdout -> 200 2026-04-30 04:52:46,988 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000001/logs/stderr -> 200 2026-04-30 04:52:47,570 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:52:48,108 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000005/logs/stderr -> 200 2026-04-30 04:52:48,592 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000003/logs/stdout -> 200 2026-04-30 04:52:49,124 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000024/logs/stdout -> 200 2026-04-30 04:52:49,660 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000024/logs/stderr -> 200 2026-04-30 04:52:49,952 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045100_401988_risk_courier_portal_20260430_045048_smoke -> 200 2026-04-30 04:52:49,976 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045100_401988_risk_courier_portal_20260430_045048_smoke/results -> 200 2026-04-30 04:52:50,154 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000002/logs/stderr -> 200 2026-04-30 04:52:50,691 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000010/logs/stdout -> 200 2026-04-30 04:52:51,211 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000005/logs/stdout -> 200 2026-04-30 04:52:51,719 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045103_190367_dead_end_avoidance_20260430_045031_candidate_eval/results -> 200 2026-04-30 04:52:51,728 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000027/logs/stdout -> 200 2026-04-30 04:52:51,733 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045103_190367_dead_end_avoidance_20260430_045031_candidate_eval/context-pack -> 200 2026-04-30 04:52:51,816 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:52:51,836 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:52:51,852 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:52:51,854 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:52:52,232 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000002/logs/stdout -> 200 2026-04-30 04:52:52,782 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000003/logs/stderr -> 200 2026-04-30 04:52:53,314 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000015/source/your_best -> 200 2026-04-30 04:52:53,836 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000014/source/your_best -> 200 2026-04-30 04:52:54,361 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000014/source/your_best -> 200 2026-04-30 04:52:54,904 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000016/source/your_best -> 200 2026-04-30 04:52:55,424 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000016/source/your_best -> 200 2026-04-30 04:52:55,465 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045108_834715_blended_roi_intercept_v01_20260430_045100_smoke -> 200 2026-04-30 04:52:55,960 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000011/source/your_best -> 200 2026-04-30 04:52:56,469 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000019/source/your_best -> 200 2026-04-30 04:52:56,971 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000015/source/your_best -> 200 2026-04-30 04:52:57,089 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:52:57,514 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000008/source/your_best -> 200 2026-04-30 04:52:58,057 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000009/source/your_best -> 200 2026-04-30 04:52:58,568 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000015/source/your_best -> 200 2026-04-30 04:52:59,056 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000019/source/your_best -> 200 2026-04-30 04:52:59,577 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000017/source/your_best -> 200 2026-04-30 04:53:00,122 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000016/logs/stderr -> 200 2026-04-30 04:53:00,574 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000016/logs/stdout -> 200 2026-04-30 04:53:01,110 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000025/source/your_best -> 200 2026-04-30 04:53:01,680 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000024/source/your_best -> 200 2026-04-30 04:53:02,161 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000026/source/your_best -> 200 2026-04-30 04:53:02,698 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000005/source/your_best -> 200 2026-04-30 04:53:03,188 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000013/source/your_best -> 200 2026-04-30 04:53:03,342 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:53:03,727 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000023/source/your_best -> 200 2026-04-30 04:53:04,298 INFO [battle_engine.api] GET /debug/runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval/jobs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval_job_000025/source/your_best -> 200 2026-04-30 04:53:04,828 INFO [battle_engine.api] GET /debug/runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval/jobs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval_job_000018/source/your_best -> 200 2026-04-30 04:53:05,336 INFO [battle_engine.api] GET /debug/runs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval/jobs/run_20260430_005512_796012_portal_planner_defense_20260430_095235_promotion_eval_job_000027/source/your_best -> 200 2026-04-30 04:53:05,852 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000013/source/your_best -> 200 2026-04-30 04:53:06,404 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:53:06,881 INFO [battle_engine.api] GET /debug/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:53:07,448 INFO [battle_engine.api] GET /debug/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:53:07,969 INFO [battle_engine.api] GET /debug/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:53:08,508 INFO [battle_engine.api] GET /debug/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:53:09,027 INFO [battle_engine.api] GET /debug/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:53:09,559 INFO [battle_engine.api] GET /debug/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:53:10,152 INFO [battle_engine.api] GET /debug/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:53:10,690 INFO [battle_engine.api] GET /debug/runs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval/jobs/run_20260430_005432_241885_invader_intercept_defense_20260430_095327_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:53:11,204 INFO [battle_engine.api] GET /debug/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:53:11,771 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:53:12,271 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:53:12,735 INFO [battle_engine.api] GET /debug/runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval/jobs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:53:13,254 INFO [battle_engine.api] GET /api/v1/debug/logs/battle-api.log -> 200 2026-04-30 04:53:14,250 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:53:14,840 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:53:15,274 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:53:15,804 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:53:16,370 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:53:16,859 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:53:17,385 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:53:17,911 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_134913/source -> 200 2026-04-30 04:53:18,460 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_134913 -> 200 2026-04-30 04:53:18,967 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:53:19,500 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:53:20,010 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:53:20,529 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:53:21,087 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:53:21,091 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:53:21,554 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:53:21,555 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:53:22,088 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:53:22,593 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:53:23,091 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:53:23,676 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_134913/source -> 200 2026-04-30 04:53:23,699 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_100532 -> 200 2026-04-30 04:53:24,176 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:53:24,726 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000001/source/baseline -> 404 2026-04-30 04:53:25,230 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_100532/source -> 200 2026-04-30 04:53:25,252 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000013/source/baseline -> 404 2026-04-30 04:53:25,733 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:53:26,285 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:53:26,797 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000019/source/baseline -> 404 2026-04-30 04:53:27,314 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000025/source/baseline -> 404 2026-04-30 04:53:27,503 INFO [battle_engine.api] GET /api/v1/candidates/food_roi_targeting_20260430_100532/source -> 200 2026-04-30 04:53:27,850 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:53:28,371 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000007/source/baseline -> 404 2026-04-30 04:53:28,912 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:53:29,443 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:53:29,963 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:53:30,501 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:53:31,050 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:53:31,589 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:53:32,130 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:53:32,651 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:53:33,160 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:53:33,690 INFO [battle_engine.api] GET /api/v1/debug/logs/battle-worker.log -> 200 2026-04-30 04:53:35,133 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:53:35,664 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:53:36,139 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:53:36,663 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:53:37,188 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:53:37,658 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000006/source/your_best -> 404 2026-04-30 04:53:38,157 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000023/source/your_best -> 404 2026-04-30 04:53:38,663 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000004/source/your_best -> 404 2026-04-30 04:53:39,192 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000017/source/your_best -> 404 2026-04-30 04:53:39,738 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000028/source/your_best -> 404 2026-04-30 04:53:40,290 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000010/source/your_best -> 404 2026-04-30 04:53:40,791 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000014/source/your_best -> 404 2026-04-30 04:53:41,373 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000018/source/your_best -> 404 2026-04-30 04:53:41,867 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000022/source/your_best -> 404 2026-04-30 04:53:42,387 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000013/source/your_best -> 404 2026-04-30 04:53:42,946 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000029/source/your_best -> 404 2026-04-30 04:53:43,440 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000001/source/your_best -> 404 2026-04-30 04:53:44,012 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000027/source/your_best -> 404 2026-04-30 04:53:44,534 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000007/source/your_best -> 404 2026-04-30 04:53:45,206 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000019/source/your_best -> 404 2026-04-30 04:53:45,626 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000024/source/your_best -> 404 2026-04-30 04:53:46,165 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000016/source/your_best -> 404 2026-04-30 04:53:46,753 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000015/source/your_best -> 404 2026-04-30 04:53:47,246 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000009/source/your_best -> 404 2026-04-30 04:53:47,811 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000005/source/your_best -> 404 2026-04-30 04:53:48,350 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000025/source/your_best -> 404 2026-04-30 04:53:48,910 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000012/source/your_best -> 404 2026-04-30 04:53:49,415 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000021/source/your_best -> 404 2026-04-30 04:53:49,928 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000011/source/your_best -> 404 2026-04-30 04:53:50,460 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000026/source/your_best -> 404 2026-04-30 04:53:51,021 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000007/source/baseline -> 200 2026-04-30 04:53:51,530 INFO [battle_engine.api] GET /debug/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:53:52,068 INFO [battle_engine.api] GET /debug/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:53:52,572 INFO [battle_engine.api] GET /debug/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:53:53,096 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000012/source/baseline -> 200 2026-04-30 04:53:53,672 INFO [battle_engine.api] GET /debug/runs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval/jobs/run_20260430_010230_465356_dynamic_role_switching_20260430_100138_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:53:54,177 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000018/source/baseline -> 200 2026-04-30 04:53:54,729 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000023/source/baseline -> 200 2026-04-30 04:53:55,287 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000003/source/your_best -> 404 2026-04-30 04:53:55,777 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000030/source/your_best -> 404 2026-04-30 04:53:56,336 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000020/source/your_best -> 404 2026-04-30 04:53:56,433 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045257_075024_risk_courier_portal_20260430_045048_candidate_eval -> 200 2026-04-30 04:53:56,459 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045257_075024_risk_courier_portal_20260430_045048_candidate_eval/results -> 200 2026-04-30 04:53:56,866 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000002/source/your_best -> 404 2026-04-30 04:53:57,420 INFO [battle_engine.api] GET /debug/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness_job_000008/source/your_best -> 404 2026-04-30 04:53:57,987 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:53:58,479 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:53:58,943 INFO [battle_engine.api] GET /debug/runs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval/jobs/run_20260430_005119_286526_portal_planner_defense_20260430_094615_promotion_eval_job_000001/source/baseline -> 200 2026-04-30 04:53:59,462 INFO [battle_engine.api] GET /debug/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000007/source/baseline -> 200 2026-04-30 04:54:00,040 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:54:00,480 ERROR [battle_engine.api] GET /leaderboard failed Traceback (most recent call last): File "/app/battle_engine/api.py", line 59, in log_requests response = await call_next(request) File "/usr/local/lib/python3.9/site-packages/starlette/middleware/base.py", line 168, in call_next raise app_exc from app_exc.__cause__ or app_exc.__context__ File "/usr/local/lib/python3.9/site-packages/starlette/middleware/base.py", line 144, in coro await self.app(scope, receive_or_disconnect, send_no_error) File "/usr/local/lib/python3.9/site-packages/starlette/middleware/exceptions.py", line 63, in __call__ await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app raise exc File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app await app(scope, receive, sender) File "/usr/local/lib/python3.9/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__ await self.app(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 716, in __call__ await self.middleware_stack(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 736, in app await route.handle(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 290, in handle await self.app(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 121, in app await wrap_app_handling_exceptions(app, request)(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app raise exc File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app await app(scope, receive, sender) File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 107, in app response = await f(request) File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 426, in app raw_response = await run_endpoint_function( File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 316, in run_endpoint_function return await run_in_threadpool(dependant.call, **values) File "/usr/local/lib/python3.9/site-packages/starlette/concurrency.py", line 38, in run_in_threadpool return await anyio.to_thread.run_sync(func) File "/usr/local/lib/python3.9/site-packages/anyio/to_thread.py", line 63, in run_sync return await get_async_backend().run_sync_in_worker_thread( File "/usr/local/lib/python3.9/site-packages/anyio/_backends/_asyncio.py", line 2502, in run_sync_in_worker_thread return await future File "/usr/local/lib/python3.9/site-packages/anyio/_backends/_asyncio.py", line 986, in run result = context.run(func, *args) File "/app/battle_engine/api.py", line 985, in leaderboard_page entries = _leaderboard(layout, 50, active_only=not history, official_only=not history, include_archived=history, include_smoke=history, candidate_kind=None if history else "strategy") File "/app/battle_engine/api.py", line 169, in _leaderboard validate_layout(layout) File "/app/battle_engine/validation.py", line 49, in validate_layout raise ValueError(f"unknown layout: {layout}") ValueError: unknown layout: global 2026-04-30 04:54:01,052 INFO [battle_engine.api] GET /debug/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:54:02,690 INFO [battle_engine.api] GET /debug/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:54:04,017 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000002/source/your_best -> 404 2026-04-30 04:54:05,268 INFO [battle_engine.api] GET /debug/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:54:06,477 INFO [battle_engine.api] GET /debug/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:54:07,700 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000001/source/your_best -> 404 2026-04-30 04:54:08,699 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045303_336079_blended_roi_intercept_v01_20260430_045100_candidate_eval -> 200 2026-04-30 04:54:08,736 INFO [battle_engine.api] GET /debug/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:54:09,806 INFO [battle_engine.api] GET /debug/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:54:10,748 INFO [battle_engine.api] GET /debug/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:54:11,514 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000013/source/your_best -> 404 2026-04-30 04:54:12,291 INFO [battle_engine.api] GET /debug/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:54:12,840 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045303_336079_blended_roi_intercept_v01_20260430_045100_candidate_eval/results -> 200 2026-04-30 04:54:13,024 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000028/source/your_best -> 404 2026-04-30 04:54:13,719 INFO [battle_engine.api] GET /debug/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:54:14,472 INFO [battle_engine.api] GET /debug/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:54:15,048 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000026/source/your_best -> 404 2026-04-30 04:54:15,572 INFO [battle_engine.api] GET /debug/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:54:16,103 INFO [battle_engine.api] GET /debug/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:54:16,636 INFO [battle_engine.api] GET /debug/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:54:16,958 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045257_075024_risk_courier_portal_20260430_045048_candidate_eval/context-pack -> 200 2026-04-30 04:54:17,052 INFO [battle_engine.api] GET /api/v1/candidates/risk_courier_portal_20260430_045048 -> 200 2026-04-30 04:54:17,157 INFO [battle_engine.api] GET /debug/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:54:17,700 INFO [battle_engine.api] GET /debug/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:54:18,206 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000023/source/your_best -> 404 2026-04-30 04:54:18,769 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000025/source/your_best -> 404 2026-04-30 04:54:19,263 INFO [battle_engine.api] GET /debug/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:54:19,789 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000024/source/your_best -> 404 2026-04-30 04:54:20,346 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000012/source/your_best -> 404 2026-04-30 04:54:20,862 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000005/source/your_best -> 404 2026-04-30 04:54:21,403 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000011/source/your_best -> 404 2026-04-30 04:54:21,885 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000015/source/your_best -> 404 2026-04-30 04:54:22,385 INFO [battle_engine.api] GET /debug/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:54:22,930 INFO [battle_engine.api] GET /debug/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:54:23,422 INFO [battle_engine.api] GET /debug/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:54:23,979 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000014/source/your_best -> 404 2026-04-30 04:54:24,499 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000029/source/your_best -> 404 2026-04-30 04:54:25,016 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000020/source/your_best -> 404 2026-04-30 04:54:25,558 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000010/source/your_best -> 404 2026-04-30 04:54:26,088 INFO [battle_engine.api] GET /debug/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:54:26,624 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000004/source/your_best -> 404 2026-04-30 04:54:27,146 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000019/source/your_best -> 404 2026-04-30 04:54:27,660 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000027/source/your_best -> 404 2026-04-30 04:54:28,188 INFO [battle_engine.api] GET /debug/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000005/source/your_best -> 200 2026-04-30 04:54:28,726 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000008/source/your_best -> 404 2026-04-30 04:54:29,148 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_044344 -> 200 2026-04-30 04:54:29,160 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_045100 -> 200 2026-04-30 04:54:29,234 INFO [battle_engine.api] GET /debug/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000004/source/your_best -> 200 2026-04-30 04:54:29,236 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044519_529977_blended_roi_intercept_v01_20260430_044344_candidate_eval/context-pack -> 200 2026-04-30 04:54:29,816 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000017/source/your_best -> 404 2026-04-30 04:54:30,313 INFO [battle_engine.api] GET /debug/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:54:30,826 INFO [battle_engine.api] GET /debug/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:54:31,331 INFO [battle_engine.api] GET /debug/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:54:31,910 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000003/source/your_best -> 404 2026-04-30 04:54:32,388 INFO [battle_engine.api] GET /debug/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000002/source/your_best -> 200 2026-04-30 04:54:32,890 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000021/source/your_best -> 404 2026-04-30 04:54:33,435 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000006/source/your_best -> 404 2026-04-30 04:54:33,995 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000018/source/your_best -> 404 2026-04-30 04:54:34,550 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000022/source/your_best -> 404 2026-04-30 04:54:35,043 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000007/source/your_best -> 404 2026-04-30 04:54:35,580 INFO [battle_engine.api] GET /debug/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000001/source/your_best -> 200 2026-04-30 04:54:36,150 INFO [battle_engine.api] GET /debug/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000003/source/your_best -> 200 2026-04-30 04:54:36,708 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000016/source/your_best -> 404 2026-04-30 04:54:37,265 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000030/source/your_best -> 404 2026-04-30 04:54:37,753 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000009/source/your_best -> 404 2026-04-30 04:54:38,341 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:54:38,846 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:54:39,396 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:54:39,917 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:54:40,454 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:54:40,987 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:54:41,506 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:54:42,008 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:54:42,560 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:54:43,046 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000001/source/baseline -> 404 2026-04-30 04:54:43,547 INFO [battle_engine.api] GET /debug/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:54:44,093 INFO [battle_engine.api] GET /debug/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:54:44,594 INFO [battle_engine.api] GET /debug/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:54:45,164 INFO [battle_engine.api] GET /debug/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:54:45,700 INFO [battle_engine.api] GET /debug/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:54:46,188 INFO [battle_engine.api] GET /debug/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:54:46,808 INFO [battle_engine.api] GET /debug/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:54:47,273 INFO [battle_engine.api] GET /debug/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:54:47,796 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000007/source/baseline -> 404 2026-04-30 04:54:48,281 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000013/source/baseline -> 404 2026-04-30 04:54:48,801 INFO [battle_engine.api] GET /debug/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:54:49,327 INFO [battle_engine.api] GET /debug/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:54:49,853 INFO [battle_engine.api] GET /debug/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:54:50,408 INFO [battle_engine.api] GET /debug/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:54:50,904 INFO [battle_engine.api] GET /debug/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000003/source/baseline -> 200 2026-04-30 04:54:51,436 INFO [battle_engine.api] GET /debug/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:54:51,927 INFO [battle_engine.api] GET /debug/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:54:52,460 INFO [battle_engine.api] GET /debug/runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval/jobs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:54:53,012 INFO [battle_engine.api] GET /debug/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:54:53,515 INFO [battle_engine.api] GET /debug/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:54:54,098 INFO [battle_engine.api] GET /debug/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:54:54,600 INFO [battle_engine.api] GET /debug/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:54:55,112 INFO [battle_engine.api] GET /debug/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:54:55,631 INFO [battle_engine.api] GET /debug/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000005/source/baseline -> 200 2026-04-30 04:54:56,175 INFO [battle_engine.api] GET /debug/runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval/jobs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:54:56,724 INFO [battle_engine.api] GET /debug/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:54:57,235 INFO [battle_engine.api] GET /debug/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:54:57,800 INFO [battle_engine.api] GET /debug/runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval/jobs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:54:58,307 INFO [battle_engine.api] GET /debug/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000001/source/baseline -> 200 2026-04-30 04:54:58,767 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 04:54:58,796 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:54:58,859 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000019/source/baseline -> 404 2026-04-30 04:54:59,360 INFO [battle_engine.api] GET /debug/runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval/jobs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:54:59,980 INFO [battle_engine.api] GET /debug/runs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval/jobs/run_20260430_005540_187746_dynamic_role_switching_20260430_095422_candidate_eval_job_000004/source/baseline -> 200 2026-04-30 04:55:00,488 INFO [battle_engine.api] GET /debug/runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval/jobs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval_job_000025/source/baseline -> 404 2026-04-30 04:55:01,021 INFO [battle_engine.api] GET /debug/runs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval/jobs/run_20260430_005855_213268_dynamic_role_switching_20260430_095814_candidate_eval_job_000002/source/baseline -> 200 2026-04-30 04:55:10,726 INFO [battle_engine.api] GET / -> 200 2026-04-30 04:55:12,360 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 04:55:27,748 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:55:27,769 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:55:27,791 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:55:27,814 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:55:40,601 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000002/logs/stdout -> 200 2026-04-30 04:55:41,116 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval/jobs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval_job_000002/logs/stderr -> 200 2026-04-30 04:55:43,345 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045458_788661_risk_courier_portal_20260430_045445_smoke -> 200 2026-04-30 04:55:43,370 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045458_788661_risk_courier_portal_20260430_045445_smoke/results -> 200 2026-04-30 04:55:50,591 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 04:56:21,311 INFO [battle_engine.api] GET /layouts -> 200 2026-04-30 04:56:21,577 INFO [battle_engine.api] GET /history -> 200 2026-04-30 04:56:22,421 INFO [battle_engine.api] GET /history -> 200 2026-04-30 04:56:23,930 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_045100 -> 200 2026-04-30 04:56:25,326 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_045100/source -> 200 2026-04-30 04:56:39,893 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045550_579079_risk_courier_portal_20260430_045445_candidate_eval -> 200 2026-04-30 04:56:39,921 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045550_579079_risk_courier_portal_20260430_045445_candidate_eval/results -> 200 2026-04-30 04:56:54,525 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045550_579079_risk_courier_portal_20260430_045445_candidate_eval/context-pack -> 200 2026-04-30 04:56:54,543 INFO [battle_engine.api] GET /api/v1/candidates/risk_courier_portal_20260430_045445 -> 200 2026-04-30 04:56:54,565 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:56:54,588 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:56:54,589 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:56:54,610 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 04:58:21,462 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000001/logs/stderr -> 200 2026-04-30 04:58:21,733 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke_job_000001/logs/stdout -> 200 2026-04-30 05:01:58,761 INFO [battle_engine.api] GET / -> 200 2026-04-30 05:01:58,766 INFO [battle_engine.api] GET / -> 200 2026-04-30 05:01:59,710 INFO [battle_engine.api] GET / -> 200 2026-04-30 05:02:00,188 INFO [battle_engine.api] GET / -> 200 2026-04-30 05:02:00,610 INFO [battle_engine.api] GET /history -> 200 2026-04-30 05:02:00,614 INFO [battle_engine.api] GET /candidates -> 200 2026-04-30 05:02:00,617 INFO [battle_engine.api] GET /debug -> 200 2026-04-30 05:02:00,617 INFO [battle_engine.api] GET /leaderboard -> 404 2026-04-30 05:02:00,623 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_095825 -> 200 2026-04-30 05:02:00,624 INFO [battle_engine.api] GET /leaderboard -> 404 2026-04-30 05:02:00,625 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 05:02:00,626 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_123920 -> 200 2026-04-30 05:02:00,631 INFO [battle_engine.api] GET /leaderboard -> 404 2026-04-30 05:02:00,655 INFO [battle_engine.api] GET /leaderboard -> 404 2026-04-30 05:02:00,669 INFO [battle_engine.api] GET /leaderboard -> 404 2026-04-30 05:02:00,676 INFO [battle_engine.api] GET /leaderboard -> 404 2026-04-30 05:02:00,698 INFO [battle_engine.api] GET /leaderboard -> 404 2026-04-30 05:02:00,738 INFO [battle_engine.api] GET /leaderboard -> 404 2026-04-30 05:02:00,748 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:02:00,770 INFO [battle_engine.api] GET /layouts -> 200 2026-04-30 05:02:00,784 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_095814 -> 200 2026-04-30 05:02:00,785 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_095819 -> 200 2026-04-30 05:02:00,789 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_095900 -> 200 2026-04-30 05:02:00,792 INFO [battle_engine.api] GET /runs/run_20260430_045108_834715_blended_roi_intercept_v01_20260430_045100_smoke -> 200 2026-04-30 05:02:00,793 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_100532 -> 200 2026-04-30 05:02:00,799 INFO [battle_engine.api] GET /runs/run_20260430_045458_788661_risk_courier_portal_20260430_045445_smoke -> 200 2026-04-30 05:02:00,801 INFO [battle_engine.api] GET /runs/run_20260430_045100_401988_risk_courier_portal_20260430_045048_smoke -> 200 2026-04-30 05:02:00,803 INFO [battle_engine.api] GET /runs/run_20260430_045042_629070_dead_end_avoidance_20260430_045031_smoke -> 200 2026-04-30 05:02:00,804 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133213 -> 200 2026-04-30 05:02:00,806 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133926 -> 200 2026-04-30 05:02:00,809 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_130902 -> 200 2026-04-30 05:02:00,840 INFO [battle_engine.api] GET /runs/run_20260430_045002_580656_invader_intercept_defense_20260430_134913_candidate_eval -> 200 2026-04-30 05:02:00,843 INFO [battle_engine.api] GET /runs/run_20260430_045303_336079_blended_roi_intercept_v01_20260430_045100_candidate_eval -> 200 2026-04-30 05:02:00,845 INFO [battle_engine.api] GET /runs/run_20260430_045257_075024_risk_courier_portal_20260430_045048_candidate_eval -> 200 2026-04-30 05:02:00,847 INFO [battle_engine.api] GET /runs/run_20260430_045550_579079_risk_courier_portal_20260430_045445_candidate_eval -> 200 2026-04-30 05:02:00,848 INFO [battle_engine.api] GET /runs/run_20260430_045103_190367_dead_end_avoidance_20260430_045031_candidate_eval -> 200 2026-04-30 05:02:00,856 INFO [battle_engine.api] GET /runs/run_20260430_045055_536677_invader_intercept_defense_20260430_134913_robustness -> 200 2026-04-30 05:02:01,339 INFO [battle_engine.api] GET /api/v1/candidates/food_roi_targeting_20260430_095825/source -> 200 2026-04-30 05:02:01,342 INFO [battle_engine.api] GET /leaderboard -> 404 2026-04-30 05:02:01,355 INFO [battle_engine.api] GET /leaderboard -> 404 2026-04-30 05:02:01,368 INFO [battle_engine.api] GET /leaderboard -> 404 2026-04-30 05:02:01,370 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_095825/source -> 200 2026-04-30 05:02:09,759 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 05:02:09,789 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:02:49,404 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_050209_780675_blended_roi_intercept_v01_20260430_050200_smoke -> 200 2026-04-30 05:02:49,430 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_050209_780675_blended_roi_intercept_v01_20260430_050200_smoke/results -> 200 2026-04-30 05:02:56,597 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:03:45,477 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_050256_585340_blended_roi_intercept_v01_20260430_050200_candidate_eval -> 200 2026-04-30 05:03:49,156 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_050256_585340_blended_roi_intercept_v01_20260430_050200_candidate_eval/results -> 200 2026-04-30 05:04:05,597 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_050200 -> 200 2026-04-30 05:04:05,675 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_050256_585340_blended_roi_intercept_v01_20260430_050200/context-pack -> 404 2026-04-30 05:04:08,475 INFO [battle_engine.api] GET / -> 200 2026-04-30 05:04:11,083 INFO [battle_engine.api] GET /history -> 200 2026-04-30 05:04:15,434 INFO [battle_engine.api] GET /history -> 200 2026-04-30 05:04:15,884 INFO [battle_engine.api] GET /history -> 200 2026-04-30 05:04:17,132 INFO [battle_engine.api] GET /layouts -> 200 2026-04-30 05:04:17,659 INFO [battle_engine.api] GET /history -> 200 2026-04-30 05:04:18,538 INFO [battle_engine.api] GET /debug -> 200 2026-04-30 05:04:19,153 INFO [battle_engine.api] GET /history -> 200 2026-04-30 05:04:21,905 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 05:04:45,664 INFO [battle_engine.api] GET /runs/run_20260430_050256_585340_blended_roi_intercept_v01_20260430_050200_candidate_eval -> 200 2026-04-30 05:04:48,846 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 05:04:49,548 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 05:04:51,301 INFO [battle_engine.api] GET /runs/run_20260430_050256_585340_blended_roi_intercept_v01_20260430_050200_candidate_eval -> 200 2026-04-30 05:04:53,679 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_050200 -> 200 2026-04-30 05:04:54,634 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_050200/source -> 200 2026-04-30 05:04:56,784 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_050200/source -> 200 2026-04-30 05:05:00,246 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_050256_585340_blended_roi_intercept_v01_20260430_050200_candidate_eval/context-pack -> 200 2026-04-30 05:06:04,728 INFO [battle_engine.api] GET / -> 200 2026-04-30 05:06:07,123 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:06:09,956 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_095819 -> 200 2026-04-30 05:06:11,637 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_095819/source -> 200 2026-04-30 05:06:12,935 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_095819/source -> 200 2026-04-30 05:07:39,280 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:07:39,900 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:07:40,459 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:07:40,913 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:08:07,400 INFO [battle_engine.api] GET /candidates -> 200 2026-04-30 05:08:27,326 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:08:28,105 INFO [battle_engine.api] GET / -> 200 2026-04-30 05:10:13,322 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_095819 -> 200 2026-04-30 05:10:13,916 INFO [battle_engine.api] GET /layouts -> 200 2026-04-30 05:10:14,487 INFO [battle_engine.api] GET /candidates -> 200 2026-04-30 05:10:15,226 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 05:10:15,791 INFO [battle_engine.api] GET /candidates -> 200 2026-04-30 05:10:16,624 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_050200 -> 200 2026-04-30 05:10:20,034 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:11:28,807 INFO [battle_engine.api] GET /api/v1/status -> 200 2026-04-30 05:11:59,510 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:12:14,591 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 05:12:17,693 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 05:12:21,342 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:12:53,806 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:12:54,393 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:12:54,912 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:12:56,440 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:12:57,051 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:12:57,681 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:12:58,206 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:12:58,756 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:12:59,262 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:13:00,308 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:13:00,832 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:13:01,518 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:13:02,085 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:13:02,612 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:13:03,163 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:13:04,412 INFO [battle_engine.api] GET /layouts -> 200 2026-04-30 05:13:05,294 INFO [battle_engine.api] GET /history -> 200 2026-04-30 05:13:06,242 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 05:13:07,207 INFO [battle_engine.api] GET /layouts -> 200 2026-04-30 05:13:08,464 INFO [battle_engine.api] GET /candidates -> 200 2026-04-30 05:13:21,029 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_050200/source -> 200 2026-04-30 05:14:37,013 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,024 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,034 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,043 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,053 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,063 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,072 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,082 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,092 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,102 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,112 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,122 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,132 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,142 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,151 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,161 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,170 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,180 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,190 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,200 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,211 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,222 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,232 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,243 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,252 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,261 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,270 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,279 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,288 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,297 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,307 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,317 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,327 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,337 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,355 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,366 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,376 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,386 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,396 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,406 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:14:37,692 INFO [battle_engine.api] GET /layouts -> 200 2026-04-30 05:14:38,619 INFO [battle_engine.api] GET /layouts -> 200 2026-04-30 05:14:39,016 INFO [battle_engine.api] GET /history -> 200 2026-04-30 05:14:39,685 INFO [battle_engine.api] GET /candidates -> 200 2026-04-30 05:14:45,026 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_050200 -> 200 2026-04-30 05:14:50,013 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_045445 -> 200 2026-04-30 05:14:51,928 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_045100 -> 200 2026-04-30 05:14:52,803 INFO [battle_engine.api] GET /api/v1/status -> 200 2026-04-30 05:14:56,327 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_050200 -> 200 2026-04-30 05:15:01,647 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_050200/source -> 200 2026-04-30 05:16:07,343 INFO [battle_engine.api] GET /api/v1/status -> 200 2026-04-30 05:16:19,595 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_051437_003769_risk_aware_courier_20260430_123920_candidate_eval -> 200 2026-04-30 05:16:29,465 INFO [battle_engine.api] GET /api/v1/status -> 200 2026-04-30 05:17:53,779 INFO [battle_engine.api] GET / -> 200 2026-04-30 05:26:30,621 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 05:26:35,815 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:26:36,910 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:26:38,586 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:26:42,002 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:26:42,410 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:26:42,789 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:26:43,580 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:26:45,192 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:26:45,636 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:26:46,386 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:26:46,778 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:26:47,422 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:26:48,099 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:26:48,602 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:26:49,347 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:26:58,658 INFO [battle_engine.api] GET /layouts -> 200 2026-04-30 05:26:59,453 INFO [battle_engine.api] GET /history -> 200 2026-04-30 05:27:36,389 INFO [battle_engine.api] GET /candidates -> 200 2026-04-30 05:27:37,674 INFO [battle_engine.api] GET /candidates -> 200 2026-04-30 05:27:38,405 INFO [battle_engine.api] GET /layouts -> 200 2026-04-30 05:27:38,744 INFO [battle_engine.api] GET /candidates -> 200 2026-04-30 05:27:41,959 INFO [battle_engine.api] GET /layouts -> 200 2026-04-30 05:27:42,419 INFO [battle_engine.api] GET /history -> 200 2026-04-30 05:27:42,872 INFO [battle_engine.api] GET /debug -> 200 2026-04-30 05:27:43,737 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:27:45,182 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:27:45,369 INFO [battle_engine.api] GET /api/v1/status -> 200 2026-04-30 05:27:45,853 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:28:26,451 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 05:28:34,398 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260429_183654 -> 200 2026-04-30 05:28:35,758 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260429_183654/source -> 200 2026-04-30 05:28:37,676 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260429_183654/source -> 200 2026-04-30 05:28:44,585 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:44,597 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:44,608 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:44,709 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:44,726 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:44,742 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:44,759 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:44,775 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:44,791 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:44,806 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:44,825 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:44,858 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:44,876 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:44,887 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:44,898 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:44,910 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 05:28:56,605 INFO [battle_engine.api] GET /api/v1/status -> 200 2026-04-30 05:29:31,651 INFO [battle_engine.api] GET / -> 200 2026-04-30 05:30:01,613 INFO [battle_engine.api] GET /api/v1/status -> 200 2026-04-30 05:37:56,883 INFO [battle_engine.api] GET / -> 200 2026-04-30 05:51:34,427 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260429_183654 -> 200 2026-04-30 05:51:34,944 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260429_183654 -> 200 2026-04-30 05:51:35,615 INFO [battle_engine.api] GET / -> 200 2026-04-30 05:51:36,649 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 05:51:38,396 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 05:51:38,929 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 05:57:29,391 INFO [battle_engine.api] GET /api/v1/status -> 200 2026-04-30 05:58:47,437 INFO [battle_engine.api] GET / -> 200 2026-04-30 05:58:47,440 INFO [battle_engine.api] GET / -> 200 2026-04-30 05:59:09,906 INFO [battle_engine.api] GET /api/v1/leaderboard -> 422 2026-04-30 05:59:10,016 INFO [battle_engine.api] GET /api/v1/status -> 200 2026-04-30 05:59:15,296 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 05:59:56,452 INFO [battle_engine.api] GET /leaderboard에서 -> 404 2026-04-30 05:59:57,394 INFO [battle_engine.api] GET /favicon.ico -> 404 2026-04-30 06:00:07,602 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:00:08,691 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:00:49,497 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:00:50,512 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:00:51,576 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:00:52,390 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:00:53,472 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:00:54,186 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:00:55,543 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:00:56,120 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:00:57,331 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:00:57,856 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:00:58,469 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:00:59,746 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:01:00,285 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:01:00,916 INFO [battle_engine.api] GET /robots.txt -> 404 2026-04-30 06:01:01,041 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:01:01,110 INFO [battle_engine.api] GET /candidates -> 200 2026-04-30 06:01:01,657 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:01:01,814 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:01:02,118 INFO [battle_engine.api] GET /debug -> 200 2026-04-30 06:01:04,414 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_043319 -> 200 2026-04-30 06:01:14,240 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 06:01:14,242 INFO [battle_engine.api] GET /history -> 200 2026-04-30 06:01:15,093 INFO [battle_engine.api] GET /layouts -> 200 2026-04-30 06:02:17,165 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:02:17,173 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:02:17,423 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:02:21,958 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:02:21,958 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:02:22,707 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:02:41,002 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_095900 -> 200 2026-04-30 06:02:41,035 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:02:41,314 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:02:51,911 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133926 -> 200 2026-04-30 06:02:51,912 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133213 -> 200 2026-04-30 06:02:52,578 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_123920 -> 200 2026-04-30 06:03:07,706 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_095819 -> 200 2026-04-30 06:03:07,708 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_130902 -> 200 2026-04-30 06:03:08,350 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_095814 -> 200 2026-04-30 06:03:42,951 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_095825 -> 200 2026-04-30 06:03:43,001 INFO [battle_engine.api] GET /runs/run_20260430_044155_242198_dead_end_avoidance_20260430_044124_candidate_eval -> 200 2026-04-30 06:03:43,179 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_100532 -> 200 2026-04-30 06:04:12,031 INFO [battle_engine.api] GET /runs/run_20260430_044449_961307_invader_intercept_defense_20260430_134124_robustness -> 200 2026-04-30 06:04:12,033 INFO [battle_engine.api] GET /runs/run_20260430_044301_094370_invader_intercept_defense_20260430_134124_candidate_eval -> 200 2026-04-30 06:04:13,229 INFO [battle_engine.api] GET /runs/run_20260430_044150_812338_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 06:04:14,227 INFO [battle_engine.api] GET /runs/run_20260430_044519_529977_blended_roi_intercept_v01_20260430_044344_candidate_eval -> 200 2026-04-30 06:04:14,228 INFO [battle_engine.api] GET /runs/run_20260430_044244_724629_dynamic_role_switching_20260430_134234_smoke -> 200 2026-04-30 06:04:31,674 INFO [battle_engine.api] GET /runs/run_20260430_044321_195153_risk_courier_portal_20260430_044132_candidate_eval -> 200 2026-04-30 06:04:31,674 INFO [battle_engine.api] GET /runs/run_20260430_044434_053567_dynamic_role_switching_20260430_134234_candidate_eval -> 200 2026-04-30 06:04:50,603 INFO [battle_engine.api] GET /runs/run_20260430_044358_157739_blended_roi_intercept_v01_20260430_044344_smoke -> 200 2026-04-30 06:04:50,669 INFO [battle_engine.api] GET /runs/run_20260430_044142_257903_invader_intercept_defense_20260430_134124_smoke -> 200 2026-04-30 06:12:30,947 INFO [battle_engine.api] GET / -> 200 2026-04-30 06:12:31,431 INFO [battle_engine.api] GET /favicon.ico -> 404 2026-04-30 06:12:36,925 INFO [battle_engine.api] GET / -> 200 2026-04-30 06:12:37,508 INFO [battle_engine.api] GET /favicon.ico -> 404 2026-04-30 06:13:40,633 INFO [battle_engine.api] GET /api/v1/leaderboard -> 422 2026-04-30 06:13:40,636 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_050200 -> 200 2026-04-30 06:13:40,653 INFO [battle_engine.api] GET /api/v1/leaderboard -> 422 2026-04-30 06:13:40,673 INFO [battle_engine.api] GET /api/v1/leaderboard -> 422 2026-04-30 06:13:40,694 INFO [battle_engine.api] GET /api/v1/leaderboard -> 422 2026-04-30 06:13:56,402 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:13:56,423 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:13:56,444 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:13:56,465 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:15:46,290 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 06:15:46,318 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 06:16:20,994 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_061546_310365_blended_roi_intercept_v01_20260430_061537_smoke -> 200 2026-04-30 06:16:21,034 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_061546_310365_blended_roi_intercept_v01_20260430_061537_smoke/results -> 200 2026-04-30 06:16:32,069 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 06:17:20,681 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_061632_057088_blended_roi_intercept_v01_20260430_061537_candidate_eval -> 200 2026-04-30 06:17:24,324 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_061632_057088_blended_roi_intercept_v01_20260430_061537_candidate_eval/results -> 200 2026-04-30 06:19:48,254 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:19:48,256 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:19:48,257 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:19:48,258 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:21:55,479 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 06:22:01,667 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 06:22:07,753 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062201_656608_blended_roi_intercept_v01_20260430_062144_smoke -> 200 2026-04-30 06:22:07,787 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062201_656608_blended_roi_intercept_v01_20260430_062144_smoke -> 200 2026-04-30 06:22:12,826 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062201_656608_blended_roi_intercept_v01_20260430_062144_smoke -> 200 2026-04-30 06:22:12,860 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062201_656608_blended_roi_intercept_v01_20260430_062144_smoke -> 200 2026-04-30 06:22:16,496 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062201_656608_blended_roi_intercept_v01_20260430_062144_smoke/results -> 200 2026-04-30 06:22:23,492 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 06:22:30,124 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062223_479601_blended_roi_intercept_v01_20260430_062144_candidate_eval -> 200 2026-04-30 06:22:30,165 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062223_479601_blended_roi_intercept_v01_20260430_062144_candidate_eval -> 200 2026-04-30 06:22:40,204 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062223_479601_blended_roi_intercept_v01_20260430_062144_candidate_eval -> 200 2026-04-30 06:22:40,239 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062223_479601_blended_roi_intercept_v01_20260430_062144_candidate_eval -> 200 2026-04-30 06:22:50,278 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062223_479601_blended_roi_intercept_v01_20260430_062144_candidate_eval -> 200 2026-04-30 06:22:50,312 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062223_479601_blended_roi_intercept_v01_20260430_062144_candidate_eval -> 200 2026-04-30 06:23:00,348 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062223_479601_blended_roi_intercept_v01_20260430_062144_candidate_eval -> 200 2026-04-30 06:23:00,380 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062223_479601_blended_roi_intercept_v01_20260430_062144_candidate_eval -> 200 2026-04-30 06:23:07,642 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062223_479601_blended_roi_intercept_v01_20260430_062144_candidate_eval/results -> 200 2026-04-30 06:23:07,644 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_062144 -> 200 2026-04-30 06:23:07,715 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062223_479601_blended_roi_intercept_v01_20260430_062144_candidate_eval/context-pack -> 200 2026-04-30 06:23:23,400 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 06:23:32,494 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness -> 200 2026-04-30 06:23:32,535 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness -> 200 2026-04-30 06:23:39,584 INFO [battle_engine.api] GET / -> 200 2026-04-30 06:23:40,895 INFO [battle_engine.api] GET / -> 200 2026-04-30 06:23:41,343 INFO [battle_engine.api] GET /favicon.ico -> 404 2026-04-30 06:23:42,224 INFO [battle_engine.api] GET / -> 200 2026-04-30 06:23:42,575 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness -> 200 2026-04-30 06:23:42,612 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness -> 200 2026-04-30 06:23:42,980 INFO [battle_engine.api] HEAD /favicon.ico -> 404 2026-04-30 06:23:52,657 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness -> 200 2026-04-30 06:23:52,697 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness -> 200 2026-04-30 06:24:02,734 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness -> 200 2026-04-30 06:24:02,767 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness -> 200 2026-04-30 06:24:11,122 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_062144 -> 200 2026-04-30 06:24:11,141 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness/results -> 200 2026-04-30 06:24:11,186 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness/context-pack -> 200 2026-04-30 06:24:22,710 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness/artifacts/results.jsonl -> 200 2026-04-30 06:24:22,728 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness/artifacts/summary.csv -> 200 2026-04-30 06:24:22,800 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:24:28,261 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_043319 -> 200 2026-04-30 06:24:29,456 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:24:29,563 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness/artifacts/results.jsonl -> 200 2026-04-30 06:24:36,996 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness/logs -> 404 2026-04-30 06:24:42,592 INFO [battle_engine.api] GET /openapi.json -> 200 2026-04-30 06:24:42,600 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness -> 200 2026-04-30 06:24:55,115 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness/jobs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness_job_000025 -> 200 2026-04-30 06:24:55,124 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness/jobs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness_job_000025/logs/stderr -> 200 2026-04-30 06:24:55,190 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness/jobs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness_job_000022/logs/stderr -> 200 2026-04-30 06:24:55,216 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness/jobs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness_job_000025/result -> 200 2026-04-30 06:25:34,517 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 06:25:39,801 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 06:25:44,468 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062539_790311_blended_roi_intercept_v01_20260430_062527_smoke -> 200 2026-04-30 06:25:49,506 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062539_790311_blended_roi_intercept_v01_20260430_062527_smoke -> 200 2026-04-30 06:25:57,493 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062539_790311_blended_roi_intercept_v01_20260430_062527_smoke/results -> 200 2026-04-30 06:25:57,496 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_062527 -> 200 2026-04-30 06:26:05,051 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 06:26:10,388 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062605_038439_blended_roi_intercept_v01_20260430_062527_candidate_eval -> 200 2026-04-30 06:26:10,423 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062605_038439_blended_roi_intercept_v01_20260430_062527_candidate_eval -> 200 2026-04-30 06:26:20,468 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062605_038439_blended_roi_intercept_v01_20260430_062527_candidate_eval -> 200 2026-04-30 06:26:20,509 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062605_038439_blended_roi_intercept_v01_20260430_062527_candidate_eval -> 200 2026-04-30 06:26:30,554 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062605_038439_blended_roi_intercept_v01_20260430_062527_candidate_eval -> 200 2026-04-30 06:26:30,594 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062605_038439_blended_roi_intercept_v01_20260430_062527_candidate_eval -> 200 2026-04-30 06:26:40,633 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062605_038439_blended_roi_intercept_v01_20260430_062527_candidate_eval -> 200 2026-04-30 06:26:40,666 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062605_038439_blended_roi_intercept_v01_20260430_062527_candidate_eval -> 200 2026-04-30 06:26:48,824 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062605_038439_blended_roi_intercept_v01_20260430_062527_candidate_eval/results -> 200 2026-04-30 06:26:48,826 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_062527 -> 200 2026-04-30 06:26:48,890 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_062605_038439_blended_roi_intercept_v01_20260430_062527_candidate_eval/context-pack -> 200 2026-04-30 06:27:46,005 INFO [battle_engine.api] GET / -> 200 2026-04-30 06:28:01,017 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:28:01,061 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:28:01,083 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:28:01,106 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:28:01,129 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:31:26,359 INFO [battle_engine.api] POST /api/v1/candidates -> 200 2026-04-30 06:31:32,491 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 06:31:37,318 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_063132_480983_blended_roi_intercept_v01_20260430_063119_smoke -> 200 2026-04-30 06:31:42,356 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_063132_480983_blended_roi_intercept_v01_20260430_063119_smoke -> 200 2026-04-30 06:31:48,524 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_063132_480983_blended_roi_intercept_v01_20260430_063119_smoke/results -> 200 2026-04-30 06:31:48,526 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_063119 -> 200 2026-04-30 06:31:57,300 INFO [battle_engine.api] POST /api/v1/runs -> 200 2026-04-30 06:32:02,953 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_063157_287809_blended_roi_intercept_v01_20260430_063119_candidate_eval -> 200 2026-04-30 06:32:03,009 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_063157_287809_blended_roi_intercept_v01_20260430_063119_candidate_eval -> 200 2026-04-30 06:32:13,055 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_063157_287809_blended_roi_intercept_v01_20260430_063119_candidate_eval -> 200 2026-04-30 06:32:13,095 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_063157_287809_blended_roi_intercept_v01_20260430_063119_candidate_eval -> 200 2026-04-30 06:32:23,133 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_063157_287809_blended_roi_intercept_v01_20260430_063119_candidate_eval -> 200 2026-04-30 06:32:23,166 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_063157_287809_blended_roi_intercept_v01_20260430_063119_candidate_eval -> 200 2026-04-30 06:32:33,204 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_063157_287809_blended_roi_intercept_v01_20260430_063119_candidate_eval -> 200 2026-04-30 06:32:33,238 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_063157_287809_blended_roi_intercept_v01_20260430_063119_candidate_eval -> 200 2026-04-30 06:32:41,023 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_063157_287809_blended_roi_intercept_v01_20260430_063119_candidate_eval/results -> 200 2026-04-30 06:32:41,027 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_063119 -> 200 2026-04-30 06:32:41,052 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_063157_287809_blended_roi_intercept_v01_20260430_063119_candidate_eval/context-pack -> 200 2026-04-30 06:34:01,095 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:34:01,119 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:34:01,142 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:34:01,152 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_063119 -> 200 2026-04-30 06:34:01,165 INFO [battle_engine.api] GET /api/v1/leaderboard -> 200 2026-04-30 06:34:55,093 INFO [battle_engine.api] GET / -> 200 2026-04-30 06:39:13,021 INFO [battle_engine.api] GET / -> 200 2026-04-30 06:41:34,488 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:41:42,388 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_043319/source -> 200 2026-04-30 06:41:49,316 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_043319/source -> 200 2026-04-30 06:42:02,783 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_063119/source -> 200 2026-04-30 06:42:07,992 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_044344/source -> 200 2026-04-30 06:42:10,956 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_043319/source -> 200 2026-04-30 06:42:39,987 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_123920/source -> 200 2026-04-30 06:42:47,467 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:48,522 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:49,098 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:49,768 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:51,869 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:52,416 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:52,932 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:53,410 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:53,815 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:54,217 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:54,726 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:55,031 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:55,414 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:56,919 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:57,401 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:57,853 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:58,252 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:42:58,771 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 06:43:01,836 ERROR [battle_engine.api] GET /leaderboard failed Traceback (most recent call last): File "/app/battle_engine/api.py", line 59, in log_requests response = await call_next(request) File "/usr/local/lib/python3.9/site-packages/starlette/middleware/base.py", line 168, in call_next raise app_exc from app_exc.__cause__ or app_exc.__context__ File "/usr/local/lib/python3.9/site-packages/starlette/middleware/base.py", line 144, in coro await self.app(scope, receive_or_disconnect, send_no_error) File "/usr/local/lib/python3.9/site-packages/starlette/middleware/exceptions.py", line 63, in __call__ await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app raise exc File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app await app(scope, receive, sender) File "/usr/local/lib/python3.9/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__ await self.app(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 716, in __call__ await self.middleware_stack(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 736, in app await route.handle(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 290, in handle await self.app(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 121, in app await wrap_app_handling_exceptions(app, request)(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app raise exc File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app await app(scope, receive, sender) File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 107, in app response = await f(request) File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 426, in app raw_response = await run_endpoint_function( File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 316, in run_endpoint_function return await run_in_threadpool(dependant.call, **values) File "/usr/local/lib/python3.9/site-packages/starlette/concurrency.py", line 38, in run_in_threadpool return await anyio.to_thread.run_sync(func) File "/usr/local/lib/python3.9/site-packages/anyio/to_thread.py", line 63, in run_sync return await get_async_backend().run_sync_in_worker_thread( File "/usr/local/lib/python3.9/site-packages/anyio/_backends/_asyncio.py", line 2502, in run_sync_in_worker_thread return await future File "/usr/local/lib/python3.9/site-packages/anyio/_backends/_asyncio.py", line 986, in run result = context.run(func, *args) File "/app/battle_engine/api.py", line 985, in leaderboard_page entries = _leaderboard(layout, 50, active_only=not history, official_only=not history, include_archived=history, include_smoke=history, candidate_kind=None if history else "strategy") File "/app/battle_engine/api.py", line 169, in _leaderboard validate_layout(layout) File "/app/battle_engine/validation.py", line 49, in validate_layout raise ValueError(f"unknown layout: {layout}") ValueError: unknown layout: global 2026-04-30 06:43:03,728 ERROR [battle_engine.api] GET /leaderboard failed Traceback (most recent call last): File "/app/battle_engine/api.py", line 59, in log_requests response = await call_next(request) File "/usr/local/lib/python3.9/site-packages/starlette/middleware/base.py", line 168, in call_next raise app_exc from app_exc.__cause__ or app_exc.__context__ File "/usr/local/lib/python3.9/site-packages/starlette/middleware/base.py", line 144, in coro await self.app(scope, receive_or_disconnect, send_no_error) File "/usr/local/lib/python3.9/site-packages/starlette/middleware/exceptions.py", line 63, in __call__ await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app raise exc File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app await app(scope, receive, sender) File "/usr/local/lib/python3.9/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__ await self.app(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 716, in __call__ await self.middleware_stack(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 736, in app await route.handle(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 290, in handle await self.app(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 121, in app await wrap_app_handling_exceptions(app, request)(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app raise exc File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app await app(scope, receive, sender) File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 107, in app response = await f(request) File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 426, in app raw_response = await run_endpoint_function( File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 316, in run_endpoint_function return await run_in_threadpool(dependant.call, **values) File "/usr/local/lib/python3.9/site-packages/starlette/concurrency.py", line 38, in run_in_threadpool return await anyio.to_thread.run_sync(func) File "/usr/local/lib/python3.9/site-packages/anyio/to_thread.py", line 63, in run_sync return await get_async_backend().run_sync_in_worker_thread( File "/usr/local/lib/python3.9/site-packages/anyio/_backends/_asyncio.py", line 2502, in run_sync_in_worker_thread return await future File "/usr/local/lib/python3.9/site-packages/anyio/_backends/_asyncio.py", line 986, in run result = context.run(func, *args) File "/app/battle_engine/api.py", line 985, in leaderboard_page entries = _leaderboard(layout, 50, active_only=not history, official_only=not history, include_archived=history, include_smoke=history, candidate_kind=None if history else "strategy") File "/app/battle_engine/api.py", line 169, in _leaderboard validate_layout(layout) File "/app/battle_engine/validation.py", line 49, in validate_layout raise ValueError(f"unknown layout: {layout}") ValueError: unknown layout: global 2026-04-30 06:43:05,453 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_043319/source -> 200 2026-04-30 07:13:35,352 INFO [battle_engine.api] GET /robots.txt -> 404 2026-04-30 07:13:35,542 INFO [battle_engine.api] GET /candidates/dead_end_avoidance_20260430_045031 -> 200 2026-04-30 07:13:36,042 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_183111 -> 200 2026-04-30 07:13:36,541 INFO [battle_engine.api] GET /candidates/dead_end_avoidance_20260430_034158 -> 200 2026-04-30 07:13:37,057 INFO [battle_engine.api] GET /candidates/dead_end_avoidance_20260430_045031/source -> 200 2026-04-30 07:13:37,545 INFO [battle_engine.api] GET /candidates/dead_end_avoidance_20260430_034351 -> 200 2026-04-30 07:13:38,116 INFO [battle_engine.api] GET /candidates/dead_end_avoidance_20260430_034351/source -> 200 2026-04-30 07:13:38,605 INFO [battle_engine.api] GET /candidates/dead_end_avoidance_20260430_044124 -> 200 2026-04-30 07:13:38,918 INFO [battle_engine.api] GET /candidates/dead_end_avoidance_20260430_044124/source -> 200 2026-04-30 07:13:39,204 INFO [battle_engine.api] GET /candidates/smoke_your_best -> 200 2026-04-30 07:13:39,507 INFO [battle_engine.api] GET /candidates/remote_smoke_baseline1 -> 200 2026-04-30 07:13:39,810 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 07:13:40,155 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 07:13:40,459 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 07:13:40,636 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 07:13:40,862 INFO [battle_engine.api] GET /candidates -> 200 2026-04-30 07:13:41,088 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 07:13:41,312 ERROR [battle_engine.api] GET /leaderboard failed Traceback (most recent call last): File "/app/battle_engine/api.py", line 59, in log_requests response = await call_next(request) File "/usr/local/lib/python3.9/site-packages/starlette/middleware/base.py", line 168, in call_next raise app_exc from app_exc.__cause__ or app_exc.__context__ File "/usr/local/lib/python3.9/site-packages/starlette/middleware/base.py", line 144, in coro await self.app(scope, receive_or_disconnect, send_no_error) File "/usr/local/lib/python3.9/site-packages/starlette/middleware/exceptions.py", line 63, in __call__ await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app raise exc File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app await app(scope, receive, sender) File "/usr/local/lib/python3.9/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__ await self.app(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 716, in __call__ await self.middleware_stack(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 736, in app await route.handle(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 290, in handle await self.app(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 121, in app await wrap_app_handling_exceptions(app, request)(scope, receive, send) File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app raise exc File "/usr/local/lib/python3.9/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app await app(scope, receive, sender) File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 107, in app response = await f(request) File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 426, in app raw_response = await run_endpoint_function( File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 316, in run_endpoint_function return await run_in_threadpool(dependant.call, **values) File "/usr/local/lib/python3.9/site-packages/starlette/concurrency.py", line 38, in run_in_threadpool return await anyio.to_thread.run_sync(func) File "/usr/local/lib/python3.9/site-packages/anyio/to_thread.py", line 63, in run_sync return await get_async_backend().run_sync_in_worker_thread( File "/usr/local/lib/python3.9/site-packages/anyio/_backends/_asyncio.py", line 2502, in run_sync_in_worker_thread return await future File "/usr/local/lib/python3.9/site-packages/anyio/_backends/_asyncio.py", line 986, in run result = context.run(func, *args) File "/app/battle_engine/api.py", line 985, in leaderboard_page entries = _leaderboard(layout, 50, active_only=not history, official_only=not history, include_archived=history, include_smoke=history, candidate_kind=None if history else "strategy") File "/app/battle_engine/api.py", line 169, in _leaderboard validate_layout(layout) File "/app/battle_engine/validation.py", line 49, in validate_layout raise ValueError(f"unknown layout: {layout}") ValueError: unknown layout: global 2026-04-30 07:13:41,587 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 07:13:41,767 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 07:13:42,039 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 07:13:42,225 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 07:13:42,491 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 07:13:42,717 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 07:13:42,943 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 07:13:43,170 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 07:13:43,383 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 07:13:43,573 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 07:13:43,800 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 07:13:44,027 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 07:13:55,332 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260429_192501 -> 200 2026-04-30 07:13:55,333 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_184025 -> 200 2026-04-30 07:13:55,348 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260429_183140/source -> 200 2026-04-30 07:13:55,348 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_134644/source -> 200 2026-04-30 07:13:55,591 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_094240 -> 200 2026-04-30 07:13:55,827 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_100138/source -> 200 2026-04-30 07:13:56,041 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_183418 -> 200 2026-04-30 07:13:56,349 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_183539 -> 200 2026-04-30 07:13:56,643 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_191156 -> 200 2026-04-30 07:13:56,944 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_123510 -> 200 2026-04-30 07:13:57,247 INFO [battle_engine.api] GET /candidates/capsule_power_play_20260430_044100 -> 200 2026-04-30 07:13:57,546 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_191617 -> 200 2026-04-30 07:13:57,849 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_093757 -> 200 2026-04-30 07:13:58,073 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_123022 -> 200 2026-04-30 07:13:58,350 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_191842 -> 200 2026-04-30 07:13:58,537 INFO [battle_engine.api] GET /candidates/capsule_power_play_20260430_043232/source -> 200 2026-04-30 07:13:58,752 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133602 -> 200 2026-04-30 07:13:58,982 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_095517 -> 200 2026-04-30 07:13:59,206 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_094857 -> 200 2026-04-30 07:13:59,406 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260429_192033/source -> 200 2026-04-30 07:13:59,572 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_123736 -> 200 2026-04-30 07:13:59,768 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133926/source -> 200 2026-04-30 07:13:59,936 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_100139 -> 200 2026-04-30 07:14:00,131 INFO [battle_engine.api] GET /candidates/capsule_power_play_20260430_044100/source -> 200 2026-04-30 07:14:00,313 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_123920/source -> 200 2026-04-30 07:14:00,495 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133213/source -> 200 2026-04-30 07:14:00,645 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133602/source -> 200 2026-04-30 07:14:00,785 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_192041 -> 200 2026-04-30 07:14:00,949 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_095900/source -> 200 2026-04-30 07:14:13,551 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_094833 -> 200 2026-04-30 07:14:13,552 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_130855 -> 200 2026-04-30 07:14:13,553 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_100138 -> 200 2026-04-30 07:14:13,565 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_094125/source -> 200 2026-04-30 07:14:13,566 INFO [battle_engine.api] GET /candidates/capsule_power_play_20260430_033723/source -> 200 2026-04-30 07:14:13,566 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260429_191845/source -> 200 2026-04-30 07:14:13,844 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_095819/source -> 200 2026-04-30 07:14:13,981 INFO [battle_engine.api] GET /candidates/capsule_power_play_20260430_043232 -> 200 2026-04-30 07:14:14,132 INFO [battle_engine.api] GET /candidates/smoke_baseline1_20260429_085822 -> 200 2026-04-30 07:14:14,296 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_130902/source -> 200 2026-04-30 07:14:14,488 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_124107/source -> 200 2026-04-30 07:14:14,598 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_043000/source -> 200 2026-04-30 07:14:14,750 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260429_191434/source -> 200 2026-04-30 07:14:14,902 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260429_183654/source -> 200 2026-04-30 07:14:15,030 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_133703/source -> 200 2026-04-30 07:14:15,159 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_133157/source -> 200 2026-04-30 07:14:15,276 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_123802 -> 200 2026-04-30 07:14:15,419 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_134124/source -> 200 2026-04-30 07:14:15,550 INFO [battle_engine.api] GET /candidates/capsule_power_play_20260430_043040/source -> 200 2026-04-30 07:14:15,680 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_094605/source -> 200 2026-04-30 07:14:15,793 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_133803/source -> 200 2026-04-30 07:14:15,907 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_095422/source -> 200 2026-04-30 07:14:16,019 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_133142/source -> 200 2026-04-30 07:14:16,118 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260429_192033 -> 200 2026-04-30 07:14:16,246 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_100617/source -> 200 2026-04-30 07:14:16,357 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_124314/source -> 200 2026-04-30 07:14:16,461 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_095814/source -> 200 2026-04-30 07:14:16,562 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_044132/source -> 200 2026-04-30 07:14:16,659 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_134234/source -> 200 2026-04-30 07:14:21,626 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_100812 -> 200 2026-04-30 07:14:21,629 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_094608 -> 200 2026-04-30 07:14:21,629 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260429_191559 -> 200 2026-04-30 07:14:21,630 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_133803 -> 200 2026-04-30 07:14:21,631 INFO [battle_engine.api] GET /candidates/capsule_power_play_20260430_043040 -> 200 2026-04-30 07:14:21,631 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_094605 -> 200 2026-04-30 07:14:21,662 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_095422 -> 200 2026-04-30 07:14:21,761 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_133703 -> 200 2026-04-30 07:14:21,862 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_124513 -> 200 2026-04-30 07:14:21,964 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_133142 -> 200 2026-04-30 07:14:22,065 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_093802 -> 200 2026-04-30 07:14:22,166 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_094830 -> 200 2026-04-30 07:14:22,266 INFO [battle_engine.api] GET /candidates/capsule_power_play_20260430_033142 -> 200 2026-04-30 07:14:22,367 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_094053 -> 200 2026-04-30 07:14:22,468 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_124314 -> 200 2026-04-30 07:14:22,586 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260429_192235 -> 200 2026-04-30 07:14:22,671 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_100617 -> 200 2026-04-30 07:14:22,771 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_123120 -> 200 2026-04-30 07:14:22,872 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_100338 -> 200 2026-04-30 07:14:23,003 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_044344/source -> 200 2026-04-30 07:14:23,075 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_134234 -> 200 2026-04-30 07:14:23,174 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_123355 -> 200 2026-04-30 07:14:23,275 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_093820 -> 200 2026-04-30 07:14:23,377 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_044132 -> 200 2026-04-30 07:14:23,478 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_100026 -> 200 2026-04-30 07:14:23,577 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_134644 -> 200 2026-04-30 07:14:23,691 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_134913/source -> 200 2026-04-30 07:14:23,780 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260429_183140 -> 200 2026-04-30 07:14:23,894 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260429_183934/source -> 200 2026-04-30 07:15:07,137 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_045100 -> 200 2026-04-30 07:15:07,137 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_042630 -> 200 2026-04-30 07:15:07,139 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_045048 -> 200 2026-04-30 07:15:07,150 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_094042/source -> 200 2026-04-30 07:15:07,151 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_043319/source -> 200 2026-04-30 07:15:07,183 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_043722/source -> 200 2026-04-30 07:15:07,285 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_050200/source -> 200 2026-04-30 07:15:07,385 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_100303/source -> 200 2026-04-30 07:15:07,485 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_123407/source -> 200 2026-04-30 07:15:07,589 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_100532/source -> 200 2026-04-30 07:15:07,675 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_134913 -> 200 2026-04-30 07:15:07,776 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_044344 -> 200 2026-04-30 07:15:07,879 INFO [battle_engine.api] GET /candidates/capsule_power_play_20260430_033723 -> 200 2026-04-30 07:15:07,976 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260429_183934 -> 200 2026-04-30 07:15:08,091 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_045445/source -> 200 2026-04-30 07:15:08,179 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_094125 -> 200 2026-04-30 07:15:08,282 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_095327 -> 200 2026-04-30 07:15:08,383 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_124107 -> 200 2026-04-30 07:15:08,483 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260429_183654 -> 200 2026-04-30 07:15:08,586 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_043000 -> 200 2026-04-30 07:15:08,686 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260429_191434 -> 200 2026-04-30 07:15:08,801 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_044551/source -> 200 2026-04-30 07:15:08,888 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260429_191845 -> 200 2026-04-30 07:15:09,002 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_045100/source -> 200 2026-04-30 07:15:09,106 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_043416/source -> 200 2026-04-30 07:15:09,189 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_133157 -> 200 2026-04-30 07:15:09,291 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_134124 -> 200 2026-04-30 07:15:09,405 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_045048/source -> 200 2026-04-30 07:15:09,494 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_123336 -> 200 2026-04-30 07:15:29,780 INFO [battle_engine.api] GET /candidates/portal_planner_defense_20260430_123030 -> 200 2026-04-30 07:15:29,782 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260429_183132 -> 200 2026-04-30 07:15:29,784 INFO [battle_engine.api] GET /candidates/portal_planner_defense_20260430_094615 -> 200 2026-04-30 07:15:29,784 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_130851 -> 200 2026-04-30 07:15:29,785 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_094618 -> 200 2026-04-30 07:15:29,786 INFO [battle_engine.api] GET /candidates/portal_planner_defense_20260430_095235 -> 200 2026-04-30 07:15:29,786 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_123906 -> 200 2026-04-30 07:15:29,796 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260429_183730/source -> 200 2026-04-30 07:15:29,796 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260429_191350/source -> 200 2026-04-30 07:15:29,824 INFO [battle_engine.api] GET /runs/run_20260430_045103_190367_dead_end_avoidance_20260430_045031_candidate_eval -> 200 2026-04-30 07:15:30,058 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_094042 -> 200 2026-04-30 07:15:30,160 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_095526 -> 200 2026-04-30 07:15:30,262 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_094823 -> 200 2026-04-30 07:15:30,365 INFO [battle_engine.api] GET /candidates/portal_planner_defense_20260430_100321 -> 200 2026-04-30 07:15:30,465 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_043319 -> 200 2026-04-30 07:15:30,564 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_050200 -> 200 2026-04-30 07:15:30,666 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_100303 -> 200 2026-04-30 07:15:30,766 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_095228 -> 200 2026-04-30 07:15:30,867 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_043722 -> 200 2026-04-30 07:15:30,967 INFO [battle_engine.api] GET /candidates/portal_planner_defense_20260430_100806 -> 200 2026-04-30 07:15:31,083 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260430_094200/source -> 200 2026-04-30 07:15:31,170 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_100058 -> 200 2026-04-30 07:15:31,271 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_123407 -> 200 2026-04-30 07:15:31,374 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_045445 -> 200 2026-04-30 07:15:31,484 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_095825/source -> 200 2026-04-30 07:15:31,587 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_123906/source -> 200 2026-04-30 07:15:31,674 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_044551 -> 200 2026-04-30 07:15:31,776 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_043416 -> 200 2026-04-30 07:15:31,877 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_042826 -> 200 2026-04-30 07:15:36,176 INFO [battle_engine.api] GET /runs/run_20260430_034210_272100_dead_end_avoidance_20260430_034158_smoke -> 200 2026-04-30 07:15:36,178 INFO [battle_engine.api] GET /runs/run_20260430_034402_710644_dead_end_avoidance_20260430_034351_smoke -> 200 2026-04-30 07:15:36,178 INFO [battle_engine.api] GET /runs/run_20260430_010656_448794_invader_intercept_defense_20260430_100617_candidate_eval -> 200 2026-04-30 07:15:36,179 INFO [battle_engine.api] GET /runs/run_20260430_043242_187982_risk_aware_courier_20260430_133213_candidate_eval -> 200 2026-04-30 07:15:36,179 INFO [battle_engine.api] GET /runs/run_20260430_033819_436115_dynamic_role_switching_20260430_123736_candidate_eval -> 200 2026-04-30 07:15:36,179 INFO [battle_engine.api] GET /runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness -> 200 2026-04-30 07:15:36,190 INFO [battle_engine.api] GET /runs/run_20260430_051437_003769_risk_aware_courier_20260430_123920_candidate_eval -> 200 2026-04-30 07:15:36,191 INFO [battle_engine.api] GET /runs/run_20260430_051437_095607_risk_aware_courier_20260430_133602_candidate_eval -> 200 2026-04-30 07:15:36,202 INFO [battle_engine.api] GET /runs/run_20260430_034020_218342_risk_aware_courier_20260430_123920_candidate_eval -> 200 2026-04-30 07:15:36,204 INFO [battle_engine.api] GET /runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness -> 200 2026-04-30 07:15:36,445 INFO [battle_engine.api] GET /runs/run_20260430_052844_864469_dead_end_avoidance_20260430_045031_candidate_eval -> 200 2026-04-30 07:15:36,639 INFO [battle_engine.api] GET /runs/run_20260430_033647_345892_risk_aware_courier_20260430_123510_candidate_eval -> 200 2026-04-30 07:15:36,743 INFO [battle_engine.api] GET /runs/run_20260430_051437_065986_risk_aware_courier_20260430_095900_candidate_eval -> 200 2026-04-30 07:15:36,843 INFO [battle_engine.api] GET /runs/run_20260430_043637_533437_risk_aware_courier_20260430_133602_candidate_eval -> 200 2026-04-30 07:15:36,944 INFO [battle_engine.api] GET /runs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke -> 200 2026-04-30 07:15:37,042 INFO [battle_engine.api] GET /runs/run_20260430_034233_279671_dead_end_avoidance_20260430_034158_candidate_eval -> 200 2026-04-30 07:15:37,241 INFO [battle_engine.api] GET /runs/run_20260430_034419_364283_dead_end_avoidance_20260430_034351_candidate_eval -> 200 2026-04-30 07:15:37,347 INFO [battle_engine.api] GET /runs/run_20260430_040900_855429_dead_end_avoidance_20260430_034351_candidate_eval -> 200 2026-04-30 07:15:37,400 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260429_183730 -> 200 2026-04-30 07:15:37,554 INFO [battle_engine.api] GET /runs/run_20260430_051437_330220_dead_end_avoidance_20260430_034351_candidate_eval -> 200 2026-04-30 07:15:37,651 INFO [battle_engine.api] GET /runs/run_20260430_044136_592778_dead_end_avoidance_20260430_044124_smoke -> 200 2026-04-30 07:15:37,722 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260429_191350 -> 200 2026-04-30 07:15:37,805 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260429_183526 -> 200 2026-04-30 07:15:37,905 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260430_093913 -> 200 2026-04-30 07:15:38,061 INFO [battle_engine.api] GET /runs/run_20260430_051437_339920_dead_end_avoidance_20260430_044124_candidate_eval -> 200 2026-04-30 07:15:38,108 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260429_192100 -> 200 2026-04-30 07:15:38,207 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260430_093714 -> 200 2026-04-30 07:15:38,312 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260430_094200 -> 200 2026-04-30 07:15:49,503 INFO [battle_engine.api] GET /runs/run_20260430_043223_354772_risk_aware_courier_20260430_133213_smoke -> 200 2026-04-30 07:15:49,505 INFO [battle_engine.api] GET /runs/run_20260430_033635_645704_dynamic_role_switching_20260430_123355_candidate_eval -> 200 2026-04-30 07:15:49,506 INFO [battle_engine.api] GET /runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke -> 200 2026-04-30 07:15:49,506 INFO [battle_engine.api] GET /runs/run_20260430_044142_794785_risk_courier_portal_20260430_044132_smoke -> 200 2026-04-30 07:15:49,506 INFO [battle_engine.api] GET /runs/run_20260430_043032_872992_risk_courier_portal_20260430_043000_candidate_eval -> 200 2026-04-30 07:15:49,510 INFO [battle_engine.api] GET /runs/run_20260430_052844_779692_risk_courier_portal_20260430_044132_candidate_eval -> 200 2026-04-30 07:15:49,523 INFO [battle_engine.api] GET /runs/run_20260430_034603_389863_dynamic_role_switching_20260430_124513_candidate_eval -> 200 2026-04-30 07:15:49,625 INFO [battle_engine.api] GET /runs/run_20260430_051437_225321_dynamic_role_switching_20260429_192033_candidate_eval -> 200 2026-04-30 07:15:49,718 INFO [battle_engine.api] GET /runs/run_20260430_043345_129045_capsule_power_play_20260430_043232_candidate_eval -> 200 2026-04-30 07:15:49,825 INFO [battle_engine.api] GET /runs/run_20260430_051437_300074_blended_roi_intercept_v01_20260430_044344_candidate_eval -> 200 2026-04-30 07:15:49,923 INFO [battle_engine.api] GET /runs/run_20260430_041026_791265_dynamic_role_switching_20260430_130855_candidate_eval -> 200 2026-04-30 07:15:50,016 INFO [battle_engine.api] GET /runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness -> 200 2026-04-30 07:15:50,120 INFO [battle_engine.api] GET /runs/run_20260430_033032_168785_risk_aware_courier_20260430_123022_smoke -> 200 2026-04-30 07:15:50,223 INFO [battle_engine.api] GET /runs/run_20260430_033746_277743_dynamic_role_switching_20260430_123736_smoke -> 200 2026-04-30 07:15:50,328 INFO [battle_engine.api] GET /runs/run_20260430_010428_491970_invader_intercept_defense_20260430_100338_candidate_eval -> 200 2026-04-30 07:15:50,430 INFO [battle_engine.api] GET /runs/run_20260430_051437_036967_risk_aware_courier_20260430_133926_candidate_eval -> 200 2026-04-30 07:15:50,632 INFO [battle_engine.api] GET /runs/run_20260430_033105_192788_dynamic_role_switching_20260430_094833_candidate_eval -> 200 2026-04-30 07:15:50,726 INFO [battle_engine.api] GET /runs/run_20260430_044114_124724_capsule_power_play_20260430_044100_smoke -> 200 2026-04-30 07:15:50,838 INFO [battle_engine.api] GET /runs/run_20260430_052844_763637_capsule_power_play_20260430_044100_candidate_eval -> 200 2026-04-30 07:15:50,942 INFO [battle_engine.api] GET /runs/run_20260430_041021_640783_risk_aware_courier_20260430_123920_candidate_eval -> 200 2026-04-30 07:15:51,070 INFO [battle_engine.api] GET /runs/run_20260430_034404_557461_dynamic_role_switching_20260430_124314_candidate_eval -> 200 2026-04-30 07:15:51,127 INFO [battle_engine.api] GET /runs/run_20260430_033809_171685_risk_aware_courier_20260430_100139_layout_top_k -> 200 2026-04-30 07:15:51,235 INFO [battle_engine.api] GET /runs/run_20260430_043612_436788_risk_aware_courier_20260430_133602_smoke -> 200 2026-04-30 07:15:51,332 INFO [battle_engine.api] GET /runs/run_20260430_045042_629070_dead_end_avoidance_20260430_045031_smoke -> 200 2026-04-30 07:15:51,445 INFO [battle_engine.api] GET /runs/run_20260430_033111_479546_risk_aware_courier_20260430_123022_smoke -> 200 2026-04-30 07:15:51,544 INFO [battle_engine.api] GET /runs/run_20260430_051437_027102_risk_aware_courier_20260430_133213_candidate_eval -> 200 2026-04-30 07:15:51,641 INFO [battle_engine.api] GET /runs/run_20260430_044049_955447_risk_aware_courier_20260430_133926_candidate_eval -> 200 2026-04-30 07:15:51,743 INFO [battle_engine.api] GET /runs/run_20260430_041152_815235_risk_aware_courier_20260430_123920_robustness -> 200 2026-04-30 07:16:15,689 INFO [battle_engine.api] GET /runs/run_20260430_033937_397420_invader_intercept_defense_20260430_123802_candidate_eval -> 200 2026-04-30 07:16:15,708 INFO [battle_engine.api] GET /runs/run_20260430_043125_107743_capsule_power_play_20260430_043040_candidate_eval -> 200 2026-04-30 07:16:15,710 INFO [battle_engine.api] GET /runs/run_20260430_033727_455115_risk_aware_courier_20260430_123510_layout_top_k -> 200 2026-04-30 07:16:15,731 INFO [battle_engine.api] GET /runs/run_20260430_041242_016596_invader_intercept_defense_20260430_130902_robustness -> 200 2026-04-30 07:16:15,857 INFO [battle_engine.api] GET /runs/run_20260430_051437_193110_dynamic_role_switching_20260430_100138_candidate_eval -> 200 2026-04-30 07:16:15,863 INFO [battle_engine.api] GET /runs/run_20260430_051437_214580_invader_intercept_defense_20260430_124107_candidate_eval -> 200 2026-04-30 07:16:15,865 INFO [battle_engine.api] GET /runs/run_20260430_051437_272965_invader_intercept_defense_20260429_191845_candidate_eval -> 200 2026-04-30 07:16:15,873 INFO [battle_engine.api] GET /runs/run_20260430_052844_600592_capsule_power_play_20260430_043232_candidate_eval -> 200 2026-04-30 07:16:15,875 INFO [battle_engine.api] GET /runs/run_20260430_052844_795382_dynamic_role_switching_20260430_134234_candidate_eval -> 200 2026-04-30 07:16:15,876 INFO [battle_engine.api] GET /runs/run_20260430_051437_115151_invader_intercept_defense_20260430_133703_candidate_eval -> 200 2026-04-30 07:16:16,065 INFO [battle_engine.api] GET /runs/run_20260430_051437_105134_invader_intercept_defense_20260430_133157_candidate_eval -> 200 2026-04-30 07:16:16,277 INFO [battle_engine.api] GET /runs/run_20260430_051437_085330_dynamic_role_switching_20260430_095814_candidate_eval -> 200 2026-04-30 07:16:16,370 INFO [battle_engine.api] GET /runs/run_20260430_045002_580656_invader_intercept_defense_20260430_134913_candidate_eval -> 200 2026-04-30 07:16:17,011 INFO [battle_engine.api] GET /runs/run_20260430_052844_841120_dynamic_role_switching_20260430_134644_candidate_eval -> 200 2026-04-30 07:16:17,301 INFO [battle_engine.api] GET /runs/run_20260430_043256_386975_invader_intercept_defense_20260430_133157_candidate_eval -> 200 2026-04-30 07:16:17,406 INFO [battle_engine.api] GET /runs/run_20260430_052844_576603_risk_courier_portal_20260430_043000_candidate_eval -> 200 2026-04-30 07:16:17,513 INFO [battle_engine.api] GET /runs/run_20260430_051437_358749_dynamic_role_switching_20260430_124314_candidate_eval -> 200 2026-04-30 07:16:17,610 INFO [battle_engine.api] GET /runs/run_20260430_034058_281107_risk_aware_courier_20260430_123920_layout_top_k -> 200 2026-04-30 07:16:17,706 INFO [battle_engine.api] GET /runs/run_20260430_044738_088061_dynamic_role_switching_20260430_134644_candidate_eval -> 200 2026-04-30 07:16:17,810 INFO [battle_engine.api] GET /runs/run_20260430_033936_301174_risk_aware_courier_20260430_123920_smoke -> 200 2026-04-30 07:16:17,914 INFO [battle_engine.api] GET /runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness -> 200 2026-04-30 07:16:18,011 INFO [battle_engine.api] GET /runs/run_20260430_044653_842729_dynamic_role_switching_20260430_134644_smoke -> 200 2026-04-30 07:16:18,120 INFO [battle_engine.api] GET /runs/run_20260430_051437_203631_invader_intercept_defense_20260429_183140_candidate_eval -> 200 2026-04-30 07:16:18,217 INFO [battle_engine.api] GET /runs/run_20260430_041048_060387_invader_intercept_defense_20260430_130902_candidate_eval -> 200 2026-04-30 07:16:18,316 INFO [battle_engine.api] GET /runs/run_20260430_040907_548812_risk_aware_courier_20260430_123920_smoke -> 200 2026-04-30 07:16:18,416 INFO [battle_engine.api] GET /runs/run_20260430_043232_839365_dynamic_role_switching_20260430_133142_candidate_eval -> 200 2026-04-30 07:16:18,520 INFO [battle_engine.api] GET /runs/run_20260430_010341_314787_portal_planner_defense_20260430_100321_smoke -> 200 2026-04-30 07:16:18,615 INFO [battle_engine.api] GET /runs/run_20260430_033528_370365_risk_aware_courier_20260430_123510_smoke -> 200 2026-04-30 07:16:56,531 INFO [battle_engine.api] GET /runs/run_20260430_033200_426444_capsule_power_play_20260430_033142_smoke -> 200 2026-04-30 07:16:56,535 INFO [battle_engine.api] GET /runs/run_20260430_033841_614679_capsule_power_play_20260430_033723_candidate_eval -> 200 2026-04-30 07:16:56,555 INFO [battle_engine.api] GET /runs/run_20260430_043427_148052_invader_intercept_defense_20260430_133157_robustness -> 200 2026-04-30 07:16:56,556 INFO [battle_engine.api] GET /runs/run_20260430_040905_782190_capsule_power_play_20260430_033723_candidate_eval -> 200 2026-04-30 07:16:56,557 INFO [battle_engine.api] GET /runs/run_20260430_042710_762057_risk_courier_portal_20260430_042630_candidate_eval -> 200 2026-04-30 07:16:56,558 INFO [battle_engine.api] GET /runs/run_20260430_043619_506516_risk_courier_portal_20260430_043416_candidate_eval -> 200 2026-04-30 07:16:56,571 INFO [battle_engine.api] GET /runs/run_20260430_043926_461681_invader_intercept_defense_20260430_133703_robustness -> 200 2026-04-30 07:16:56,580 INFO [battle_engine.api] GET /runs/run_20260430_051437_046453_invader_intercept_defense_20260430_095819_candidate_eval -> 200 2026-04-30 07:16:56,585 INFO [battle_engine.api] GET /runs/run_20260430_051437_309844_capsule_power_play_20260430_033723_candidate_eval -> 200 2026-04-30 07:16:56,593 INFO [battle_engine.api] GET /runs/run_20260430_052844_747915_dynamic_role_switching_20260430_133803_candidate_eval -> 200 2026-04-30 07:16:56,858 INFO [battle_engine.api] GET /runs/run_20260430_052844_890649_blended_roi_intercept_v01_20260430_045100_candidate_eval -> 200 2026-04-30 07:16:56,955 INFO [battle_engine.api] GET /runs/run_20260430_034150_064141_invader_intercept_defense_20260430_124107_candidate_eval -> 200 2026-04-30 07:16:57,564 INFO [battle_engine.api] GET /runs/run_20260430_051437_263795_invader_intercept_defense_20260429_183654_candidate_eval -> 200 2026-04-30 07:16:57,658 INFO [battle_engine.api] GET /runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke -> 200 2026-04-30 07:16:57,768 INFO [battle_engine.api] GET /runs/run_20260430_051437_235940_invader_intercept_defense_20260430_100617_candidate_eval -> 200 2026-04-30 07:16:57,862 INFO [battle_engine.api] GET /runs/run_20260430_042901_237984_risk_courier_portal_20260430_042826_candidate_eval -> 200 2026-04-30 07:16:57,966 INFO [battle_engine.api] GET /runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke -> 200 2026-04-30 07:16:58,070 INFO [battle_engine.api] GET /runs/run_20260430_051437_379157_invader_intercept_defense_20260429_183934_candidate_eval -> 200 2026-04-30 07:16:58,163 INFO [battle_engine.api] GET /runs/run_20260430_043247_001452_capsule_power_play_20260430_043232_smoke -> 200 2026-04-30 07:16:58,274 INFO [battle_engine.api] GET /runs/run_20260430_051437_154412_dynamic_role_switching_20260430_095422_candidate_eval -> 200 2026-04-30 07:16:58,376 INFO [battle_engine.api] GET /runs/run_20260430_051437_124852_invader_intercept_defense_20260430_134124_candidate_eval -> 200 2026-04-30 07:16:58,467 INFO [battle_engine.api] GET /runs/run_20260430_043744_785072_invader_intercept_defense_20260430_133703_candidate_eval -> 200 2026-04-30 07:16:58,584 INFO [battle_engine.api] GET /runs/run_20260430_051437_320223_capsule_power_play_20260430_043040_candidate_eval -> 200 2026-04-30 07:16:58,677 INFO [battle_engine.api] GET /runs/run_20260430_051437_182854_dynamic_role_switching_20260430_094605_candidate_eval -> 200 2026-04-30 07:16:58,776 INFO [battle_engine.api] GET /runs/run_20260430_051437_254796_invader_intercept_defense_20260429_191434_candidate_eval -> 200 2026-04-30 07:16:58,912 INFO [battle_engine.api] GET /runs/run_20260430_045257_075024_risk_courier_portal_20260430_045048_candidate_eval -> 200 2026-04-30 07:16:59,010 INFO [battle_engine.api] GET /runs/run_20260430_010643_445967_food_roi_targeting_20260430_100532_candidate_eval -> 200 2026-04-30 07:16:59,118 INFO [battle_engine.api] GET /runs/run_20260430_052844_588973_dynamic_role_switching_20260430_133142_candidate_eval -> 200 2026-04-30 07:17:04,380 INFO [battle_engine.api] GET /runs/run_20260430_033359_406738_invader_intercept_defense_20260430_123336_smoke -> 200 2026-04-30 07:17:04,393 INFO [battle_engine.api] GET /runs/run_20260430_033259_512102_capsule_power_play_20260430_033142_smoke -> 200 2026-04-30 07:17:04,395 INFO [battle_engine.api] GET /runs/run_20260430_043154_590569_dynamic_role_switching_20260430_133142_smoke -> 200 2026-04-30 07:17:04,395 INFO [battle_engine.api] GET /runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke -> 200 2026-04-30 07:17:04,395 INFO [battle_engine.api] GET /runs/run_20260430_044738_858390_risk_courier_portal_20260430_044551_candidate_eval -> 200 2026-04-30 07:17:04,396 INFO [battle_engine.api] GET /runs/run_20260430_045100_401988_risk_courier_portal_20260430_045048_smoke -> 200 2026-04-30 07:17:04,396 INFO [battle_engine.api] GET /runs/run_20260430_043010_709169_risk_courier_portal_20260430_043000_smoke -> 200 2026-04-30 07:17:04,396 INFO [battle_engine.api] GET /runs/run_20260430_052844_731156_blended_roi_intercept_v01_20260430_043722_candidate_eval -> 200 2026-04-30 07:17:04,398 INFO [battle_engine.api] GET /runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke -> 200 2026-04-30 07:17:04,398 INFO [battle_engine.api] GET /runs/run_20260430_045108_834715_blended_roi_intercept_v01_20260430_045100_smoke -> 200 2026-04-30 07:17:04,655 INFO [battle_engine.api] GET /runs/run_20260430_052844_902472_risk_courier_portal_20260430_045445_candidate_eval -> 200 2026-04-30 07:17:04,851 INFO [battle_engine.api] GET /runs/run_20260430_040906_520894_dynamic_role_switching_20260430_130855_smoke -> 200 2026-04-30 07:17:04,958 INFO [battle_engine.api] GET /runs/run_20260430_045303_336079_blended_roi_intercept_v01_20260430_045100_candidate_eval -> 200 2026-04-30 07:17:05,073 INFO [battle_engine.api] GET /runs/run_20260430_052844_646062_blended_roi_intercept_v01_20260430_043319_candidate_eval -> 200 2026-04-30 07:17:05,171 INFO [battle_engine.api] GET /runs/run_20260430_051437_290933_blended_roi_intercept_v01_20260430_050200_candidate_eval -> 200 2026-04-30 07:17:05,260 INFO [battle_engine.api] GET /runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke -> 200 2026-04-30 07:17:05,363 INFO [battle_engine.api] GET /runs/run_20260430_043439_651411_blended_roi_intercept_v01_20260430_043319_candidate_eval -> 200 2026-04-30 07:17:05,472 INFO [battle_engine.api] GET /runs/run_20260430_052844_812256_risk_courier_portal_20260430_044551_candidate_eval -> 200 2026-04-30 07:17:05,575 INFO [battle_engine.api] GET /runs/run_20260430_052844_715082_risk_courier_portal_20260430_043416_candidate_eval -> 200 2026-04-30 07:17:05,673 INFO [battle_engine.api] GET /runs/run_20260430_045055_536677_invader_intercept_defense_20260430_134913_robustness -> 200 2026-04-30 07:17:05,770 INFO [battle_engine.api] GET /runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke -> 200 2026-04-30 07:17:05,870 INFO [battle_engine.api] GET /runs/run_20260430_044025_573263_dynamic_role_switching_20260430_133803_candidate_eval -> 200 2026-04-30 07:17:05,966 INFO [battle_engine.api] GET /runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke -> 200 2026-04-30 07:17:06,081 INFO [battle_engine.api] GET /runs/run_20260430_052844_879923_risk_courier_portal_20260430_045048_candidate_eval -> 200 2026-04-30 07:17:06,183 INFO [battle_engine.api] GET /runs/run_20260430_051437_134925_invader_intercept_defense_20260430_134913_candidate_eval -> 200 2026-04-30 07:17:06,278 INFO [battle_engine.api] GET /runs/run_20260430_051437_173124_invader_intercept_defense_20260430_094125_candidate_eval -> 200 2026-04-30 07:17:06,390 INFO [battle_engine.api] GET /runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke -> 200 2026-04-30 07:17:06,473 INFO [battle_engine.api] GET /runs/run_20260430_043722_549257_invader_intercept_defense_20260430_133703_smoke -> 200 2026-04-30 07:17:10,650 INFO [battle_engine.api] GET /runs/run_20260430_042837_817275_risk_courier_portal_20260430_042826_smoke -> 200 2026-04-30 07:17:10,651 INFO [battle_engine.api] GET /runs/run_20260430_033420_786552_food_roi_targeting_20260430_123407_smoke -> 200 2026-04-30 07:17:10,652 INFO [battle_engine.api] GET /runs/run_20260430_010543_550141_food_roi_targeting_20260430_100532_smoke -> 200 2026-04-30 07:17:10,652 INFO [battle_engine.api] GET /runs/run_20260430_034020_929333_food_roi_targeting_20260430_123906_candidate_eval -> 200 2026-04-30 07:17:10,652 INFO [battle_engine.api] GET /runs/run_20260430_041000_549560_food_roi_targeting_20260430_130851_candidate_eval -> 200 2026-04-30 07:17:10,652 INFO [battle_engine.api] GET /runs/run_20260430_010851_860309_portal_planner_defense_20260430_100806_candidate_eval -> 200 2026-04-30 07:17:10,653 INFO [battle_engine.api] GET /runs/run_20260430_042643_053921_risk_courier_portal_20260430_042630_smoke -> 200 2026-04-30 07:17:10,653 INFO [battle_engine.api] GET /runs/run_20260430_033747_561049_capsule_power_play_20260430_033723_smoke -> 200 2026-04-30 07:17:10,653 INFO [battle_engine.api] GET /runs/run_20260430_043331_902113_blended_roi_intercept_v01_20260430_043319_smoke -> 200 2026-04-30 07:17:10,654 INFO [battle_engine.api] GET /runs/run_20260430_051437_075570_food_roi_targeting_20260430_100532_candidate_eval -> 200 2026-04-30 07:17:11,007 INFO [battle_engine.api] GET /runs/run_20260430_043735_370086_blended_roi_intercept_v01_20260430_043722_smoke -> 200 2026-04-30 07:17:11,105 INFO [battle_engine.api] GET /runs/run_20260430_010827_443332_invader_intercept_defense_20260430_100812_smoke -> 200 2026-04-30 07:17:11,210 INFO [battle_engine.api] GET /runs/run_20260430_051437_017250_invader_intercept_defense_20260430_130902_candidate_eval -> 200 2026-04-30 07:17:11,310 INFO [battle_engine.api] GET /runs/run_20260430_033739_450058_capsule_power_play_20260430_033142_smoke -> 200 2026-04-30 07:17:11,408 INFO [battle_engine.api] GET /runs/run_20260430_045458_788661_risk_courier_portal_20260430_045445_smoke -> 200 2026-04-30 07:17:11,513 INFO [battle_engine.api] GET /runs/run_20260430_051437_163777_food_roi_targeting_20260430_094042_candidate_eval -> 200 2026-04-30 07:17:11,610 INFO [battle_engine.api] GET /runs/run_20260430_050256_585340_blended_roi_intercept_v01_20260430_050200_candidate_eval -> 200 2026-04-30 07:17:11,715 INFO [battle_engine.api] GET /runs/run_20260430_010422_084106_portal_planner_defense_20260430_100321_candidate_eval -> 200 2026-04-30 07:17:11,814 INFO [battle_engine.api] GET /runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke -> 200 2026-04-30 07:17:11,912 INFO [battle_engine.api] GET /runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke -> 200 2026-04-30 07:17:12,015 INFO [battle_engine.api] GET /runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke -> 200 2026-04-30 07:17:12,116 INFO [battle_engine.api] GET /runs/run_20260430_043052_585517_capsule_power_play_20260430_043040_smoke -> 200 2026-04-30 07:17:12,218 INFO [battle_engine.api] GET /runs/run_20260430_043224_780229_invader_intercept_defense_20260430_133157_smoke -> 200 2026-04-30 07:17:12,315 INFO [battle_engine.api] GET /runs/run_20260430_045550_579079_risk_courier_portal_20260430_045445_candidate_eval -> 200 2026-04-30 07:17:12,422 INFO [battle_engine.api] GET /runs/run_20260430_040915_701316_invader_intercept_defense_20260430_130902_smoke -> 200 2026-04-30 07:17:12,518 INFO [battle_engine.api] GET /runs/run_20260430_044936_776930_invader_intercept_defense_20260430_134913_smoke -> 200 2026-04-30 07:17:12,621 INFO [battle_engine.api] GET /runs/run_20260430_043828_641050_dynamic_role_switching_20260430_133803_smoke -> 200 2026-04-30 07:17:12,723 INFO [battle_engine.api] GET /runs/run_20260430_033653_398980_food_roi_targeting_20260430_123407_candidate_eval -> 200 2026-04-30 07:17:16,938 INFO [battle_engine.api] GET /runs/run_20260430_040847_132080_portal_planner_defense_20260430_123030_smoke -> 200 2026-04-30 07:17:16,942 INFO [battle_engine.api] GET /runs/run_20260430_010314_753004_food_roi_targeting_20260430_100303_smoke -> 200 2026-04-30 07:17:16,943 INFO [battle_engine.api] GET /runs/run_20260430_033915_207384_portal_planner_defense_20260430_123030_promotion_eval -> 200 2026-04-30 07:17:16,943 INFO [battle_engine.api] GET /runs/run_20260430_033915_896956_food_roi_targeting_20260430_123906_smoke -> 200 2026-04-30 07:17:16,943 INFO [battle_engine.api] GET /runs/run_20260430_040900_887774_food_roi_targeting_20260430_130851_smoke -> 200 2026-04-30 07:17:16,944 INFO [battle_engine.api] GET /runs/run_20260430_051437_399932_portal_chokepoint_defense_20260429_183730_candidate_eval -> 200 2026-04-30 07:17:16,944 INFO [battle_engine.api] GET /runs/run_20260430_033744_343794_portal_planner_defense_20260430_123030_smoke -> 200 2026-04-30 07:17:16,994 INFO [battle_engine.api] GET /runs/run_20260430_033116_912204_portal_planner_defense_20260430_123030_smoke -> 200 2026-04-30 07:17:17,101 INFO [battle_engine.api] GET /runs/run_20260430_033046_650702_portal_planner_defense_20260430_123030_smoke -> 200 2026-04-30 07:17:17,199 INFO [battle_engine.api] GET /runs/run_20260430_010516_581449_portal_planner_defense_20260430_100321_promotion_eval -> 200 2026-04-30 07:17:17,298 INFO [battle_engine.api] GET /runs/run_20260430_051437_389291_portal_chokepoint_defense_20260429_191350_candidate_eval -> 200 2026-04-30 07:17:17,403 INFO [battle_engine.api] GET /runs/run_20260430_010927_166781_portal_planner_defense_20260430_100806_promotion_eval -> 200 2026-04-30 07:17:17,595 INFO [battle_engine.api] GET /runs/run_20260430_033456_241269_food_roi_targeting_20260430_123407_smoke -> 200 2026-04-30 07:17:17,707 INFO [battle_engine.api] GET /runs/run_20260430_010829_682637_portal_planner_defense_20260430_100806_smoke -> 200 2026-04-30 07:17:17,814 INFO [battle_engine.api] GET /runs/run_20260430_051437_245582_food_roi_targeting_20260430_100303_candidate_eval -> 200 2026-04-30 07:17:17,902 INFO [battle_engine.api] GET /runs/run_20260430_033817_939601_portal_planner_defense_20260430_123030_candidate_eval -> 200 2026-04-30 07:17:18,006 INFO [battle_engine.api] GET /runs/run_20260430_010415_238547_food_roi_targeting_20260430_100303_candidate_eval -> 200 2026-04-30 07:17:18,153 INFO [battle_engine.api] GET /runs/run_20260430_040913_151905_portal_planner_defense_20260430_123030_candidate_eval -> 200 2026-04-30 07:17:18,234 INFO [battle_engine.api] GET /runs/run_20260430_033609_932144_food_roi_targeting_20260430_123407_smoke -> 200 2026-04-30 07:17:18,315 INFO [battle_engine.api] GET /runs/run_20260430_051437_281867_portal_chokepoint_defense_20260430_094200_candidate_eval -> 200 2026-04-30 07:17:18,409 INFO [battle_engine.api] GET /runs/run_20260430_033257_921111_portal_planner_defense_20260430_123030_smoke -> 200 2026-04-30 07:17:18,514 INFO [battle_engine.api] GET /runs/run_20260430_043427_833818_risk_courier_portal_20260430_043416_smoke -> 200 2026-04-30 07:17:18,613 INFO [battle_engine.api] GET /runs/run_20260430_044601_007800_risk_courier_portal_20260430_044551_smoke -> 200 2026-04-30 07:17:18,714 INFO [battle_engine.api] GET /runs/run_20260430_043814_998303_blended_roi_intercept_v01_20260430_043722_candidate_eval -> 200 2026-04-30 07:17:18,820 INFO [battle_engine.api] GET /runs/run_20260430_051437_144913_food_roi_targeting_20260430_123906_candidate_eval -> 200 2026-04-30 07:17:18,915 INFO [battle_engine.api] GET /runs/run_20260430_050209_780675_blended_roi_intercept_v01_20260430_050200_smoke -> 200 2026-04-30 07:17:19,024 INFO [battle_engine.api] GET /runs/run_20260430_051437_056399_food_roi_targeting_20260430_095825_candidate_eval -> 200 2026-04-30 07:17:19,123 INFO [battle_engine.api] GET /runs/run_20260430_051437_369440_food_roi_targeting_20260430_123407_candidate_eval -> 200 2026-04-30 07:18:02,986 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_133213/source -> 200 2026-04-30 07:18:02,987 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_130902/source -> 200 2026-04-30 07:18:35,251 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_095819/source -> 200 2026-04-30 07:18:50,217 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_095900/source -> 200 2026-04-30 07:19:36,444 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_133926/source -> 200 2026-04-30 07:20:00,407 INFO [battle_engine.api] GET /api/v1/candidates/food_roi_targeting_20260430_095825/source -> 200 2026-04-30 07:20:00,408 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_123920/source -> 200 2026-04-30 07:21:15,034 INFO [battle_engine.api] GET /api/v1/candidates/food_roi_targeting_20260430_100532/source -> 200 2026-04-30 07:22:53,883 INFO [battle_engine.api] GET /api/v1/debug/logs -> 200 2026-04-30 07:23:11,463 INFO [battle_engine.api] GET /debug/logs/battle-worker.log -> 200 2026-04-30 07:24:34,642 INFO [battle_engine.api] GET /debug/logs/battle-api.log -> 200 2026-04-30 07:24:34,659 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_095814/source -> 200 2026-04-30 07:24:34,666 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044142_257903_invader_intercept_defense_20260430_134124_smoke/jobs -> 200 2026-04-30 07:25:10,079 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044449_961307_invader_intercept_defense_20260430_134124_robustness/context-pack -> 200 2026-04-30 07:26:04,604 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044449_961307_invader_intercept_defense_20260430_134124_robustness/jobs -> 200 2026-04-30 07:26:39,671 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044142_257903_invader_intercept_defense_20260430_134124_smoke/context-pack -> 200 2026-04-30 07:26:39,682 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044449_961307_invader_intercept_defense_20260430_134124_robustness/results -> 200 2026-04-30 07:28:11,734 INFO [battle_engine.api] GET / -> 200 2026-04-30 07:28:16,663 INFO [battle_engine.api] GET /api/v1/status -> 200 2026-04-30 07:28:16,664 INFO [battle_engine.api] GET /api/v1/debug/status -> 200 2026-04-30 07:29:55,094 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044142_257903_invader_intercept_defense_20260430_134124_smoke/results -> 200 2026-04-30 07:49:11,203 INFO [battle_engine.api] GET / -> 200 2026-04-30 07:49:11,730 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 07:49:26,649 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_043319/source -> 200 2026-04-30 07:49:28,680 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_043319/source -> 200 2026-04-30 07:49:41,731 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_133213 -> 200 2026-04-30 07:49:43,115 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_133213/source -> 200 2026-04-30 07:55:15,803 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 07:57:03,960 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 07:57:06,449 INFO [battle_engine.api] GET / -> 200 2026-04-30 07:57:07,617 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 07:57:08,317 INFO [battle_engine.api] GET /runs -> 200 2026-04-30 07:57:09,181 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:24:06,735 INFO [battle_engine.api] GET /robots.txt -> 404 2026-04-30 08:24:06,928 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_123510/source -> 200 2026-04-30 08:24:07,428 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_191617/source -> 200 2026-04-30 08:24:07,929 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_093757/source -> 200 2026-04-30 08:24:08,430 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_123022/source -> 404 2026-04-30 08:24:08,931 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_191842/source -> 200 2026-04-30 08:24:09,432 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_095517/source -> 200 2026-04-30 08:24:09,932 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_094857/source -> 200 2026-04-30 08:24:10,434 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_123736/source -> 200 2026-04-30 08:24:10,937 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_100139/source -> 200 2026-04-30 08:24:15,508 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_093820/source -> 200 2026-04-30 08:24:15,510 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_123355/source -> 200 2026-04-30 08:24:15,910 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_100026/source -> 200 2026-04-30 08:24:16,413 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_184025/source -> 200 2026-04-30 08:24:16,915 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260429_192501/source -> 200 2026-04-30 08:24:17,414 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260430_094240/source -> 200 2026-04-30 08:24:17,916 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_183418/source -> 200 2026-04-30 08:24:18,416 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_183539/source -> 200 2026-04-30 08:24:18,917 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_191156/source -> 200 2026-04-30 08:24:47,737 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_094830/source -> 200 2026-04-30 08:24:47,832 INFO [battle_engine.api] GET /candidates/capsule_power_play_20260430_033142/source -> 200 2026-04-30 08:24:48,333 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_094608/source -> 200 2026-04-30 08:24:48,833 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_123736/source -> 200 2026-04-30 08:24:49,336 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_094053/source -> 200 2026-04-30 08:24:49,834 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_124513/source -> 200 2026-04-30 08:24:50,337 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_123120/source -> 404 2026-04-30 08:24:50,838 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_100139/source -> 200 2026-04-30 08:24:51,340 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_100338/source -> 200 2026-04-30 08:25:13,753 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_093757/source -> 200 2026-04-30 08:25:13,754 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260429_191842/source -> 200 2026-04-30 08:25:14,343 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_133602/source -> 200 2026-04-30 08:25:14,844 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260429_191559/source -> 200 2026-04-30 08:25:15,344 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_095517/source -> 200 2026-04-30 08:25:15,847 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_100812/source -> 200 2026-04-30 08:25:16,389 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_094857/source -> 200 2026-04-30 08:25:16,847 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260429_192235/source -> 200 2026-04-30 08:25:17,351 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_093802/source -> 200 2026-04-30 08:25:38,936 INFO [battle_engine.api] GET /api/v1/candidates/capsule_power_play_20260430_044100/source -> 200 2026-04-30 08:25:38,937 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_094240/source -> 200 2026-04-30 08:25:39,304 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260429_183418/source -> 200 2026-04-30 08:25:39,805 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_095327/source -> 200 2026-04-30 08:25:40,343 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260429_191156/source -> 200 2026-04-30 08:25:40,805 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260429_183539/source -> 200 2026-04-30 08:25:41,307 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260429_191617/source -> 200 2026-04-30 08:25:41,807 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_123510/source -> 200 2026-04-30 08:25:42,308 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260430_123022/source -> 404 2026-04-30 08:26:09,338 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_093820/source -> 200 2026-04-30 08:26:09,516 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_134644/source -> 200 2026-04-30 08:26:09,941 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260429_183140/source -> 200 2026-04-30 08:26:10,447 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_100138/source -> 200 2026-04-30 08:26:10,947 INFO [battle_engine.api] GET /api/v1/candidates/capsule_power_play_20260430_043232/source -> 200 2026-04-30 08:26:11,446 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_042630/source -> 200 2026-04-30 08:26:11,948 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260429_192033/source -> 200 2026-04-30 08:26:12,449 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260429_184025/source -> 200 2026-04-30 08:26:12,949 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260429_192501/source -> 200 2026-04-30 08:26:15,217 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_094053/source -> 200 2026-04-30 08:26:15,217 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_100617/source -> 200 2026-04-30 08:26:16,056 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_123120/source -> 404 2026-04-30 08:26:16,557 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_100338/source -> 200 2026-04-30 08:26:17,058 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_124314/source -> 200 2026-04-30 08:26:17,558 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_134234/source -> 200 2026-04-30 08:26:18,061 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_100026/source -> 200 2026-04-30 08:26:18,561 INFO [battle_engine.api] GET /api/v1/candidates/risk_courier_portal_20260430_044132/source -> 200 2026-04-30 08:26:19,062 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_123355/source -> 200 2026-04-30 08:26:35,635 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_133142/source -> 200 2026-04-30 08:26:35,636 INFO [battle_engine.api] GET /api/v1/candidates/capsule_power_play_20260430_033142/source -> 200 2026-04-30 08:26:36,176 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_100812/source -> 200 2026-04-30 08:26:36,677 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_095422/source -> 200 2026-04-30 08:26:37,177 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260429_192235/source -> 200 2026-04-30 08:26:37,679 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_093802/source -> 200 2026-04-30 08:26:38,181 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_094830/source -> 200 2026-04-30 08:26:38,679 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_094608/source -> 200 2026-04-30 08:26:39,181 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_124513/source -> 200 2026-04-30 08:26:57,996 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_133703/source -> 200 2026-04-30 08:26:57,997 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260429_191434/source -> 200 2026-04-30 08:26:58,442 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_133157/source -> 200 2026-04-30 08:26:58,942 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260429_183654/source -> 200 2026-04-30 08:26:59,443 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_134124/source -> 200 2026-04-30 08:26:59,944 INFO [battle_engine.api] GET /api/v1/candidates/capsule_power_play_20260430_043040/source -> 200 2026-04-30 08:27:00,445 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260429_191559/source -> 200 2026-04-30 08:27:00,946 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_094605/source -> 200 2026-04-30 08:27:01,447 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_133803/source -> 200 2026-04-30 08:27:23,582 INFO [battle_engine.api] GET /api/v1/candidates/capsule_power_play_20260430_033723/source -> 200 2026-04-30 08:27:23,582 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_044344/source -> 200 2026-04-30 08:27:23,948 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_134913/source -> 200 2026-04-30 08:27:24,448 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260429_183934/source -> 200 2026-04-30 08:27:24,982 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260429_191845/source -> 200 2026-04-30 08:27:25,451 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_094125/source -> 200 2026-04-30 08:27:25,954 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_095327/source -> 200 2026-04-30 08:27:26,451 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_124107/source -> 200 2026-04-30 08:27:26,953 INFO [battle_engine.api] GET /api/v1/candidates/risk_courier_portal_20260430_043000/source -> 200 2026-04-30 08:27:52,576 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260430_093913/source -> 200 2026-04-30 08:27:52,577 INFO [battle_engine.api] GET /api/v1/candidates/food_roi_targeting_20260430_123407/source -> 200 2026-04-30 08:27:52,956 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260429_192100/source -> 200 2026-04-30 08:27:53,458 INFO [battle_engine.api] GET /api/v1/candidates/risk_courier_portal_20260430_045445/source -> 200 2026-04-30 08:27:53,958 INFO [battle_engine.api] GET /api/v1/candidates/risk_courier_portal_20260430_044551/source -> 200 2026-04-30 08:27:54,463 INFO [battle_engine.api] GET /api/v1/candidates/risk_courier_portal_20260430_043416/source -> 200 2026-04-30 08:27:54,960 INFO [battle_engine.api] GET /api/v1/candidates/risk_courier_portal_20260430_045048/source -> 200 2026-04-30 08:27:55,463 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_045100/source -> 200 2026-04-30 08:27:55,965 INFO [battle_engine.api] GET /api/v1/candidates/risk_courier_portal_20260430_042630/source -> 200 2026-04-30 08:28:08,456 INFO [battle_engine.api] GET /api/v1/candidates/portal_chokepoint_defense_20260430_093913/source -> 200 2026-04-30 08:28:08,457 INFO [battle_engine.api] GET /api/v1/candidates/portal_chokepoint_defense_20260429_192100/source -> 200 2026-04-30 08:28:09,139 INFO [battle_engine.api] GET /api/v1/candidates/food_roi_targeting_20260430_094042/source -> 200 2026-04-30 08:28:09,642 INFO [battle_engine.api] GET /api/v1/candidates/food_roi_targeting_20260430_100303/source -> 200 2026-04-30 08:28:10,142 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260429_183526/source -> 200 2026-04-30 08:28:10,644 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_043319/source -> 200 2026-04-30 08:28:11,145 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_050200/source -> 200 2026-04-30 08:28:11,646 INFO [battle_engine.api] GET /api/v1/candidates/blended_roi_intercept_v01_20260430_043722/source -> 200 2026-04-30 08:28:19,072 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness/context-pack -> 200 2026-04-30 08:28:19,073 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034402_710644_dead_end_avoidance_20260430_034351_smoke/context-pack -> 200 2026-04-30 08:28:19,550 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034210_272100_dead_end_avoidance_20260430_034158_smoke/context-pack -> 200 2026-04-30 08:28:20,052 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke/context-pack -> 200 2026-04-30 08:28:20,554 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044136_592778_dead_end_avoidance_20260430_044124_smoke/context-pack -> 200 2026-04-30 08:28:21,062 INFO [battle_engine.api] GET /api/v1/candidates/portal_chokepoint_defense_20260429_191350/source -> 200 2026-04-30 08:28:21,564 INFO [battle_engine.api] GET /api/v1/candidates/portal_chokepoint_defense_20260429_183730/source -> 200 2026-04-30 08:28:22,065 INFO [battle_engine.api] GET /api/v1/candidates/portal_chokepoint_defense_20260429_183526/source -> 200 2026-04-30 08:28:39,439 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033032_168785_risk_aware_courier_20260430_123022_smoke/context-pack -> 200 2026-04-30 08:28:39,440 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044114_124724_capsule_power_play_20260430_044100_smoke/context-pack -> 200 2026-04-30 08:28:39,710 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness/context-pack -> 200 2026-04-30 08:28:40,211 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045042_629070_dead_end_avoidance_20260430_045031_smoke/context-pack -> 200 2026-04-30 08:28:40,724 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044136_592778_dead_end_avoidance_20260430_044124_smoke/results -> 200 2026-04-30 08:28:41,211 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033111_479546_risk_aware_courier_20260430_123022_smoke/context-pack -> 200 2026-04-30 08:28:41,713 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043612_436788_risk_aware_courier_20260430_133602_smoke/context-pack -> 200 2026-04-30 08:28:42,213 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness/context-pack -> 200 2026-04-30 08:29:10,518 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034402_710644_dead_end_avoidance_20260430_034351_smoke/results -> 200 2026-04-30 08:29:10,518 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness/results -> 200 2026-04-30 08:29:11,020 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034210_272100_dead_end_avoidance_20260430_034158_smoke/results -> 200 2026-04-30 08:29:11,521 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044136_592778_dead_end_avoidance_20260430_044124_smoke/jobs -> 200 2026-04-30 08:29:12,020 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke/results -> 200 2026-04-30 08:29:12,509 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke/context-pack -> 200 2026-04-30 08:29:13,010 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043223_354772_risk_aware_courier_20260430_133213_smoke/context-pack -> 200 2026-04-30 08:29:13,513 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033746_277743_dynamic_role_switching_20260430_123736_smoke/context-pack -> 200 2026-04-30 08:29:25,127 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043612_436788_risk_aware_courier_20260430_133602_smoke/jobs -> 200 2026-04-30 08:29:25,144 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034402_710644_dead_end_avoidance_20260430_034351_smoke/jobs -> 200 2026-04-30 08:29:25,643 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness/jobs -> 200 2026-04-30 08:29:26,144 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044139_709170_risk_aware_courier_20260430_133926_robustness/jobs -> 200 2026-04-30 08:29:26,641 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke/results -> 200 2026-04-30 08:29:27,144 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034210_272100_dead_end_avoidance_20260430_034158_smoke/jobs -> 200 2026-04-30 08:29:27,651 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043223_354772_risk_aware_courier_20260430_133213_smoke/results -> 200 2026-04-30 08:29:28,151 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044114_124724_capsule_power_play_20260430_044100_smoke/results -> 200 2026-04-30 08:29:31,746 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043223_354772_risk_aware_courier_20260430_133213_smoke/jobs -> 200 2026-04-30 08:29:31,748 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043937_619328_risk_aware_courier_20260430_133926_smoke/jobs -> 200 2026-04-30 08:29:32,021 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044114_124724_capsule_power_play_20260430_044100_smoke/jobs -> 200 2026-04-30 08:29:32,522 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033032_168785_risk_aware_courier_20260430_123022_smoke/jobs -> 200 2026-04-30 08:29:33,034 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness/jobs -> 200 2026-04-30 08:29:33,524 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033746_277743_dynamic_role_switching_20260430_123736_smoke/jobs -> 200 2026-04-30 08:29:34,023 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045042_629070_dead_end_avoidance_20260430_045031_smoke/jobs -> 200 2026-04-30 08:29:34,526 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033111_479546_risk_aware_courier_20260430_123022_smoke/jobs -> 200 2026-04-30 08:29:53,299 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043352_348790_risk_aware_courier_20260430_133213_robustness/results -> 200 2026-04-30 08:29:53,301 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033032_168785_risk_aware_courier_20260430_123022_smoke/results -> 200 2026-04-30 08:29:53,889 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033746_277743_dynamic_role_switching_20260430_123736_smoke/results -> 200 2026-04-30 08:29:54,394 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034123_684553_dynamic_role_switching_20260430_094833_smoke/jobs -> 200 2026-04-30 08:29:54,893 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045042_629070_dead_end_avoidance_20260430_045031_smoke/results -> 200 2026-04-30 08:29:55,394 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033111_479546_risk_aware_courier_20260430_123022_smoke/results -> 200 2026-04-30 08:29:55,894 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043612_436788_risk_aware_courier_20260430_133602_smoke/results -> 200 2026-04-30 08:29:56,398 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043736_514547_risk_aware_courier_20260430_133602_robustness/results -> 200 2026-04-30 08:30:06,685 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:30:06,765 INFO [battle_engine.api] GET /candidates/smoke_your_best/source -> 200 2026-04-30 08:30:07,299 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:30:07,801 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:30:08,266 INFO [battle_engine.api] GET /candidates/remote_smoke_baseline1/source -> 404 2026-04-30 08:30:08,802 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:30:09,305 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:30:09,805 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:30:42,660 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:30:42,692 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:30:43,653 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:30:44,038 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:30:44,504 INFO [battle_engine.api] GET /api/v1/candidates/remote_smoke_baseline1/source -> 404 2026-04-30 08:30:45,041 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:30:45,541 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:30:46,043 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:30:47,700 INFO [battle_engine.api] GET /api/v1/candidates/dead_end_avoidance_20260430_034351/source -> 200 2026-04-30 08:30:47,770 INFO [battle_engine.api] GET /api/v1/candidates/dead_end_avoidance_20260430_044124/source -> 200 2026-04-30 08:30:48,272 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_192041/source -> 200 2026-04-30 08:30:48,809 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:30:49,275 INFO [battle_engine.api] GET /api/v1/candidates/smoke_your_best/source -> 200 2026-04-30 08:30:49,776 INFO [battle_engine.api] GET /candidates/dead_end_avoidance_20260430_034158/source -> 200 2026-04-30 08:30:50,278 INFO [battle_engine.api] GET /candidates/risk_aware_courier_20260429_183111/source -> 200 2026-04-30 08:30:50,812 INFO [battle_engine.api] GET /leaderboard -> 200 2026-04-30 08:31:15,849 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_094833/source -> 200 2026-04-30 08:31:15,850 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260429_192041/source -> 200 2026-04-30 08:31:16,639 INFO [battle_engine.api] GET /candidates/dynamic_role_switching_20260430_130855/source -> 200 2026-04-30 08:31:17,141 INFO [battle_engine.api] GET /candidates/smoke_baseline1_20260429_085822/source -> 200 2026-04-30 08:31:17,640 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_123802/source -> 200 2026-04-30 08:31:18,141 INFO [battle_engine.api] GET /api/v1/candidates/dead_end_avoidance_20260430_045031/source -> 200 2026-04-30 08:31:18,642 INFO [battle_engine.api] GET /api/v1/candidates/dead_end_avoidance_20260430_034158/source -> 200 2026-04-30 08:31:19,145 INFO [battle_engine.api] GET /api/v1/candidates/risk_aware_courier_20260429_183111/source -> 200 2026-04-30 08:31:31,031 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_094823/source -> 200 2026-04-30 08:31:31,032 INFO [battle_engine.api] GET /candidates/portal_planner_defense_20260430_100321/source -> 200 2026-04-30 08:31:31,777 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_095228/source -> 200 2026-04-30 08:31:32,279 INFO [battle_engine.api] GET /candidates/portal_planner_defense_20260430_100806/source -> 200 2026-04-30 08:31:32,781 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_062144/source -> 200 2026-04-30 08:31:33,280 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_123336/source -> 404 2026-04-30 08:31:33,779 INFO [battle_engine.api] GET /candidates/risk_courier_portal_20260430_042826/source -> 200 2026-04-30 08:31:34,280 INFO [battle_engine.api] GET /candidates/invader_intercept_defense_20260430_123336/source -> 404 2026-04-30 08:32:00,026 INFO [battle_engine.api] GET /candidates/portal_planner_defense_20260430_123030/source -> 200 2026-04-30 08:32:00,027 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260429_183132/source -> 200 2026-04-30 08:32:00,540 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_062527/source -> 200 2026-04-30 08:32:01,040 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_061537/source -> 200 2026-04-30 08:32:01,543 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_094618/source -> 200 2026-04-30 08:32:02,042 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_063119/source -> 200 2026-04-30 08:32:02,560 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_100058/source -> 200 2026-04-30 08:32:03,060 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_095526/source -> 200 2026-04-30 08:32:35,244 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_061537 -> 200 2026-04-30 08:32:35,245 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_063119 -> 200 2026-04-30 08:32:35,918 INFO [battle_engine.api] GET /candidates/portal_chokepoint_defense_20260430_093714/source -> 200 2026-04-30 08:32:36,406 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_062144 -> 200 2026-04-30 08:32:36,921 INFO [battle_engine.api] GET /candidates/portal_planner_defense_20260430_094615/source -> 200 2026-04-30 08:32:37,420 INFO [battle_engine.api] GET /candidates/food_roi_targeting_20260430_130851/source -> 200 2026-04-30 08:32:37,921 INFO [battle_engine.api] GET /api/v1/candidates/risk_courier_portal_20260430_042826/source -> 200 2026-04-30 08:32:38,424 INFO [battle_engine.api] GET /candidates/portal_planner_defense_20260430_095235/source -> 200 2026-04-30 08:32:44,370 INFO [battle_engine.api] GET /api/v1/candidates/food_roi_targeting_20260430_100058/source -> 200 2026-04-30 08:32:44,370 INFO [battle_engine.api] GET /api/v1/candidates/food_roi_targeting_20260430_094618/source -> 200 2026-04-30 08:32:44,864 INFO [battle_engine.api] GET /api/v1/candidates/food_roi_targeting_20260430_095526/source -> 200 2026-04-30 08:32:45,367 INFO [battle_engine.api] GET /api/v1/candidates/portal_planner_defense_20260430_100321/source -> 200 2026-04-30 08:32:45,868 INFO [battle_engine.api] GET /api/v1/candidates/food_roi_targeting_20260430_094823/source -> 200 2026-04-30 08:32:46,368 INFO [battle_engine.api] GET /api/v1/candidates/portal_planner_defense_20260430_100806/source -> 200 2026-04-30 08:32:46,869 INFO [battle_engine.api] GET /api/v1/candidates/food_roi_targeting_20260430_095228/source -> 200 2026-04-30 08:32:47,356 INFO [battle_engine.api] GET /candidates/blended_roi_intercept_v01_20260430_062527 -> 200 2026-04-30 08:33:38,414 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041152_815235_risk_aware_courier_20260430_123920_robustness/context-pack -> 200 2026-04-30 08:33:38,422 INFO [battle_engine.api] GET /api/v1/candidates/portal_chokepoint_defense_20260430_094200/source -> 200 2026-04-30 08:33:39,033 INFO [battle_engine.api] GET /api/v1/candidates/portal_planner_defense_20260430_094615/source -> 200 2026-04-30 08:33:39,534 INFO [battle_engine.api] GET /api/v1/candidates/food_roi_targeting_20260430_130851/source -> 200 2026-04-30 08:33:40,054 INFO [battle_engine.api] GET /api/v1/candidates/portal_planner_defense_20260430_095235/source -> 200 2026-04-30 08:33:40,536 INFO [battle_engine.api] GET /api/v1/candidates/portal_planner_defense_20260430_123030/source -> 200 2026-04-30 08:33:41,035 INFO [battle_engine.api] GET /api/v1/candidates/portal_chokepoint_defense_20260429_183132/source -> 200 2026-04-30 08:33:41,536 INFO [battle_engine.api] GET /api/v1/candidates/food_roi_targeting_20260430_123906/source -> 200 2026-04-30 08:33:47,012 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043722_549257_invader_intercept_defense_20260430_133703_smoke/context-pack -> 200 2026-04-30 08:33:47,052 INFO [battle_engine.api] GET /runs/run_20260430_062223_479601_blended_roi_intercept_v01_20260430_062144_candidate_eval -> 200 2026-04-30 08:33:47,304 INFO [battle_engine.api] GET /runs/run_20260430_063157_287809_blended_roi_intercept_v01_20260430_063119_candidate_eval -> 200 2026-04-30 08:33:47,761 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041242_016596_invader_intercept_defense_20260430_130902_robustness/context-pack -> 200 2026-04-30 08:33:48,261 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033936_301174_risk_aware_courier_20260430_123920_smoke/context-pack -> 200 2026-04-30 08:33:48,763 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044653_842729_dynamic_role_switching_20260430_134644_smoke/context-pack -> 200 2026-04-30 08:33:49,264 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/context-pack -> 200 2026-04-30 08:33:49,764 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_040907_548812_risk_aware_courier_20260430_123920_smoke/context-pack -> 200 2026-04-30 08:33:51,854 INFO [battle_engine.api] GET /runs/run_20260430_062201_656608_blended_roi_intercept_v01_20260430_062144_smoke -> 200 2026-04-30 08:33:51,938 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_040906_520894_dynamic_role_switching_20260430_130855_smoke/context-pack -> 200 2026-04-30 08:33:52,439 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/context-pack -> 200 2026-04-30 08:33:52,940 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045055_536677_invader_intercept_defense_20260430_134913_robustness/context-pack -> 200 2026-04-30 08:33:53,441 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/context-pack -> 200 2026-04-30 08:33:53,941 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/context-pack -> 200 2026-04-30 08:33:54,495 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041152_815235_risk_aware_courier_20260430_123920_robustness/results -> 200 2026-04-30 08:33:54,944 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/context-pack -> 200 2026-04-30 08:35:01,777 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033359_406738_invader_intercept_defense_20260430_123336_smoke/context-pack -> 200 2026-04-30 08:35:01,779 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033259_512102_capsule_power_play_20260430_033142_smoke/context-pack -> 200 2026-04-30 08:35:02,334 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/context-pack -> 200 2026-04-30 08:35:02,834 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/context-pack -> 200 2026-04-30 08:35:03,335 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043154_590569_dynamic_role_switching_20260430_133142_smoke/context-pack -> 200 2026-04-30 08:35:03,886 INFO [battle_engine.api] GET /runs/run_20260430_062323_379105_blended_roi_intercept_v01_20260430_062144_robustness -> 200 2026-04-30 08:35:04,380 INFO [battle_engine.api] GET /runs/run_20260430_062605_038439_blended_roi_intercept_v01_20260430_062527_candidate_eval -> 200 2026-04-30 08:35:04,883 INFO [battle_engine.api] GET /runs/run_20260430_061632_057088_blended_roi_intercept_v01_20260430_061537_candidate_eval -> 200 2026-04-30 08:35:15,751 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041242_016596_invader_intercept_defense_20260430_130902_robustness/results -> 200 2026-04-30 08:35:15,784 INFO [battle_engine.api] GET /runs/run_20260430_062539_790311_blended_roi_intercept_v01_20260430_062527_smoke -> 200 2026-04-30 08:35:15,981 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041152_815235_risk_aware_courier_20260430_123920_robustness/jobs -> 200 2026-04-30 08:35:16,478 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044653_842729_dynamic_role_switching_20260430_134644_smoke/results -> 200 2026-04-30 08:35:16,979 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033936_301174_risk_aware_courier_20260430_123920_smoke/results -> 200 2026-04-30 08:35:17,481 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/results -> 200 2026-04-30 08:35:17,983 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_040907_548812_risk_aware_courier_20260430_123920_smoke/results -> 200 2026-04-30 08:35:18,516 INFO [battle_engine.api] GET /runs/run_20260430_063132_480983_blended_roi_intercept_v01_20260430_063119_smoke -> 200 2026-04-30 08:35:22,044 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/results -> 200 2026-04-30 08:35:22,044 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043154_590569_dynamic_role_switching_20260430_133142_smoke/results -> 200 2026-04-30 08:35:22,519 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044653_842729_dynamic_role_switching_20260430_134644_smoke/jobs -> 200 2026-04-30 08:35:23,019 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033936_301174_risk_aware_courier_20260430_123920_smoke/jobs -> 200 2026-04-30 08:35:23,520 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/results -> 200 2026-04-30 08:35:24,020 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_040906_520894_dynamic_role_switching_20260430_130855_smoke/results -> 200 2026-04-30 08:35:24,525 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_032930_188986_dynamic_role_switching_20260430_094833_robustness/jobs -> 200 2026-04-30 08:35:25,056 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_040907_548812_risk_aware_courier_20260430_123920_smoke/jobs -> 200 2026-04-30 08:35:37,494 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010635_820785_invader_intercept_defense_20260430_100617_smoke/jobs -> 200 2026-04-30 08:35:37,494 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043154_590569_dynamic_role_switching_20260430_133142_smoke/jobs -> 200 2026-04-30 08:35:37,862 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_040906_520894_dynamic_role_switching_20260430_130855_smoke/jobs -> 200 2026-04-30 08:35:38,366 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/jobs -> 200 2026-04-30 08:35:38,865 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043722_549257_invader_intercept_defense_20260430_133703_smoke/jobs -> 200 2026-04-30 08:35:39,367 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045055_536677_invader_intercept_defense_20260430_134913_robustness/jobs -> 200 2026-04-30 08:35:39,867 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/jobs -> 200 2026-04-30 08:36:19,050 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_045055_536677_invader_intercept_defense_20260430_134913_robustness/results -> 200 2026-04-30 08:36:19,050 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033140_122080_invader_intercept_defense_20260430_123120_smoke/results -> 200 2026-04-30 08:36:19,444 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033521_519212_dynamic_role_switching_20260430_123355_smoke/results -> 200 2026-04-30 08:36:19,944 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043722_549257_invader_intercept_defense_20260430_133703_smoke/results -> 200 2026-04-30 08:36:20,447 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/results -> 200 2026-04-30 08:36:20,936 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033456_241269_food_roi_targeting_20260430_123407_smoke/context-pack -> 200 2026-04-30 08:36:21,478 INFO [battle_engine.api] GET /runs/run_20260430_061546_310365_blended_roi_intercept_v01_20260430_061537_smoke -> 200 2026-04-30 08:36:21,935 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033609_932144_food_roi_targeting_20260430_123407_smoke/context-pack -> 200 2026-04-30 08:36:42,421 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010314_753004_food_roi_targeting_20260430_100303_smoke/context-pack -> 200 2026-04-30 08:36:42,437 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034523_325878_dynamic_role_switching_20260430_124513_smoke/jobs -> 200 2026-04-30 08:36:42,886 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_896956_food_roi_targeting_20260430_123906_smoke/context-pack -> 200 2026-04-30 08:36:43,388 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_040900_887774_food_roi_targeting_20260430_130851_smoke/context-pack -> 200 2026-04-30 08:36:43,899 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033259_512102_capsule_power_play_20260430_033142_smoke/results -> 200 2026-04-30 08:36:44,404 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033359_406738_invader_intercept_defense_20260430_123336_smoke/results -> 200 2026-04-30 08:36:44,903 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/results -> 200 2026-04-30 08:36:45,407 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_041242_016596_invader_intercept_defense_20260430_130902_robustness/jobs -> 200 2026-04-30 08:36:51,142 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_040900_887774_food_roi_targeting_20260430_130851_smoke/results -> 200 2026-04-30 08:36:51,143 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033456_241269_food_roi_targeting_20260430_123407_smoke/results -> 200 2026-04-30 08:36:51,503 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033259_512102_capsule_power_play_20260430_033142_smoke/jobs -> 200 2026-04-30 08:36:52,000 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033609_932144_food_roi_targeting_20260430_123407_smoke/results -> 200 2026-04-30 08:36:52,601 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033213_419896_invader_intercept_defense_20260430_123120_smoke/jobs -> 200 2026-04-30 08:36:53,003 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033359_406738_invader_intercept_defense_20260430_123336_smoke/jobs -> 200 2026-04-30 08:36:53,503 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033824_214579_invader_intercept_defense_20260430_123802_smoke/jobs -> 200 2026-04-30 08:37:33,779 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010314_753004_food_roi_targeting_20260430_100303_smoke/jobs -> 200 2026-04-30 08:37:33,779 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_896956_food_roi_targeting_20260430_123906_smoke/jobs -> 200 2026-04-30 08:37:34,160 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_040900_887774_food_roi_targeting_20260430_130851_smoke/jobs -> 200 2026-04-30 08:37:34,660 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033456_241269_food_roi_targeting_20260430_123407_smoke/jobs -> 200 2026-04-30 08:37:35,160 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010314_753004_food_roi_targeting_20260430_100303_smoke/results -> 200 2026-04-30 08:37:35,661 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033915_896956_food_roi_targeting_20260430_123906_smoke/results -> 200 2026-04-30 08:37:36,165 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033609_932144_food_roi_targeting_20260430_123407_smoke/jobs -> 200 2026-04-30 08:37:41,648 INFO [battle_engine.api] GET /api/v1/candidates/smoke_baseline1_20260429_085822/source -> 200 2026-04-30 08:37:41,649 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_094833/source -> 200 2026-04-30 08:37:42,308 INFO [battle_engine.api] GET /api/v1/candidates/invader_intercept_defense_20260430_123802/source -> 200 2026-04-30 08:38:00,990 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033528_370365_risk_aware_courier_20260430_123510_smoke/context-pack -> 200 2026-04-30 08:38:00,997 INFO [battle_engine.api] GET /api/v1/candidates/portal_chokepoint_defense_20260430_093714/source -> 200 2026-04-30 08:38:01,310 INFO [battle_engine.api] GET /api/v1/candidates/dynamic_role_switching_20260430_130855/source -> 200 2026-04-30 08:38:18,351 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_040915_701316_invader_intercept_defense_20260430_130902_smoke/context-pack -> 200 2026-04-30 08:38:18,353 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043828_641050_dynamic_role_switching_20260430_133803_smoke/context-pack -> 200 2026-04-30 08:38:18,660 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044936_776930_invader_intercept_defense_20260430_134913_smoke/context-pack -> 200 2026-04-30 08:38:47,687 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043052_585517_capsule_power_play_20260430_043040_smoke/context-pack -> 200 2026-04-30 08:38:47,689 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/context-pack -> 200 2026-04-30 08:38:47,899 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043224_780229_invader_intercept_defense_20260430_133157_smoke/context-pack -> 200 2026-04-30 08:38:53,868 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033739_450058_capsule_power_play_20260430_033142_smoke/context-pack -> 200 2026-04-30 08:38:53,870 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/context-pack -> 200 2026-04-30 08:38:54,231 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/context-pack -> 200 2026-04-30 08:39:29,541 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010827_443332_invader_intercept_defense_20260430_100812_smoke/context-pack -> 200 2026-04-30 08:39:29,543 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010543_550141_food_roi_targeting_20260430_100532_smoke/context-pack -> 200 2026-04-30 08:39:30,044 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033420_786552_food_roi_targeting_20260430_123407_smoke/context-pack -> 200 2026-04-30 08:39:43,904 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033747_561049_capsule_power_play_20260430_033723_smoke/context-pack -> 200 2026-04-30 08:39:43,919 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033528_370365_risk_aware_courier_20260430_123510_smoke/jobs -> 200 2026-04-30 08:39:44,440 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033528_370365_risk_aware_courier_20260430_123510_smoke/results -> 200 2026-04-30 08:40:10,831 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_040915_701316_invader_intercept_defense_20260430_130902_smoke/results -> 200 2026-04-30 08:40:10,832 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043828_641050_dynamic_role_switching_20260430_133803_smoke/results -> 200 2026-04-30 08:40:11,386 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044936_776930_invader_intercept_defense_20260430_134913_smoke/results -> 200 2026-04-30 08:40:19,007 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043224_780229_invader_intercept_defense_20260430_133157_smoke/results -> 200 2026-04-30 08:40:19,007 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/results -> 200 2026-04-30 08:40:19,230 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043052_585517_capsule_power_play_20260430_043040_smoke/results -> 200 2026-04-30 08:40:50,614 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/results -> 200 2026-04-30 08:40:50,615 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010827_443332_invader_intercept_defense_20260430_100812_smoke/results -> 200 2026-04-30 08:40:51,250 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/results -> 200 2026-04-30 08:41:24,481 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033420_786552_food_roi_targeting_20260430_123407_smoke/results -> 200 2026-04-30 08:41:24,482 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010543_550141_food_roi_targeting_20260430_100532_smoke/results -> 200 2026-04-30 08:41:24,818 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033739_450058_capsule_power_play_20260430_033142_smoke/results -> 200 2026-04-30 08:41:37,421 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033747_561049_capsule_power_play_20260430_033723_smoke/results -> 200 2026-04-30 08:41:37,423 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_044936_776930_invader_intercept_defense_20260430_134913_smoke/jobs -> 200 2026-04-30 08:41:50,383 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_040915_701316_invader_intercept_defense_20260430_130902_smoke/jobs -> 200 2026-04-30 08:41:50,384 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043828_641050_dynamic_role_switching_20260430_133803_smoke/jobs -> 200 2026-04-30 08:42:20,270 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034326_621598_dynamic_role_switching_20260430_124314_smoke/jobs -> 200 2026-04-30 08:42:20,270 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043052_585517_capsule_power_play_20260430_043040_smoke/jobs -> 200 2026-04-30 08:42:49,460 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_034125_419956_invader_intercept_defense_20260430_124107_smoke/jobs -> 200 2026-04-30 08:42:49,461 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043224_780229_invader_intercept_defense_20260430_133157_smoke/jobs -> 200 2026-04-30 08:43:00,063 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010543_550141_food_roi_targeting_20260430_100532_smoke/jobs -> 200 2026-04-30 08:43:00,064 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033739_450058_capsule_power_play_20260430_033142_smoke/jobs -> 200 2026-04-30 08:43:07,916 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033747_561049_capsule_power_play_20260430_033723_smoke/jobs -> 200 2026-04-30 08:43:07,916 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033420_786552_food_roi_targeting_20260430_123407_smoke/jobs -> 200 2026-04-30 08:43:35,491 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033250_916621_invader_intercept_defense_20260430_123120_smoke/jobs -> 200 2026-04-30 08:43:35,491 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010827_443332_invader_intercept_defense_20260430_100812_smoke/jobs -> 200 2026-04-30 08:46:00,079 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043427_148052_invader_intercept_defense_20260430_133157_robustness/results -> 200 2026-04-30 08:46:00,081 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/jobs -> 200 2026-04-30 08:46:06,116 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043926_461681_invader_intercept_defense_20260430_133703_robustness/results -> 200 2026-04-30 08:47:16,921 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043427_148052_invader_intercept_defense_20260430_133157_robustness/jobs -> 200 2026-04-30 08:48:55,706 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033200_426444_capsule_power_play_20260430_033142_smoke/context-pack -> 200 2026-04-30 08:48:55,723 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043247_001452_capsule_power_play_20260430_043232_smoke/jobs -> 200 2026-04-30 08:50:13,033 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/results -> 200 2026-04-30 08:50:13,033 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043247_001452_capsule_power_play_20260430_043232_smoke/results -> 200 2026-04-30 08:50:13,326 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_043247_001452_capsule_power_play_20260430_043232_smoke/context-pack -> 200 2026-04-30 08:51:35,851 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033407_653391_dynamic_role_switching_20260430_123355_smoke/results -> 200 2026-04-30 08:51:35,853 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_033200_426444_capsule_power_play_20260430_033142_smoke/jobs -> 200 2026-04-30 08:51:36,099 INFO [battle_engine.api] GET /api/v1/runs/run_20260430_010353_059241_invader_intercept_defense_20260430_100338_smoke/context-pack -> 200