Skip to content

Release v0.5.0

Choose a tag to compare

@github-actions github-actions released this 17 Apr 11:25

raspi-sentinel v0.5.0

Released: 2026-04-17

Highlights

  • Added robust deferred notification delivery for Discord:
    • network/transient delivery failures are aggregated in state backlog
    • retry attempts run on notify.discord.retry_interval_sec (default 60s)
    • recovery sends one summary message with outage window (delivery_failed_from / delivery_failed_until)
  • Added retry_interval_sec to Discord notify config schema and validation.
  • Expanded network_uplink reasoning and observability:
    • layered reason/subreason evidence (route/gateway/wan decomposition)
    • clearer DNS/HTTP error kind classification
    • stronger null-vs-false evidence handling in outputs
  • Strengthened typed runtime model usage and removed remaining mixed raw-dict mutation paths in core runtime flow.

Quality

  • Enforced strict typing workflow (mypy --strict) in project/CI path.
  • Expanded integration and branch tests across config, engine, notifications, and state serialization.
  • Verified full quality gate (ruff, mypy, pytest, coverage branch gate).

Upgrade notes

  • Review and add this in [notify.discord] if missing:
retry_interval_sec = 60
  • No manual migration is required for existing state.json; new notification backlog fields are backward-compatible.
  • For operators: see docs/facts/operations-runbook.md section "Notification Delivery Outage Runbook" for troubleshooting and interpretation.

Full changelog: v0.4.0...v0.5.0