- Workflow n8n tdfInZns7cqo8fU2 actif (15 min): snapshot HA compact -> prompt FR -> LLM local Spark (modèle dynamique via /v1/models) avec fallback OpenRouter claude-haiku-4.5 (credential chiffré, clé hors git) -> validation stricte (enums, bornes, rejet total si invalide) -> helpers advisor_* + divergence + compteurs accord/divergence + logbook. - GARANTIE OMBRE structurelle: écritures limitées à advisor_*/logbook, vérifiée par tests/advisor/run.mjs (16 tests, bloquants au push). - Kill-switch input_boolean.evcs_advisor_enabled. - Extension R2 multi-workflows (lib-node-map WORKFLOWS[], build/extract/push par fichier, n8n-create.mjs, gen-advisor-workflow.mjs). - Helpers HA via package NFS + carte dashboard EVCS Master (backup fait). - 1re reco réelle: auto_solar_plus, cible 35%, accord avec le réel. - Fix sécurité n8n-push: plus de fallback d'id implicite vers le workflow EVCS.
35 lines
1.9 KiB
Smarty
35 lines
1.9 KiB
Smarty
{{ {
|
|
"advisor_enabled": states("input_boolean.evcs_advisor_enabled"),
|
|
"advisor_agree_count": states("input_number.evcs_advisor_agree_count"),
|
|
"advisor_diverge_count": states("input_number.evcs_advisor_diverge_count"),
|
|
"advisor_prev_strategy": states("input_text.evcs_advisor_strategy"),
|
|
|
|
"soc_percent": states("sensor.victron_battery_soc"),
|
|
"battery_current_a": states("sensor.victron_battery_current"),
|
|
"pv_power_w": states("sensor.victron_pv_power_system"),
|
|
"pv_power_10m_avg_w": states("sensor.victron_pv_power_10m_avg"),
|
|
"house_ac_power_w": states("sensor.victron_consumption_power_l1"),
|
|
"grid_state": states("switch.edf_general_ok_switch"),
|
|
"acin1_available": states("sensor.victron_ac_in1_available"),
|
|
|
|
"evcs_vehicle_connected": states("binary_sensor.victron_evcs_vehicle_connected"),
|
|
"evcs_charging": states("switch.victron_evcs_charging"),
|
|
"evcs_current_a": states("sensor.victron_evcs_current"),
|
|
"evcs_surplus_state": states("input_text.victron_evcs_surplus_state"),
|
|
"evcs_source_mode": states("input_text.victron_evcs_source_mode"),
|
|
|
|
"user_strategy": states("input_select.victron_evcs_strategy"),
|
|
"allow_grid_hc_night": states("input_boolean.victron_evcs_allow_grid_hc_night"),
|
|
"allow_grid_hc_midday": states("input_boolean.victron_evcs_allow_grid_hc_midday"),
|
|
"night_target_soc_actual": states("input_number.victron_evcs_night_target_soc"),
|
|
"current_max_auto_a": states("input_number.victron_evcs_current_max_auto_a"),
|
|
"plafond_edf_on_a": states("input_number.evcs_plafond_courant_edf_on"),
|
|
|
|
"departure_time": states("input_datetime.victron_evcs_departure_time"),
|
|
"departure_priority_enabled": states("input_boolean.victron_evcs_departure_priority_enabled"),
|
|
"required_energy_kwh": states("input_number.victron_evcs_required_energy_kwh"),
|
|
|
|
"today_remaining_kwh": states("sensor.energy_production_today_remaining"),
|
|
"tomorrow_kwh": states("sensor.energy_production_tomorrow")
|
|
} | tojson }}
|