=== STEP_046C RESULT === step=STEP_046C_AGENT_PEER_EGRESS_REASSIGN_DRYRUN_HANDLER_IMPLEMENT mode=INSTALL_STANDALONE_DRYRUN_HANDLER_FOR_PEER_EGRESS_REASSIGN_NO_SERVICE_HOOK handler: path=/opt/wg-access/agent/wg_access_peer_egress_reassign_dryrun.py mode=dryrun-no-write handler_version=step046c-v1 validation_all_ok=True action_is_peer_egress_reassign=True db_node_id_matches=True db_peer_is_idle=True db_peer_not_forced=True to_target_class_matches_payload=True dryrun: target_count=5 lease_rows=5 active_count=1 idle_count=4 action_count=0 noop=True apply_preview: mode=apply-preview-no-write action_count=0 would_update_lease_rows=0 would_create_jobs=0 db_summary: active_leases=1 enabled_peers=5 forced_leases=0 idle_leases=4 lease_rows=5 pending_jobs=0 safety: standalone dry-run handler only production agent service not changed real --apply refused no DB writes no jobs no selector/WG runtime changes timer remains enabled/active success_checks: pre_state_collected=True pre_timer_enabled_active=True wrapper_executable=True core_executable=True sampler_executable=True help_mentions_apply_preview=True dryrun_ok=True dryrun_mode=True dryrun_noop_expected=True dryrun_action_count_zero=True dryrun_rows_all_have_peer_id=True apply_preview_ok=True apply_preview_no_write_mode=True apply_preview_zero_actions=True apply_preview_zero_updates=True apply_preview_zero_jobs=True handler_install_ok=True handler_executable_seen=True handler_sha_seen=True handler_help_seen=True handler_synthetic_dryrun_ok=True handler_mode_dryrun=True handler_validation_all_ok=True handler_action_recognized=True handler_peer_id_present=True handler_node_id_matches=True handler_peer_idle=True handler_peer_not_forced=True handler_target_change_valid=True handler_no_private_material_required=True handler_plans_selector_change_only=True handler_no_wg_key_change=True handler_no_vm101_change=True handler_no_client_config=True real_apply_refused=True sampler_post_ok=True sampler_post_rows_five=True sampler_post_zero_delta_rows_five=True sampler_post_active_by_new_delta_zero=True sampler_post_selector_match_five=True db_enabled_peers_five=True db_lease_rows_five=True db_active_one=True db_idle_four=True db_forced_zero=True db_pending_zero=True vm100_runtime_collected=True vm100_peer_count_five=True vm100_allowed_ip_count_five=True vm100_uci_peer_sections_zero=True vm101_slot_map_collected=True vm101_cs1_to_vpn3_seen=True vm101_cs2_to_vpn4_seen=True vm101_cs3_to_vpn5_seen=True vm101_cs4_to_vpn1_seen=True vm101_cs5_to_vpn2_seen=True post_timer_enabled_active=True public_report_created=True public_index_rebuilt=True expected_absence: private_material_published=False manual_agent_service_start_used=False vm100_changed=False vm101_changed=False vm121_db_changed=False production_agent_service_changed=False selector_changed=False wg_peer_runtime_changed=False client_config_published=False activity_eval_written_to_db=False rebalancer_applied=False jobs_created=False handler_wrote_db=False handler_job_status_changed=False handler_hooked_production_service=False apply_preview_wrote_db=False real_apply_enabled=False peer_id_null_in_rows=False timer_disabled=False new_traffic_delta_seen=False all_ok=True decision=PASS_STEP_046C_AGENT_PEER_EGRESS_REASSIGN_DRYRUN_HANDLER_IMPLEMENT next_step=STEP_046D_AGENT_PEER_EGRESS_REASSIGN_PRODUCTION_HANDLER_DESIGN LOCAL_REPORT=http://127.0.0.1:8099/r/e94a0859747d7b96f29c7fdafc2d0351ba603bb0a7e9e5a4/20260709-213403_step046c_agent_peer_egress_reassign_dryrun_handler_implement/ TRYCF_REPORT=https://helena-background-beam-harry.trycloudflare.com/r/e94a0859747d7b96f29c7fdafc2d0351ba603bb0a7e9e5a4/20260709-213403_step046c_agent_peer_egress_reassign_dryrun_handler_implement/