[PR #247] feat: add task tracking system with ActiveTasksMenu and module integration #329

Closed
opened 2026-03-07 19:57:36 +03:00 by kerem · 0 comments
Owner

Original Pull Request: https://github.com/Corsinvest/cv4pve-admin/pull/247

State: closed
Merged: Yes


Summary

  • Task tracking infrastructure: ITaskTrackerService, TaskItem, TaskScope, TaskItemStatus — persistenza su DB PostgreSQL con EF Core
  • ActiveTasksMenu: badge nella topbar (giallo=running, rosso=errori non visti); il menu mostra i task attivi in tempo reale; gli errori vengono auto-acknowledged alla chiusura del menu
  • Migrations: AddTaskHistory + AddTaskItemIsAcknowledged
  • System module: pagina Tasks (history con log, cancel, link dettaglio) + Cleanup Task History nella Maintenance
  • Module integration: AutoSnap, BackupAnalytics, Diagnostic, ReplicationAnalytics, SystemReport, Updater wrappano le loro operazioni in TaskScope con Phase, Log e gestione errori
  • Updater: aggiunto supporto cancellazione (CancellationToken propagato), progress per-VM, stato Cancelled in UpdateInfoStatus
  • Modularity: ModuleBase.LinkMain, ModuleService.GetByName, BaseActionHelper.GetModule(scope)

Test plan

  • Avviare uno scan da qualsiasi modulo e verificare il badge giallo nella topbar
  • Aprire il menu task durante lo scan — deve aggiornarsi in tempo reale
  • Lasciare fallire un task — badge deve diventare rosso con contatore errori
  • Chiudere il menu — badge torna normale (acknowledged)
  • Aprire il menu da una seconda scheda — badge rosso appare anche lì grazie a AcknowledgedChanged
  • Cancellare un task Updater dal menu — deve propagare CancellationToken
  • Verificare che le migrations si applichino correttamente all'avvio
  • Verificare la pagina Tasks in System: history, log espandibile, link dettaglio
  • Verificare Maintenance → Cleanup Task History
**Original Pull Request:** https://github.com/Corsinvest/cv4pve-admin/pull/247 **State:** closed **Merged:** Yes --- ## Summary - **Task tracking infrastructure**: `ITaskTrackerService`, `TaskItem`, `TaskScope`, `TaskItemStatus` — persistenza su DB PostgreSQL con EF Core - **ActiveTasksMenu**: badge nella topbar (giallo=running, rosso=errori non visti); il menu mostra i task attivi in tempo reale; gli errori vengono auto-acknowledged alla chiusura del menu - **Migrations**: `AddTaskHistory` + `AddTaskItemIsAcknowledged` - **System module**: pagina Tasks (history con log, cancel, link dettaglio) + Cleanup Task History nella Maintenance - **Module integration**: AutoSnap, BackupAnalytics, Diagnostic, ReplicationAnalytics, SystemReport, Updater wrappano le loro operazioni in `TaskScope` con Phase, Log e gestione errori - **Updater**: aggiunto supporto cancellazione (CancellationToken propagato), progress per-VM, stato `Cancelled` in `UpdateInfoStatus` - **Modularity**: `ModuleBase.LinkMain`, `ModuleService.GetByName`, `BaseActionHelper.GetModule(scope)` ## Test plan - [ ] Avviare uno scan da qualsiasi modulo e verificare il badge giallo nella topbar - [ ] Aprire il menu task durante lo scan — deve aggiornarsi in tempo reale - [ ] Lasciare fallire un task — badge deve diventare rosso con contatore errori - [ ] Chiudere il menu — badge torna normale (acknowledged) - [ ] Aprire il menu da una seconda scheda — badge rosso appare anche lì grazie a `AcknowledgedChanged` - [ ] Cancellare un task Updater dal menu — deve propagare `CancellationToken` - [ ] Verificare che le migrations si applichino correttamente all'avvio - [ ] Verificare la pagina Tasks in System: history, log espandibile, link dettaglio - [ ] Verificare Maintenance → Cleanup Task History
kerem 2026-03-07 19:57:36 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/cv4pve-admin#329
No description provided.