8e25bf8871cffec0cbebb0ad7b9bac85a2b7933c
When devices are synced from a peer, they now retain their original source scanner reference. This ensures: - Device positions are calculated relative to the scanner that detected them, not the local scanner - Moving the local scanner won't affect synced devices' positions - Popup shows "Source: <scanner_id>" for remotely-synced devices Database changes: - Added source_scanner_id, source_scanner_lat, source_scanner_lon columns to devices table - get_devices_since() includes source scanner info in sync data - bulk_update_devices() accepts and stores source scanner position - Added get_all_device_sources() method API changes: - /api/sync/devices GET includes scanner_lat and scanner_lon - /api/sync/devices POST accepts source_scanner_lat/lon - /api/device/floors includes sources dict Frontend changes: - loadDevicePositions() loads source scanner info - getDevicePosition() uses source scanner position for synced devices - Popup shows source scanner info for remotely-synced devices Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Description
No description provided
Languages
Python
63%
JavaScript
28.1%
CSS
5.9%
HTML
3%