Default the Firmware Channel select to Beta on beta-channel builds#46
Default the Firmware Channel select to Beta on beta-channel builds#46bharvey88 wants to merge 1 commit into
Conversation
|
Warning Review limit reached
Next review available in: 56 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (4)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
A fresh flash has no stored channel preference, so the select fell back to "Stable" even on firmware obtained from the beta channel - and the update entity then offered the older stable build as a "downgrade". Make initial_option a substitution (firmware_channel_default, still "Stable") and add beta-channel/ wrapper yamls that override it to "Beta"; build-beta.yml now builds those wrappers. Stable (Pages) builds are unchanged. Same pattern as ApolloAutomation/MSR-1#92. Version: 26.7.8.2 🤖 Generated with [Claude Code](https://claude.com/claude-code)
be5c330 to
ad7c126
Compare
|
Superseded - the wrapper + firmware_channel_default work here is carried verbatim in the unified PR (see the new PR referencing this one), together with the boot-time apply_ota_source, the standard update-button flow, the 5120/2048 buffer bump, and the fleet-wide runtime Bluetooth Proxy switch. |
Aligns the live CAST-1 channel implementation with the pattern MSR-1 shipped as 26.7.9.1 (ApolloAutomation/MSR-1 #100/#103/#104), folding in the beta-channel-default wrapper work: - NEW: bluetooth_proxy + esp32_ble_tracker compile into both images; a "Bluetooth Proxy" switch (default off, persisted, re-applied at boot) starts/stops scanning at runtime. The existing CONFIG_BT_* sdkconfig options put BT allocations in PSRAM, keeping internal RAM free for the audio pipelines. - apply_ota_source is now re-applied at boot (on_boot -100) - previously a reboot left the update entity on its compile-time default source. URLs come from stable/beta manifest-base substitutions; the Type (WiFi/Ethernet) x Channel (Stable/Beta) cross is unchanged. - Firmware Update button upgraded from bare perform(true) to the standard flow (apply_ota_source + fetch window before perform) - http_request consolidated into Core.yaml and buffers raised to the proven sizes (rx 4096->5120 for GitHub's ~3.6KB CSP header line, tx 1024->2048 for the ~850-char signed-redirect query) - beta-channel/ wrappers default the select to Beta on beta builds (from the beta-channel-default branch); build-beta.yml builds them - version 26.7.12.1 Supersedes #46. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Version: 26.7.8.2
What does this implement/fix?
A fresh flash has no stored channel preference, so the Firmware Channel select fell back to "Stable" even on firmware obtained from the beta channel - and the update entity then offered the older stable build as a "downgrade".
initial_optionbecomes a substitution (firmware_channel_default, still"Stable"- stable/Pages builds are byte-identical to before).beta-channel/wrapper yamls override it to"Beta", same override pattern the repos already use for variant wrappers;build-beta.ymlnow builds the wrappers.beta-fwrelease page) boots with the select on Beta and keeps tracking beta.restore_valuesemantics unchanged - the default only applies when no stored choice exists.Wrapper renders verified locally: base
CAST-1_W.yaml->initial_option: Stable,beta-channel/CAST-1_W.yaml->initial_option: Beta. All four configs validate on ESPHome 2026.6.4.Same pattern as ApolloAutomation/MSR-1#92.
Types of changes
Checklist / Checklijst:
If user-visible functionality or configuration variables are added/modified:
🤖 Generated with Claude Code