-
-
Notifications
You must be signed in to change notification settings - Fork 7.7k
dev add new device [Circulator Fan & Battery Circulator Fan] #39399
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: next
Are you sure you want to change the base?
dev add new device [Circulator Fan & Battery Circulator Fan] #39399
Conversation
✅ Deploy Preview for home-assistant-docs ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
It seems that this PR is targeted against an incorrect branch. Documentation updates which apply to our current stable release should target the |
📝 WalkthroughWalkthroughThis update introduces several new integration documentation files, expands configuration options and supported entities for multiple existing integrations, and removes documentation for several deprecated or unsupported integrations. Numerous documentation sections were revised for clarity, accuracy, and to reflect new features, platforms, or configuration parameters. Redirects were updated to consolidate Telegram bot documentation and to mark removed integrations. Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant HomeAssistant
participant IntegrationDoc
User->>HomeAssistant: Access integration documentation
HomeAssistant->>IntegrationDoc: Provide updated documentation
IntegrationDoc-->>User: Show new/updated config options, platforms, and entities
Note over IntegrationDoc,User: For new integrations, user follows setup instructions
User->>HomeAssistant: Configure new integration (e.g., Zimi, Amazon Devices)
HomeAssistant-->>User: Integration entities and features become available
Note over IntegrationDoc,User: For deprecated integrations, user redirected to removal info
User->>HomeAssistant: Access removed integration doc URL
HomeAssistant-->>User: Redirect to removal info page
sequenceDiagram
participant User
participant Dashboard
participant CardConfig
User->>Dashboard: Edit Gauge/Map card
Dashboard->>CardConfig: Show new parameters (attribute/unit/cluster)
User->>Dashboard: Set new config options
Dashboard-->>User: Render card with updated data/behavior
sequenceDiagram
participant User
participant TemplateEngine
User->>TemplateEngine: Use new filters/extensions/macros
TemplateEngine-->>User: Process templates with new capabilities
These diagrams represent the primary control and information flow for new/updated integration documentation, dashboard card configuration, and template engine features. 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. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Caution
Inline review comments failed to post. This is likely due to GitHub's limits when posting large numbers of comments. If you are seeing this consistently it is likely a permissions issue. Please check "Moderation" -> "Code review limits" under your organization settings.
Actionable comments posted: 12
🔭 Outside diff range comments (1)
source/_integrations/homekit.markdown (1)
276-282
: 💡 Verification agent🧩 Analysis chain
Verify implementation of new
h264_qsv
codec
The documentation addsh264_qsv
to thevideo_codec
options. Ensure the integration code supports this codec or remove/implement it accordingly.Run:
🏁 Script executed:
#!/bin/bash # Verify support for h264_qsv in HomeKit integration code rg -R --heading "h264_qsv" -n src/homeassistant/components/homekitLength of output: 471
🏁 Script executed:
#!/bin/bash # Search for references to h264_qsv in HomeKit integration code rg -n "h264_qsv" src/homeassistant/components/homekit # Inspect where video_codec options are handled rg -n "video_codec" src/homeassistant/components/homekitLength of output: 264
🏁 Script executed:
#!/bin/bash # Locate HomeKit integration directory find . -type d -path "*/components/homekit*" # Search for usage of video_codec and related constants in the codebase rg -n "video_codec" . rg -n "CONF_VIDEO_CODEC" .Length of output: 1104
Implement or Remove
h264_qsv
in HomeKit Integration
We addedh264_qsv
to the YAML docs but I can’t find any support for it in the integration code. Please either implement handling for this codec in your config schema and FFmpeg pipeline or remove it from the documentation.• No occurrences of
h264_qsv
found in the codebase (runrg -n "h264_qsv" .
)
• Ensure the HomeKit camera config schema (likely inhomeassistant/components/homekit/...
) acceptsh264_qsv
• Update any FFmpeg command‐builder logic to pass throughh264_qsv
correctly
• Add tests or validation to prevent unsupported codecs from being set via the UI or YAML🧰 Tools
🪛 LanguageTool
[uncategorized] ~277-~277: You might be missing the article “the” here.
Context: ...nd enables GPU Hardware acceleration on Raspberry Pi. required: false ...(AI_EN_LECTOR_MISSING_DETERMINER_THE)
🧹 Nitpick comments (58)
source/_integrations/aquacell.markdown (1)
56-56
: Specify device class and refine phrasing for consistency.To align with other sensor docs, merge into a single sentence and add that this sensor uses the
timestamp
device class.Suggested diff:
@@ -52,5 +52,6 @@ - - Last update time. The time the softener last reported data to the cloud. + - Last update timestamp. The time the softener last reported data to the cloud. + Device class: `timestamp`source/_docs/configuration/templating.markdown (1)
1197-1198
: Normalize sentence case in filter descriptionsThe verbs in the new filter descriptions start with uppercase letters. To match the existing style, switch to lowercase:
- - Filter `value | from_hex` Decodes a hex string to raw bytes. - - Filter `value | base64_encode` Encodes a string or bytes to a base 64 string. + - Filter `value | from_hex` decodes a hex string to raw bytes. + - Filter `value | base64_encode` encodes a string or bytes to a base 64 string.source/_integrations/homekit.markdown (1)
276-282
: Sort codec options alphabetically
For improved readability, consider ordering theavailable options
list alphabetically:copy, h264_omx, h264_qsv, h264_v4l2m2m, libx264
🧰 Tools
🪛 LanguageTool
[uncategorized] ~277-~277: You might be missing the article “the” here.
Context: ...nd enables GPU Hardware acceleration on Raspberry Pi. required: false ...(AI_EN_LECTOR_MISSING_DETERMINER_THE)
source/_integrations/sun.markdown (1)
102-108
: Use consistent key formatting
Wrap theSolar rising
entry in backticks (e.g.,`Solar rising`
) to match the formatting of other sensor keys (rising
).source/_integrations/reolink.markdown (1)
300-301
: Refine wording for clarity and grammar.Add a comma after "Therefore", and consider replacing "one time" with "once" for a smoother read.
🧰 Tools
🪛 LanguageTool
[uncategorized] ~300-~300: A comma may be missing after the conjunctive/linking adverb ‘Therefore’.
Context: ...it depending on the model of the chime. Therefore the status of this switch is only polle...(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)
[style] ~300-~300: Consider using “once” instead of ‘one time’.
Context: ...he status of this switch is only polled one time (about 1 minute after the integration s...(ONCE_TWICE_PREMIUM)
source/_integrations/fritz.markdown (1)
81-86
: Extract shared option definitions to avoid duplication.The
Enable network device tracking
description is repeated in both configuration blocks. Consider moving this to a shared include for consistency and maintainability.source/_integrations/seventeentrack.markdown (1)
116-117
: Unify boolean indicators.The
Optional
column uses mixed-case boolean values (No
,yes
) across tables. Consider standardizing to eitherYes
/No
oryes
/no
throughout the documentation.source/_integrations/homee.markdown (1)
13-25
: Suggest alphabetical ordering.For improved readability, consider ordering the
ha_platforms
list alphabetically.source/_integrations/bluetooth.markdown (1)
169-176
: Clarify performance requirement.The new bullet:
- Meets the above requirements with Home Assistant 2022.11.1 or later and Home Assistant Operating System 9.3 or later
bundles two requirements. Consider splitting it into separate bullets or rephrasing to clearly distinguish the Home Assistant version versus the OS version.
source/_integrations/energenie_power_sockets.markdown (1)
23-23
: Sentence flow improvement
Consider replacing the colon after"Home Assistant Container" installation
with a comma or splitting into two sentences for better readability:- If you are running a {% term "Home Assistant Container" %} installation: Depending on your system configuration, it may be necessary ... + If you are running a {% term "Home Assistant Container" %} installation, it may be necessary ...source/_integrations/kostal_plenticore.markdown (2)
29-38
: Refine warning content and clean up formatting
- Add a subject to the warning intro (e.g., "When using installer credentials, ...") to form a complete sentence.
- Remove trailing spaces at the ends of lines 33–36 and 38 to satisfy markdown lint rules.
🧰 Tools
🪛 LanguageTool
[style] ~33-~33: To form a complete sentence, be sure to include a subject.
Context: ...ing %} Using installer credentials: - Should only be done if you fully understand th...(MISSING_IT_THERE)
[uncategorized] ~36-~36: A period might be missing here.
Context: ...nfigured - Should be done with extreme caution {% endwarning %} To enable installe...(AI_EN_LECTOR_MISSING_PUNCTUATION_PERIOD)
🪛 markdownlint-cli2 (0.17.2)
33-33: Trailing spaces
Expected: 0 or 2; Actual: 1(MD009, no-trailing-spaces)
34-34: Trailing spaces
Expected: 0 or 2; Actual: 1(MD009, no-trailing-spaces)
35-35: Trailing spaces
Expected: 0 or 2; Actual: 1(MD009, no-trailing-spaces)
36-36: Trailing spaces
Expected: 0 or 2; Actual: 1(MD009, no-trailing-spaces)
38-38: Trailing spaces
Expected: 0 or 2; Actual: 1(MD009, no-trailing-spaces)
40-42
: Include configuration example
Consider adding a YAML snippet demonstrating how to set thepassword
to the Master Key and include theservice_code
in the integration config for clarity.🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
40-40: Trailing spaces
Expected: 0 or 2; Actual: 1(MD009, no-trailing-spaces)
source/_integrations/nexia.markdown (1)
93-104
: Clarify include/exclude switches section
- Adjust wording to plural: "The following include/exclude {% term switch %}es are added for each RoomIQ sensor".
- Confirm the term macro renders correctly for plural switches.
- Optionally provide an inline example replacing
YOUR_SENSOR_NAME
for user clarity.source/_integrations/cambridge_audio.markdown (1)
76-77
: Improve Control Bus description readability
The Control Bus description is lengthy and could be split into two sentences; also add a comma after "disabled" for clarity. For example:- In this case Pre-Amp mode can be disabled, the network player will send the signal with full volume to the power amplifier and the volume of the power amplifier can be controlled using volume up and down controls. + In this case, Pre-Amp mode can be disabled. The network player will send the signal at full volume to the power amplifier, and you can control its volume using incremental up/down commands.🧰 Tools
🪛 LanguageTool
[formatting] ~77-~77: Consider inserting a comma after an introductory phrase for better readability.
Context: ...player using the Control Bus interface. In this case Pre-Amp mode can be disabled, the netwo...(IN_THAT_CASE_COMMA)
[uncategorized] ~77-~77: You might be missing the article “the” here.
Context: ...lled using volume up and down controls. Control Bus does not support setting the volume...(AI_EN_LECTOR_MISSING_DETERMINER_THE)
source/_integrations/switchbot_cloud.markdown (1)
37-37
: Enhance prerequisites with Developer Options steps
The detailed instructions and blog link help users find their token and secret key. Consider simplifying "in succession" wording, e.g., "tap the App Version (e.g. 6.24) 5–15 times to open Developer Options."🧰 Tools
🪛 LanguageTool
[style] ~37-
37: ‘in succession’ might be wordy. Consider a shorter alternative.15 times) in succession to open the Developer Options. See ...
Context: ... (e.g. 6.24) several times (5(EN_WORDINESS_PREMIUM_IN_SUCCESSION)
source/_integrations/wmspro.markdown (1)
35-35
: Link to device section for details
The "See device section for support information" pointer is useful. Consider adding "the" before "device section" for grammatical accuracy.source/_integrations/squeezebox.markdown (1)
229-233
: Use single-hyphen list syntax
Replace the double-hyphen bullets with a single hyphen for consistency with other lists.- -- **Lyrion Music Server**: Update of the server software is available. - -- **Updated plugins**: Named Plugins will be updated on the next restart. For some installation types, the service will be restarted automatically after the **Install** button has been selected. Allow enough time for the service to restart. It will become briefly unavailable. + - **Lyrion Music Server**: Update of the server software is available. + - **Updated plugins**: Named Plugins will be updated on the next restart. For some installation types, the service will be restarted automatically after the **Install** button has been selected. Allow enough time for the service to restart. It will become briefly unavailable.source/_integrations/lamarzocco.markdown (2)
62-62
: Add missing comma and Oxford comma in update intervals
Insert a comma after “possible” and before the final list item for clarity.- By default, this integration will receive push updates from the cloud about its general status. If that is not possible it will query the cloud every 15 seconds for an update of general machine information, every 15 minutes for new statistics, every 30 minutes for updated schedules and every 8 hours for a firmware update. + By default, this integration will receive push updates from the cloud about its general status. If that is not possible, it will query the cloud every 15 seconds for an update of general machine information, every 15 minutes for new statistics, every 30 minutes for updated schedules, and every 8 hours for a firmware update.🧰 Tools
🪛 LanguageTool
[typographical] ~62-~62: Consider adding a comma here.
Context: ...bout its general status. If that is not possible it will query the cloud every 15 second...(IF_THAT_S_NOT_POSSIBLE_COMMA)
109-109
: Refine Brew start time description
Use “Indicates” instead of “tells” for a more authoritative tone.-| **Brew start time** | If a brew is running, tells the exact start time of that brew. | `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} | - | +| **Brew start time** | Indicates the exact start time of a running brew. | `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} | - |source/_integrations/suez_water.markdown (2)
37-44
: Introduce “Energy” section.
The new Energy dashboard integration instructions are clear. Consider linking directly to the Energy docs anchor (/home-assistant-energy/
) for quicker navigation.
43-44
: Add missing terminal punctuation.
The Note ends without a period. Append “.” after “check” to match the style of other notes.source/_integrations/immich.markdown (6)
20-27
: Prerequisites clarity.
The link to obtain an API key is valuable. Consider adding an example command or path for key retrieval in self-hosted setups.
28-35
: Configuration block completeness.
Suggest providing default values or example URLs (http://localhost:3000
) and default for SSL verification to guide new users.
37-40
: Polling frequency note.
Polling every 60 seconds may impact large instances. Recommend mentioning rate-limit behavior or a configurable interval.
41-44
: Media source reference.
Good overview. You might hyperlink directly to the media_source docs (/integrations/media_source/
) for end-user convenience.
45-54
: Comma for readability.
The sentence before the table needs a comma for clarity.- The following {% term sensors %} are created. For some of those the API key needs to have admin rights. + The following {% term sensors %} are created. For some of those, the API key needs to have admin rights.🧰 Tools
🪛 LanguageTool
[uncategorized] ~47-~47: A comma might be missing here.
Context: ...erm sensors %} are created. For some of those the API key needs to have admin rights....(AI_EN_LECTOR_MISSING_PUNCTUATION_COMMA)
60-69
: Troubleshooting section completeness.
The debugging and diagnostics instructions follow standards. Optionally, link the diagnostics page anchor (/integrations/diagnostics/
) directly in the include tag.source/_integrations/paperless_ngx.markdown (3)
22-29
: Prerequisites precision.
Clear requirements. You may want to specify how users can verify they’re on version ≥ 2.15 (e.g., via API endpoint or UI footer).
32-49
: Configuration section enhancement.
Consider adding example values (e.g.,http://paperless-ngx.local:8000
) to guide users through setup.
51-72
: Align Markdown table markup.
The sensors table is comprehensive. Add a trailing pipe on the “Software” row to maintain table consistency.source/_integrations/eheimdigital.markdown (1)
84-90
: Detail “Filter mode” options.
The descriptions are clear. For consistency, rephrase as:- Pulse mode: The filter uses a high and low pulse, the speeds are configured via **high pulse speed** and **low pulse speed**, the durations are configured via **high pulse duration** and **low pulse duration** + Pulse mode: Uses high/low pulse speeds configured via **high pulse speed**/**low pulse speed**, and durations via **high pulse duration**/**low pulse duration**.source/_integrations/smarla.markdown (1)
19-36
: Minor punctuation consistency
Steps 1–5 are clear. For uniformity, add a period at the end of step 3:- 3. Follow the steps for **Configuration** until the access token field appears + 3. Follow the steps for **Configuration** until the access token field appears.source/_dashboards/map.markdown (1)
105-109
: Refine description for brevity
To tighten phrasing, consider “with many markers” instead of “with a large number of markers.”- description: 'When set to `false`, the map will not cluster the markers. This is useful when you want to see all markers at once, but it may cause performance issues with a large number of markers.' + description: 'When set to `false`, the map will not cluster the markers. This is useful when you want to see all markers at once, but it may cause performance issues with many markers.'🧰 Tools
🪛 LanguageTool
[style] ~107-~107: To reduce wordiness, try specifying a number or using “many” or “numerous” instead.
Context: ...ut it may cause performance issues with a large number of markers.' type: boolean default: tr...(LARGE_NUMBER_OF)
source/_dashboards/gauge.markdown (1)
206-215
: Example formatting consistency
The new attribute example works as intended. For uniformity, ensure the code block indentation and captions match other examples.🧰 Tools
🪛 LanguageTool
[uncategorized] ~206-~206: The grammatical number of this noun doesn’t look right. Consider replacing it.
Context: ... color: var(--error-color)Display attribute of an entity instead of its state:
...(AI_EN_LECTOR_REPLACEMENT_NOUN_NUMBER)
source/_integrations/bluesound.markdown (1)
38-43
: Typo: missing comma
Add a comma after “For each time you call this” to improve readability.- Sets a timer that will turn off the speaker. For each time you call this it will increase the time by one step. + Sets a timer that will turn off the speaker. For each time you call this, it will increase the time by one step.🧰 Tools
🪛 LanguageTool
[typographical] ~38-~38: It appears that a comma is missing.
Context: ...hat will turn off the speaker. For each time you call this it will increase the time...(DURING_THAT_TIME_COMMA)
source/_integrations/amazon_devices.markdown (4)
1-17
: Front matter formatting consistency
Metadata is complete. For consistency with other integrations, you may remove quotes aroundha_release
(ha_release: 2025.6
).
28-36
: Grammar in supported devices list
Line 36 should read “and all third-party devices with built-in Alexa capabilities.”- and all 3rd party that has Alexa capabilities built-in + - and all third-party devices with built-in Alexa capabilities
57-61
: Fix article usage
Change “Open a issue” to “open an issue” for correct grammar.- Open a issue with all details to investigate + Open an issue with all details to investigate🧰 Tools
🪛 LanguageTool
[misspelling] ~60-~60: Use “an” instead of ‘a’ if the following word starts with a vowel sound, e.g. ‘an article’, ‘an hour’.
Context: ...ountry may need a special setting. Open a issue with all details to investigate {...(EN_A_VS_AN)
108-108
: Remove repeated verb
Adjust the polling description to avoid duplication.- This integration {% term polling polls %} data from the device every 30 seconds by default. + This integration {% term polling %} data from the device every 30 seconds by default.🧰 Tools
🪛 LanguageTool
[grammar] ~108-~108: You’ve repeated a verb. Did you mean to only write one of them?
Context: ... Data updates This integration {% term polling polls %} data from the device every 30 second...(REPEATED_VERBS)
source/_integrations/modbus.markdown (3)
1242-1261
: Use YAMLnull
instead of PythonNone
for defaults
Home Assistant YAML conventions prefernull
(ornone
) overNone
.
1336-1351
: Fix example indentation and remove orphanverify:
key
Theverify:
entry under the second light has no child attributes and is misaligned. Either indent children or remove this empty section to avoid confusion.
1371-1378
: Correct grammar and branding
- Change “home-assistants” → “Home Assistant’s”
- Consider rephrasing for clarity around encoding arguments.
source/_integrations/backup.markdown (3)
81-85
: Remove extra blank lines in raw block
The blank lines before and after the raw YAML fence may render incorrectly. Trim them for consistency.
100-109
: Table descriptions should end with a period
Add trailing periods to attribute descriptions in theEvent entity
table for consistency.
154-157
: Title-case sensor heading
Change “Last attempted automatic backup” → “Last Attempted Automatic Backup” to match other sensor headings.source/_integrations/probe_plus.markdown (4)
19-24
: Refine long sentence for readability
Consider splitting the discovery instructions into two sentences or adding a comma before “provided” for clarity.🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
21-21: Trailing spaces
Expected: 0 or 2; Actual: 1(MD009, no-trailing-spaces)
50-53
: Add comma after first clause
“This integration can be used to monitor food temperatures; you could combine this with…” or add a comma after “cooking” to avoid a run-on sentence.🧰 Tools
🪛 LanguageTool
[uncategorized] ~52-~52: A comma might be missing here.
Context: ...onus, multiple probes are supported and therefore if you are cooking a large family meal,...(AI_EN_LECTOR_MISSING_PUNCTUATION_COMMA)
54-58
: Fix comma splice in second bullet
Change “before setting up in case you are using Fahrenheit” → “before setting up, in case you are using Fahrenheit.”
66-71
: Correct comma splice
“This integration follows standard integration removal. No extra steps are required.”source/_integrations/switchbot.markdown (3)
466-474
: Header spacing mismatch
Change#### Hub3
→#### Hub 3
to match naming elsewhere.
477-482
: Add trailing period
Append a period to the end of the sentence listing fan entities.
511-518
: Consistency in battery terminology
Change “get battery” → “get battery level” to match other feature entries.source/_integrations/bosch_alarm.markdown (1)
142-148
: Clean up raw example formatting
Remove extra blank lines within the raw YAML block for consistency.source/_integrations/template.markdown (2)
54-54
: Consider refining pluralization of “weathers”
In the overview sentence, “weathers” may read awkwardly; consider using “weather entities” or simply “weather” for consistency.
418-424
: Clarify “osc state” abbreviation
In theoscillating
description, consider expanding “osc” to “oscillation” for clarity (e.g., “Defines a template to get the oscillation state of the fan.”).source/_integrations/miele.markdown (1)
169-169
: Remove comma before “if” in Start in
In “Start in: Shows the number of minutes until a delayed program start, if configured.” remove the comma before “if” for smoother reading: “…program start if configured.”🧰 Tools
🪛 LanguageTool
[typographical] ~169-~169: Usually, there’s no comma before “if”.
Context: ...of minutes until a delayed program start, if configured. - Plate: Four to six ...(IF_NO_COMMA)
source/_integrations/kaiser_nienhaus.markdown (1)
9-9
: Align supporting integration domain naming.The
ha_supporting_integration
value should match the integration’s domain slug (e.g.,motion_blinds
) for consistency and correct auto-linking.source/_integrations/shelly.markdown (1)
148-154
: Fix extra spacing in entity names table.Remove the leading space before
shellyswitch25-ABC123 Channel 1
in the last column of the first row to ensure proper Markdown table alignment.
🛑 Comments failed to post (12)
source/_docs/configuration/templating.markdown (1)
100-102:
⚠️ Potential issueFix raw tag syntax
The closing raw tag is incorrect (
{$ endraw %}
); it should be{% endraw %}
to properly exit the raw block in Jinja.Apply this diff:
- {$ endraw %} + {% endraw %}📝 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.{% endraw %} Home Assistant also allows you to write macros with non-string return values by
🤖 Prompt for AI Agents
In source/_docs/configuration/templating.markdown around lines 100 to 102, the closing raw tag is incorrectly written as {$ endraw %}. Replace it with the correct Jinja syntax {% endraw %} to properly close the raw block.
source/_integrations/matter.markdown (1)
14-14: 🛠️ Refactor suggestion
Add matching platform entry for Pump
ThePump
category was added underha_category
, butpump
is not listed underha_platforms
. Please addpump
to theha_platforms
list to ensure documentation and functionality stay in sync.🤖 Prompt for AI Agents
In source/_integrations/matter.markdown at line 14, the Pump category was added under ha_category but the corresponding platform 'pump' is missing from the ha_platforms list. Add 'pump' to the ha_platforms list in the same file to keep the documentation consistent and aligned with the new category.
source/_integrations/blue_current.markdown (1)
70-78:
⚠️ Potential issueAdd missing
button
platform and update heading
A new Button section is documented, butbutton
is not listed underha_platforms
. Addbutton
to the front matter and change the section heading to plural (## Buttons
).ha_platforms: - - sensor + - sensor + - button ... -## Button +## Buttons📝 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.ha_platforms: - sensor - button ... ## Buttons The Blue Current integration provides the following buttons: ### Charge point buttons - Reset - Reboot - Stop charge session
🤖 Prompt for AI Agents
In source/_integrations/blue_current.markdown around lines 70 to 78, the front matter is missing the `button` platform under `ha_platforms`, and the section heading should be plural. Add `button` to the `ha_platforms` list in the front matter and update the heading from `## Button` to `## Buttons` to reflect multiple buttons.
source/_integrations/smlight.markdown (1)
45-50: 🛠️ Refactor suggestion
Promote multi-radio section to a subheading.
The “Multi radio devices” description appears as an unstyled paragraph within the prerequisites list. Converting it to a proper subheading will improve structure. For example:
- Multi radio devices - Additional entities will be created for the second Zigbee radio... + ## Multi-radio devices + + Additional entities will be created for the second Zigbee radio, including Zigbee firmware updates, temperature sensors, router reconnect button, and firmware type (Note: Zigbee restart and flash mode buttons remain shared). Requires core firmware `v2.8.x` or later.📝 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.## Multi-radio devices Additional entities will be created for the second Zigbee radio, including Zigbee firmware updates, temperature sensors, router reconnect button, and firmware type (Note: Zigbee restart and flash mode buttons remain shared). Requires core firmware `v2.8.x` or later. - [SLZB-MR1](https://smlight.tech/product/slzb-mr1/) - [SLZB-MR2](https://smlight.tech/product/slzb-mr2/) - [SLZB-MR3](https://smlight.tech/product/slzb-mr3/)
🤖 Prompt for AI Agents
In source/_integrations/smlight.markdown around lines 45 to 50, the "Multi radio devices" text is currently an unstyled paragraph within the prerequisites list. Convert this text into a proper subheading by using markdown heading syntax (e.g., prefix with ## or ###) to improve document structure and readability.
source/_integrations/nordpool.markdown (2)
244-249:
⚠️ Potential issueMissing fallback for empty tomorrow prices
Removing the conditional check may cause a runtime error ifdata.prices
is empty. Consider adding a guard or default value before callingmin(data.prices)
.🤖 Prompt for AI Agents
In source/_integrations/nordpool.markdown around lines 244 to 249, the code calls min(data.prices) without checking if data.prices is empty, which can cause a runtime error. Add a conditional check to ensure data.prices is not empty before calling min, or provide a default fallback value to use when data.prices is empty to prevent errors.
253-255:
⚠️ Potential issueEnsure safe handling of empty attribute data
Iftomorrow_price['SE3']
is empty,data.prices
will be empty and may lead to unexpected output. Add a default fallback or conditional logic in the template.🤖 Prompt for AI Agents
In source/_integrations/nordpool.markdown around lines 253 to 255, the template code appends price data from tomorrow_price['SE3'] without checking if it is empty, which can cause data.prices to be empty and lead to unexpected output. Add a conditional check to verify that tomorrow_price['SE3'] contains data before the loop, or provide a default fallback value for data.prices to ensure it is never empty when rendered.
source/_integrations/bluesound.markdown (3)
76-78:
⚠️ Potential issueDeprecated action ID is incorrect
The deprecation note referencesbutton.<player_name>_set_set_timer
instead of the actual entity ID.- {% note %} This action is deprecated. Use `button.<player_name>_set_set_timer` instead. {% endnote %} + {% note %} This action is deprecated. Use `button.<player_name>_set_sleep_timer` instead. {% endnote %}📝 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.{% note %} This action is deprecated. Use `button.<player_name>_set_sleep_timer` instead. {% endnote %}
🤖 Prompt for AI Agents
In source/_integrations/bluesound.markdown around lines 76 to 78, the deprecation note incorrectly references the action ID as `button.<player_name>_set_set_timer`. Update this to the correct entity ID by removing the duplicated "_set" so it reads `button.<player_name>_set_timer` to accurately reflect the current entity ID.
27-34:
⚠️ Potential issueButton entity name mismatch
The clear-sleep-timer entity is listed incorrectly asbutton.speaker_name_sleep_timer
. It should bebutton.speaker_name_clear_sleep_timer
.- - `button.speaker_name_sleep_timer`: Clearing the sleep timer. + - `button.speaker_name_clear_sleep_timer`: Clearing the sleep timer.📝 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.## Buttons These are the available button entities: - `button.speaker_name_set_sleep_timer`: Setting a sleep timer. - `button.speaker_name_clear_sleep_timer`: Clearing the sleep timer. Replace `speaker_name` with the name of your speaker.
🧰 Tools
🪛 LanguageTool
[uncategorized] ~31-~31: Loose punctuation mark.
Context: ... -button.speaker_name_set_sleep_timer
: Setting a sleep timer. - `button.speake...(UNLIKELY_OPENING_PUNCTUATION)
[uncategorized] ~32-~32: Loose punctuation mark.
Context: ...mer. -button.speaker_name_sleep_timer
: Clearing the sleep timer. Replace `spe...(UNLIKELY_OPENING_PUNCTUATION)
🤖 Prompt for AI Agents
In source/_integrations/bluesound.markdown around lines 27 to 34, the button entity for clearing the sleep timer is incorrectly named as `button.speaker_name_sleep_timer`. Update this to the correct entity name `button.speaker_name_clear_sleep_timer` to match the actual button entity.
89-91:
⚠️ Potential issueDeprecated action ID is incorrect
The deprecation note referencesbutton.<player_name>_clear_set_timer
instead of the actual entity ID.- {% note %} This action is deprecated. Use `button.<player_name>_clear_set_timer` instead. {% endnote %} + {% note %} This action is deprecated. Use `button.<player_name>_clear_sleep_timer` instead. {% endnote %}📝 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.{% note %} This action is deprecated. Use `button.<player_name>_clear_sleep_timer` instead. {% endnote %}
🤖 Prompt for AI Agents
In source/_integrations/bluesound.markdown around lines 89 to 91, the deprecation note incorrectly references the action ID as `button.<player_name>_clear_set_timer`. Update this to use the correct actual entity ID for the deprecated action to accurately guide users on the replacement action.
source/_integrations/shelly_zwave.markdown (2)
2-20:
⚠️ Potential issueAdd codeowners for maintainership clarity.
Brand integrations require a
ha_codeowners
field to assign ownership (e.g.,- '@home-assistant/z-wave'
) in the metadata.🤖 Prompt for AI Agents
In source/_integrations/shelly_zwave.markdown around lines 2 to 20, the metadata is missing the ha_codeowners field which is required for brand integrations to specify maintainership. Add a ha_codeowners field with the appropriate team or user handle, for example ha_codeowners: ['@home-assistant/z-wave'], to clearly assign ownership of this integration.
10-10:
⚠️ Potential issueCorrect integration domain slug.
ha_domain
is set toshelly
but should beshelly_zwave
to match this integration’s directory and manifest domain.🤖 Prompt for AI Agents
In source/_integrations/shelly_zwave.markdown at line 10, the ha_domain is incorrectly set to shelly. Update the ha_domain value to shelly_zwave to match the integration's directory name and manifest domain for consistency and correctness.
source/_integrations/zimi.markdown (1)
24-25:
⚠️ Potential issueUse consistent frontmatter keys.
Replace
quality_scale
withha_quality_scale
, andintegration_type
withha_integration_type
to adhere to the standard metadata schema.🤖 Prompt for AI Agents
In source/_integrations/zimi.markdown at lines 24 to 25, replace the frontmatter keys 'quality_scale' with 'ha_quality_scale' and 'integration_type' with 'ha_integration_type' to ensure consistency with the standard metadata schema used across integrations.
Thank you for contributing, @XiaoLing-git 👍 |
I'm drafting this PR, as changes are needed. Please undraft it, once the changes have been implemented and the PR is ready for review again. |
Proposed change
add new device [Circulator Fan & Battery Circulator Fan]
Type of change
current
branch).current
branch).next
branch).next
branch).Additional information
Checklist
current
branch.next
branch.Summary by CodeRabbit
New Features
Bug Fixes
Documentation
Chores