=== ROUTER STEP FACTS CONTRACT VALIDATION === step=STEP_045C_REBALANCER_FORCED_IMBALANCE_SIMULATION_DRYRUN decision=PASS all_ok=True structure_ok=True success_ok=True expected_absence_ok=True blockers_ok=True success_checks_count=49 expected_absence_count=16 warnings: - STEP_045C is simulation-only and does not write DB, create jobs, or touch selector/WG runtime. - Synthetic imbalance validates that idle peers can be reassigned while active peers stay pinned. - Rebalancer --apply remains intentionally refused.