Skip to content

chore: move fine-tuning config fields behind Advanced Settings (x-advanced) across ChuckBuilds plugins - #208

Merged
ChuckBuilds merged 39 commits into
mainfrom
claude/chuck-builds-plugin-config-65322r
Jul 17, 2026
Merged

chore: move fine-tuning config fields behind Advanced Settings (x-advanced) across ChuckBuilds plugins#208
ChuckBuilds merged 39 commits into
mainfrom
claude/chuck-builds-plugin-config-65322r

Conversation

@ChuckBuilds

@ChuckBuilds ChuckBuilds commented Jul 17, 2026

Copy link
Copy Markdown
Owner

Pull Request

Summary

Applies the "easy stuff up front, power stuff behind one click" treatment (LEDMatrix core PR #417's x-advanced mechanism) to the config schemas of 31 ChuckBuilds-authored plugins, consolidated into one PR (one commit per plugin) per maintainer request. Fields a first-time user doesn't need are flagged "x-advanced": true, so the core web UI collapses them into one "Advanced Settings" section at the bottom of each plugin's config page. Schema-data change only — no field removed or renamed, no required changed, no manager.py changes.

Default-enable changes per maintainer request (show content out of the box): an audit confirmed the Live/Recent/Upcoming display-mode toggles already default to enabled in every scoreboard. Four plugins shipped effectively blank and now enable their primary content by default: hockey-scoreboard (nhl.enabled: true), lacrosse-scoreboard (ncaa_mens.enabled: true), odds-ticker (NFL/NBA/MLB/NHL leagues on), and ledmatrix-leaderboard (NFL/NBA/MLB/NHL standings on) — matching baseball (MLB), basketball (NBA), football (NFL), and soccer (top-5 leagues), whose primary leagues were already on. Secondary/college leagues remain opt-in. All other defaults are untouched.

Olympics was dropped from this release: the plugin-safety harness exposed a pre-existing rendering overflow in it (content drawn past the right panel edge at 6 of 8 sizes) unrelated to this schema change; its uplift will follow separately alongside an overflow fix.

Plugin Version Advanced / total flat fields
soccer-scoreboard 2.3.0 → 2.3.1 353 / 492 (incl. custom_leagues)
baseball-scoreboard 1.19.1 → 1.19.2 197 / 227
basketball-scoreboard 1.7.0 → 1.7.1 165 / 211
hockey-scoreboard 1.4.0 → 1.4.1 148 / 177
football-scoreboard 2.8.2 → 2.8.3 112 / 128
lacrosse-scoreboard 1.4.0 → 1.4.1 93 / 127
ledmatrix-flights 1.12.4 → 1.12.5 67 / 93
afl-scoreboard 1.0.1 → 1.0.2 68 / 87
f1-scoreboard 1.3.25 → 1.3.26 54 / 67
nrl-scoreboard 1.0.3 → 1.0.4 39 / 60
masters-tournament 2.5.2 → 2.5.3 31 / 51
ledmatrix-leaderboard 1.2.1 → 1.2.2 25 / 51
stock-news 2.4.5 → 2.4.6 39 / 51
cricket-scoreboard 1.0.2 → 1.0.3 40 / 50
odds-ticker 1.1.5 → 1.1.6 27 / 48
countdown 3.1.2 → 3.1.3 23 / 36
ledmatrix-music 1.1.1 → 1.1.2 26 / 33
nfl-draft 1.3.12 → 1.3.13 28 / 33
ledmatrix-weather 2.5.2 → 2.5.3 13 / 25
geochron 1.0.1 → 1.0.2 17 / 24
news 1.0.9 → 1.0.10 17 / 24
clock-simple 1.0.5 → 1.0.6 10 / 20
mqtt-notifications 1.0.1 → 1.0.2 10 / 17
march-madness 1.0.1 → 1.0.2 10 / 17
on-air 1.2.2 → 1.2.3 6 / 16
text-display 1.1.1 → 1.1.2 5 / 15
static-image 1.0.4 → 1.0.5 7 / 13
calendar 1.1.4 → 1.1.5 7 / 12
tide-display 1.1.1 → 1.1.2 5 / 11
christmas-countdown 1.0.1 → 1.0.2 7 / 10
of-the-day 1.3.0 → 1.3.1 3 / 9

Deliberately skipped: hello-world (its 6 fields are its headline features), youtube-stats (its 5 fields are nearly all required setup), and olympics (pending overflow fix, see above). Non-ChuckBuilds plugins (7-segment-clock, ledmatrix-elections, ledmatrix-stocks, ufc-scoreboard, web-ui-info) were out of scope.

Type of change

  • Bug fix in an existing plugin
  • New plugin (also fill out the SUBMISSION.md checklist below)
  • New feature for an existing plugin
  • Documentation only
  • Repo-wide change (registry script, hook, top-level docs)
  • UX-only config schema reorganization across plugins (plus the default-enable changes noted above)

Plugin(s) affected

All 31 plugins in the table above.

Related issues

N/A — plugin-store-wide config UX uplift following LEDMatrix core PR #417. Replaces per-plugin PRs #202#207, closed in favor of this consolidated one.

Test plan

  • Loaded the plugin in LEDMatrix on real hardware
  • Loaded the plugin in LEDMatrix emulator mode (EMULATOR=true python3 run.py)
  • Rendered the plugin in the dev preview server (scripts/dev_server.py)
  • Verified the web UI configuration form against the schema
  • N/A — repo-wide / docs-only change

For every plugin: the schema still parses as strict JSON; verified programmatically (re-run after each merge with main) that recursively stripping the added x-advanced keys yields a schema deep-equal to the one on main — the only other differences anywhere are the default-enable flips in hockey / lacrosse / odds-ticker / ledmatrix-leaderboard described above; verified no object-type property carries the flag; update_registry.py synced plugins.json for exactly the touched plugins. The plugin-safety harness (CI "safety" job) passes for every included plugin — the earlier failure was olympics' pre-existing overflow, now dropped from the PR.

Required for plugin changes

  • Bumped version in each touched plugin's manifest.json (patch bump + versions[] changelog entry with ledmatrix_min, last_updated refreshed)
  • class_name in each manifest matches the actual class in manager.py (unchanged)
  • entry_point matches the real file (unchanged)
  • Updated READMEs if config keys changed (no keys changed — N/A)
  • config_schema.json is the source of truth — no new options added, only x-advanced render hints (+ default flips)
  • Registry synced (update_registry.py; plugins.json matches every bumped manifest)

Checklist

  • My commits follow the message convention in CONTRIBUTING.md
  • I read CONTRIBUTING.md and CODE_OF_CONDUCT.md
  • I've not committed any secrets

Notes for reviewer

One commit per plugin (chore(<plugin>): …), merge commits reconciling with main, and follow-up commits addressing CodeRabbit review (ledmatrix_min key in new changelog entries; soccer custom_leagues fields flagged to match predefined leagues) and the maintainer's defaults request.

Merges with main:

  • baseball-scoreboard's stat-pair fix shipped on main as 1.19.1 → this PR's baseball release is 1.19.2 (both changelog entries preserved); calendar's 1.1.4 title fix was already the base of this PR's 1.1.5.
  • ledmatrix-flights' edge-clamp fix (1.12.4) and ledmatrix-music's YTM fixes (1.1.1) shipped on main with the numbers this PR had used → re-bumped here to 1.12.5 and 1.1.2, both histories preserved.
  • of-the-day's x-style-elements feature (1.3.0) shipped on main → this PR rebased onto it as 1.3.1; its x-advanced flags re-verified against the new schema (the new customization block is a headline feature and keeps its own section, unflagged).

Common patterns flagged advanced everywhere: poll/update intervals with sane defaults; per-game/per-mode dwell-time durations; scroll_settings.*; dynamic_duration.* / mode_durations.* (off/null by default); exclude_teams spoiler filters; favorite_live_boost rotation weighting; background_service timeout/retry/worker tuning; customization.* per-element font/color/pixel-offset overrides; off-by-default niche toggles; deprecated/legacy fields kept for backward compatibility.

Always kept basic: enabled toggles, league/team/source selection (favorite_teams, credentials, coordinates, feed URLs, station IDs), show live/recent/upcoming mode toggles, top-level display_duration, primary x-widget interactions, and each plugin's headline differentiating settings.

Plugin-specific notes:

  • soccer-scoreboard: all 10 league blocks share an identical 45-field structure; flags applied uniformly, and custom_leagues item fields carry the same flags (table columns name/league_code/priority/enabled stay basic).
  • ledmatrix-flights: deprecated FlightAware fields and "(Advanced)"-titled OpenSky credentials flagged; rotation_views, data_source, skyaware_url, map center/radius stay basic.
  • afl-scoreboard / nrl-scoreboard: game_limits.* / display_options.* blocks confirmed in manager.py as unread legacy duplicates — demoted, left intact.
  • f1-scoreboard: the 8 display-mode section enabled toggles stay basic; per-section depth/detail knobs went advanced.
  • clock-simple: customization.*.font/font_size are never read by manager.py — flagged; golden-image tests untouched.
  • football-scoreboard: pre-existing versions[] gap (no 2.8.2 entry) left as-is.

Housekeeping: the now-obsolete per-plugin branches (claude/chuck-builds-plugin-config-65322r-<plugin>) couldn't be deleted through this environment's git proxy — they have no open PRs and can be bulk-deleted in the GitHub UI whenever convenient.

🤖 Generated with Claude Code

https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62

Summary by CodeRabbit

  • New Features

    • Advanced configuration options are now grouped behind a collapsible Advanced Settings section across many plugins, making standard setup screens easier to navigate.
    • Several sports plugins now enable selected leagues or competitions by default for fresh installations, including NHL, NCAA Men’s Lacrosse, and major professional leagues in standings and odds displays.
  • Bug Fixes

    • Refreshed plugin metadata and release information across the affected plugins, with updated versions and release dates.

claude added 8 commits July 17, 2026 00:30
…ced Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…anced Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…dvanced Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…ced Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…anced Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…anced Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…ced Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
… Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
@coderabbitai

coderabbitai Bot commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: f6117119-a31f-46b1-8c8f-cc9ff34a6e80

📥 Commits

Reviewing files that changed from the base of the PR and between 5b7989f and b2fd450.

📒 Files selected for processing (23)
  • plugins.json
  • plugins/baseball-scoreboard/manifest.json
  • plugins/calendar/manifest.json
  • plugins/countdown/manifest.json
  • plugins/football-scoreboard/manifest.json
  • plugins/hockey-scoreboard/config_schema.json
  • plugins/hockey-scoreboard/manifest.json
  • plugins/lacrosse-scoreboard/config_schema.json
  • plugins/lacrosse-scoreboard/manifest.json
  • plugins/ledmatrix-flights/manifest.json
  • plugins/ledmatrix-leaderboard/config_schema.json
  • plugins/ledmatrix-leaderboard/manifest.json
  • plugins/ledmatrix-music/manifest.json
  • plugins/ledmatrix-weather/manifest.json
  • plugins/news/manifest.json
  • plugins/odds-ticker/config_schema.json
  • plugins/odds-ticker/manifest.json
  • plugins/of-the-day/config_schema.json
  • plugins/of-the-day/manifest.json
  • plugins/on-air/manifest.json
  • plugins/soccer-scoreboard/config_schema.json
  • plugins/static-image/manifest.json
  • plugins/stock-news/manifest.json

📝 Walkthrough

Walkthrough

This PR annotates configuration schemas across many plugins with x-advanced metadata, updates selected defaults, and publishes synchronized plugin manifest and registry version updates dated 2026-07-17.

Changes

Advanced Settings metadata rollout

Layer / File(s) Summary
Configuration schema annotations
plugins/*/config_schema.json
Existing timing, display, filtering, customization, scrolling, service, and layout properties are marked with x-advanced: true; schema validation structure is otherwise largely preserved.
Default league enablement
plugins/hockey-scoreboard/config_schema.json, plugins/lacrosse-scoreboard/config_schema.json, plugins/ledmatrix-leaderboard/config_schema.json, plugins/odds-ticker/config_schema.json
Selected NHL, NCAA Men’s, NFL, NBA, MLB, and NHL defaults change from disabled to enabled.
Plugin release metadata
plugins/*/manifest.json, plugins.json
Plugin versions, release notes, last_updated, and registry latest_version values are updated for the 2026-07-17 releases.

Estimated code review effort: 4 (Complex) | ~60 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main UX-only schema change across the plugin set.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/chuck-builds-plugin-config-65322r

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.

claude added 2 commits July 17, 2026 00:32
…Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
… Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
@codacy-production

codacy-production Bot commented Jul 17, 2026

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

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.

claude added 12 commits July 17, 2026 11:04
…dvanced Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…nced Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…tings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…nced Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…ttings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…d Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…ings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…ced Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…ngs (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…ngs (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…(x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…ettings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
claude added 11 commits July 17, 2026 11:12
…nced Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…s (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…ettings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…ettings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…ngs (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…ings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…ettings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…tings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…anced Settings (x-advanced)

UX-only schema reorganization for a quicker first-time setup. No fields
removed or renamed, no defaults changed, no validation change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…; re-bump baseball x-advanced release to 1.19.2

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 6

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@plugins/baseball-scoreboard/manifest.json`:
- Around line 33-38: Replace the ledmatrix_min_version field with ledmatrix_min
in the version entries for plugins/baseball-scoreboard/manifest.json lines
33-38, plugins/calendar/manifest.json lines 38-43, and
plugins/news/manifest.json lines 23-28, preserving the existing values.

In `@plugins/countdown/manifest.json`:
- Around line 24-29: Rename the ledmatrix_min_version field to ledmatrix_min in
the new release entries of plugins/countdown/manifest.json (lines 24-29),
plugins/on-air/manifest.json (lines 14-19), and
plugins/static-image/manifest.json (lines 21-26), ensuring each entry contains
released, version, and ledmatrix_min.

In `@plugins/football-scoreboard/manifest.json`:
- Around line 27-32: Rename the ledmatrix_min_version key to ledmatrix_min in
the top changelog entry of plugins/football-scoreboard/manifest.json (lines
27-32) and plugins/stock-news/manifest.json (lines 28-33), without changing the
associated version, release date, or notes.

In `@plugins/ledmatrix-weather/manifest.json`:
- Line 32: Update the new version entry in the manifest’s versions array to
rename the ledmatrix_min_version field to ledmatrix_min, preserving the existing
minimum version value.

In `@plugins/odds-ticker/manifest.json`:
- Around line 23-28: Update the new top entry in the manifest’s versions array
to replace the ledmatrix_min_version key with ledmatrix_min, preserving its
existing version constraint and all other entry fields.

In `@plugins/soccer-scoreboard/config_schema.json`:
- Around line 175-176: Apply the same advanced metadata used by
predefined-league fields to the corresponding custom_leagues properties,
including exclusions, display modes, durations, filtering boosts, and
dynamic-duration settings. Update each equivalent custom-league schema field
with the existing advanced marker while preserving its current description and
validation rules.
🪄 Autofix (Beta)

❌ Autofix failed (check again to retry)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 533bb1bb-84f5-45f0-9a81-2ac43c0e1115

📥 Commits

Reviewing files that changed from the base of the PR and between e3acc66 and 5b7989f.

📒 Files selected for processing (65)
  • plugins.json
  • plugins/afl-scoreboard/config_schema.json
  • plugins/afl-scoreboard/manifest.json
  • plugins/baseball-scoreboard/config_schema.json
  • plugins/baseball-scoreboard/manifest.json
  • plugins/basketball-scoreboard/config_schema.json
  • plugins/basketball-scoreboard/manifest.json
  • plugins/calendar/config_schema.json
  • plugins/calendar/manifest.json
  • plugins/christmas-countdown/config_schema.json
  • plugins/christmas-countdown/manifest.json
  • plugins/clock-simple/config_schema.json
  • plugins/clock-simple/manifest.json
  • plugins/countdown/config_schema.json
  • plugins/countdown/manifest.json
  • plugins/cricket-scoreboard/config_schema.json
  • plugins/cricket-scoreboard/manifest.json
  • plugins/f1-scoreboard/config_schema.json
  • plugins/f1-scoreboard/manifest.json
  • plugins/football-scoreboard/config_schema.json
  • plugins/football-scoreboard/manifest.json
  • plugins/geochron/config_schema.json
  • plugins/geochron/manifest.json
  • plugins/hockey-scoreboard/config_schema.json
  • plugins/hockey-scoreboard/manifest.json
  • plugins/lacrosse-scoreboard/config_schema.json
  • plugins/lacrosse-scoreboard/manifest.json
  • plugins/ledmatrix-flights/config_schema.json
  • plugins/ledmatrix-flights/manifest.json
  • plugins/ledmatrix-leaderboard/config_schema.json
  • plugins/ledmatrix-leaderboard/manifest.json
  • plugins/ledmatrix-music/config_schema.json
  • plugins/ledmatrix-music/manifest.json
  • plugins/ledmatrix-weather/config_schema.json
  • plugins/ledmatrix-weather/manifest.json
  • plugins/march-madness/config_schema.json
  • plugins/march-madness/manifest.json
  • plugins/masters-tournament/config_schema.json
  • plugins/masters-tournament/manifest.json
  • plugins/mqtt-notifications/config_schema.json
  • plugins/mqtt-notifications/manifest.json
  • plugins/news/config_schema.json
  • plugins/news/manifest.json
  • plugins/nfl-draft/config_schema.json
  • plugins/nfl-draft/manifest.json
  • plugins/nrl-scoreboard/config_schema.json
  • plugins/nrl-scoreboard/manifest.json
  • plugins/odds-ticker/config_schema.json
  • plugins/odds-ticker/manifest.json
  • plugins/of-the-day/config_schema.json
  • plugins/of-the-day/manifest.json
  • plugins/olympics/config_schema.json
  • plugins/olympics/manifest.json
  • plugins/on-air/config_schema.json
  • plugins/on-air/manifest.json
  • plugins/soccer-scoreboard/config_schema.json
  • plugins/soccer-scoreboard/manifest.json
  • plugins/static-image/config_schema.json
  • plugins/static-image/manifest.json
  • plugins/stock-news/config_schema.json
  • plugins/stock-news/manifest.json
  • plugins/text-display/config_schema.json
  • plugins/text-display/manifest.json
  • plugins/tide-display/config_schema.json
  • plugins/tide-display/manifest.json

Comment thread plugins/baseball-scoreboard/manifest.json
Comment thread plugins/countdown/manifest.json
Comment on lines +27 to +32
{
"released": "2026-07-17",
"version": "2.8.3",
"ledmatrix_min_version": "2.0.0",
"notes": "Config schema reorganized for a clearer setup experience: fine-tuning fields moved behind the web UI's collapsed Advanced Settings section (x-advanced). UX-only; no fields, defaults, or behavior changed."
},

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Use ledmatrix_min instead of ledmatrix_min_version.

As per coding guidelines, the new version entry in manifest.json must use ledmatrix_min for the minimum LEDMatrix version requirement. Both manifests mistakenly use the ledmatrix_min_version key in their top changelog entries.

  • plugins/football-scoreboard/manifest.json#L27-L32: Rename "ledmatrix_min_version" to "ledmatrix_min".
  • plugins/stock-news/manifest.json#L28-L33: Rename "ledmatrix_min_version" to "ledmatrix_min".
📝 Proposed fixes

For plugins/football-scoreboard/manifest.json:

-      "ledmatrix_min_version": "2.0.0",
+      "ledmatrix_min": "2.0.0",

For plugins/stock-news/manifest.json:

-      "ledmatrix_min_version": "2.0.0"
+      "ledmatrix_min": "2.0.0"
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
{
"released": "2026-07-17",
"version": "2.8.3",
"ledmatrix_min_version": "2.0.0",
"notes": "Config schema reorganized for a clearer setup experience: fine-tuning fields moved behind the web UI's collapsed Advanced Settings section (x-advanced). UX-only; no fields, defaults, or behavior changed."
},
{
"released": "2026-07-17",
"version": "2.8.3",
"ledmatrix_min": "2.0.0",
"notes": "Config schema reorganized for a clearer setup experience: fine-tuning fields moved behind the web UI's collapsed Advanced Settings section (x-advanced). UX-only; no fields, defaults, or behavior changed."
},
📍 Affects 2 files
  • plugins/football-scoreboard/manifest.json#L27-L32 (this comment)
  • plugins/stock-news/manifest.json#L28-L33
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@plugins/football-scoreboard/manifest.json` around lines 27 - 32, Rename the
ledmatrix_min_version key to ledmatrix_min in the top changelog entry of
plugins/football-scoreboard/manifest.json (lines 27-32) and
plugins/stock-news/manifest.json (lines 28-33), without changing the associated
version, release date, or notes.

Source: Coding guidelines

Comment thread plugins/ledmatrix-weather/manifest.json Outdated
Comment thread plugins/odds-ticker/manifest.json
Comment thread plugins/soccer-scoreboard/config_schema.json
claude added 4 commits July 17, 2026 12:28
…elog entries; flag soccer custom_leagues fields

Renames ledmatrix_min_version to ledmatrix_min in the 12 versions[] entries
this PR added (guideline key; historical entries untouched), and applies the
same x-advanced flags to soccer-scoreboard's custom_leagues item fields that
the 10 predefined league blocks already have.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
… overflow fix

Per maintainer request, make scoreboards show content out of the box:
hockey-scoreboard now defaults nhl.enabled=true and lacrosse-scoreboard
defaults ncaa_mens.enabled=true, matching baseball (MLB), basketball
(NBA), football (NFL) and soccer (top-5 leagues), whose primary leagues
were already on. Live/Recent/Upcoming display modes were audited across
all scoreboards and already default to enabled everywhere.

Olympics is removed from this release: the plugin-safety harness exposed
a pre-existing rendering overflow (content drawn past the right panel
edge at 6 sizes) unrelated to the schema change; its x-advanced uplift
will follow in a separate PR alongside an overflow fix.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
… it from this release

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
…efault

Both plugins shipped with every league disabled, so a fresh install
displayed nothing. The four major US leagues are now on by default,
matching the primary-league-on convention across the scoreboards;
college sports and MiLB remain opt-in.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
@coderabbitai

coderabbitai Bot commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Note

Autofix is a beta feature. Expect some limitations and changes as we gather feedback and continue to improve it.

Cannot run autofix: This PR has merge conflicts.

Please resolve the conflicts with the base branch and try again.

Alternatively, use @coderabbitai resolve merge conflict to automatically resolve the conflicts.

claude and others added 2 commits July 17, 2026 16:26
…style elements; re-bump collided releases

flights 1.12.4 and music 1.1.1 shipped on main with the same numbers this
PR had used, so this PR's releases become 1.12.5 and 1.1.2 with both
changelog entries preserved. of-the-day rebased onto main's 1.3.0
(x-style-elements) as 1.3.1; its x-advanced flags re-verified against the
new schema.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LFNedFLmEcSHqSHG9Lwa62
@ChuckBuilds
ChuckBuilds merged commit 391a2be into main Jul 17, 2026
1 of 4 checks passed
@ChuckBuilds
ChuckBuilds deleted the claude/chuck-builds-plugin-config-65322r branch August 5, 2026 17:31
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.

2 participants