Commit graph

117 commits

Author SHA1 Message Date
Khalim Conn-Kowlessar
b050348927 slice 10.5: PhotovoltaicArray on SAP10 schema + EpcPropertyData
SAP10 EPCs with measured PV carry photovoltaic_supply as a nested
list of arrays (peak_power, pitch, orientation, overshading) rather
than the legacy unmeasured wrapper {none_or_no_details:
{percent_roof_area: N}}. The schema-21 dataclasses now accept both
shapes via Union[PhotovoltaicSupply, List[List[PhotovoltaicArray]]],
and from_dict._coerce now dispatches list values onto list type
variants of multi-type Unions.

EpcPropertyData.SapEnergySource gains
photovoltaic_arrays: Optional[List[PhotovoltaicArray]] — populated
when the measured shape is present, otherwise None. The legacy
photovoltaic_supply field is preserved for the fallback case.
Both schema-21.0.0 and 21.0.1 mappers dispatch via the new
_map_schema_21_pv helper.

Unblocks Slice 11 (PV feature aggregation in EpcMlTransform).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-16 16:00:25 +00:00
Khalim Conn-Kowlessar
dba254e316 slice 8a: window physics and orientation aggregates
Thirteen window-aggregate features land on the transform: count,
total area, eight SAP-octant area columns (N/NE/E/SE/S/SW/W/NW),
area-weighted draught-proofing pct, and area-weighted u_value +
solar transmittance (nullable, populated only when windows carry
transmission_details). Windows with orientation outside 1-8 (0,
NR) contribute to count and total area but no octant.

Also: epc codes CSV (gov api /api/codes export, RdSAP-Schema-21.x +
older versions) moved next to EpcPropertyData as epc_codes.csv —
canonical SAP enum source for upcoming categorical-share slices.
.gitignore exception added so the reference CSV is tracked.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-16 15:32:45 +00:00
Khalim Conn-Kowlessar
81f6163295 added ucl corrected peui 2026-05-16 14:39:24 +00:00
Khalim Conn-Kowlessar
a64e7e74c5 adding kwh feidls to EpcPropertyData and testing to_row 2026-05-16 14:33:25 +00:00
Jun-te Kim
dfc100f78b rank address similiarity 2026-05-12 16:02:01 +00:00
Jun-te Kim
27f2ef5e83 get rid of duplicate function and make better sensible variable name 2026-05-12 13:46:02 +00:00
Jun-te Kim
35d191c70e merged from main and resolved pytest.ini confict 2026-05-12 12:54:28 +00:00
Jun-te Kim
e06ead55d0 add more type hint 2026-05-12 09:48:21 +00:00
Jun-te Kim
197e9a0e00 added histroci_epc.csv 2026-05-11 15:21:16 +00:00
Jun-te Kim
6504785e7c merged from main 2026-05-11 12:30:29 +00:00
Jun-te Kim
bf91722f30 renamed a function to be self commenting 2026-05-11 08:45:26 +00:00
Jun-te Kim
fb758b76bf changed to utils 2026-05-11 08:37:44 +00:00
Jun-te Kim
c9c43f178c demo generated for use in address2uprn 2026-05-08 14:48:15 +00:00
Jun-te Kim
8b6a572223 Merge branch 'feature/claude_skills_in_devcontainer' into feature/etl_process_for_old_csv 2026-05-08 13:09:19 +00:00
Jun-te Kim
7a49f5df20 save plan temporary while i incorporate skills to claude 2026-05-08 12:19:03 +00:00
Jun-te Kim
a39c3a0772 added added historic epc data class with shape 2026-05-08 12:03:35 +00:00
Jun-te Kim
32bf1cc98d load historic epc from csv 🟢 2026-05-07 16:26:29 +00:00
Jun-te Kim
74b7b87de6 load historic epc from csv 🟥 2026-05-07 16:22:41 +00:00
Jun-te Kim
02fb3afbe4 defined histrocial epc data shapre from csv 2026-05-07 16:04:01 +00:00
Daniel Roth
6b29086a1e typing and renaming 🟪 2026-05-07 13:26:49 +00:00
Daniel Roth
06567c2844 validate plans api response as pydantic basemodel object 🟩 2026-05-07 12:25:06 +00:00
Daniel Roth
e67604a4a3 validate plans api response as pydantic basemodel object 🟩 2026-05-07 12:23:30 +00:00
Daniel Roth
79db1e2c7e validate plans api response as pydantic basemodel object 🟥 2026-05-07 12:22:04 +00:00
Daniel Roth
0dd39a63f2 missing street is not included in address string 🟩 2026-05-06 17:08:34 +00:00
Daniel Roth
25aa57e4b6 missing street is not included in address string 🟥 2026-05-06 17:07:22 +00:00
Daniel Roth
069e6693ae include address and postcode on magicplan plan 🟩 2026-05-06 17:03:49 +00:00
Daniel Roth
3b9d40f2f8 include address and postcode on magicplan plan 🟥 2026-05-06 17:03:00 +00:00
Daniel Roth
da6b04878e add units to lengths 2026-05-06 16:03:28 +00:00
Daniel Roth
b57453b8db fix typing problems in mapper 2026-05-06 08:24:57 +00:00
Daniel Roth
079f7e3397 test mapping second api response round dimensions to 2 decimal places 🟩 2026-05-05 16:30:34 +00:00
Daniel Roth
c530f014de fix typing issues 2026-05-05 16:00:59 +00:00
Daniel Roth
9266fb2c8d round dimensions to 2 decimal places 🟩 2026-05-05 15:51:52 +00:00
Daniel Roth
55d7b91171 map magicplan base models to data classes 🟩 2026-05-05 15:46:13 +00:00
Daniel Roth
e51a58c0a1 remove print 2026-05-05 10:29:00 +00:00
Daniel Roth
c69f223343 Define dataclasses to represent API json 🟩 2026-05-05 10:28:43 +00:00
Daniel Roth
18a58486af Define dataclasses to represent API json 🟩 2026-05-05 10:28:07 +00:00
Daniel Roth
78da2f88b6 Handle wall thickness "Unmeasurable" 🟩 2026-04-30 16:41:16 +00:00
Khalim Conn-Kowlessar
a1b207ba55 bolstering testing 2026-04-28 13:46:09 +00:00
Khalim Conn-Kowlessar
001e9ce882 remove inline import 2026-04-28 12:03:39 +00:00
Khalim Conn-Kowlessar
821a0a08f7 addressing feedback on from_api_response 2026-04-28 12:02:34 +00:00
Daniel Roth
51bd18e0d7 Rename window frame material column 🟩 2026-04-27 16:11:32 +00:00
Daniel Roth
01ebb2e0e1 extract window frame details from elmhurst site notes 🟩 2026-04-27 16:04:02 +00:00
Daniel Roth
8f94bb5435 extract window frame details from elmhurst site notes 🟥 2026-04-27 15:50:25 +00:00
Daniel Roth
268576e345 map elmhurst window transmission details to epc property data class 🟩 2026-04-27 14:16:59 +00:00
Daniel Roth
5940977bb2 tweak window transmission data source type 2026-04-27 14:11:33 +00:00
Daniel Roth
865ee3eada map elmhurst energy fields to epc property data class 🟩 2026-04-27 12:16:26 +00:00
Daniel Roth
afedbd2365 add energy fields to ElmhurstSiteNotes 2026-04-27 12:09:35 +00:00
Daniel Roth
6cc73b6ebf remove unused import 2026-04-27 11:06:58 +00:00
Khalim Conn-Kowlessar
d338be867b added missing files 2026-04-25 22:41:57 +00:00
Khalim Conn-Kowlessar
3ed25030d4 added new api call for new epc api 2026-04-25 22:17:38 +00:00