mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-07-22 08:48:38 +00:00
The committed gate needs frozen, reproducible data without dumping real UK addresses into the repo. Add: - harness anonymise_payload + stable_hash: hash street address + cert number into opaque, dedup-stable tokens; blank secondary address lines + post_town; keep postcode + all component/lodged fields (gov data is OGL). Unit-tested. - scripts/build_epc_prediction_fixture.py: curate qualifying postcodes (>=1 SAP 10.2 target + >=2 distinct addresses) from the local scratch corpus, anonymise, freeze under tests/fixtures/epc_prediction/. - The frozen fixture: 15 postcodes / 280 certs / 36 SAP-10.2 targets. Verified no plaintext address_line_1 and post_town all blank. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 line
No EOL
7 KiB
JSON
1 line
No EOL
7 KiB
JSON
{"uprn": 10093129137, "roofs": [{"description": "(another dwelling above)", "energy_efficiency_rating": 0, "environmental_efficiency_rating": 0}], "walls": [{"description": "System built, as built, insulated (assumed)", "energy_efficiency_rating": 4, "environmental_efficiency_rating": 4}], "floors": [{"description": "To unheated space, insulated (assumed)", "energy_efficiency_rating": 0, "environmental_efficiency_rating": 0}], "status": "entered", "tenure": 1, "window": {"description": "Fully double glazed", "energy_efficiency_rating": 3, "environmental_efficiency_rating": 3}, "lighting": {"description": "Good lighting efficiency", "energy_efficiency_rating": 4, "environmental_efficiency_rating": 4}, "postcode": "E15 3FA", "hot_water": {"description": "Electric immersion, off-peak", "energy_efficiency_rating": 3, "environmental_efficiency_rating": 5}, "post_town": "", "built_form": "NR", "created_at": "2026-04-21 21:52:52", "door_count": 1, "region_code": 17, "report_type": 2, "sap_heating": {"number_baths": 1, "cylinder_size": 4, "number_baths_wwhrs": 0, "water_heating_code": 903, "water_heating_fuel": 29, "main_heating_details": [{"has_fghrs": "N", "main_fuel_type": 29, "heat_emitter_type": 0, "emitter_temperature": "NA", "main_heating_number": 1, "main_heating_control": 2603, "main_heating_category": 10, "main_heating_fraction": 1, "sap_main_heating_code": 691, "main_heating_data_source": 2}], "immersion_heating_type": 1, "cylinder_insulation_type": 1, "has_fixed_air_conditioning": "false", "cylinder_insulation_thickness": 50}, "sap_version": 10.2, "sap_windows": [{"pvc_frame": "true", "orientation": 1, "window_type": 1, "glazing_type": 2, "window_width": 1.76, "window_height": 0.81, "draught_proofed": "true", "window_location": 0, "window_wall_type": 1, "permanent_shutters_present": "N", "permanent_shutters_insulated": "N"}, {"pvc_frame": "true", "orientation": 1, "window_type": 1, "glazing_type": 2, "window_width": 1.76, "window_height": 0.81, "draught_proofed": "true", "window_location": 0, "window_wall_type": 1, "permanent_shutters_present": "N", "permanent_shutters_insulated": "N"}, {"pvc_frame": "true", "orientation": 1, "window_type": 1, "glazing_type": 2, "window_width": 1.76, "window_height": 0.81, "draught_proofed": "true", "window_location": 0, "window_wall_type": 1, "permanent_shutters_present": "N", "permanent_shutters_insulated": "N"}, {"pvc_frame": "true", "orientation": 1, "window_type": 1, "glazing_type": 2, "window_width": 1.76, "window_height": 0.81, "draught_proofed": "true", "window_location": 0, "window_wall_type": 1, "permanent_shutters_present": "N", "permanent_shutters_insulated": "N"}, {"pvc_frame": "true", "orientation": 1, "window_type": 1, "glazing_type": 2, "window_width": 1.76, "window_height": 0.81, "draught_proofed": "true", "window_location": 0, "window_wall_type": 1, "permanent_shutters_present": "N", "permanent_shutters_insulated": "N"}], "schema_type": "RdSAP-Schema-21.0.1", "uprn_source": "Energy Assessor", "country_code": "ENG", "main_heating": [{"description": "Room heaters, electric", "energy_efficiency_rating": 2, "environmental_efficiency_rating": 5}], "air_tightness": {"description": "(not tested)", "energy_efficiency_rating": 0, "environmental_efficiency_rating": 0}, "dwelling_type": "Ground-floor flat", "language_code": 1, "pressure_test": 4, "property_type": 2, "address_line_1": "addr-9c159091c9ce", "address_line_2": "", "address_line_3": "", "assessment_type": "RdSAP", "completion_date": "2026-04-21", "inspection_date": "2026-04-17", "extensions_count": 0, "measurement_type": 1, "sap_flat_details": {"level": 1, "top_storey": "N", "storey_count": 6, "flat_location": 1, "heat_loss_corridor": 2, "unheated_corridor_length": 10.79}, "total_floor_area": 63, "transaction_type": 1, "conservatory_type": 1, "has_draught_lobby": "true", "heated_room_count": 3, "registration_date": "2026-04-21", "sap_energy_source": {"mains_gas": "N", "meter_type": 3, "pv_connection": 0, "photovoltaic_supply": {"none_or_no_details": {"percent_roof_area": 0}}, "wind_turbines_count": 0, "gas_smart_meter_present": "false", "is_dwelling_export_capable": "false", "wind_turbines_terrain_type": 1, "electricity_smart_meter_present": "true"}, "secondary_heating": {"description": "None", "energy_efficiency_rating": 0, "environmental_efficiency_rating": 0}, "sap_building_parts": [{"identifier": "Main Dwelling", "wall_dry_lined": "N", "floor_heat_loss": 2, "roof_construction": 3, "wall_construction": 8, "building_part_number": 1, "sap_floor_dimensions": [{"floor": 0, "room_height": {"value": 2.7, "quantity": "metres"}, "floor_insulation": 1, "total_floor_area": {"value": 63.07, "quantity": "square metres"}, "party_wall_length": {"value": 13.14, "quantity": "metres"}, "floor_construction": 3, "heat_loss_perimeter": {"value": 20.24, "quantity": "metres"}}], "wall_insulation_type": 4, "construction_age_band": "L", "sap_alternative_wall_1": {"wall_area": 29.133, "sheltered_wall": "Y", "wall_dry_lined": "N", "wall_construction": 8, "wall_insulation_type": 4, "wall_thickness_measured": "N", "wall_insulation_thickness": "NI"}, "party_wall_construction": 0, "wall_thickness_measured": "N", "roof_insulation_location": "ND", "roof_insulation_thickness": "ND", "wall_insulation_thickness": "NI", "floor_insulation_thickness": "NI"}], "solar_water_heating": "N", "habitable_room_count": 3, "heating_cost_current": {"value": 623, "currency": "GBP"}, "insulated_door_count": 0, "co2_emissions_current": 0.7, "energy_rating_average": 60, "energy_rating_current": 71, "lighting_cost_current": {"value": 50, "currency": "GBP"}, "main_heating_controls": [{"description": "Programmer and appliance thermostats", "energy_efficiency_rating": 4, "environmental_efficiency_rating": 4}], "has_hot_water_cylinder": "true", "heating_cost_potential": {"value": 383, "currency": "GBP"}, "hot_water_cost_current": {"value": 397, "currency": "GBP"}, "mechanical_ventilation": 0, "percent_draughtproofed": 83, "suggested_improvements": [{"sequence": 1, "typical_saving": {"value": 277, "currency": "GBP"}, "indicative_cost": "\u00a31,200 - \u00a32,400", "improvement_type": "L2", "improvement_details": {"improvement_number": 62}, "improvement_category": 5, "energy_performance_rating": 80, "environmental_impact_rating": 91}], "co2_emissions_potential": 0.6, "energy_rating_potential": 80, "lighting_cost_potential": {"value": 55, "currency": "GBP"}, "schema_version_original": "21.0.1", "hot_water_cost_potential": {"value": 356, "currency": "GBP"}, "renewable_heat_incentive": {"water_heating": 2248.17, "space_heating_existing_dwelling": 2164.75}, "draughtproofed_door_count": 0, "energy_consumption_current": 111, "has_fixed_air_conditioning": "false", "multiple_glazed_proportion": 100, "calculation_software_version": "5.02r0342", "energy_consumption_potential": 109, "environmental_impact_current": 90, "current_energy_efficiency_band": "C", "environmental_impact_potential": 91, "has_heated_separate_conservatory": "false", "potential_energy_efficiency_band": "C", "co2_emissions_current_per_floor_area": 10, "low_energy_fixed_lighting_bulbs_count": 9, "incandescent_fixed_lighting_bulbs_count": 0} |