NUC 5PPYH Generic x86-64
Seit dem Update am WE passen meine Prognosen morgens irgendwie garnicht mehr. Sie sind viel zu niedrig (ca. 25kWh-30kWh). Auch die Prognosen für morgen und Übermorgen (auch um die 25kWh-30kWh). An den Sensoren hab ich nichts geändert. Mittags wird es zwar nochmal angepasst (ca.40kWh-45kWh), aber das ich momentan auch zu wenig. Die Wetterlage ist ja ideal und es kommen momentan ca. 55kWh runter.
Davor hat es eigentlich recht gut gepasst und die Genauigkeit war bei 85-90%
Und um EOD ist das System anscheinend auch recht ausgelastet, weil zu diesem Zeitpunkt komm ich nicht aufs Dashboard.
2026-03-01 23:17:20 - custom_components.solar_forecast_ml.forecast.forecast_rule_based_strategy - DEBUG - Skipping hourly predictions for locked dates: 2026-03-01, 2026-03-02, 2026-03-03
2026-03-01 23:17:20 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - INFO - Forecast complete: Today=11.25 kWh, Tomorrow=11.10 kWh, Day After=16.43 kWh, Method=AI + Physics
2026-03-01 23:17:20 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Skipping today forecast storage - locked by morning routine
2026-03-01 23:17:20 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Skipping tomorrow forecast storage - locked by morning routine
2026-03-01 23:17:20 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Skipping day_after_tomorrow forecast storage - locked by morning routine
2026-03-01 23:17:20 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Forecast generated: today=11.25 kWh, tomorrow=11.1 kWh, method=AI + Physics, hourly_entries=72
2026-03-01 23:17:20 - custom_components.solar_forecast_ml.production.production_history - DEBUG - Peak time calculation: Using stored hourly production data
2026-03-01 23:17:20 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Skipping today forecast update - locked by morning routine
2026-03-01 23:17:20 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Skipping tomorrow forecast update - locked by morning routine
2026-03-01 23:17:20 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Skipping day_after_tomorrow forecast update - locked by morning routine
2026-03-01 23:17:20 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Forecasts saved to database (respecting locks)
2026-03-01 23:17:20 - custom_components.solar_forecast_ml.coordinator - DEBUG - Hourly predictions cache refreshed: 24 today, 24 tomorrow, 24 day_after
2026-03-01 23:17:20 - custom_components.solar_forecast_ml.coordinator - DEBUG - Finished fetching solar_forecast_ml data in 0.631 seconds (success: True)
2026-03-01 23:17:20 - custom_components.solar_forecast_ml.core.core_helpers - DEBUG - ensure_local: Naive datetime, localizing to local timezone
2026-03-01 23:28:57 - custom_components.solar_forecast_ml.energy - DEBUG - Energy forecast: 25 hourly entries provided
2026-03-01 23:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - === EOD SCHEDULER TRIGGERED at 23:30:00 ===
2026-03-01 23:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Creating EOD workflow task...
2026-03-01 23:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - >>> STARTING EOD WORKFLOW (scheduled execution) <<<
2026-03-01 23:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - ================================================================================
2026-03-01 23:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - END-OF-DAY WORKFLOW STARTED at 2026-03-01 23:30:00
2026-03-01 23:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - ================================================================================
2026-03-01 23:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Excluded hours info for 2026-03-01: 3/24 (12.5%), reasons: {'inverter_clipped': 2, 'unexpected_clouds': 1}
2026-03-01 23:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Day finalized: yield=52.95 kWh, consumption=29.21 kWh, accuracy=66.0%
2026-03-01 23:30:00 - custom_components.solar_forecast_ml.data.data_io - DEBUG - DataManagerIO initialized with DatabaseManager
2026-03-01 23:30:00 - custom_components.solar_forecast_ml.data.data_shadow_detection - INFO - PerformanceLossAnalyzer initialized with DatabaseManager
2026-03-01 23:30:00 - custom_components.solar_forecast_ml.data.data_daily_summaries - INFO - Created daily summary for 2026-03-01
2026-03-01 23:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Daily summary created for 2026-03-01 using DailySummariesHandler
2026-03-01 23:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Day 2026-03-01 moved to history: 34.94 → 52.95 kWh
2026-03-01 23:30:00 - custom_components.solar_forecast_ml.core.core_helpers - DEBUG - ensure_local: Naive datetime, localizing to local timezone
2026-03-01 23:30:01 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Statistics calculated successfully
2026-03-01 23:30:01 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Calculating weather precision for 2026-03-01
2026-03-01 23:30:01 - custom_components.solar_forecast_ml.data.data_weather_precision - INFO - Calculating correction factors for 2026-03-01
2026-03-01 23:30:01 - custom_components.solar_forecast_ml.data.data_weather_precision - INFO - Loaded actual weather for 24 hours
2026-03-01 23:30:01 - custom_components.solar_forecast_ml.data.data_weather_precision - INFO - Loaded raw forecasts for 24 hours
2026-03-01 23:30:01 - custom_components.solar_forecast_ml.data.data_weather_precision - INFO - Compared 24 hours successfully
2026-03-01 23:30:01 - custom_components.solar_forecast_ml.data.data_weather_precision - INFO - Updated rolling factors: 8 days (clear=1, cloudy=6), solar=1.117, hourly_hours=10
2026-03-01 23:30:01 - custom_components.solar_forecast_ml.data.data_weather_precision - INFO - Correction factors calculated for 2026-03-01: 24 hours, factors: {'temperature_offset': -0.36, 'pressure_offset': 0.0, 'solar_radiation_wm2_factor': 1.638, 'clouds_factor': 0.906, 'humidity_factor': 1.164, 'wind_factor': 1.0, 'rain_diff': 0.0}
2026-03-01 23:30:01 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Weather precision calculated for 2026-03-01
2026-03-01 23:30:01 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Weather MLP training: 112 samples, 8 features
2026-03-01 23:30:01 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - INFO - Weather MLP training: 112 samples (90 train, 22 val), 50 epochs
2026-03-01 23:30:03 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP epoch 10: train_loss=0.240891, val_loss=0.356231
2026-03-01 23:30:04 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - INFO - Weather MLP early stopping at epoch 19
2026-03-01 23:30:04 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - INFO - Weather MLP weights loaded: samples=103, R²=0.239
2026-03-01 23:30:04 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - INFO - Weather MLP trained: R²=0.231, RMSE=0.5549, samples=112, epochs=19
2026-03-01 23:30:04 - custom_components.solar_forecast_ml.data.db_manager - INFO - Weather MLP weights saved: 112 samples, R²=0.231
2026-03-01 23:30:04 - custom_components.solar_forecast_ml.data.data_weather_corrector - INFO - WeatherForecastCorrector: Weather MLP attached
2026-03-01 23:30:04 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Weather MLP trained and saved: R²=0.231, RMSE=0.5549, 112 samples
2026-03-01 23:30:04 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Night cleanup: VACUUM disabled (DB auto-optimizes)
2026-03-01 23:30:12 - custom_components.solar_forecast_ml.ai.ai_predictor - INFO - AI training started: 1 outputs
2026-03-01 23:30:15 - custom_components.solar_forecast_ml.ai.ai_predictor - INFO - Prepared 158 training samples from 18 days, 1 outputs
2026-03-01 23:30:15 - custom_components.solar_forecast_ml.ai.ai_predictor - INFO - Training Ridge with 158 samples...
2026-03-01 23:30:15 - custom_components.solar_forecast_ml.ai.ai_tiny_ridge - INFO - TinyRidge training started: 158 samples
2026-03-01 23:30:16 - custom_components.solar_forecast_ml.ai.ai_tiny_ridge - DEBUG - Alpha 0.001: LOO-CV MSE = 0.770579
2026-03-01 23:30:16 - custom_components.solar_forecast_ml.ai.ai_tiny_ridge - DEBUG - Alpha 0.01: LOO-CV MSE = 0.183006
2026-03-01 23:30:16 - custom_components.solar_forecast_ml.ai.ai_tiny_ridge - DEBUG - Alpha 0.1: LOO-CV MSE = 0.059775
2026-03-01 23:30:16 - custom_components.solar_forecast_ml.ai.ai_tiny_ridge - DEBUG - Alpha 1.0: LOO-CV MSE = 0.018400
2026-03-01 23:30:16 - custom_components.solar_forecast_ml.ai.ai_tiny_ridge - DEBUG - Alpha 10.0: LOO-CV MSE = 0.011315
2026-03-01 23:30:17 - custom_components.solar_forecast_ml.ai.ai_tiny_ridge - DEBUG - Alpha 100.0: LOO-CV MSE = 0.008834
2026-03-01 23:30:17 - custom_components.solar_forecast_ml.ai.ai_tiny_ridge - DEBUG - Alpha 1000.0: LOO-CV MSE = 0.010816
2026-03-01 23:30:17 - custom_components.solar_forecast_ml.ai.ai_tiny_ridge - INFO - Selected alpha = 100.0 (LOO-CV MSE = 0.008834)
2026-03-01 23:30:17 - custom_components.solar_forecast_ml.ai.ai_tiny_ridge - INFO - TinyRidge trained: alpha=100.0000, R²=0.890, RMSE=0.0638, samples=158, outputs=1
2026-03-01 23:30:17 - custom_components.solar_forecast_ml.ai.ai_predictor - INFO - Ridge trained: R²=0.890, alpha=100.0000
2026-03-01 23:30:17 - custom_components.solar_forecast_ml.ai.ai_tiny_lstm - INFO - Weights loaded: layers=(48,24), outputs=1, heads=4
2026-03-01 23:30:17 - custom_components.solar_forecast_ml.ai.ai_predictor - INFO - Seasonal warm-start: spring, archive 2026 (158 samples, R²=-0.117)
2026-03-01 23:30:17 - custom_components.solar_forecast_ml.ai.ai_predictor - INFO - Training LSTM with 158 samples...
2026-03-01 23:30:17 - custom_components.solar_forecast_ml.ai.ai_tiny_lstm - INFO - Training V3.0: 158 samples, 200 epochs, 1 outputs
2026-03-01 23:32:14 - custom_components.solar_forecast_ml.ai.ai_tiny_lstm - INFO - Epoch 10: train=0.0094, val=0.0159, lr=0.004970
2026-03-01 23:34:11 - custom_components.solar_forecast_ml.ai.ai_tiny_lstm - INFO - Epoch 20: train=0.0072, val=0.0132, lr=0.004880
2026-03-01 23:36:10 - custom_components.solar_forecast_ml.ai.ai_tiny_lstm - INFO - Epoch 30: train=0.0072, val=0.0137, lr=0.004733
2026-03-01 23:38:07 - custom_components.solar_forecast_ml.ai.ai_tiny_lstm - INFO - Epoch 40: train=0.0065, val=0.0112, lr=0.004532
2026-03-01 23:39:53 - custom_components.solar_forecast_ml.ai.ai_tiny_lstm - INFO - Early stopping at epoch 49
2026-03-01 23:39:54 - custom_components.solar_forecast_ml.ai.ai_tiny_lstm - INFO - Training complete: R2=0.432, RMSE=0.113 kWh, outputs=1, layers=2, heads=4
2026-03-01 23:39:54 - custom_components.solar_forecast_ml.ai.ai_predictor - INFO - LSTM trained: R²=0.432, epochs=49, layers=2, heads=4
2026-03-01 23:39:54 - custom_components.solar_forecast_ml.ai.ai_predictor - INFO - Active model: LSTM (158 samples)
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Model weights saved to structured tables
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.ai.ai_predictor - INFO - Weights saved to database
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.ai.ai_seasonal - DEBUG - Seasonal factors saved to database
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.ai.ai_predictor - DEBUG - Updated seasonal factors for 1 months
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.ai.ai_dni_tracker - DEBUG - DNI tracker saved to database
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Seasonal archive saved: spring/lstm (24241 weights)
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Seasonal archive saved: spring/ridge (2017 weights)
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.ai.ai_predictor - INFO - Model archived for season spring/2026
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.ai.ai_predictor - INFO - Training complete: active=tiny_lstm, R²=0.432, RMSE=0.113kWh, samples=158, outputs=1
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - AI model trained: R²=0.432, RMSE=0.113kWh, samples=158, features=28, outputs=1, attention=ON
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.coordinator - INFO - Coordinator notified of AI Training completion at 2026-03-01 23:40:05.652687+01:00. Accuracy: 0.43231355026487017
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.core.core_helpers - DEBUG - ensure_local: Naive datetime, localizing to local timezone
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.sensors.sensor_system_status - DEBUG - Status updated: event=ai_training, status=success, state=ok
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.ai.ai_dni_tracker - ERROR - Failed to save DNI tracker: database is locked
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.ai.ai_dni_tracker - INFO - DNI tracker end-of-day update complete
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Method learning [partly_cloudy/morning]: physics_mae=0.0260, ai_mae=N/A, advantage=1.00 (2 samples)
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Method learning [clear/morning]: physics_mae=3.2867, ai_mae=N/A, advantage=1.00 (2 samples)
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Method learning [clear/midday]: physics_mae=5.5877, ai_mae=N/A, advantage=1.00 (2 samples)
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Method learning [partly_cloudy/midday]: physics_mae=0.4890, ai_mae=N/A, advantage=1.00 (1 samples)
2026-03-01 23:40:05 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Method learning [clear/afternoon]: physics_mae=1.9997, ai_mae=N/A, advantage=1.00 (3 samples)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Method performance learning completed for 2026-03-01
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - DEBUG - Ensemble group weight learning: No data with lstm/ridge/actual for 2026-03-01
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Group method learning [Gruppe 1/partly_cloudy/morning]: physics=0.0420 ai=N/A lstm=N/A ridge=N/A best=physics advantage=1.00 (1 samples)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Group method learning [Gruppe 1/clear/morning]: physics=3.2967 ai=N/A lstm=N/A ridge=N/A best=physics advantage=1.00 (2 samples)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Group method learning [Gruppe 1/clear/midday]: physics=5.5777 ai=N/A lstm=N/A ridge=N/A best=physics advantage=1.00 (2 samples)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Group method learning [Gruppe 1/partly_cloudy/midday]: physics=0.4890 ai=N/A lstm=N/A ridge=N/A best=physics advantage=1.00 (1 samples)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Group method learning [Gruppe 1/clear/afternoon]: physics=1.9997 ai=N/A lstm=N/A ridge=N/A best=physics advantage=1.00 (3 samples)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Group method performance learning completed for 2026-03-01: 10 buckets updated
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.physics.physics_calibrator - DEBUG - Actual-weather physics for Gruppe 1 hour 7: 0.0308 kWh (theoretical=0.2690, ghi_ratio=0.11)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.physics.physics_calibrator - DEBUG - Clamping outlier: Gruppe 1 hour 7, ratio=10.39 -> 3.00
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.physics.physics_calibrator - DEBUG - Actual-weather physics for Gruppe 1 hour 8: 1.3204 kWh (theoretical=1.9820, ghi_ratio=0.67)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.physics.physics_calibrator - DEBUG - Actual-weather physics for Gruppe 1 hour 9: 5.8254 kWh (theoretical=3.8836, ghi_ratio=1.63)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.physics.physics_calibrator - DEBUG - Actual-weather physics for Gruppe 1 hour 10: 8.1988 kWh (theoretical=5.4659, ghi_ratio=1.89)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.physics.physics_calibrator - DEBUG - Actual-weather physics for Gruppe 1 hour 11: 9.7631 kWh (theoretical=6.5087, ghi_ratio=1.97)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.physics.physics_calibrator - DEBUG - Actual-weather physics for Gruppe 1 hour 12: 10.0568 kWh (theoretical=6.8946, ghi_ratio=1.46)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.physics.physics_calibrator - DEBUG - Actual-weather physics for Gruppe 1 hour 13: 9.8749 kWh (theoretical=6.5833, ghi_ratio=1.97)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.physics.physics_calibrator - DEBUG - Actual-weather physics for Gruppe 1 hour 14: 8.4110 kWh (theoretical=5.6073, ghi_ratio=2.35)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.physics.physics_calibrator - DEBUG - Actual-weather physics for Gruppe 1 hour 15: 2.7305 kWh (theoretical=4.0759, ghi_ratio=0.67)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.physics.physics_calibrator - DEBUG - Actual-weather physics for Gruppe 1 hour 16: 3.2931 kWh (theoretical=2.1954, ghi_ratio=4.44)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.physics.physics_calibrator - DEBUG - Actual-weather physics for Gruppe 1 hour 17: 0.6192 kWh (theoretical=0.4128, ghi_ratio=16.41)
2026-03-01 23:40:06 - custom_components.solar_forecast_ml.physics.physics_calibrator - DEBUG - Clamping outlier: Gruppe 1 hour 18, ratio=0.12 -> 0.40
2026-03-01 23:40:07 - custom_components.solar_forecast_ml.physics.physics_calibrator - DEBUG - Saved calibration config to database
2026-03-01 23:40:07 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Physics calibration SUCCESS for 2026-03-01: Updated 1 groups
2026-03-01 23:40:08 - custom_components.solar_forecast_ml.data.data_weather_expert_blender - DEBUG - Saved expert weights to database
2026-03-01 23:40:09 - custom_components.solar_forecast_ml.data.data_weather_expert_blender - DEBUG - Saved expert weights to database
2026-03-01 23:40:10 - custom_components.solar_forecast_ml.data.data_weather_expert_blender - DEBUG - Saved expert weights to database
2026-03-01 23:40:11 - custom_components.solar_forecast_ml.data.data_weather_expert_blender - DEBUG - Saved expert weights to database
2026-03-01 23:40:11 - custom_components.solar_forecast_ml.data.data_weather_expert_blender - DEBUG - Saved expert weights to database
2026-03-01 23:40:12 - custom_components.solar_forecast_ml.data.data_weather_expert_blender - DEBUG - Saved expert weights to database
2026-03-01 23:40:13 - custom_components.solar_forecast_ml.data.data_weather_expert_blender - DEBUG - Saved expert weights to database
2026-03-01 23:40:13 - custom_components.solar_forecast_ml.data.data_weather_expert_blender - DEBUG - Saved expert weights to database
2026-03-01 23:40:14 - custom_components.solar_forecast_ml.data.data_weather_expert_blender - DEBUG - Saved expert weights to database
2026-03-01 23:40:14 - custom_components.solar_forecast_ml.data.data_weather_expert_blender - DEBUG - Saved expert weights to database
2026-03-01 23:40:15 - custom_components.solar_forecast_ml.data.data_weather_expert_blender - DEBUG - Saved expert weights to database
2026-03-01 23:40:15 - custom_components.solar_forecast_ml.data.data_weather_expert_blender - INFO - Learned from 2026-03-01: 24 hours across 3 cloud types (buckets: overcast:5h, mixed:2h, clear:17h)
2026-03-01 23:40:15 - custom_components.solar_forecast_ml.data.data_visibility_learner - DEBUG - VisibilityLearner for 2026-03-01: No fog conditions detected
2026-03-01 23:40:15 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Weather expert learning SUCCESS for 2026-03-01
2026-03-01 23:40:15 - custom_components.solar_forecast_ml.data.data_weather_expert_blender - DEBUG - No snow predictions for 2026-03-01
2026-03-01 23:40:15 - custom_components.solar_forecast_ml.data.data_io - DEBUG - DataManagerIO initialized with DatabaseManager
2026-03-01 23:40:15 - custom_components.solar_forecast_ml.data.data_shadow_pattern_learning - INFO - ShadowPatternLearner initialized
2026-03-01 23:40:15 - custom_components.solar_forecast_ml.data.data_shadow_pattern_learning - INFO - ShadowPatternLearner loaded: 15 hourly patterns, 15 seasonal patterns, 6 fixed obstructions detected
2026-03-01 23:40:16 - custom_components.solar_forecast_ml.data.data_shadow_pattern_learning - INFO - Shadow pattern learning for 2026-03-01 [_system_]: 12 hours, 0 patterns updated, 6 fixed obstructions
2026-03-01 23:40:16 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Shadow pattern learning SUCCESS [_system_] for 2026-03-01: 12 hours learned, 0 patterns updated, 6 fixed obstructions
2026-03-01 23:40:16 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Fixed obstruction hours detected [_system_]: [6, 8, 9, 18, 19, 20]
2026-03-01 23:40:16 - custom_components.solar_forecast_ml.data.data_shadow_pattern_learning - DEBUG - No shadow data for 2026-03-01/Gruppe 1 - skipping learning
2026-03-01 23:40:16 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - DEBUG - Shadow pattern learning skipped [Gruppe 1] for 2026-03-01: No shadow detection data available
2026-03-01 23:40:18 - custom_components.solar_forecast_ml.ai.ai_drift_monitor - INFO - Drift detection complete: 16 metrics saved, 4 events created
2026-03-01 23:40:18 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Drift detection completed for 2026-03-01: 16 metrics, 4 events, 2 scopes
2026-03-01 23:40:18 - custom_components.solar_forecast_ml.core.core_helpers - DEBUG - ensure_local: Naive datetime, localizing to local timezone
2026-03-01 23:40:18 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - EOD duration saved: 618.6s for 2026-03-01
2026-03-01 23:40:18 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - End-of-day workflow completed (15/15 steps, 618.6s)
2026-03-01 23:40:18 - custom_components.solar_forecast_ml.sensors.sensor_system_status - DEBUG - Status updated: event=end_of_day_workflow, status=success, state=ok
2026-03-01 23:42:24 - custom_components.solar_forecast_ml.energy - DEBUG - Energy forecast: 25 hourly entries provided
2026-03-01 23:42:32 - custom_components.solar_forecast_ml.energy - DEBUG - Energy forecast: 25 hourly entries provided
2026-03-01 23:42:32 - custom_components.solar_forecast_ml.energy - DEBUG - Energy forecast: 25 hourly entries provided
2026-03-01 23:43:11 - custom_components.solar_forecast_ml.energy - DEBUG - Energy forecast: 25 hourly entries provided
2026-03-01 23:47:11 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background forecast update starting...
2026-03-01 23:47:11 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update - fetching from Open-Meteo API...
2026-03-01 23:47:12 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Saved 72 hours to weather_cache_open_meteo table (RAW)
2026-03-01 23:47:12 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Fetched 72 hours from Open-Meteo (GHI: 0 - 549 W/m2)
2026-03-01 23:47:12 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update successful: 72 hours
2026-03-01 23:47:12 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background update complete: 72 hours
2026-03-01 23:47:12 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background forecast update starting...
2026-03-01 23:47:12 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update - fetching from Open-Meteo API...
2026-03-01 23:47:13 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Saved 72 hours to weather_cache_open_meteo table (RAW)
2026-03-01 23:47:13 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Fetched 72 hours from Open-Meteo (GHI: 0 - 549 W/m2)
2026-03-01 23:47:13 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update successful: 72 hours
2026-03-01 23:47:13 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background update complete: 72 hours
2026-03-01 23:47:19 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Forecast using database: 72 hours across 3 days
2026-03-01 23:47:19 - custom_components.solar_forecast_ml.sensors.sensor_data_collector - DEBUG - Collected external sensor data: {'temperature': 4.0, 'humidity': 79.4, 'wind_speed': None, 'rain': None, 'pressure': 966.3, 'solar_radiation': 0.03, 'lux': None}
2026-03-01 23:47:19 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Creating forecast (AI + Physics)...
2026-03-01 23:47:20 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Lag-Feature 'production_yesterday' = 37.17 kWh (from DB: 2026-02-28)
2026-03-01 23:47:20 - custom_components.solar_forecast_ml.forecast.forecast_rule_based_strategy - DEBUG - Physics+LSTM blend active
2026-03-01 23:47:22 - custom_components.solar_forecast_ml.forecast.forecast_rule_based_strategy - DEBUG - Skipping hourly predictions for locked dates: 2026-03-01, 2026-03-02, 2026-03-03
2026-03-01 23:47:22 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - INFO - Forecast complete: Today=19.87 kWh, Tomorrow=22.29 kWh, Day After=24.69 kWh, Method=AI + Physics
2026-03-01 23:47:22 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Skipping today forecast storage - locked by morning routine
2026-03-01 23:47:22 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Skipping tomorrow forecast storage - locked by morning routine
2026-03-01 23:47:22 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Skipping day_after_tomorrow forecast storage - locked by morning routine
2026-03-01 23:47:22 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Forecast generated: today=19.87 kWh, tomorrow=22.29 kWh, method=AI + Physics, hourly_entries=72
2026-03-01 23:47:22 - custom_components.solar_forecast_ml.production.production_history - DEBUG - Peak time calculation: Using stored hourly production data
2026-03-01 23:47:22 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Skipping today forecast update - locked by morning routine
2026-03-01 23:47:22 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Skipping tomorrow forecast update - locked by morning routine
2026-03-01 23:47:22 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Skipping day_after_tomorrow forecast update - locked by morning routine
2026-03-01 23:47:22 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Forecasts saved to database (respecting locks)
2026-03-01 23:47:22 - custom_components.solar_forecast_ml.coordinator - DEBUG - Hourly predictions cache refreshed: 24 today, 24 tomorrow, 24 day_after
2026-03-01 23:47:22 - custom_components.solar_forecast_ml.coordinator - DEBUG - Finished fetching solar_forecast_ml data in 2.580 seconds (success: True)
2026-03-01 23:47:22 - custom_components.solar_forecast_ml.core.core_helpers - DEBUG - ensure_local: Naive datetime, localizing to local timezone
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background forecast update starting...
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update - fetching from Open-Meteo API...
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, returning None from fetchone
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Saved 72 hours to weather_cache_open_meteo table (RAW)
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Fetched 72 hours from Open-Meteo (GHI: 0 - 549 W/m2)
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update successful: 72 hours
2026-03-01 23:48:32 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background update complete: 72 hours
2026-03-02 00:00:01 - custom_components.solar_forecast_ml.production.production_tracker - INFO - Midnight reset - Final production time for previous day: 11.45 hours
2026-03-02 00:00:01 - custom_components.solar_forecast_ml.production.production_tracker - INFO - Midnight reset - Final production time for previous day: 11.45 hours
2026-03-02 00:00:01 - custom_components.solar_forecast_ml.data.data_weather_pipeline_manager - DEBUG - Pipeline: Tracked actual weather - temp=3.9C, clouds=29%
2026-03-02 00:05:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - DEBUG - Executing hourly update
2026-03-02 00:10:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Executing midnight task
2026-03-02 00:10:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - DEBUG - Reset daily peak tracking
2026-03-02 00:10:00 - custom_components.solar_forecast_ml.data.data_state_handler - DEBUG - Expected daily production cleared
2026-03-02 00:10:00 - custom_components.solar_forecast_ml.core.core_helpers - DEBUG - ensure_local: Naive datetime, localizing to local timezone
2026-03-02 00:10:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Dynamic scheduling: Weather blend at 06:20 (sunrise 07:05 - 45min)
2026-03-02 00:10:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Dynamic scheduling: Corrected forecast at 06:25 (sunrise 07:05 - 40min)
2026-03-02 00:10:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Dynamic scheduling: Final forecast at 06:35 (sunrise 07:05 - 30min)
2026-03-02 00:17:21 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - INFO - System started without locked forecast (before 12:00) - initiating recovery
2026-03-02 00:17:21 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Forecast using database: 48 hours across 2 days
2026-03-02 00:17:21 - custom_components.solar_forecast_ml.sensors.sensor_data_collector - DEBUG - Collected external sensor data: {'temperature': 3.9, 'humidity': 80.1, 'wind_speed': None, 'rain': None, 'pressure': 967.0, 'solar_radiation': 0.04, 'lux': None}
2026-03-02 00:17:21 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Creating forecast (AI + Physics)...
2026-03-02 00:17:22 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Lag-Feature 'production_yesterday' = 52.95 kWh (from DB: 2026-03-01)
2026-03-02 00:17:22 - custom_components.solar_forecast_ml.forecast.forecast_rule_based_strategy - DEBUG - Physics+LSTM blend active
2026-03-02 00:17:23 - custom_components.solar_forecast_ml.forecast.forecast_rule_based_strategy - DEBUG - Skipping hourly predictions for locked dates: 2026-03-02, 2026-03-03
2026-03-02 00:17:23 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - INFO - Forecast complete: Today=24.41 kWh, Tomorrow=26.45 kWh, Day After=0.00 kWh, Method=AI + Physics
2026-03-02 00:17:23 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Forecast generated: today=24.41 kWh, tomorrow=26.45 kWh, method=AI + Physics, hourly_entries=48
2026-03-02 00:17:23 - custom_components.solar_forecast_ml.production.production_history - DEBUG - Peak time calculation: Using stored hourly production data
2026-03-02 00:17:23 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Forecasts saved to database (respecting locks)
2026-03-02 00:17:23 - custom_components.solar_forecast_ml.coordinator - DEBUG - Hourly predictions cache refreshed: 24 today, 24 tomorrow, 0 day_after
2026-03-02 00:17:23 - custom_components.solar_forecast_ml.coordinator - DEBUG - Finished fetching solar_forecast_ml data in 1.752 seconds (success: True)
2026-03-02 00:17:23 - custom_components.solar_forecast_ml.core.core_helpers - DEBUG - ensure_local: Naive datetime, localizing to local timezone
2026-03-02 00:20:00 - custom_components.solar_forecast_ml.data.data_weather_pipeline_manager - INFO - Pipeline: Scheduled corrected forecast triggered (00:20)
2026-03-02 00:20:00 - custom_components.solar_forecast_ml.data.data_weather_pipeline_manager - INFO - Pipeline: Fetching fresh weather data for next day forecast...
2026-03-02 00:20:00 - custom_components.solar_forecast_ml.data.data_weather_pipeline_manager - INFO - Pipeline: Refreshing all weather sources (force)...
2026-03-02 00:20:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Astronomy cache refresh triggered at 00:20:00
2026-03-02 00:20:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Refreshing astronomy cache for today + 7 days...
2026-03-02 00:20:00 - custom_components.solar_forecast_ml.astronomy.astronomy_cache - INFO - Astronomy Cache initialized: lat=50.29092953358984, lon=9.820629338678437, tz=Europe/Berlin, elev=485m
2026-03-02 00:20:00 - custom_components.solar_forecast_ml.astronomy.astronomy_cache - INFO - Panel groups configured: 1 groups
2026-03-02 00:20:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - DEBUG - Panel groups set for astronomy refresh: 1 groups
2026-03-02 00:20:00 - custom_components.solar_forecast_ml.astronomy.astronomy_cache - INFO - Rebuilding astronomy cache: 0 days back, 7 days ahead from 2026-03-02
2026-03-02 00:20:00 - custom_components.solar_forecast_ml.astronomy.astronomy_cache - INFO - Processing 8 days in parallel...
2026-03-02 00:20:01 - custom_components.solar_forecast_ml.astronomy.astronomy_cache - INFO - Astronomy cache: 8/8 days processed
2026-03-02 00:20:01 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Astronomy cache refreshed: 8 days updated, 0 errors
2026-03-02 00:20:01 - custom_components.solar_forecast_ml.astronomy.astronomy_cache_manager - DEBUG - Loaded 10 days + 240 hourly entries of astronomy data into cache
2026-03-02 00:20:01 - custom_components.solar_forecast_ml.astronomy.astronomy_cache_manager - DEBUG - Astronomy cache manager initialized from database
2026-03-02 00:20:06 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Saved 72 hours to weather_cache_open_meteo table (RAW)
2026-03-02 00:20:06 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Fetched 72 hours from Open-Meteo (GHI: 0 - 549 W/m2)
2026-03-02 00:20:06 - custom_components.solar_forecast_ml.data.data_weather_pipeline_manager - DEBUG - Pipeline: Open-Meteo fetch SUCCESS
2026-03-02 00:20:21 - custom_components.solar_forecast_ml.data.data_weather_expert_blender - WARNING - WttrIn fetch error:
2026-03-02 00:20:23 - custom_components.solar_forecast_ml.data.data_weather_expert_blender - DEBUG - BrightSky: Saved 25 hours to DB
2026-03-02 00:20:23 - custom_components.solar_forecast_ml.data.data_weather_pipeline_manager - INFO - Pipeline: Expert sources: wttr.in: FAILED, Bright Sky: OK, Pirate Weather: disabled
2026-03-02 00:20:23 - custom_components.solar_forecast_ml.data.data_weather_corrector - INFO - Loaded 3 dates from weather_cache_open_meteo (RAW)
2026-03-02 00:20:23 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 0: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:23 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:23 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 1: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:23 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:23 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 2: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:23 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:23 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 3: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:23 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:23 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 4: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:23 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 5: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 6: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 7: 30.7 * 0.577 = 17.7 W/m²
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 8: 52.0 W/m² (cloud_cover=22%)
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.513 for hour 8
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 9: 177.0 W/m² (cloud_cover=13%)
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.339 for hour 9
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 10: 305.0 W/m² (cloud_cover=12%)
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.185 for hour 10
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 11: 426.0 W/m² (cloud_cover=12%)
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.988 for hour 11
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 12: 514.0 W/m² (cloud_cover=13%)
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.089 for hour 12
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 13: 549.0 W/m² (cloud_cover=11%)
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.093 for hour 13
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 14: 530.0 W/m² (cloud_cover=10%)
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.999 for hour 14
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 15: 447.0 W/m² (cloud_cover=16%)
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.176 for hour 15
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 16: 304.0 W/m² (cloud_cover=11%)
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.971 for hour 16
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 17: 153.0 W/m² (cloud_cover=14%)
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.080 for hour 17
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 18: 42.0 W/m² (cloud_cover=15%)
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 19: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 20: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 21: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 22: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 23: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 0: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 1: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 2: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 3: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:24 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 4: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 5: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 6: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 7: 34.4 * 0.482 = 16.6 W/m²
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 8: 54.0 W/m² (cloud_cover=31%)
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.513 for hour 8
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 9: 183.0 W/m² (cloud_cover=31%)
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.339 for hour 9
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 10: 312.0 W/m² (cloud_cover=26%)
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.185 for hour 10
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 11: 435.0 W/m² (cloud_cover=31%)
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.988 for hour 11
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 12: 518.0 W/m² (cloud_cover=28%)
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.089 for hour 12
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 13: 537.0 W/m² (cloud_cover=38%)
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.093 for hour 13
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 14: 497.0 W/m² (cloud_cover=34%)
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.999 for hour 14
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 15: 408.0 W/m² (cloud_cover=24%)
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.176 for hour 15
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 16: 278.0 W/m² (cloud_cover=20%)
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.971 for hour 16
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 17: 145.0 W/m² (cloud_cover=18%)
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.080 for hour 17
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 18: 43.0 W/m² (cloud_cover=15%)
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 19: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 20: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 21: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 22: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 23: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 0: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 1: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 2: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 3: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:25 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 4: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 5: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 6: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 7: 38.1 * 0.280 = 10.7 W/m²
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 8: 58.0 W/m² (cloud_cover=50%)
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.513 for hour 8
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 9: 187.0 W/m² (cloud_cover=50%)
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.339 for hour 9
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 10: 313.0 W/m² (cloud_cover=50%)
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.185 for hour 10
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 11: 430.0 W/m² (cloud_cover=50%)
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.988 for hour 11
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 12: 506.0 W/m² (cloud_cover=50%)
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.089 for hour 12
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 13: 518.0 W/m² (cloud_cover=50%)
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.093 for hour 13
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 14: 473.0 W/m² (cloud_cover=50%)
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.999 for hour 14
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 15: 382.0 W/m² (cloud_cover=50%)
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.176 for hour 15
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 16: 254.0 W/m² (cloud_cover=50%)
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.971 for hour 16
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 17: 128.0 W/m² (cloud_cover=50%)
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.080 for hour 17
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 18: 37.0 W/m² (cloud_cover=50%)
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 19: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 20: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 21: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 22: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 23: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - INFO - Created corrected forecast: 72 hours written to weather_forecast
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_pipeline_manager - INFO - Pipeline: Corrected forecast updated
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_pipeline_manager - INFO - Pipeline: Fresh weather data fetched successfully
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - INFO - Loaded 3 dates from weather_cache_open_meteo (RAW)
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 0: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 1: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 2: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 3: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:26 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 4: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 5: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 6: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 7: 30.7 * 0.582 = 17.9 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 8: 52.0 W/m² (cloud_cover=22%)
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.513 for hour 8
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 9: 177.0 W/m² (cloud_cover=14%)
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.339 for hour 9
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 10: 305.0 W/m² (cloud_cover=15%)
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.185 for hour 10
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 11: 426.0 W/m² (cloud_cover=15%)
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.988 for hour 11
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 12: 514.0 W/m² (cloud_cover=15%)
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.089 for hour 12
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 13: 549.0 W/m² (cloud_cover=14%)
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.093 for hour 13
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 14: 530.0 W/m² (cloud_cover=13%)
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.999 for hour 14
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 15: 447.0 W/m² (cloud_cover=11%)
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.176 for hour 15
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 16: 304.0 W/m² (cloud_cover=13%)
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.971 for hour 16
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 17: 153.0 W/m² (cloud_cover=15%)
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.080 for hour 17
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-02 hour 18: 42.0 W/m² (cloud_cover=15%)
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 19: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 20: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 21: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 22: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-02 hour 23: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 0: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 1: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 2: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 3: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 4: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 5: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 6: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 7: 34.4 * 0.563 = 19.4 W/m²
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 8: 54.0 W/m² (cloud_cover=28%)
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:27 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.513 for hour 8
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 9: 183.0 W/m² (cloud_cover=34%)
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.339 for hour 9
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 10: 312.0 W/m² (cloud_cover=26%)
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.185 for hour 10
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 11: 435.0 W/m² (cloud_cover=26%)
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.988 for hour 11
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 12: 518.0 W/m² (cloud_cover=20%)
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.089 for hour 12
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 13: 537.0 W/m² (cloud_cover=25%)
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.093 for hour 13
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 14: 497.0 W/m² (cloud_cover=22%)
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.999 for hour 14
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 15: 408.0 W/m² (cloud_cover=17%)
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.176 for hour 15
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 16: 278.0 W/m² (cloud_cover=16%)
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.971 for hour 16
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 17: 145.0 W/m² (cloud_cover=17%)
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.080 for hour 17
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-03 hour 18: 43.0 W/m² (cloud_cover=20%)
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 19: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 20: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 21: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 22: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-03 hour 23: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 0: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:28 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 1: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 2: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 3: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 4: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 5: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 6: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 7: 38.1 * 0.494 = 18.8 W/m²
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 8: 58.0 W/m² (cloud_cover=32%)
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.513 for hour 8
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 9: 187.0 W/m² (cloud_cover=32%)
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.339 for hour 9
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 10: 313.0 W/m² (cloud_cover=32%)
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.185 for hour 10
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 11: 430.0 W/m² (cloud_cover=28%)
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.988 for hour 11
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 12: 506.0 W/m² (cloud_cover=25%)
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.089 for hour 12
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 13: 518.0 W/m² (cloud_cover=23%)
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.093 for hour 13
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 14: 473.0 W/m² (cloud_cover=26%)
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.999 for hour 14
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 15: 382.0 W/m² (cloud_cover=31%)
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.176 for hour 15
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 16: 254.0 W/m² (cloud_cover=35%)
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 0.971 for hour 16
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 17: 128.0 W/m² (cloud_cover=34%)
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using hourly solar factor 1.080 for hour 17
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Using Open-Meteo GHI for 2026-03-04 hour 18: 37.0 W/m² (cloud_cover=31%)
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 19: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 20: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 21: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 22: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - DEBUG - Fallback calculation for 2026-03-04 hour 23: 0.0 * 0.050 = 0.0 W/m²
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.ai.ai_weather_mlp - DEBUG - Weather MLP quality insufficient: R²=0.231 < 0.500, using static factors
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_corrector - INFO - Created corrected forecast: 72 hours written to weather_forecast
2026-03-02 00:20:29 - custom_components.solar_forecast_ml.data.data_weather_pipeline_manager - INFO - Pipeline: Daily corrected forecast created with fresh data
2026-03-02 00:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - === EARLY MORNING FORECAST SCHEDULER TRIGGERED at 00:30:00 ===
2026-03-02 00:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Creating early morning forecast task...
2026-03-02 00:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - >>> STARTING EARLY MORNING FORECAST (00:30 scheduled execution) <<<
2026-03-02 00:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO -
2026-03-02 00:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - ╔══════════════════════════════════════════════════════════════════════════════╗
2026-03-02 00:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - ║ EARLY MORNING FORECAST @ 00:30 - Initial daily forecast ║
2026-03-02 00:30:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - ╚══════════════════════════════════════════════════════════════════════════════╝
2026-03-02 00:30:00 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Forecast using database: 72 hours across 3 days
2026-03-02 00:30:00 - custom_components.solar_forecast_ml.sensors.sensor_data_collector - DEBUG - Collected external sensor data: {'temperature': 3.8, 'humidity': 80.6, 'wind_speed': None, 'rain': None, 'pressure': 967.0, 'solar_radiation': 0.04, 'lux': None}
2026-03-02 00:30:00 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Creating forecast (AI + Physics)...
2026-03-02 00:30:00 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Lag-Feature 'production_yesterday' = 52.95 kWh (from DB: 2026-03-01)
2026-03-02 00:30:00 - custom_components.solar_forecast_ml.forecast.forecast_rule_based_strategy - DEBUG - Physics+LSTM blend active
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.forecast.forecast_rule_based_strategy - DEBUG - Skipping hourly predictions for locked dates: 2026-03-02, 2026-03-03
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - INFO - Forecast complete: Today=28.00 kWh, Tomorrow=31.12 kWh, Day After=31.14 kWh, Method=AI + Physics
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Generated full forecast for 2026-03-02: today=28.00, tomorrow=31.12, day_after=31.14 kWh
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - DEBUG - Loaded 72 weather hours from DB (3-day range: 2026-03-02 to 2026-03-04)
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO -
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ================================================================================
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - MORNING ROUTINE EXECUTION - Attempt 1/3 for 2026-03-02
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ================================================================================
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - → Step 1/5: Validating prerequisites...
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.production.production_morning_routine - DEBUG - All prerequisites validated
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ✓ Prerequisites validated: 72 forecast hours, 72 weather hours
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ℹ Inverter capping enabled: 8.30 kW
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - → Step 2/5: Creating hourly predictions in database...
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ├─ Checking and unlocking existing forecast locks...
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - │ 🔓 Found 24 existing predictions - will update
2026-03-02 00:30:03 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ├─ Preparing to update predictions for 3 days...
2026-03-02 00:30:04 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - │ Cleared 72 existing prediction slots for update
2026-03-02 00:30:04 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ├─ Processing 72 input forecast entries (3 days)...
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ├─ Calculating daily totals from saved predictions for 3 days...
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - │ → 2026-03-02: 28.00 kWh
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - │ → 2026-03-03: 31.12 kWh
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - │ → 2026-03-04: 31.14 kWh
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ├─ Saving daily forecasts to database for 3 days...
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - DEBUG - → Daily forecasts LOCKED for 3 days: locked=TRUE, locked_at=2026-03-02 00:30:04.043763+01:00
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ├─ Updating coordinator expected daily production...
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.data.data_state_handler - DEBUG - Expected daily production saved: 28.00 kWh
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ├─ Setting morning routine lock for 2026-03-02...
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - DEBUG - → Lock flag set: last_set_date = 2026-03-02
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - └─ SUMMARY:
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - • Input entries: 72 (3 days)
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - • Created predictions: 72
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - • Predictions per day:
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - - 2026-03-02: 24 hours, 28.00 kWh
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - - 2026-03-03: 24 hours, 31.12 kWh
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - - 2026-03-04: 24 hours, 31.14 kWh
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - • Coordinator updated: Yes (today=28.00 kWh)
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ✓ Hourly predictions created successfully
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - → Step 3/5: Verifying data integrity...
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - DEBUG - Integrity verified for 3 days starting from 2026-03-02, no duplicates
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ✓ Data integrity verified - no duplicates found
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - → Step 4/5: Refreshing coordinator cache...
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.coordinator - DEBUG - Hourly predictions cache refreshed: 24 today, 24 tomorrow, 24 day_after
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ✓ Coordinator cache refreshed
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - → Step 5/5: Triggering sensor updates...
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Forecast using database: 72 hours across 3 days
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.sensors.sensor_data_collector - DEBUG - Collected external sensor data: {'temperature': 3.8, 'humidity': 80.6, 'wind_speed': None, 'rain': None, 'pressure': 967.0, 'solar_radiation': 0.04, 'lux': None}
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Creating forecast (AI + Physics)...
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Lag-Feature 'production_yesterday' = 52.95 kWh (from DB: 2026-03-01)
2026-03-02 00:30:08 - custom_components.solar_forecast_ml.forecast.forecast_rule_based_strategy - DEBUG - Physics+LSTM blend active
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.forecast.forecast_rule_based_strategy - DEBUG - Skipping hourly predictions for locked dates: 2026-03-02, 2026-03-03, 2026-03-04
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - INFO - Forecast complete: Today=28.00 kWh, Tomorrow=31.16 kWh, Day After=31.24 kWh, Method=AI + Physics
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Skipping today forecast storage - locked by morning routine
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Skipping tomorrow forecast storage - locked by morning routine
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Skipping day_after_tomorrow forecast storage - locked by morning routine
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Forecast generated: today=28.0 kWh, tomorrow=31.16 kWh, method=AI + Physics, hourly_entries=72
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.production.production_history - DEBUG - Peak time calculation: Using stored hourly production data
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Skipping today forecast update - locked by morning routine
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Skipping tomorrow forecast update - locked by morning routine
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Skipping day_after_tomorrow forecast update - locked by morning routine
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Forecasts saved to database (respecting locks)
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.coordinator - DEBUG - Hourly predictions cache refreshed: 24 today, 24 tomorrow, 24 day_after
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.coordinator - DEBUG - Finished fetching solar_forecast_ml data in 3.782 seconds (success: True)
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.core.core_helpers - DEBUG - ensure_local: Naive datetime, localizing to local timezone
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ✓ Sensor updates triggered
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO -
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ================================================================================
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ✓✓✓ MORNING ROUTINE SUCCESSFUL ✓✓✓
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - Date: 2026-03-02 | Attempt: 1/3
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO - ================================================================================
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.production.production_morning_routine - INFO -
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.data.data_manager - DEBUG - Best hour forecast saved: hour=12, prediction=4.345 kWh, source=AI + Physics
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - Best hour saved: 12:00 (4.345 kWh)
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.data.data_manager - DEBUG - Skipping tomorrow forecast update - locked by morning routine
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - DEBUG - Tomorrow forecast saved: 31.12 kWh
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.data.data_manager - DEBUG - Skipping day_after_tomorrow forecast update - locked by morning routine
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - DEBUG - Day-after forecast saved: 31.14 kWh
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.core.core_helpers - DEBUG - ensure_local: Naive datetime, localizing to local timezone
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO - ✓✓✓ EARLY MORNING FORECAST COMPLETED SUCCESSFULLY! ✓✓✓
2026-03-02 00:30:12 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - INFO -
2026-03-02 00:47:12 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background forecast update starting...
2026-03-02 00:47:12 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update - fetching from Open-Meteo API...
2026-03-02 00:47:13 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background forecast update starting...
2026-03-02 00:47:13 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update - fetching from Open-Meteo API...
2026-03-02 00:47:13 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Saved 72 hours to weather_cache_open_meteo table (RAW)
2026-03-02 00:47:13 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Fetched 72 hours from Open-Meteo (GHI: 0 - 549 W/m2)
2026-03-02 00:47:13 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update successful: 72 hours
2026-03-02 00:47:13 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background update complete: 72 hours
2026-03-02 00:47:14 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Saved 72 hours to weather_cache_open_meteo table (RAW)
2026-03-02 00:47:14 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Fetched 72 hours from Open-Meteo (GHI: 0 - 549 W/m2)
2026-03-02 00:47:14 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update successful: 72 hours
2026-03-02 00:47:14 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background update complete: 72 hours
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background forecast update starting...
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update - fetching from Open-Meteo API...
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, returning None from fetchone
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Saved 72 hours to weather_cache_open_meteo table (RAW)
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Fetched 72 hours from Open-Meteo (GHI: 0 - 549 W/m2)
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update successful: 72 hours
2026-03-02 00:48:32 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background update complete: 72 hours
2026-03-02 01:00:00 - custom_components.solar_forecast_ml.data.data_weather_pipeline_manager - DEBUG - Pipeline: Tracked actual weather - temp=3.8C, clouds=38%
2026-03-02 01:00:11 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Forecast using database: 72 hours across 3 days
2026-03-02 01:00:11 - custom_components.solar_forecast_ml.sensors.sensor_data_collector - DEBUG - Collected external sensor data: {'temperature': 3.8, 'humidity': 81.1, 'wind_speed': None, 'rain': None, 'pressure': 966.1, 'solar_radiation': 0.03, 'lux': None}
2026-03-02 01:00:11 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Creating forecast (AI + Physics)...
2026-03-02 01:00:12 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Lag-Feature 'production_yesterday' = 52.95 kWh (from DB: 2026-03-01)
2026-03-02 01:00:12 - custom_components.solar_forecast_ml.forecast.forecast_rule_based_strategy - DEBUG - Physics+LSTM blend active
2026-03-02 01:00:14 - custom_components.solar_forecast_ml.forecast.forecast_rule_based_strategy - DEBUG - Skipping hourly predictions for locked dates: 2026-03-02, 2026-03-03, 2026-03-04
2026-03-02 01:00:14 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - INFO - Forecast complete: Today=28.00 kWh, Tomorrow=31.16 kWh, Day After=31.24 kWh, Method=AI + Physics
2026-03-02 01:00:14 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Skipping today forecast storage - locked by morning routine
2026-03-02 01:00:14 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Skipping tomorrow forecast storage - locked by morning routine
2026-03-02 01:00:14 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Skipping day_after_tomorrow forecast storage - locked by morning routine
2026-03-02 01:00:14 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Forecast generated: today=28.0 kWh, tomorrow=31.16 kWh, method=AI + Physics, hourly_entries=72
2026-03-02 01:00:14 - custom_components.solar_forecast_ml.production.production_history - DEBUG - Peak time calculation: Using stored hourly production data
2026-03-02 01:00:14 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Skipping today forecast update - locked by morning routine
2026-03-02 01:00:14 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Skipping tomorrow forecast update - locked by morning routine
2026-03-02 01:00:14 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Skipping day_after_tomorrow forecast update - locked by morning routine
2026-03-02 01:00:14 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Forecasts saved to database (respecting locks)
2026-03-02 01:00:14 - custom_components.solar_forecast_ml.coordinator - DEBUG - Hourly predictions cache refreshed: 24 today, 24 tomorrow, 24 day_after
2026-03-02 01:00:14 - custom_components.solar_forecast_ml.coordinator - DEBUG - Finished fetching solar_forecast_ml data in 2.520 seconds (success: True)
2026-03-02 01:00:14 - custom_components.solar_forecast_ml.core.core_helpers - DEBUG - ensure_local: Naive datetime, localizing to local timezone
2026-03-02 01:05:00 - custom_components.solar_forecast_ml.production.production_scheduled_tasks - DEBUG - Executing hourly update
2026-03-02 01:30:13 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Forecast using database: 72 hours across 3 days
2026-03-02 01:30:13 - custom_components.solar_forecast_ml.sensors.sensor_data_collector - DEBUG - Collected external sensor data: {'temperature': 3.6, 'humidity': 81.7, 'wind_speed': None, 'rain': None, 'pressure': 966.9, 'solar_radiation': 0.03, 'lux': None}
2026-03-02 01:30:13 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Creating forecast (AI + Physics)...
2026-03-02 01:30:14 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Lag-Feature 'production_yesterday' = 52.95 kWh (from DB: 2026-03-01)
2026-03-02 01:30:14 - custom_components.solar_forecast_ml.forecast.forecast_rule_based_strategy - DEBUG - Physics+LSTM blend active
2026-03-02 01:30:16 - custom_components.solar_forecast_ml.forecast.forecast_rule_based_strategy - DEBUG - Skipping hourly predictions for locked dates: 2026-03-02, 2026-03-03, 2026-03-04
2026-03-02 01:30:16 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - INFO - Forecast complete: Today=28.00 kWh, Tomorrow=31.16 kWh, Day After=31.24 kWh, Method=AI + Physics
2026-03-02 01:30:16 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Skipping today forecast storage - locked by morning routine
2026-03-02 01:30:16 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Skipping tomorrow forecast storage - locked by morning routine
2026-03-02 01:30:16 - custom_components.solar_forecast_ml.forecast.forecast_orchestrator - DEBUG - Skipping day_after_tomorrow forecast storage - locked by morning routine
2026-03-02 01:30:16 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Forecast generated: today=28.0 kWh, tomorrow=31.16 kWh, method=AI + Physics, hourly_entries=72
2026-03-02 01:30:16 - custom_components.solar_forecast_ml.production.production_history - DEBUG - Peak time calculation: Using stored hourly production data
2026-03-02 01:30:16 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Skipping today forecast update - locked by morning routine
2026-03-02 01:30:16 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Skipping tomorrow forecast update - locked by morning routine
2026-03-02 01:30:16 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Skipping day_after_tomorrow forecast update - locked by morning routine
2026-03-02 01:30:16 - custom_components.solar_forecast_ml.core.core_coordinator_update_helpers - DEBUG - Forecasts saved to database (respecting locks)
2026-03-02 01:30:16 - custom_components.solar_forecast_ml.coordinator - DEBUG - Hourly predictions cache refreshed: 24 today, 24 tomorrow, 24 day_after
2026-03-02 01:30:16 - custom_components.solar_forecast_ml.coordinator - DEBUG - Finished fetching solar_forecast_ml data in 2.526 seconds (success: True)
2026-03-02 01:30:16 - custom_components.solar_forecast_ml.core.core_helpers - DEBUG - ensure_local: Naive datetime, localizing to local timezone
2026-03-02 01:47:13 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background forecast update starting...
2026-03-02 01:47:13 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update - fetching from Open-Meteo API...
2026-03-02 01:47:14 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Saved 72 hours to weather_cache_open_meteo table (RAW)
2026-03-02 01:47:14 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Fetched 72 hours from Open-Meteo (GHI: 0 - 549 W/m2)
2026-03-02 01:47:14 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update successful: 72 hours
2026-03-02 01:47:14 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background update complete: 72 hours
2026-03-02 01:47:14 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background forecast update starting...
2026-03-02 01:47:14 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update - fetching from Open-Meteo API...
2026-03-02 01:47:15 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Saved 72 hours to weather_cache_open_meteo table (RAW)
2026-03-02 01:47:15 - custom_components.solar_forecast_ml.data.data_open_meteo_client - INFO - Fetched 72 hours from Open-Meteo (GHI: 0 - 549 W/m2)
2026-03-02 01:47:15 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update successful: 72 hours
2026-03-02 01:47:15 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background update complete: 72 hours
2026-03-02 01:48:32 - custom_components.solar_forecast_ml.forecast.forecast_weather - DEBUG - Background forecast update starting...
2026-03-02 01:48:32 - custom_components.solar_forecast_ml.forecast.forecast_weather - INFO - Force update - fetching from Open-Meteo API...
2026-03-02 01:48:32 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, returning None from fetchone
2026-03-02 01:48:33 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 01:48:33 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 01:48:33 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute
2026-03-02 01:48:33 - custom_components.solar_forecast_ml.data.db_manager - DEBUG - Database is closed, skipping execute