docs(static-image): document every setting, with real renders - #367
Open
ChuckBuilds wants to merge 1 commit into
Open
docs(static-image): document every setting, with real renders#367ChuckBuilds wants to merge 1 commit into
ChuckBuilds wants to merge 1 commit into
Conversation
Documentation only; no behaviour change. All 23 settings are covered, including the per-image schedule object the old README never mentioned. Two of them would otherwise be discovered by staring at a panel that never changes: - rotation_mode "date_based" is a stub. The source comment says "Future implementation" and it returns the first available image every time. The option is offered in the UI, so silently doing nothing is worse than saying so. - rotation_mode "time_based" does nothing on its own. It also needs rotation_settings.time_intervals.enabled set to true, and with that switch off the image never advances. The two rotation intervals are separated, because they look interchangeable and are not: image_rotation_interval always applies and is the one most people want (falling back to display_duration when unset), while time_intervals.interval_seconds is read only in time_based mode. Per-image schedules get their own section, along with the trap that schedule.enabled defaults to false -- so a carefully configured window is ignored until it is switched on -- and that scheduling every image out at once leaves nothing eligible to draw. fit_to_display and preserve_aspect_ratio get a four-panel comparison against a deliberately wide sample, since "fitted", "unfitted", "letterboxed" and "stretched" are easier to recognise than to describe. Audits before opening: no config token dropped, all 23 schema leaves documented, no broken TOC anchors, and the section check surfaced the per-format guidance and the set_image_path/reload_image API, both restored -- the methods were verified to exist before documenting them rather than trusted from the old README. Rotation itself is not screenshotted: every rotation_mode starts on the first eligible image and the differences only appear across frames, so that behaviour is documented from the source and the README says as much. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Contributor
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Team Run ID: 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 |
Up to standards ✅🟢 Issues
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Seventh plugin in the README pass. Documentation only; no behaviour change.
Two settings that do nothing (or nothing on their own)
Both would otherwise be discovered by staring at a panel that never changes:
rotation_mode: "date_based"is a stub. The source comment literally reads# Future implementationand it returns the first available image every time. The option is offered in the UI, so silently doing nothing is worse than saying so.rotation_mode: "time_based"does nothing on its own. It also needsrotation_settings.time_intervals.enabled: true. With that switch off, the image never advances — two settings that have to agree before anything happens.Two rotation intervals that look interchangeable
They aren't, and picking the wrong one silently does nothing:
image_rotation_intervaldisplay_duration)rotation_settings.time_intervals.interval_secondstime_basedmode, and only with the switch above onPer-image schedules
The old README never mentioned them. Each image can carry a
schedulewithtime_rangeorper_daymodes — and the trap is thatschedule.enableddefaults tofalse, so a carefully configured window is ignored until it's switched on. Also noted: scheduling every image out at once leaves nothing eligible to draw.Images
fit_to_displayandpreserve_aspect_ratioget a four-panel comparison against a deliberately wide 192×64 sample — "fitted", "unfitted", "letterboxed" and "stretched" are easier to recognise than to describe.Rotation itself is deliberately not screenshotted. Every
rotation_modestarts on the first eligible image, so a single frame can't distinguish them — I ran the hash comparison and they're identical, exactly as expected. That behaviour is documented from the source instead, and the README says so rather than leaving a reader wondering why there's no picture.Audits before opening
scheduleobjectset_image_path/reload_imageAPI — both restored. I verified those methods exist before documenting them rather than trusting the old README, which is how the last two plugins turned up settings that didn't work.Verification
check_plugin.py --plugin static-image— 8/8 PASS, goldens matchrender_docs_assets.py --plugin static-image --check— images matchcheck_module_collisions.py— OK across 43 pluginsplugins.jsonregeneratedSeven plugins now carry a preview image in the root README table.
🤖 Generated with Claude Code