Summary
This release brings MCP server improvements, significant refactoring of the monitor internals, enhanced alert logic, expanded test coverage, and updated documentation.
Changes
MCP Server
- Refactored user, sensor, output, and zone update functions to use _UNSET sentinel for default values
- Enhanced sensor configuration and monitoring logic with improved descriptions and defaults
- Fixed creating sensors via MCP
Alert & Monitoring Logic
- Refactored syren handling — silent and loud alert logic improved across multiple modules
- Loud alert can now be overridden by silent sensors
- Updated MQTT client to version 2 with improved connection event logging
Code Quality & Refactoring
- Refactored monitor actions to use command classes for improved clarity
- Refactored IPC response handling to use IPCResponse dataclass
- Introduced module-level loggers
- Cleaned up imports across multiple modules
Testing
- Added tests for power outage and recovery events
- Added tests for loud/silent alert sensitivity
- Added tests for sensor state changes affecting alert type
- Fixed MQTT port configurations in tests to avoid conflicts
Documentation
- Added AGENTS.md and pull request template
- Enhanced README and added llms.txt for project overview
Dependencies & CI
- Bumped cryptography to 48.0.1
- Updated Python version pin
- Upgraded other packages
Build Information
- Version: v2.6.0:f2ec2e7
- Branch: main
- Build Date:
- Commit: f2ec2e7
- Workflow Run: 30701295221