Repository navigation
Conversation
|
Clarification of “Costs are prorated across price slots from 30-minute energy history”: The current implementation requests EV charging energy in 30-minute buckets. It then distributes each bucket’s energy across the overlapping price slots in proportion to the duration of the overlap, using FTW’s configured total consumer price. For example, if a 30-minute bucket contains 3 kWh and spans two 15-minute price slots, the calculation assigns 1.5 kWh to each slot. This assumes uniform charging power within that bucket. If charging starts, stops or changes power within the half-hour, the calculated cost can differ from the cost obtained using finer-resolution energy readings. The full-bucket energy total is preserved; the approximation concerns its allocation between prices. Partial buckets at period boundaries are also prorated by duration. The reason for choosing 30-minute history is the energy-history API’s limit of 2,000 buckets per request. A full 31-day month contains 2,976 quarter-hour buckets, whereas half-hour buckets fit within the limit, including the extra days needed when the current week starts in the previous month. This limitation is stated in the PR so reviewers can assess the accuracy tradeoff. A more accurate follow-up would fetch 15-minute energy history in multiple bounded requests and combine the results before calculating costs. That would avoid spreading a half-hour energy total across different quarter-hour prices, while retaining any approximation already present in the underlying energy ledger. |
Merge the release baseline and clarify the charging cost changeset. Signed-off-by: segran2 <268038031+segran2@users.noreply.github.com>
|
Updated the existing feature branch for v0.140.5-beta.1 in commit f9f7fea. The release baseline is included without conflicts, and the complete patch applies cleanly to the untouched release tag. All 709 web tests pass. The full verification attempt was stopped while dependency downloads remained blocked; it is not reported as passing. The latest reviewed heading/helper text and day/week/month totals are retained. |
Compatibility update: v0.140.8-beta.1The EV charging costs patch has been prepared for FTW v0.140.8-beta.1. The release is installed on the FTW test system, and the web-only patch was checked against the release files using This confirms patch applicability; it does not yet establish that the EV charging cost calculations or UI have passed end-to-end runtime verification on this release. The production service uses the native release-slot launcher, so the patch is applied to release web assets rather than to a Git checkout. Note: the patch was initially created for v0.140.5-beta.1 and adapted for v0.140.8-beta.1. |
Field verification on FTW v0.140.8-beta.1 (12 October 2026)The reporter installed the updated EV charging cost implementation, including the Verified from the reporter's terminal output and Safari screenshots:
Scope/limitations: This confirms successful deployment and UI rendering with real site data, not independent verification of the 68.61 kr calculation against raw charging/price records. A Node.js syntax check was not run on the FTW host because |
Automated verification update — PASSThe contributor ran the complete The previously shared output showed passing Python unit tests (including packaging, release ordering/schema and native optimizer), release asset / image promotion / GHCR / container boundary checks, and Energyplan 0.5.1 verification. The Docker-context check printed Conclusion: Local |
Real-data EV charging cost verification — PASS (October 2026)Verified on the contributor's FTW v0.140.8-beta.1 installation using read-only Observed results (1 Oct 2026 through 12 Oct 2026 00:45 local time):
The energy history contained 548 Interpretation and limits: This verifies reproducibility of the displayed total from FTW's actual history and configured price API data, including complete price coverage for the positive-energy buckets. It does not independently validate the configured tariffs/VAT against the electricity supplier's invoice or prove that charger energy measurements match an external meter. The console check follows the same calculation principle as the implementation, so it is a real-data cross-check rather than a fully independent pricing-model audit. Combined with the contributor-reported |
|
@Frahl Ready for your action at your convenience. |
Field update: EV Charging Costs on FTW v0.141.2-beta.1The EV Charging Costs web patch has been adapted locally to the v0.141.2-beta.1 release files ( Verification:
Scope note: This is field verification of a locally regenerated deployment patch; the PR branch itself has not been rebased to v0.141.2-beta.1 as part of this update. |
Closes #1545.
Show EV charging energy and cost for today, this calendar week and this calendar month using FTW's configured total consumer price. Retain the reviewed heading and compact helper text below it. Days without charging do not mark the totals incomplete; missing data during recorded charging does.
Costs use 30-minute energy history, allocated across overlapping price slots by duration. This assumes uniform charging within each energy bucket; finer price-slot allocation remains approximate. Network tariff, energy tax configured within that tariff, and VAT follow the existing consumer-price model.
Version compatibility
git apply --checkwas reported without errors after correcting file permissions. This is an applicability check, not an end-to-end UI confirmation.Validation
calculateEVChargeCostfunction extracted from the supplied patch passed: priced bucket, outside-period exclusion, zero-charge day, missing-price incompleteness, half-bucket prorating, and unreliable-quality flagging.make verify, runtime API and browser UI tests on v0.140.8-beta.1. Do not treat this update as a full test pass.make verifyattempt with Go 1.26 did not complete because dependency downloads were blocked.Merge status: GitHub reports the PR as mergeable at the latest check. The branch has not been rebased; no force-push was used.
Additional regression fix (12 October 2026)
ac0fe17eand added a regression test ine25c0e6c.