Bug Fixes
WiFi 5GHz Scanning — Three root causes fixed
Deep scan 'All bands' silently dropped 5GHz (utils/wifi/scanner.py)
When selecting "All (2.4 + 5 GHz)" in the band dropdown, the v2 deep scan passed no --band flag to airodump-ng, causing it to default to 2.4GHz-only scanning. Fixed by passing --band abg when band is set to 'all'.
APs with delayed channel resolution stuck at band='unknown' (utils/wifi/scanner.py)
airodump-ng occasionally reports channel -1 or 0 in early CSV polls before resolving the correct channel. APs first seen under these conditions had band='unknown' permanently, making them invisible to the 5GHz filter. Fixed by backfilling channel, frequency_mhz, and band in _update_access_point when a subsequent observation resolves the channel.
Legacy scan route combined mutually exclusive --band and -c flags (routes/wifi.py)
The legacy /wifi/scan/start route unconditionally appended --band to the airodump-ng command even when -c (specific channels) was also specified, and placed the interface argument before -c. Fixed so --band is only added when no explicit channel list is given, with the interface always as the final argument.
TSCM
Fix sweep module variable scoping (routes/tscm/sweep.py)
Route handlers accessed module-level _sweep_running, _current_sweep_id, and tscm_queue via bare names, causing UnboundLocalError from closure variable shadowing. Fixed by importing the package explicitly in each handler.
UI
Remove stale progress bar call (templates/index.html)
Removed orphaned tscmProgressBar.style.width assignment referencing a removed element.