docs(mqtt-notifications): document the last five settings, with real renders - #442
Merged
Conversation
…renders The README explained the MQTT side well -- payload format, topic wildcards, five Home Assistant examples -- but never listed the plugin's own settings, and had no images. All 20 schema leaves are now documented, verified by a token audit, with three renders. The five that were missing: mqtt.client_id, mqtt.keepalive, text.scroll_gap_width, update_interval and display_duration. display_duration is worth its own note. The core reads it as a plugin's screen time (base_plugin.py:406), but this plugin overrides get_display_duration() and returns display.default_duration instead, so setting the root key alone changes nothing. The two defaults agree at 10s, which hides it until someone sets one and not the other. The README now says which one to set. update_interval, by contrast, is live: the core schedules update() from it (plugin_manager.py:809). Both looked dead to a grep of the plugin alone -- neither name appears in manager.py -- and grepping the core is what separated the two. Also documented: the two font routes. text.font_path takes any path, customization.message_text.font offers the bundled faces as a dropdown, and the customization block wins when its font loads. Colours come from text either way, since customization carries no colour keys. check_plugin.py passes 8/8 with no FAIL. Carries the docs-tooling changes from #423 and the frame-runner --display-mode change from #441, which these renders depend on. 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
|
| Metric | Results |
|---|---|
| Complexity | 18 |
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.
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.
The README explained the MQTT side well — payload format, topic wildcards, five Home Assistant examples — but never listed the plugin's own settings, and had no images. All 20 schema leaves are now documented (token audit: 0 undocumented), with three renders.
The five that were missing:
mqtt.client_id,mqtt.keepalive,text.scroll_gap_width,update_intervalanddisplay_duration.display_durationis inert hereThe core reads
display_durationas a plugin's screen time (base_plugin.py:406), but this plugin overridesget_display_duration()and returnsdisplay.default_durationinstead — so setting the root key alone changes nothing. Both default to10, which hides the discrepancy until someone sets one and not the other. The README now says which one to set.update_intervallooked equally dead — neither name appears anywhere inmanager.py— but it is live: the core schedulesupdate()from it (plugin_manager.py:809). Grepping the core is what separated the two, for the third time in this series.The two font routes
text.font_pathtakes any path;customization.message_text.fontoffers the bundled faces as a web-UI dropdown. Thecustomizationblock wins when its font loads. Colours come fromtexteither way, sincecustomizationcarries no colour keys. That is now stated rather than left for the reader to infer from two overlapping tables.Checks
check_plugin.py: 8/8 PASS, zero FAILadditionalProperties: falseon all five objectsconfig_schema.jsonplugins.jsonregeneratedThis completes the repo
Every ChuckBuilds plugin now has a documented README with images and a passing token audit. Tally and merge-order notes in the loop summary.
Carries the docs-tooling commits from #423 and the frame-runner
--display-modechange from #441.🤖 Generated with Claude Code