- __init__.py now calls apply_migrations() on setup instead of raw DDL (HIGH finding: the runner was never invoked at startup); lifecycle wiring tests in test_migrations.py cover fresh migrate, reload reuse, and close-on-failure - VERSION_TABLE DDL enforces singleton row (id=1 PRIMARY KEY + CHECK) and version >= 1; stamp is INSERT .. ON CONFLICT DO UPDATE keyed on the singleton row - read_schema_version rejects non-integer and sub-1 versions with explicit guards (bool excluded) - no-op test asserts content hash + mtime, not just size
NestQuest - House Chaos Coordination
Home Assistant custom integration for managing chores, custody schedules, and house coordination.
Overview
NestQuest helps households coordinate daily life, chore tracking, custody schedules, and shared tasks directly within Home Assistant. It provides sensors, calendar events, and service calls designed for busy households and modern co-parenting setups.
Installation
HACS Installation (Recommended)
- Ensure HACS (Home Assistant Community Store) is installed.
- In Home Assistant, open HACS > Integrations.
- Select the three-dots menu in the top right and click Custom repositories.
- Enter the repository URL:
https://github.com/talon2king/NestQuest - Select category Integration and click Add.
- Search for NestQuest and click Download.
- Restart Home Assistant.
Note: Development happens in the private Gitea repository (
https://code.cubecraftlabs.com/Maniacs_Mansion/NestQuest). The GitHub repository is a public mirror maintained for HACS distribution.
Manual Installation
- Download the latest release from the repository.
- Copy the
custom_components/nestquestdirectory into your Home Assistant installation'sconfig/custom_components/folder:cp -R custom_components/nestquest <config_dir>/custom_components/ - Restart Home Assistant.
Configuration
After installation and restart:
- Navigate to Settings > Devices & Services in Home Assistant.
- Click Add Integration and search for NestQuest.
- Follow the on-screen configuration flow.
Developer Setup and Testing
This project uses uv for fast Python package and dependency management.
Prerequisites
- Python 3.11 or newer
- uv installed on your machine
Setup Environment
To set up the development environment and install dependencies:
uv sync
Running Tests
Run the test suite with pytest:
uv run pytest
License
This project is licensed under the MIT License - see the LICENSE file for details.