mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-07-19 08:53:17 +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
12 KiB
JSON
1 line
No EOL
12 KiB
JSON
{"der": 3.43, "ter": 10.83, "dfee": 36.2, "dper": 35.78, "tfee": 36.7, "tper": 56.64, "uprn": 10097320581, "roofs": [{"description": {"value": "Average thermal transmittance 0.13 W/m\u00b2K", "language": "1"}, "energy_efficiency_rating": 5, "environmental_efficiency_rating": 5}], "walls": [{"description": {"value": "Average thermal transmittance 0.19 W/m\u00b2K", "language": "1"}, "energy_efficiency_rating": 5, "environmental_efficiency_rating": 5}], "floors": [{"description": {"value": "Average thermal transmittance 0.11 W/m\u00b2K", "language": "1"}, "energy_efficiency_rating": 5, "environmental_efficiency_rating": 5}], "status": "entered", "tenure": "ND", "windows": {"description": {"value": "High performance glazing", "language": "1"}, "energy_efficiency_rating": 4, "environmental_efficiency_rating": 4}, "lighting": {"description": {"value": "Good lighting efficiency", "language": "1"}, "energy_efficiency_rating": 4, "environmental_efficiency_rating": 4}, "postcode": "WA5 3GF", "data_type": 2, "hot_water": {"description": {"value": "From main system", "language": "1"}, "energy_efficiency_rating": 4, "environmental_efficiency_rating": 5}, "post_town": "", "built_form": 2, "created_at": "2026-04-20 15:21:40", "living_area": 16.7, "orientation": 7, "region_code": 19, "report_type": 3, "sap_heating": {"number_baths": 1, "thermal_store": 1, "shower_outlets": [{"shower_power": 9.3, "shower_wwhrs": 1, "shower_flow_rate": 6, "shower_outlet_type": 3}], "water_fuel_type": 39, "water_heating_code": 901, "hot_water_store_size": 210, "main_heating_details": [{"has_fghrs": "false", "main_fuel_type": 39, "heat_emitter_type": 1, "main_heating_number": 1, "main_heating_control": 2207, "main_heating_category": 4, "main_heating_fraction": 1, "central_heating_pump_age": 2, "main_heating_data_source": 1, "main_heating_index_number": 107682, "heat_pump_heat_distribution": 45, "is_oil_pump_in_heated_space": "false", "is_main_heating_hetas_approved": "false", "is_central_heating_pump_in_heated_space": "true"}], "has_hot_water_cylinder": "true", "has_cylinder_thermostat": "true", "hot_water_store_heat_loss": 1.55, "has_fixed_air_conditioning": "false", "secondary_heating_category": 1, "is_cylinder_in_heated_space": "true", "is_immersion_for_summer_use": "false", "primary_pipework_insulation": 4, "is_heat_pump_installed_to_mis": "true", "is_hot_water_separately_timed": "true", "hot_water_store_heat_loss_source": 2, "hot_water_store_heat_transfer_area": 3, "is_heat_pump_assisted_by_immersion": "false"}, "sap_version": 10.2, "schema_type": "SAP-Schema-19.1.0", "uprn_source": "Address Matched", "country_code": "ENG", "main_heating": [{"description": {"value": "Air source heat pump, radiators, electric", "language": "1"}, "energy_efficiency_rating": 4, "environmental_efficiency_rating": 5}], "sap_lighting": [[{"lighting_power": 10, "lighting_outlets": 14, "lighting_efficacy": 75}]], "terrain_type": 2, "air_tightness": {"description": {"value": "Air permeability [AP50] = 4.8 m\u00b3/h.m\u00b2 (as tested)", "language": "1"}, "energy_efficiency_rating": 4, "environmental_efficiency_rating": 4}, "dwelling_type": "Semi-detached house", "language_code": 1, "property_type": 0, "address_line_1": "addr-1ae92722f53d", "assessment_date": "2026-04-20", "assessment_type": "SAP", "completion_date": "2026-04-20", "inspection_date": "2026-04-20", "sap_ventilation": {"psv_count": 0, "wall_type": 1, "pressure_test": 1, "wet_rooms_count": 4, "air_permeability": 4.81, "open_flues_count": 0, "ventilation_type": 6, "has_draught_lobby": "false", "other_flues_count": 0, "closed_flues_count": 0, "extract_fans_count": 0, "boilers_flues_count": 0, "open_chimneys_count": 0, "sheltered_sides_count": 4, "blocked_chimneys_count": 0, "kitchen_duct_fans_count": 0, "kitchen_room_fans_count": 0, "kitchen_wall_fans_count": 1, "flueless_gas_fires_count": 0, "mechanical_vent_duct_type": 2, "non_kitchen_duct_fans_count": 0, "non_kitchen_room_fans_count": 0, "non_kitchen_wall_fans_count": 3, "mechanical_ventilation_data_source": 1, "mechanical_vent_system_index_number": 500776, "is_mechanical_vent_approved_installer_scheme": "false"}, "design_water_use": 1, "sap_data_version": 10.2, "total_floor_area": 108, "transaction_type": 6, "cold_water_source": 1, "conservatory_type": 1, "registration_date": "2026-04-20", "sap_energy_source": {"electricity_tariff": 1}, "sap_opening_types": [{"name": "Door", "type": 1, "u_value": 1, "data_source": 2, "glazing_type": 1, "isargonfilled": "false"}, {"name": "Windows", "type": 4, "u_value": 1.3, "data_source": 4, "frame_factor": 1.0, "glazing_type": 7, "isargonfilled": "false", "solar_transmittance": 0.43}, {"name": "Half Glazed Door", "type": 2, "u_value": 1.1, "data_source": 4, "glazing_type": 7, "isargonfilled": "false"}, {"name": "French Door", "type": 4, "u_value": 1.3, "data_source": 4, "frame_factor": 1.0, "glazing_type": 7, "isargonfilled": "false", "solar_transmittance": 0.38}, {"name": "Roof Light", "type": 5, "u_value": 1.3, "data_source": 2, "frame_factor": 0.7, "glazing_type": 7, "isargonfilled": "false", "solar_transmittance": 0.63}], "secondary_heating": {"description": {"value": "None", "language": "1"}, "energy_efficiency_rating": 0, "environmental_efficiency_rating": 0}, "lowest_storey_area": 40.44, "lzc_energy_sources": [9], "sap_building_parts": [{"sap_roofs": [{"name": "Roof (1)", "u_value": 0.09, "roof_type": 2, "kappa_value": 9, "total_roof_area": 19.66}, {"name": "Roof (2)", "u_value": 0.16, "roof_type": 2, "kappa_value": 9, "total_roof_area": 24.85}, {"name": "Roof (3)", "u_value": 0.12, "roof_type": 2, "kappa_value": 9, "total_roof_area": 13.45}, {"name": "Roof (4)", "u_value": 0.16, "roof_type": 2, "kappa_value": 9, "total_roof_area": 13.35}], "sap_walls": [{"name": "Walls (1)", "u_value": 0.19, "wall_type": 2, "kappa_value": 60, "total_wall_area": 99.23, "is_curtain_walling": "false"}, {"name": "Walls (2)", "u_value": 0.23, "wall_type": 2, "kappa_value": 18, "total_wall_area": 15.83, "is_curtain_walling": "false"}, {"name": "Walls (3)", "u_value": 0.12, "wall_type": 2, "kappa_value": 18, "total_wall_area": 14.82, "is_curtain_walling": "false"}, {"name": "Party Wall (1)", "u_value": 0, "wall_type": 4, "kappa_value": 110, "total_wall_area": 47.04, "is_curtain_walling": "false"}, {"name": "Party Wall (2)", "u_value": 0, "wall_type": 4, "kappa_value": 20, "total_wall_area": 15.83, "is_curtain_walling": "false"}, {"name": "Internal Wall (1)", "u_value": 0, "wall_type": 5, "kappa_value": 9, "total_wall_area": 193.57, "is_curtain_walling": "false"}], "sap_openings": [{"name": "Opening 1", "type": "Door", "width": 2.14, "height": 1, "location": "Walls (1)", "orientation": 7}, {"name": "Opening 2", "type": "Windows", "width": 5.25, "height": 1, "location": "Walls (1)", "orientation": 7}, {"name": "Opening", "type": "Roof Light", "pitch": 40, "width": 1.78, "height": 1, "location": "Roof (2)", "orientation": 7}, {"name": "Opening", "type": "Windows", "width": 1.54, "height": 1, "location": "Walls (1)", "orientation": 1}, {"name": "Opening", "type": "French Door", "width": 3.8, "height": 1, "location": "Walls (1)", "orientation": 3}, {"name": "Opening", "type": "Windows", "width": 1.4, "height": 1, "location": "Walls (1)", "orientation": 3}, {"name": "Opening", "type": "Roof Light", "pitch": 40, "width": 1.78, "height": 1, "location": "Roof (2)", "orientation": 3}], "construction_year": 2022, "sap_thermal_bridges": {"thermal_bridges": [{"length": 6.84, "psi_value": 0.064, "psi_value_source": 1, "thermal_bridge_type": "E2"}, {"length": 5.82, "psi_value": 0.022, "psi_value_source": 1, "thermal_bridge_type": "E3"}, {"length": 16.68, "psi_value": 0.0296, "psi_value_source": 1, "thermal_bridge_type": "E4"}, {"length": 18.18, "psi_value": 0.076, "psi_value_source": 1, "thermal_bridge_type": "E5"}, {"length": 24.39, "psi_value": 0.002, "psi_value_source": 1, "thermal_bridge_type": "E6"}, {"length": 6.73, "psi_value": 0.0419, "psi_value_source": 1, "thermal_bridge_type": "E11"}, {"length": 4.51, "psi_value": 0.057, "psi_value_source": 1, "thermal_bridge_type": "E12"}, {"length": 11.7, "psi_value": 0.047, "psi_value_source": 1, "thermal_bridge_type": "E16"}, {"length": 8.4, "psi_value": 0.1, "psi_value_source": 4, "thermal_bridge_type": "E4"}, {"length": 1.81, "psi_value": 0.064, "psi_value_source": 1, "thermal_bridge_type": "E2"}, {"length": 11.7, "psi_value": 0.0343, "psi_value_source": 1, "thermal_bridge_type": "E18"}, {"length": 9.29, "psi_value": 0.06, "psi_value_source": 1, "thermal_bridge_type": "P1"}, {"length": 9.29, "psi_value": 0, "psi_value_source": 4, "thermal_bridge_type": "P2"}, {"length": 4.51, "psi_value": 0.033, "psi_value_source": 1, "thermal_bridge_type": "P4"}, {"length": 5.74, "psi_value": 0.094, "psi_value_source": 1, "thermal_bridge_type": "E13"}, {"length": 4.81, "psi_value": 0.04, "psi_value_source": 1, "thermal_bridge_type": "P5"}, {"length": 8.72, "psi_value": 0.019, "psi_value_source": 1, "thermal_bridge_type": "R6"}, {"length": 2.72, "psi_value": 0.115, "psi_value_source": 1, "thermal_bridge_type": "R1"}, {"length": 2.72, "psi_value": 0.113, "psi_value_source": 1, "thermal_bridge_type": "R2"}, {"length": 5.56, "psi_value": 0.041, "psi_value_source": 1, "thermal_bridge_type": "R3"}, {"length": 1.27, "psi_value": 0.15, "psi_value_source": 4, "thermal_bridge_type": "E11"}, {"length": 3.85, "psi_value": 0.12, "psi_value_source": 4, "thermal_bridge_type": "R5"}, {"length": 2.94, "psi_value": 0.12, "psi_value_source": 4, "thermal_bridge_type": "R4"}, {"length": 3.69, "psi_value": 0.25, "psi_value_source": 4, "thermal_bridge_type": "E13"}], "thermal_bridge_code": 5}, "building_part_number": 1, "sap_floor_dimensions": [{"storey": 0, "u_value": 0.11, "floor_type": 2, "kappa_value": 160, "storey_height": 2.38, "heat_loss_area": 40.44, "total_floor_area": 40.44}, {"storey": 1, "u_value": 0, "floor_type": 3, "kappa_value": 18, "storey_height": 2.69, "heat_loss_area": 0, "total_floor_area": 40.44, "kappa_value_from_below": 9}, {"storey": 2, "u_value": 0, "floor_type": 3, "storey_height": 2.27, "heat_loss_area": 0, "total_floor_area": 26.99}]}], "user_interface_name": "Design SAP 10", "windows_overshading": 2, "heating_cost_current": {"value": 283, "currency": "GBP"}, "co2_emissions_current": 0.3, "energy_rating_average": 60, "energy_rating_current": 85, "lighting_cost_current": {"value": 71, "currency": "GBP"}, "main_heating_controls": [{"description": {"value": "Time and temperature zone control", "language": "1"}, "energy_efficiency_rating": 5, "environmental_efficiency_rating": 5}], "has_hot_water_cylinder": "true", "heating_cost_potential": {"value": 305, "currency": "GBP"}, "hot_water_cost_current": {"value": 293, "currency": "GBP"}, "suggested_improvements": [{"sequence": 1, "typical_saving": {"value": 49, "currency": "GBP"}, "indicative_cost": "\u00a34,000 - \u00a37,000", "improvement_type": "N", "improvement_details": {"improvement_number": 19}, "improvement_category": 5, "energy_performance_rating": 86, "environmental_impact_rating": 97}, {"sequence": 2, "typical_saving": {"value": 336, "currency": "GBP"}, "indicative_cost": "\u00a38,000 - \u00a310,000", "improvement_type": "U", "improvement_details": {"improvement_number": 34}, "improvement_category": 5, "energy_performance_rating": 93, "environmental_impact_rating": 99}], "user_interface_version": "3.1.55", "co2_emissions_potential": 0.1, "energy_rating_potential": 93, "gas_smart_meter_present": "false", "lighting_cost_potential": {"value": 71, "currency": "GBP"}, "schema_version_original": "SAP-Schema-19.1.0", "hot_water_cost_potential": {"value": 221, "currency": "GBP"}, "is_in_smoke_control_area": "unknown", "seller_commission_report": "Y", "energy_consumption_current": 34, "has_fixed_air_conditioning": "false", "is_dwelling_export_capable": "true", "multiple_glazed_percentage": 100, "calculation_software_version": "3.1.55", "energy_consumption_potential": 16, "environmental_impact_current": 97, "current_energy_efficiency_band": "B", "environmental_impact_potential": 99, "electricity_smart_meter_present": "false", "has_heated_separate_conservatory": "false", "potential_energy_efficiency_band": "A", "co2_emissions_current_per_floor_area": 3.2} |