[Task] WebUI-driven update/rollback with backup and rollback guardrails #35

Closed
opened 2026-07-06 11:31:33 +02:00 by zemion · 4 comments
Owner

Imported from the consolidated GovOPlaN product backlog.

  • Source: /mnt/DATA/Nextcloud/ADD ideas UG/Products/govoplan/backlog.md
  • Line: 215
  • Section: Milestones > Milestone 12 - Later Integrations And Mail Capabilities
  • Source status: DEFERRED.

Imported backlog item:

- [ ] WebUI-driven update/rollback with backup and rollback guardrails.
<!-- codex-backlog-fingerprint:e0a184800b731694b328eb4b --> Imported from the consolidated GovOPlaN product backlog. - Source: `/mnt/DATA/Nextcloud/ADD ideas UG/Products/govoplan/backlog.md` - Line: `215` - Section: `Milestones > Milestone 12 - Later Integrations And Mail Capabilities` - Source status: `DEFERRED.` Imported backlog item: ```markdown - [ ] WebUI-driven update/rollback with backup and rollback guardrails. ```
zemion added this to the Milestone 12 - Later Integrations And Mail Capabilities milestone 2026-07-06 13:06:45 +02:00
Author
Owner

Codex State: progress

Summary

  • Added rollback guardrails for module package changes: installer snapshots SQLite databases before migrated runs and restores the DB snapshot during rollback before restart health recovery.

Changed Files

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

Verification

  • ./.venv/bin/python -m unittest tests.test_module_system (26 tests, OK)

Suggested status label: status/in-progress

## Codex State: progress ### Summary - Added rollback guardrails for module package changes: installer snapshots SQLite databases before migrated runs and restores the DB snapshot during rollback before restart health recovery. ### Changed Files - `src/govoplan_core/core/module_installer.py` - `docs/RELEASE_DEPENDENCIES.md` - `docs/MODULE_ARCHITECTURE.md` ### Verification - `./.venv/bin/python -m unittest tests.test_module_system (26 tests, OK)` Suggested status label: `status/in-progress`
Author
Owner

Codex State: progress

Summary

  • Implemented non-SQLite database backup/restore hooks for supervised module installer runs. Migrated non-SQLite runs now require --database-backup-command and --database-restore-command, store the restore hook in the run record, and execute it during rollback.

Changed Files

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

Verification

  • ./.venv/bin/python -m unittest tests.test_module_system (28 tests, OK)
  • ./.venv/bin/python -m govoplan_core.commands.module_installer --help (OK)

Suggested status label: status/in-progress

## Codex State: progress ### Summary - Implemented non-SQLite database backup/restore hooks for supervised module installer runs. Migrated non-SQLite runs now require --database-backup-command and --database-restore-command, store the restore hook in the run record, and execute it during rollback. ### Changed Files - `src/govoplan_core/core/module_installer.py` - `src/govoplan_core/commands/module_installer.py` - `docs/RELEASE_DEPENDENCIES.md` - `docs/MODULE_ARCHITECTURE.md` ### Verification - `./.venv/bin/python -m unittest tests.test_module_system (28 tests, OK)` - `./.venv/bin/python -m govoplan_core.commands.module_installer --help (OK)` Suggested status label: `status/in-progress`
Author
Owner

Codex State: progress

Summary

  • Installer rollback now participates in the daemon/UI execution path and multi-process supervisor path; queued requests still execute outside FastAPI and preserve the same package/WebUI/database rollback boundaries.

Changed Files

  • src/govoplan_core/core/module_installer.py
  • src/govoplan_core/commands/module_installer.py

Verification

  • CLI queue smoke: --enqueue-supervised then --list-requests (OK)

Suggested status label: status/in-progress

## Codex State: progress ### Summary - Installer rollback now participates in the daemon/UI execution path and multi-process supervisor path; queued requests still execute outside FastAPI and preserve the same package/WebUI/database rollback boundaries. ### Changed Files - `src/govoplan_core/core/module_installer.py` - `src/govoplan_core/commands/module_installer.py` ### Verification - `CLI queue smoke: --enqueue-supervised then --list-requests (OK)` Suggested status label: `status/in-progress`
zemion added the
priority
p3
label 2026-07-07 23:44:57 +02:00
Author
Owner

Merged into add-ideas/govoplan-core#231: #231

The update/rollback UI and backup guardrail requirements are covered by the target-state module update planner. Closing this older issue as duplicate/merged context.

Merged into `add-ideas/govoplan-core#231`: https://git.add-ideas.de/add-ideas/govoplan-core/issues/231 The update/rollback UI and backup guardrail requirements are covered by the target-state module update planner. Closing this older issue as duplicate/merged context.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

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