* Add Ecobee thermostat integration to dashboard
- Server: PIN-based OAuth flow to authorize Ecobee access without
exposing redirect URIs; tokens stored server-side and auto-refreshed
- Server: /api/ecobee/config, /api/ecobee/auth/pin,
/api/ecobee/auth/complete, /api/ecobee/data, /api/ecobee/runtime
endpoints behind dashboard auth
- Dashboard: Ecobee section card showing indoor temp, humidity,
heat/cool setpoints, HVAC mode, equipment status badge, and
per-sensor temperature readings from remote sensors
- Dashboard: stacked bar chart of daily heating/cooling runtime hours
for the past 7 days
- Dashboard: Ecobee setup panel with API key entry and step-by-step
PIN authorization flow
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YMhuFaecxraQzUPN4h9nsB
* Replace ecobee API integration with HomeKit push endpoint
Ecobee removed public developer API access, so pivot to HomeKit:
- Add POST /api/homekit/push accepting thermostat data from iOS Shortcuts
- Add GET /api/homekit/data returning latest reading to dashboard
- Add GET /api/homekit/config and POST /api/homekit/config/regenerate for token management
- Auto-generate auth token on first run, persist to data/homekit-config.json
- Auto-convert Celsius→Fahrenheit if temp < 50 (HomeKit always returns Celsius)
- Update dashboard section card to show temp, setpoints, humidity, mode, HVAC state
- Replace ecobee settings panel with push URL, token copy, and Shortcut setup instructions
- Remove runtime chart (not available without API access)
* Support GET query params on homekit push endpoint for iOS Shortcuts compatibility
---------
Co-authored-by: Claude <noreply@anthropic.com>