diff --git a/hosts/hass.windy.lan.md b/hosts/hass.windy.lan.md index f6d7f29..2528cbd 100644 --- a/hosts/hass.windy.lan.md +++ b/hosts/hass.windy.lan.md @@ -279,6 +279,15 @@ updated 2026-08-29 (W1N-240 + W1N-242):** 「本月累计」gauge 对齐夏季 数据日)。备份 `csg_sensors.yaml.bak-20260829-w1n242`。验证:Core restart 后回归值不变(334.81 / -0.3 / 10.8 / 90.3 / 200.94 / 180.28)。 +**CSG 长期归档(W1N-243, 2026-08-29):** scribe 库新增 `csg_history` +表(逐日 usage/cost/ladder/balance + 逐月累计;2026-07-01 起回填,永久), +由 TimescaleDB 每日任务 **1008** `csg_daily_snapshot()`(22:30 +Asia/Shanghai;**TS job 非 pg_cron**)upsert 维护。日费用在原生 +`latest_day_cost` 缺失时回退 = 昨日用电 × 当前档费率(模板 +`csg_current_ladder_tariff` 0.639);月费用回退模板 +`csg_this_month_ladder_cost`。**语义**:day 行 usage/cost 为该日值, +ladder/balance 为 22:30 快照值。详见 [hosts/pgdb.md](../hosts/pgdb.md)。 + > **Seasonal gauge switch (W1N-240 已知事项):** 每年 **11-01** 把 > `power-monitor` 视图「本月累计」gauge 切到冬季 `max:450` / > `0/200/400`,**5-01** 切回夏季 `max:650` / `0/260/600`(与模板 @@ -407,8 +416,12 @@ deployed 2026-08-18 from `216cc99` (backup a major rewrite (writer.py largely rewritten, migration.py removed, TimescaleDB extension required): re-read release notes before upgrading. Do not expect retention YAML keys to validate on 3.8.0. -- Recorder stays external-Postgres with `purge_keep_days: 30` for daily UI - history; Scribe is the permanent archive. +- Recorder stays external-Postgres with `purge_keep_days: 365` (W1N-243, + 2026-08-29, raised from 30 — ~300 MB/yr, 1% of the 30G pgdb disk) for + native UI per-change history; Scribe is the permanent archive. Long-term + statistics stay permanent (not purged by `purge_keep_days`). Note: + extending retention does **not** recover pre-2026-08-29 raw history + (already purged); only `csg_history` day/month values cover that period. ### Config layout: scribe.yaml + templates/ merge (W1N-238, verified 2026-08-29)