refactor(ota): split OTA into Manager, Client, and FirmwareCDN#316
refactor(ota): split OTA into Manager, Client, and FirmwareCDN#316
Conversation
Separate OTA update system into three concerns: - OtaUpdateManager: watcher task, lifecycle, WiFi events, periodic checks - OtaUpdateClient: single update execution (fetch, flash, reboot) - FirmwareCDN: HTTP calls to firmware CDN (already existed, now wired in) Fix OtaUpdateClient to be a clean one-shot task instead of containing the watcher loop. Use FirmwareCDN::GetFirmwareReleaseInfo instead of inline HTTP. Fix FnProxy usage, wrong serialization namespaces, stale API calls, and missing includes. Remove _ prefix from all statics. Update FirmwareCDN to current HTTP API (tcb::span, ContentType constants). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
🦋 Changeset detectedLatest commit: af0df40 The changes in this PR will be included in the next version bump. Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Cpp-Linter Report
|
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Summary
OtaUpdateManager.cpp(780 lines) into three focused modulestcb::span,ContentTypeconstants,StringRemovePrefix)_prefix from all static functions and variablesTest plan
OpenShock-Core-V2(ESP32-S3)Wemos-D1-Mini-ESP32(ESP32)🤖 Generated with Claude Code