Files
econet-exporter/CHANGELOG.md
T
rmcguire 38078a330e
Build and Publish / go-binaries (push) Failing after 58s
Build and Publish / helm-release (push) Has been skipped
Build and Publish / check-chart (push) Successful in 10s
Build and Publish / container-images (push) Successful in 2m14s
update changelog, bump chart
2026-07-05 17:01:01 -04:00

68 lines
2.2 KiB
Markdown

# Changelog
All notable changes to econet-exporter are documented here. The format is
based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this
project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [v0.3.0] - 2026-07-05
### Changed
* Replaced the third-party `kevinburke/rheemcloud-go` dependency and its MQTT
coupling with an in-repo `econetclient` REST poller that talks directly to
the Rheem/EcoNet cloud REST API. Device state (including `@RUNNING`, `@MODE`,
and `@STATUS`) is sourced from the REST `getUserDataForApp` payload, so no
MQTT connection is required.
### Removed
* `rheemcloud` package and its `go.mod`/`go.sum` entries.
## [v0.2.0] - 2026-07-05
### Added
* `econetTLSInsecure` config option (env `ECONET_TLS_INSECURE`) to skip TLS
certificate verification when
connecting to the Rheem/EcoNet cloud API. The upstream host (cloudblade)
serves an old/untrusted certificate chain; this is a stopgap and should be
removed once the upstream certificate is fixed. See AGENTS.md.
* `TODO.md` tracking outstanding work (CA cert bundle, mutating proto RPCs,
additional tracing spans).
## [v0.1.2] - 2026-07-04
### Added
* CA certificate bundle baked into the container image so the exporter can
establish TLS connections to the EcoNet API.
### Changed
* Bumped Helm chart versions.
## [v0.1.1] - 2026-07-04
### Fixed
* Corrected the Helm chart `appVersion`.
## [v0.1.0] - 2026-07-04
Initial release of the EcoNet exporter for Rheem / Rheemcloud water heaters,
built on the `go-app` framework.
### Added
* `EconetService` owning a single shared `*rheemcloud.Client` across the gRPC,
MCP, and metrics sub-servers (fail-fast on missing credentials).
* gRPC API (`ListDevices`, `GetDevice`) with proto definitions and
grpc-gateway REST bindings.
* MCP server at `/api/mcp` exposing a `list_water_heaters` tool.
* OpenTelemetry observable gauges for device state (temperature, mode, energy
and water usage, cost) with a background usage poller, exported to
Prometheus. Units are encoded in metric names (`_fahrenheit`, `_kwh`,
`_gallons`, `_dollars`).
* `costPerKWH` config (US dollars per kWh) feeding `econet_energy_cost_dollars`.
* Helm chart for Kubernetes deployment.