镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

feat(weather): the radar animates in the Vegas ticker (core 3.8.0) - #586

Merged
ChuckBuilds merged 5 commits into
mainfrom
claude/weather-radar-vegas
Oct 1, 2026
Merged

ChuckBuilds merged 5 commits into
mainfrom
claude/weather-radar-vegas

Conversation

@ChuckBuilds

Copy link
Copy Markdown
Owner

The precipitation radar now plays in the Vegas ticker, animated while it scrolls past, after the forecast cards. Before, the radar never appeared in Vegas mode.

  • One live element (LEDMatrix 3.8.0 live Vegas elements, a plugin API for content that changes while it scrolls LEDMatrix#696/#697): every frame is composed once when new radar data arrives; the ticker's redraws only pick the frame for the moment, on the full-screen radar's timing, without the plugin's lock.
  • A loop frame is byte-identical to what the full-screen radar shows; composing never touches the shared viewport or playback state.
  • radar_in_vegas (default on). Floor 3.8.0: merge after that release; on an older core the ticker keeps showing the cards only.

Test plan

  • test_vegas_radar.py (24); plugin suite 10 pass / 1 skip
  • manifest, registry, min-core and version-bump guards

🤖 Generated with Claude Code

After the forecast cards the Vegas ticker now shows the precipitation radar,
playing the full-screen radar's loop while it scrolls past. Before, the radar
never appeared in Vegas mode at all.

- get_vegas_elements(): the forecast cards (get_vegas_content's, placed as
  plain content) and one live 'radar' element, refresh_hz = 1/frame_seconds.
- RadarFetcher.compose_loop(): every frame finished once (frame over the map,
  label, progress dots) into an immutable RadarLoop, recomposed only when the
  frames or the map change (loop_key). It composes at the size the update
  thread fetches for and never touches the viewport, which would drop every
  built frame. get_radar_image's composition is shared (_compose), so a loop
  frame is byte-identical to what the full-screen radar shows.
- redraw_vegas_element('radar', ...): a lookup of the frame for `at`, on the
  full-screen timing (frame_seconds each, the newest held loop_pause_seconds
  longer); no drawing, no lock, no fetcher access.
- radar_in_vegas (default true). Floor 3.8.0; on an older core the ticker
  keeps showing the cards only.

Also lists core main's new modules in check_min_core_version (as on the other
plugin PRs), so the guard's own test passes.

test_vegas_radar.py (24): loop composition and timing, byte parity with the
full-screen radar, the viewport and playback untouched, the memo, the
elements, the lock-free redraw. It caught the memo recomposing every time
(the key named the lazily built map before it existed).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: b6ad103b-1d72-4ca6-9f18-b851329cc80e

  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Autopilot is currently an internal CodeRabbit preview.


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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@codacy-production

codacy-production Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 600 complexity

Metric Results
Complexity 600

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

ChuckBuilds and others added 4 commits October 1, 2026 08:29
@ChuckBuilds
ChuckBuilds merged commit 555e63f into main Oct 1, 2026
4 checks passed
@ChuckBuilds
ChuckBuilds deleted the claude/weather-radar-vegas branch October 1, 2026 13:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant