[Feature] Add supervised installer watchdog with health-check rollback #202

Closed
opened 2026-07-07 09:24:00 +02:00 by zemion · 1 comment
Owner

Parent: #36

Goal

Add an external installer supervisor process that applies a package plan, optionally restarts services, waits for health, and rolls back snapshots when apply/restart/health-check fails.

Acceptance Criteria

  • Watchdog runs outside the FastAPI server process.
  • Watchdog can execute apply, optional restart command, health checks, and rollback.
  • Run records include watched health URL, restart result, rollback status, and failure reason.
  • CLI has a documented command for supervised apply.
  • Tests cover health-check failure triggering rollback path without touching real package state.
Parent: #36 ## Goal Add an external installer supervisor process that applies a package plan, optionally restarts services, waits for health, and rolls back snapshots when apply/restart/health-check fails. ## Acceptance Criteria - Watchdog runs outside the FastAPI server process. - Watchdog can execute apply, optional restart command, health checks, and rollback. - Run records include watched health URL, restart result, rollback status, and failure reason. - CLI has a documented command for supervised apply. - Tests cover health-check failure triggering rollback path without touching real package state.
Author
Owner

Codex State: done

Summary

  • Implemented supervised installer mode with optional restart command, health polling, automatic package rollback, and run-record supervisor state.

Changed Files

  • src/govoplan_core/core/module_installer.py
  • src/govoplan_core/commands/module_installer.py
  • docs/RELEASE_DEPENDENCIES.md

Verification

  • ./.venv/bin/python -m compileall src/govoplan_core ../govoplan-admin/src/govoplan_admin -> OK
  • ./.venv/bin/python -m unittest tests.test_module_system -> OK
## Codex State: done ### Summary - Implemented supervised installer mode with optional restart command, health polling, automatic package rollback, and run-record supervisor state. ### Changed Files - `src/govoplan_core/core/module_installer.py` - `src/govoplan_core/commands/module_installer.py` - `docs/RELEASE_DEPENDENCIES.md` ### Verification - `./.venv/bin/python -m compileall src/govoplan_core ../govoplan-admin/src/govoplan_admin -> OK` - `./.venv/bin/python -m unittest tests.test_module_system -> OK`
zemion added the
module/core
label 2026-07-07 23:42:46 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: add-ideas/govoplan-core#202
No description provided.