diff --git a/pyproject.toml b/pyproject.toml
index eb6396c24f..4738435b2a 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
[project]
name = "home-assistant-frontend"
-version = "20251203.1"
+version = "20251203.2"
license = "Apache-2.0"
license-files = ["LICENSE*"]
description = "The Home Assistant frontend"
diff --git a/src/components/ha-snowflakes.ts b/src/components/ha-snowflakes.ts
index 33440650a5..ca931135e4 100644
--- a/src/components/ha-snowflakes.ts
+++ b/src/components/ha-snowflakes.ts
@@ -93,7 +93,7 @@ export class HaSnowflakes extends SubscribeMixin(LitElement) {
xmlns="http://www.w3.org/2000/svg"
>
diff --git a/src/data/script_i18n.ts b/src/data/script_i18n.ts
index 5b47a5aa5d..9b2e41b9ea 100644
--- a/src/data/script_i18n.ts
+++ b/src/data/script_i18n.ts
@@ -220,12 +220,12 @@ const tryDescribeAction = (
if (config.action) {
const [domain, serviceName] = config.action.split(".", 2);
const descriptionPlaceholders =
- hass.services[domain][serviceName].description_placeholders;
+ hass.services[domain]?.[serviceName]?.description_placeholders;
const service =
hass.localize(
`component.${domain}.services.${serviceName}.name`,
descriptionPlaceholders
- ) || hass.services[domain][serviceName]?.name;
+ ) || hass.services[domain]?.[serviceName]?.name;
if (config.metadata) {
return hass.localize(
diff --git a/src/panels/config/automation/sidebar/ha-automation-sidebar-action.ts b/src/panels/config/automation/sidebar/ha-automation-sidebar-action.ts
index bd9ec94839..1afbc9aa1b 100644
--- a/src/panels/config/automation/sidebar/ha-automation-sidebar-action.ts
+++ b/src/panels/config/automation/sidebar/ha-automation-sidebar-action.ts
@@ -97,9 +97,9 @@ export default class HaAutomationSidebarAction extends LitElement {
title = `${domainToName(this.hass.localize, domain)}: ${
this.hass.localize(
`component.${domain}.services.${service}.name`,
- this.hass.services[domain][service].description_placeholders
+ this.hass.services[domain]?.[service]?.description_placeholders
) ||
- this.hass.services[domain][service]?.name ||
+ this.hass.services[domain]?.[service]?.name ||
title
}`;
}
diff --git a/src/panels/energy/strategies/energy-overview-view-strategy.ts b/src/panels/energy/strategies/energy-overview-view-strategy.ts
index 2687d78dcc..803c8b31a2 100644
--- a/src/panels/energy/strategies/energy-overview-view-strategy.ts
+++ b/src/panels/energy/strategies/energy-overview-view-strategy.ts
@@ -27,6 +27,9 @@ export class EnergyOverviewViewStrategy extends ReactiveElement {
const energyCollection = getEnergyDataCollection(hass, {
key: collectionKey,
});
+ if (!energyCollection.prefs) {
+ await energyCollection.refresh();
+ }
const prefs = energyCollection.prefs;
// No energy sources available
diff --git a/src/panels/energy/strategies/energy-view-strategy.ts b/src/panels/energy/strategies/energy-view-strategy.ts
index 64c27c5c23..109bf22d69 100644
--- a/src/panels/energy/strategies/energy-view-strategy.ts
+++ b/src/panels/energy/strategies/energy-view-strategy.ts
@@ -21,6 +21,9 @@ export class EnergyViewStrategy extends ReactiveElement {
const energyCollection = getEnergyDataCollection(hass, {
key: collectionKey,
});
+ if (!energyCollection.prefs) {
+ await energyCollection.refresh();
+ }
const prefs = energyCollection.prefs;
// No energy sources available
diff --git a/src/panels/energy/strategies/gas-view-strategy.ts b/src/panels/energy/strategies/gas-view-strategy.ts
index 1380cb26a8..3fa462711b 100644
--- a/src/panels/energy/strategies/gas-view-strategy.ts
+++ b/src/panels/energy/strategies/gas-view-strategy.ts
@@ -24,6 +24,9 @@ export class GasViewStrategy extends ReactiveElement {
const energyCollection = getEnergyDataCollection(hass, {
key: collectionKey,
});
+ if (!energyCollection.prefs) {
+ await energyCollection.refresh();
+ }
const prefs = energyCollection.prefs;
const hasGasSources = prefs?.energy_sources.some(
diff --git a/src/panels/energy/strategies/water-view-strategy.ts b/src/panels/energy/strategies/water-view-strategy.ts
index 3340ca62a1..e136ff37ba 100644
--- a/src/panels/energy/strategies/water-view-strategy.ts
+++ b/src/panels/energy/strategies/water-view-strategy.ts
@@ -24,6 +24,9 @@ export class WaterViewStrategy extends ReactiveElement {
const energyCollection = getEnergyDataCollection(hass, {
key: collectionKey,
});
+ if (!energyCollection.prefs) {
+ await energyCollection.refresh();
+ }
const prefs = energyCollection.prefs;
const hasWaterSources = prefs?.energy_sources.some(