e28be26ab3
- HTTPException import added (was causing 500 on missing dashboard) - game_manager.remove_plugin() restored (was AttributeError) - api.js checks HTTP status codes, fails fast on errors - sidebar game highlight only matches selected gameId - scene resize handler uses stored canvas dims (was NaN) - forwarder socket properly closed on listener stop - telemetry port: use_unified_port toggle, off = per-game port, auto-restart on switch