mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-06-08 11:17:27 +00:00
ModellingOrchestrator gains a constructor-injected FuelRatesRepository (mirrors Baseline): run() resolves get_current() once and reuses one BillDerivation across the batch. _plan_for prices the baseline and post-package end-states from the SapResults already on their Scores (no extra calculate) and passes the Bills to Plan. PlanRow mirror + from_domain gain the four live columns post_energy_bill / energy_bill_savings / post_energy_consumption / energy_consumption_savings. Pipeline/handler wire the fuel-rates repo. Integration tests assert the columns persist: the multi-measure (fallback) plan shows positive bill+consumption savings; the already-at-target zero-measure plan shows the current bill with exactly zero savings. Fuel-switch measures price at the new fuel for free (we bill the simulated end-state). 183 modelling/billing/orchestration/repo tests pass, pyright strict clean. Plan-level only; per-measure savings next. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| config.py | ||
| engine.py | ||
| epc_property_table.py | ||
| landlord_built_form_type_override_table.py | ||
| landlord_override_enums.py | ||
| landlord_property_type_override_table.py | ||
| landlord_roof_type_override_table.py | ||
| landlord_wall_type_override_table.py | ||
| plan_table.py | ||
| product_table.py | ||
| property_baseline_performance_table.py | ||
| property_table.py | ||
| scenario_table.py | ||
| solar_table.py | ||
| subtask_table.py | ||
| task_table.py | ||