Adds device list panel with 1s real-time polling, device cards showing
connection type/Android version/battery, wireless connect dialog, and
DeviceInfoPanel with static fields fetched once and live fields (RAM,
battery, thermal, storage, IP) pulsed every second. Introduces the
selectedDeviceId vs profiledDeviceId split in Zustand store, Profile
toggle per card, and auto-clear on device disconnect. All non-device
feature panels gate on useActiveDevice and render NoDeviceSelected when
no device is being profiled.
Adds full ADB client, device manager, static DeviceInfo fetcher, and
live DeviceLiveStats poller. Exposes ListDevices, ConnectDevice,
DisconnectDevice, GetDeviceInfo, GetDeviceLiveStats as Wails-bound
methods with a 1s devices:changed event loop. Bundles ADB binary
infrastructure via //go:embed all:bin with runtime fallback chain.
Sets up monorepo with Wails desktop shell, Go backend, React/TS frontend, and Kotlin Android SDK skeleton.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>