Skip to content

Release v0.4.1

Choose a tag to compare

@github-actions github-actions released this 11 Apr 00:37

raspi-sentinel v0.4.1

Highlights

  • Introduced strict static typing gates with mypy --strict in local/dev and CI.
  • Migrated runtime top-level state handling to typed models (GlobalState, RebootRecord, FollowupRecord, NotifyState, MonitorStatsRuntimeState).
  • Added stronger operational boundary tests for failure safety around limited mode, reboot guard boundaries, shell opt-in misconfiguration, state-lock timeout behavior, and legacy state migration compatibility.

Operational impact

  • Runtime behavior is now more explicit and safer under degraded conditions:
    • corrupted state continues in limited mode with disruptive actions blocked
    • reboot eligibility remains guarded by uptime/cooldown/window constraints
    • shell syntax is rejected unless *_use_shell=true is explicitly set

Validation

  • ruff check .
  • mypy --strict src/raspi_sentinel
  • pytest
  • Coverage gates:
    • tracked module gate --cov-fail-under=80
    • policy/status_events gate >=85
    • checks/recovery gate >=88