* Replace "Away" in `climate` with common state string
Also reordered the states a bit to group the two presence-based options at the top and order the rest alphabetically.
* Prettier
* Add authentication support for Model Context Protocol (mcp) integration
* Update homeassistant/components/mcp/application_credentials.py
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Handle MCP servers with ports
---------
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Improve handling of empty iterable in async_add_entities
We had two checks here because we were doing an empty
iterable check. If its a list we can check it directly
but if its not we need to convert it to a list to know
if its empty.
* tweaks
* tasks never used
* Set and check unique id in config
* Update homeassistant/components/nut/config_flow.py
Set unique ID and abort only if value is defined
Co-authored-by: J. Nick Koston <nick+github@koston.org>
* Add duplicate ID test case for multiple devices
* Add unique ID check to config flow step for UPS
* Update homeassistant/components/nut/__init__.py
Fix to only set config_entries unique ID if not None
Co-authored-by: J. Nick Koston <nick+github@koston.org>
* Remove duplicate config flow call
---------
Co-authored-by: J. Nick Koston <nick+github@koston.org>
Co-authored-by: J. Nick Koston <nick@koston.org>
* fix: two minor LLM changes to speed up prefill
- moved the current date/time to the end of the prompt
- started sorting all entities by last_changed
* addressed PR comments
* fixed tests
* reduced scope of try/catch in LLM prompt
* addressed more PR comments
* fixed Anthropic test
* addressed another PR comment
* fixed remainder of tests
We have to build all of these at startup.
Its a lot faster to compare floats instead
of datetime objects. Since we already have to
fetch last_changed_timestamp, use it to compare
with last_updated_timestamp since we already know
we will have last_updated_timestamp
Now that pyisy is mostly typed there were some obvious
issues. We are still a long way away from being able
to add py.typed to pyisy, but we can now see some
obvious things in an IDE
* Use common states for "Away" and "Off" in `climate`
* Revert common state for "Away"
Four other integrations are referencing this instead of the common state. Needs to be addressed first.
* Don't turn on thermostat if temp is equal to target temp.
* Update strings to reflect logic change.
* Fix logic and add zero tolerance tests.
* Include tests for cool mode
* Removed unnecessary async_block_till_done calls
Replace "Disabled" with common state in `lamarzocco`, fix sentence-case
- replace "Disabled" with with common state reference
- fix sentence-casing of "Auto-lock"