mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-06-08 11:17:27 +00:00
deleted scaffolding packages folders
This commit is contained in:
parent
168e7f18a1
commit
94975f3bac
9 changed files with 0 additions and 126 deletions
|
|
@ -1,19 +0,0 @@
|
|||
# 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](../../docs/adr/0003-strict-ingestion-modelling-separation.md)).
|
||||
|
||||
## 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.
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
[project]
|
||||
name = "domna-fetchers"
|
||||
version = "0.1.0"
|
||||
description = "External API clients — gov EPC, Ofgem, Google Solar, Defra, etc."
|
||||
requires-python = ">=3.11"
|
||||
dependencies = [
|
||||
"domna-domain",
|
||||
"httpx>=0.27",
|
||||
]
|
||||
|
||||
[tool.uv.sources]
|
||||
domna-domain = { workspace = true }
|
||||
|
||||
[build-system]
|
||||
requires = ["hatchling"]
|
||||
build-backend = "hatchling.build"
|
||||
|
||||
[tool.hatch.build.targets.wheel]
|
||||
packages = ["src/fetchers"]
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
"""External API clients for Ara and sibling services.
|
||||
|
||||
One fetcher per external system. No DB, no business logic. See README.md.
|
||||
"""
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
# 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](../../ara_backend_design.md))
|
||||
|
||||
```
|
||||
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.
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
[project]
|
||||
name = "domna-repos"
|
||||
version = "0.1.0"
|
||||
description = "Persistence layer — one repo per aggregate. Owns the SQL."
|
||||
requires-python = ">=3.11"
|
||||
dependencies = [
|
||||
"domna-domain",
|
||||
"sqlalchemy>=2.0",
|
||||
]
|
||||
|
||||
[tool.uv.sources]
|
||||
domna-domain = { workspace = true }
|
||||
|
||||
[build-system]
|
||||
requires = ["hatchling"]
|
||||
build-backend = "hatchling.build"
|
||||
|
||||
[tool.hatch.build.targets.wheel]
|
||||
packages = ["src/repos"]
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
"""Persistence layer for the Ara domain aggregates.
|
||||
|
||||
One repo per aggregate. Owns SQL; exposes domain objects. See README.md.
|
||||
"""
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
# domna-utils
|
||||
|
||||
Cross-cutting infrastructure helpers. Nothing domain-specific — anything in here should be portable across services.
|
||||
|
||||
## Will live here (migrating from `utils/` and `backend/utils/`)
|
||||
|
||||
- Logging — `logger.py`
|
||||
- S3 — `s3.py`
|
||||
- Pandas helpers — `pandas_utils.py`
|
||||
- CloudWatch URL builder — `cloudwatch.py`
|
||||
- SQS subtask helpers — `subtasks.py`
|
||||
|
||||
## Will NOT live here
|
||||
|
||||
Service-specific parsers (Osmosis condition report, full-SAP parser, SharePoint integration) move into the service that owns them, not here.
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
[project]
|
||||
name = "domna-utils"
|
||||
version = "0.1.0"
|
||||
description = "Cross-cutting infrastructure helpers — logging, S3, CloudWatch, SQS tasks."
|
||||
requires-python = ">=3.11"
|
||||
dependencies = [
|
||||
"boto3>=1.34",
|
||||
]
|
||||
|
||||
[build-system]
|
||||
requires = ["hatchling"]
|
||||
build-backend = "hatchling.build"
|
||||
|
||||
[tool.hatch.build.targets.wheel]
|
||||
packages = ["src/utils"]
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
"""Cross-cutting infrastructure helpers — logging, S3, CloudWatch, SQS tasks.
|
||||
|
||||
Nothing domain-specific belongs here. See README.md.
|
||||
"""
|
||||
Loading…
Add table
Reference in a new issue