Commit Graph

4 Commits

Author SHA1 Message Date
rpotter6298 c8e3016fd6 Add new daemons and debug scripts for Sigenergy and Oracle functionalities
- Implement `sigen_daemon.py` to poll Sigenergy plant metrics and store snapshots.
- Create `web_daemon.py` for serving a web interface with various endpoints.
- Add debug scripts:
  - `debug_duplicates.py` to find duplicate target times in forecast data.
  - `debug_energy_forecast.py` to print baseline energy forecast curves.
  - `debug_oracle_evaluations.py` to run the oracle evaluator.
  - `debug_sigen.py` to inspect stored Sigenergy plant snapshots.
  - `debug_weather.py` to trace resolved truth data.
  - `modbus_test.py` for exploring Sigenergy plants or inverters over Modbus TCP.
- Introduce `oracle_evaluator.py` for evaluating stored oracle predictions against actuals.
- Add TCN training scripts in `tcn` directory for training usage sequence models.
2026-04-28 08:14:00 +02:00
rpotter6298 ff0c65a794 Fix weather display: use issued_at for zero-hour truth and deduplicate forecasts
- Changed save_zero_hour_forecast_as_truth to use issued_at instead of target_at for resolved_at timestamp
- Added window function to deduplicate forecast points, keeping only the most recent for each (target_at, horizon_hours)
- Limits resolved truth query to current time to prevent future points from displaying
- This fixes vertical lines in the chart caused by duplicate forecasts and ensures truth data displays correctly
2026-04-25 21:03:50 +02:00
rpotter6298 0814e7c965 Fix: Use issued_at instead of target_at for zero-hour resolved truth timestamps
The zero-hour forecasts (observations) were being saved with resolved_at = target_at,
which could be in the future. This caused them to be filtered out by the time-based
query in load_display_dataset(). Now using issued_at (when the observation was made)
ensures the timestamps fall within the valid display range.
2026-04-25 21:00:34 +02:00
rpotter6298 9d15860f0b first_commit 2026-04-25 20:35:25 +02:00