From 8ba8dab02375cbac94c910e55a8c53ce1610d476 Mon Sep 17 00:00:00 2001 From: Rik Allen Date: Fri, 31 Jul 2026 08:17:22 +0100 Subject: [PATCH] docs(plan): name "Demand mode" explicitly in its own tooltip text The plain-arrow plan cells (no charge/discharge/freeze scheduled) never actually said "Demand" in their tooltip, despite that being the exact mode name shown in the mode selector and Status card elsewhere in the UI - so there was nothing connecting "this arrow-only cell" to "this is Demand mode" for anyone reading the tooltip in isolation. Also swapped "house demand" for "house load" in the same templates - the generic English word collided with the Predbat mode name enough to undercut the fix if left in place right next to it. --- apps/predbat/output.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/predbat/output.py b/apps/predbat/output.py index f15401bd0..6bd018b23 100644 --- a/apps/predbat/output.py +++ b/apps/predbat/output.py @@ -29,15 +29,15 @@ # own "reasons" params - published once here rather than duplicating the rendered sentence on # every row (per maintainer review on PR #4311). REASON_TEMPLATES = { - "demand_rising": "Battery level is expected to rise from solar generation; no charging or exporting is scheduled this slot.", - "demand_falling": "Battery is expected to discharge to cover house demand; no charging or exporting is scheduled this slot.", - "demand_steady": "Battery level is expected to stay steady; no charging or exporting is scheduled this slot.", + "demand_rising": "Demand — battery level is expected to rise from solar generation; no charging or exporting is scheduled this slot.", + "demand_falling": "Demand — the battery is expected to discharge to cover house load; no charging or exporting is scheduled this slot.", + "demand_steady": "Demand — battery level is expected to stay steady; no charging or exporting is scheduled this slot.", # Used for the first half of a split slot where the export window only starts partway through - # deliberately worded without the "nothing is scheduled this slot" clause of the plain demand # reasons above, which would contradict the export reason sitting alongside it in the same slot. - "demand_before_export_rising": "Until the export window starts partway through this slot, the battery level is expected to rise from solar generation.", - "demand_before_export_falling": "Until the export window starts partway through this slot, the battery is expected to discharge to cover house demand.", - "demand_before_export_steady": "Until the export window starts partway through this slot, the battery level is expected to stay steady.", + "demand_before_export_rising": "Until the export window starts partway through this slot, this is Demand mode - the battery level is expected to rise from solar generation.", + "demand_before_export_falling": "Until the export window starts partway through this slot, this is Demand mode - the battery is expected to discharge to cover house load.", + "demand_before_export_steady": "Until the export window starts partway through this slot, this is Demand mode - the battery level is expected to stay steady.", "freeze_charge": "Freeze charging — the battery holds at the current level rather than charging further this slot (import rate {rate}p/kWh vs. your {threshold}p/kWh threshold).", "hold_charge_at_target": "Holding — the battery is already predicted to be at or above the {target_percent}% target for this window without charging further.", "charge_low_rate": "Charging up to {target_percent}% at the import rate for this slot of ({rate}p/kWh).",