Bugs corrigés:
- launcher.php passait SSID/PASS au shell sans escapeshellarg(): un
mot de passe avec $/&/;/espace cassait silencieusement la commande
avant que nmcli ne soit appelé. Cause probable des retours clients
"ça bloque au cliquer sur Se connecter".
- wifi.html n'encodait pas SSID/PASS dans l'URL: caractères &/+/=
corrompaient la requête.
Observabilité:
- Nouveau fichier logs/wifi_connect.log avec timestamps stricts
- launcher.php log la requête entrante (IP, longueurs SSID/PASS)
- connexion.sh: fonction log_wc(), snapshots NM avant/après,
capture stdout+stderr nmcli, code retour explicite, fallback SSID
dérivé du serial si deviceName indisponible.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- Fix deviceID overwrite bug: preserve manual configuration across reboots
- Use deviceName as hotspot SSID for better device identification
- Implement live WiFi scanning instead of reading stale CSV data
- Improve hotspot management with dynamic connection detection
- Add database status updates on WiFi connection success/failure
- Hide password in logs for better security
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>