Give WLED devices WLED instructions in step 3 - #26
Conversation
Step 3 was hardcoded ESPHome copy: discovered ESPHome device, dashboard_import, Take control in the ESPHome Dashboard. None of that applies to the M-1, which runs WLED. Step 3 now resolves the firmware ecosystem per variant, the same way repos and installers already resolve: optional per-variant "platforms" map, then the device-level "platform", then esphome. The M-1 sets platform: "wled" and gets the WLED onboarding (WLED-AP fallback, discovered WLED integration, WLED web UI for effects, Manual OTA Update for later firmware). Every other device has no platform field and renders exactly the markup it did before. The M-1 hardware can run ESPHome, we just do not offer a build yet. When we do, adding the manifest as a variant plus one "platforms" entry switches step 3 back to the ESPHome instructions for that variant, with no code change. Step 3 moved into a re-rendered #step3-slot so it follows the variant toggle in both directions. Validator gained check_platform and check_platforms_shape: an unknown platform value or a platforms key naming a nonexistent variant is an error, since either would silently show the wrong ecosystem's instructions. Tests: a WLED device must not show any ESPHome adoption text, and a synthesized mixed-platform device (devices.json intercepted) must swap step 3 both ways on the variant toggle, so the future ESPHome path is covered before it ships. Verified: scripts/validate_registry.py OK, 44 python tests, 28 playwright tests, 0 skipped. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
Warning Review limit reached
Next review available in: 35 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 Plus Run ID: 📒 Files selected for processing (7)
✨ 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 |
Step 3 was hardcoded ESPHome copy: discovered ESPHome device, dashboard_import,
Take control in the ESPHome Dashboard. None of that applies to the M-1, which
runs WLED.
Step 3 now resolves the firmware ecosystem per variant, the same way repos and
installers already resolve: optional per-variant "platforms" map, then the
device-level "platform", then esphome. The M-1 sets platform: "wled" and gets
the WLED onboarding (WLED-AP fallback, discovered WLED integration, WLED web UI
for effects, Manual OTA Update for later firmware). Every other device has no
platform field and renders exactly the markup it did before.
The M-1 hardware can run ESPHome, we just do not offer a build yet. When we do,
adding the manifest as a variant plus one "platforms" entry switches step 3 back
to the ESPHome instructions for that variant, with no code change. Step 3 moved
into a re-rendered #step3-slot so it follows the variant toggle in both
directions.
Validator gained check_platform and check_platforms_shape: an unknown platform
value or a platforms key naming a nonexistent variant is an error, since either
would silently show the wrong ecosystem's instructions.
Tests: a WLED device must not show any ESPHome adoption text, and a synthesized
mixed-platform device (devices.json intercepted) must swap step 3 both ways on
the variant toggle, so the future ESPHome path is covered before it ships.
Verified: scripts/validate_registry.py OK, 44 python tests, 28 playwright tests,
0 skipped.
🤖 Generated with Claude Code