114 lines
5.7 KiB
YAML
114 lines
5.7 KiB
YAML
# OpenCode decision notes
|
|
#
|
|
# Decisions and constraints about this Home Assistant installation, recorded by
|
|
# the OpenCode add-on only when you approve them. OpenCode reads a short digest
|
|
# of the active notes at the start of every session.
|
|
#
|
|
# Safe to edit or delete by hand. Keep the shape below; OpenCode refuses to add
|
|
# notes while the file cannot be parsed, so nothing is silently overwritten.
|
|
#
|
|
# Set a note's status to "superseded" (or delete it) to drop it from the digest.
|
|
# Add "pin: true" to a note to keep it in the digest when older notes no longer
|
|
# fit — use it for the decisions that must never be reversed by accident.
|
|
|
|
version: 1
|
|
notes:
|
|
- id: 2026-07-29-nest-snapshot-custom-integration
|
|
date: 2026-07-29
|
|
title: nest_snapshot custom integration abandoned
|
|
decision: nest_snapshot integration is abandoned. WebRTC SDP parsing was fixed but ICE
|
|
connection to Google Nest's ice-lite candidates never establishes (30s timeout). Do
|
|
not revisit.
|
|
rationale: After resolving SDP candidate format issues (missing component-id), aiortc
|
|
could parse Google's answer but ICE connectivity checks timed out every time across
|
|
multiple restarts. Track handler fires but recv() never gets a frame. Root cause
|
|
undetermined — likely aiortc STUN connectivity or ice-lite compatibility issue. Not
|
|
worth further effort.
|
|
files:
|
|
- custom_components/nest_snapshot/__init__.py
|
|
- custom_components/nest_snapshot/manifest.json
|
|
- custom_components/nest_snapshot/services.yaml
|
|
integrations:
|
|
- nest_snapshot
|
|
pin: true
|
|
status: active
|
|
- id: 2026-08-06-octoprint-automation-playroom-light
|
|
date: 2026-08-06
|
|
title: OctoPrint automation (playroom light + basement heat) pending — via MQTT/OctoMQTT
|
|
decision: "Built-in OctoPrint integration is broken here (AssertionError device_id is not
|
|
None; no printer entities). Chosen route: OctoMQTT plugin, trigger on
|
|
octoPrint/event/PrintStarted. Pending automation: when print starts, turn on
|
|
light.playroom_light and set climate.basement to 22C."
|
|
rationale: Completed the built-in OctoPrint integration setup flow but HA logs show setup
|
|
errors for sensor/binary_sensor/button/camera/number platforms, so there is nothing
|
|
to trigger on. User chose the MQTT route and will configure the OctoMQTT plugin
|
|
later (printer is currently busy). Leave the broken OctoPrint entry alone until this
|
|
is resolved.
|
|
entities:
|
|
- light.playroom_light
|
|
- climate.basement
|
|
integrations:
|
|
- octoprint
|
|
- mqtt
|
|
status: superseded
|
|
superseded_by: 2026-08-06-3d-printer-automation-runs-on-helper
|
|
- id: 2026-08-06-3d-printer-automation-runs-on-helper
|
|
date: 2026-08-06
|
|
title: 3D printer automation runs on helper, not MQTT
|
|
decision: "When the OctoPrint HA plugin toggles input_boolean.3d_printer_running: ON ->
|
|
playroom + bedroom lamps on, basement 22C heat; OFF -> playroom light off after 10
|
|
min, thermostat untouched. Mode restart cancels pending off on a new print. Old MQTT
|
|
automation stays disabled."
|
|
rationale: Built-in OctoPrint integration is broken here (AssertionError device_id is not
|
|
None; no printer entities). The OctoMQTT event trigger was replaced by a
|
|
helper-based design so OctoPrint can toggle a HA entity directly (plugin pointed at
|
|
the helper) and print-end handling (delayed light off) becomes possible. Built,
|
|
tested, and working 2026-08-06.
|
|
entities:
|
|
- input_boolean.3d_printer_running
|
|
- light.playroom_light
|
|
- light.bedroom_lamp
|
|
- climate.basement
|
|
integrations:
|
|
- octoprint
|
|
- mqtt
|
|
status: active
|
|
- id: 2026-08-06-octomqtt-still-enabled-for-future
|
|
date: 2026-08-06
|
|
title: OctoMQTT still enabled for future automations
|
|
decision: OctoMQTT plugin remains enabled on the OctoPrint side and keeps publishing to
|
|
octoPrint/event/... topics. The current print-start automation uses the
|
|
input_boolean helper, but this MQTT stream stays available for future, more complex
|
|
automations (print progress, job done, errors, etc.).
|
|
rationale: The helper-based automation only covers start/end. Keeping OctoMQTT running
|
|
preserves richer OctoPrint events for later automation without reconfiguring the
|
|
printer. No conflict with the helper automation — they are complementary.
|
|
integrations:
|
|
- octoprint
|
|
- mqtt
|
|
status: active
|
|
- id: 2026-08-07-printer-totals-history-stats-via-config
|
|
date: 2026-08-07
|
|
title: "Printer totals: history_stats via config flow (HA 2026.8: no YAML)"
|
|
decision: Print totals (print time + counts, today/week/7d) are history_stats config-flow
|
|
helpers (sensor.octoprint_printer_*), shown in the Totals section of the
|
|
printer-stats/print dashboard. history_stats no longer supports YAML in HA 2026.8 —
|
|
create helpers via config flow/UI only, never a configuration.yaml entry.
|
|
rationale: Session paused 2026-08-06 to continue later. YAML history_stats was rejected by
|
|
core with "history_stats does not support YAML setup", so all six sensors were
|
|
created via config flow and verified live; the Totals dashboard section is committed
|
|
(config hash 57e4ba20d169bbf3, render path printer-stats/print). Config-flow helpers
|
|
need no restart.
|
|
entities:
|
|
- sensor.octoprint_printer_print_time_today
|
|
- sensor.octoprint_printer_print_time_this_week
|
|
- sensor.octoprint_printer_print_time_last_7_days
|
|
- sensor.octoprint_printer_prints_today
|
|
- sensor.octoprint_printer_prints_this_week
|
|
- sensor.octoprint_printer_prints_last_7_days
|
|
integrations:
|
|
- history_stats
|
|
- octoprint
|
|
- mqtt
|
|
status: active
|