1:1 复刻 iOS:OTA 烧录前主动 getDeviceInfo 取实时电量,<40% 抛 DuooomiBleError.BatteryTooLow(current,required)、不发任何字节。 错误消息字符串与 iOS 逐字一致;新增 MIN_BATTERY_FOR_UPGRADE=40。 协程版线性实现(无 callback 拆分)。README 同步错误处理/升级段。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>