Model/packages/fetchers
2026-05-15 10:56:53 +00:00
..
src/fetchers added potential file scaffolding: 2026-05-15 10:56:53 +00:00
pyproject.toml added potential file scaffolding: 2026-05-15 10:56:53 +00:00
README.md added potential file scaffolding: 2026-05-15 10:56:53 +00:00

domna-fetchers

External API clients. Each fetcher is responsible for one external system — EpcClientService for the gov EPC API, GeospatialFetcher for Ordnance Survey, SolarFetcher for Google Solar, FuelRatesFetcher for Ofgem, CarbonFactorsFetcher for Defra.

Boundary: makes HTTP calls + returns raw or lightly-mapped responses. No DB, no business logic. Modelling services never depend on fetchers — only orchestrators do (per ADR-0003).

Layout

src/fetchers/
├── __init__.py
├── epc_client.py          # wraps backend/epc_client/
├── geospatial.py
├── solar.py
├── fuel_rates_fetcher.py
└── carbon_factors_fetcher.py

backend/epc_client/ will fold into epc_client.py during the migration; until then this module re-exports from the legacy location.