The e2e candidate menu is generated from the Effective EPC, not the lodged cert 🟩

The printed "candidate measures considered" now matches what the
orchestrator actually offered — on 711795 the lodged cavity wall printed
a cavity-fill candidate the plan (timber-frame effective wall) never saw.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Khalim Conn-Kowlessar 2026-07-03 11:42:29 +00:00
parent da4aec9840
commit bc39030707

View file

@ -910,10 +910,12 @@ def main() -> None:
print_table=False,
)
# The full candidate menu (every Generator Option + its cost), so
# measures the Optimiser did not select are still visible. A predicted
# Property has no lodged cert, so the synthesised Effective EPC is used.
# measures the Optimiser did not select are still visible. Generated
# from the Effective EPC — the same picture the plan above modelled;
# the lodged cert would print a menu the Optimiser never saw (e.g.
# cavity fill on a wall an override moved to timber frame).
candidates: list[Recommendation] = candidate_recommendations(
epc if epc is not None else effective_epc,
effective_epc,
planning_restrictions=restrictions,
solar_insights=solar_insights,
considered_measures=considered,