feat: forecast change log

Record each forecast change (Zambretti letter transition) with a
timestamp into a 24-entry ring buffer, persisted to LittleFS and
restored on boot. New /api/forecasts endpoint and a 'Forecast log'
panel in the web UI (newest first, category colour, timestamp).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-17 22:40:28 +07:00
co-authored by Claude Opus 4.8
parent f4a9a04207
commit f1fe0b728f
8 changed files with 157 additions and 0 deletions
+1
View File
@@ -13,3 +13,4 @@ struct Forecast {
Trend classifyTrend(float deltaHpa3h);
Forecast computeForecast(float mslHpa, Trend trend, int month);
const char* categoryShort(WxCategory c);
const char* forecastTextForLetter(char letter); // full Zambretti phrase for 'A'..'Z'