Skip to content

docs(lacrosse-scoreboard): document all 170 settings, with real renders - #428

Open
ChuckBuilds wants to merge 2 commits into
mainfrom
docs/lacrosse-readme
Open

docs(lacrosse-scoreboard): document all 170 settings, with real renders#428
ChuckBuilds wants to merge 2 commits into
mainfrom
docs/lacrosse-readme

Conversation

@ChuckBuilds

Copy link
Copy Markdown
Owner

The lacrosse README documented a fraction of the plugin's 170 settings and had no images. It now covers every schema leaf — verified with a token audit against config_schema.json — and shows the three men's display modes, both leagues side by side, the show_records toggle, and the live card at four panel sizes.

Structure

The ncaa_mens and ncaa_womens config blocks are identical in every setting except one: ncaa_mens defaults to enabled: true and ncaa_womens to false. Documenting a single <league> table rather than two byte-identical sets keeps 104 of the 170 leaves readable instead of duplicated, which is the point of the exercise.

What the old README did not say

  • display_options.show_records and show_ranking default to true per league, while defaults.show_records and defaults.show_ranking default to false — and the per-league copy wins (manager.py:795, resolve_value). Because the web UI writes schema defaults on save, a saved config already carries the per-league true, so changing the defaults copy appears to do nothing. Documented in the settings reference and again under troubleshooting, where a user would actually look.
  • The favorites key is teams.favorite_teams_only, not show_favorite_teams_only as in the single-league scoreboards, and it defaults to off here rather than on. Easy to carry the wrong key over from another scoreboard's config.
  • other_games_min_quality is live in this plugin. NCAA lacrosse has a national poll to rank against, so its ranked default really does restrict non-favorite games — unlike in nrl, where the same setting is inert. other_games_divisions stays inert; it is a college football taxonomy.

mode_durations and customization.favorite_result_colors are read by the core (src/common/sports_card.py), not by this plugin. The README says where, so the next person does not delete them as dead.

Renders

From docs/assets/lacrosse-scoreboard/shots.json. Lacrosse differs from nrl: it keeps one manager per league and mode as a plain attribute (ncaa_mens_live, ncaa_womens_recent, …) rather than in a _managers dict, and only constructs them when that league's enabled flag is set — so the fixture turns both leagues on. These are real ESPN crests (Yale, Dartmouth, Quinnipiac, Harvard), not the grey placeholders nrl had.

One fixture correction worth noting: the switch-mode recent card reads game.get("period_text", "Final"), a .get default rather than a falsy check, so an empty-string period_text draws nothing. Real data never hits that — lacrosse.py:174 sets "Final" for any post-state game — so the fixture now carries what the extractor actually produces rather than an unreachable state.

Checks

  • check_plugin.py: zero FAIL (16 checks; the harness exercises the men's recent and upcoming modes)
  • Config-token audit: 170 schema leaves, 0 undocumented
  • Every example config validated against the schema, including nesting depth and additionalProperties
  • Every documented default read back from config_schema.json
  • Manifest bumped 1.24.1 -> 1.24.2 (PATCH, docs-only), plugins.json regenerated by update_registry.py

Does not touch the shared sports.py lineage.

Dependency

Carries the docs-tooling commits from #423 so this branch renders standalone; identical in both branches and they collapse on merge.

🤖 Generated with Claude Code

The README documented a fraction of the plugin's 170 settings and had no
images. It now covers every schema leaf -- verified by a token audit --
and shows the three men's display modes, both leagues side by side, the
show_records toggle, and the card at four panel sizes.

The two league blocks are identical in every setting except one:
ncaa_mens defaults to enabled and ncaa_womens does not. Documenting one
<league> table rather than two identical sets keeps 104 of the 170
leaves readable instead of duplicated.

Two things the old README did not say:

- display_options.show_records and show_ranking default to true per
  league, while defaults.show_records and defaults.show_ranking default
  to false, and the per-league copy wins. Because the UI writes schema
  defaults on save, changing the defaults copy appears to do nothing.
  Both the settings reference and troubleshooting now say so.
- The favorites key here is teams.favorite_teams_only, not
  show_favorite_teams_only as in the single-league scoreboards, and it
  defaults to off rather than on.

other_games_min_quality is live in this plugin -- NCAA lacrosse has a
national poll to rank against -- unlike in nrl, where it is inert.
other_games_divisions stays inert; it is a college football taxonomy.

Renders come from docs/assets/lacrosse-scoreboard/shots.json. Lacrosse
keeps one manager per league and mode as a plain attribute rather than
in a dict, and only builds them when that league's enabled flag is set,
so the fixture turns both leagues on. Real ESPN crests, not placeholders.

check_plugin.py passes with no FAIL.

Carries the docs-tooling changes from #423, which this render depends on.

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

coderabbitai Bot commented Sep 4, 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: Team

Run ID: 48e2c48d-4bb7-4e14-85f9-47ed1fa317b3


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

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 18 complexity

Metric Results
Complexity 18

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.

The rewrite dropped the breaking-change notice from 1.1.0, when the
display modes gained a lax_ prefix to stop colliding with the NCAA
hockey modes. Anyone still holding an old pin in display_durations or
rotation_order needs it, and the CHANGELOG mapping is the only other
place it is written down.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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