Skip to content

Reminders, ineffective-actuator detection, history charts, batch import, housekeeping, blueprints (0.7.0) - #12

Merged
ttiot merged 11 commits into
mainfrom
feature/reminders-history-blueprints
Oct 8, 2026
Merged

ttiot merged 11 commits into
mainfrom
feature/reminders-history-blueprints

Conversation

@ttiot

@ttiot ttiot commented Oct 8, 2026

Copy link
Copy Markdown
Owner

Summary

One commit per feature:

  • Ineffective-actuator detection: warning when an actuator runs past a configurable delay (default 60 min) without moving its quantity; new Actuator ineffective binary sensor.
  • Weigh-in reminder: notification, weigh_in_due event and panel badge for active batches left unweighed N days (default 7).
  • Program care reminders: reminders on programs (turn, wash, taste… every N hours, optional phase scope), notifications, reminder event, editor section, next reminder on the program card; cheese presets carry them.
  • Batch import: export_batch with include_photos, import_batch service and batch/import websocket, Import a batch button.
  • Lovelace card: last journal entry and one-tap Turned button.
  • Automatic housekeeping: Batches & housekeeping options (auto-archive after N days, photo purge after N days), completed_at / archived_at.
  • Panel history chart (24 h / 7 d / 30 d) from the recorder, with targets.
  • Richer comparison: chamber conditions per batch, mean T° / RH columns in the History view.
  • Automation blueprints (phase notifications, sensor-fault cutoff, reminder forwarding) with import URLs in the README.
  • README EN/FR, CHANGELOG 0.7.0, version bump.

Test plan

  • ruff check / format, mypy, node --check on panel and card
  • pytest: 169 tests, 95 % coverage on regulation/ + program/
  • hassfest / HACS checks (CI)

🤖 Generated with Claude Code

Michaux Julien and others added 11 commits October 8, 2026 20:11
- Regulation engine: per-actuator run window (switch-on time and the
  quantity's value then); after actuator_ineffective_seconds without a
  0.3 °C / 2 %RH move in the right direction, a warning alert is raised and
  cleared as soon as the quantity moves. 0 disables.
- New "Ineffective-actuator detection delay" option (default 60 min), new
  diagnostic binary sensor "Actuator ineffective" with the actuators
  concerned, FR/EN messages with targeted hints, changelog.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
- New "Weigh-in reminder after N days" option (notifications step, default
  7 days, 0 = off). The coordinator notifies once per interval for each
  active batch without a weigh-in for that long (persistent notification +
  notify services), fires a weigh_in_due bus event and flags the batch in
  its summary and in the Active batches sensor attributes.
- Recording a weigh-in clears the flag and dismisses the notification;
  reminder timestamps are persisted in the store.
- Panel: "weigh-in due" badge on batch cards. Changelog.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
- Program.reminders: kind (journal entry suggested), every_hours, optional
  note and target phases. The engine returns reminders becoming due (wall
  clock, not while paused; phase-scoped ones count from the phase start),
  persists the last firing per reminder, and exposes the next one.
- Coordinator: persistent notification + notify services, "reminder" bus
  event with the active batches concerned; next_reminder in the chamber
  state and in the Current phase sensor attributes.
- Panel: "Care reminders" section in the program editor, next reminder on
  the program card. Cheese presets carry turning / washing reminders.
- Validation, FR/EN wording, tests, changelog.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
- export_batch / batch/export take include_photos: weigh-in photos are
  embedded as photo_data data URLs so the record is self-contained.
- New import_batch service and batch/import websocket: recreate a batch
  (weigh-ins, journal, photos) from an export payload or a bare batch
  object; existing id → fresh id unless overwrite; foreign photo URLs are
  dropped; a completed batch never becomes the reference.
- Panel: Export JSON embeds photos, "Import a batch" button on the batch
  list. Tests, services.yaml, changelog.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
- Batch summaries (light and full) carry last_event (kind, timestamp,
  note), so the card can show it from the Active batches sensor attribute.
- Card: journal line per batch and a "Turned" button that records the
  entry over the batch/event/add websocket command. Changelog.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
- Batches record completed_at / archived_at (Batch.set_status).
- New "Batches & housekeeping" options step: auto-archive completed batches
  after N days, delete photos of archived batches after N days (both off
  by default). The coordinator applies them hourly, fires batch_archived
  and clears purged photo URLs on the weigh-ins.
- Strings FR/EN, tests (services + options flow), changelog.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
- Websocket state carries the source sensor entity ids (sources).
- Panel: "Temperature & humidity history" card with 24 h / 7 d / 30 d
  ranges, drawn from history/history_during_period (minimal response) as
  step lines on a dual axis (temperature left, humidity right, core probe
  dashed), current targets as dashed lines, results cached 5 min.
- Changelog.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
- Batch detail: ambient history chart over the batch period (creation to
  completion or now) under the drying curve.
- History view: "Mean T°" and "Mean RH" columns, time-weighted means from
  the recorder history of each finished batch, loaded lazily and cached.
- Changelog.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ders)

- blueprints/automation/curing_chamber/: phase_notifications,
  sensor_fault_cutoff, care_and_weigh_in_reminders, built on the
  curing_chamber_event bus events and the Sensor fault binary sensor.
- README (EN/FR) section with the import URLs, changelog.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…port, housekeeping

- Features list, configuration steps and options, entities table, program
  reminders (with a YAML example), batch import with photos, weigh-in
  reminder, housekeeping, panel views and card, in English and French.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
- Changelog section 0.7.0 with compare links, manifest and pyproject
  version bump.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@ttiot
ttiot merged commit 8d7f7e8 into main Oct 8, 2026
3 checks passed
@ttiot
ttiot deleted the feature/reminders-history-blueprints branch October 8, 2026 20:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant