mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-06-08 11:17:27 +00:00
| .. | ||
| src/repos | ||
| pyproject.toml | ||
| README.md | ||
domna-repos
Persistence layer. One repo per aggregate; owns the SQL for its tables. Callers see only domain objects from domna-domain.
Boundary: depends on domna-domain for types. No external IO except the DB. No business logic — services do that.
Repos (per PRD §7.3)
src/repos/
├── __init__.py
├── unit_of_work.py
├── property_repo.py
├── epc_cache_repo.py
├── site_notes_repo.py
├── landlord_overrides_repo.py
├── recommendations_repo.py
├── generic_data_repo.py
├── fuel_rates_repo.py
├── carbon_factors_repo.py
├── heating_system_assumptions_repo.py
└── subtask_repo.py
Each repo has a Fake*Repo companion in its service's test tree (typically services/ara/tests/fakes/) — dict-backed, no DB.
DDL migrations are scoped to sub-PRD (iii); during Phase 0 repos may delegate into the legacy backend/app/db/db_funcs.* modules.