[FEAT] Modulo Controlli periodici (control monitoring §9.1/A.8.16) — v1.23.0

Registro controlli ricorrenti (owner/frequenza/metodo/controllo SoA-NIS2 collegato)
+ registro esecuzioni come EVIDENZA (data/esito/note) con avanzamento automatico
della scadenza; da esito non conforme generazione NC o NC+azione correttiva
(riuso non_conformities/capa_actions, nuova source 'monitoring'); report
scheda+storico stampabile; scadenze nel Calendario unico.

mig.057: periodic_controls + periodic_control_executions (FK CASCADE, UNIQUE
(organization_id, code)). PeriodicControlController (slug periodic-controls) +
controlli-periodici.html + CalendarController.srcPeriodicControls.

Fix da flotta di verifica avversariale (9 finding confermati):
- advance(): correzione overflow strtotime '+1 month' (31/01 -> 28/02, no salto
  mese) via DateTimeImmutable con clamp all'ultimo giorno valido (mensile/
  trimestrale/semestrale/annuale); giornaliero/settimanale/custom invariati.
- create(): retry-on-duplicate del codice CTL-NNN con UNIQUE (org_id, code).
- update(): array_key_exists per azzerare owner_role_id / next_due_date.
- delete(): rimossa cleanup morta su review_schedule (il calendario legge diretto).
- CalendarController.srcReviewSchedule: esclude internal_audit/stakeholder_activity
  (gia' con sorgente diretta) -> fix doppia comparsa nel calendario.
- calendario.html: TYPE_META 'periodic_control' (chip filtro + label + colore).

Additivo. Cache-buster ?v= bump (sidebar) + sw cache nis2-shell-v1.23.0.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
DevEnv nis2-agile
2026-06-17 09:21:03 +02:00
co-authored by Claude Opus 4.8
parent 0738504fdd
commit 4fdeae7cee
52 changed files with 1043 additions and 169 deletions
+1 -1
View File
@@ -1 +1 @@
{"version": "1.22.0", "build": "2026-06-17-v1.22.0", "date": "2026-06-17", "changelog": "Rilascio ISO-readiness (3 moduli): Audit interni (§9.2, mig.055: internal_audits + items, checklist auto-popolata clausole 4-10 + Annex A dal SoA, esiti per riga, apertura NC->NCR/CAPA, report stampabile); Riesame di Direzione (§9.3, mig.056: management_reviews + decisions, INPUT aggregati automaticamente dai moduli (gather), verbale stampabile, approvazione con snapshot congelato); Calendario unico scadenze (aggregatore sola lettura di tutte le scadenze: incidenti/policy/rischi/NC-CAPA/formazione/stakeholder/audit/riesame/review_schedule, griglia mensile+lista+filtri). review_schedule ENUM esteso (internal_audit). Additivo."}
{"version": "1.23.0", "build": "2026-06-17-v1.23.0", "date": "2026-06-17", "changelog": "Modulo Controlli periodici (control monitoring ISO 27001 §9.1/A.8.16): registro controlli ricorrenti (owner, frequenza, metodo, controllo SoA/NIS2 collegato) + registro esecuzioni come EVIDENZA (data/esito/note) con avanzamento automatico della scadenza; da esito non conforme generazione NC o NC+azione correttiva (riuso NCR/CAPA, nuova source 'monitoring'); report scheda+storico stampabile; scadenze nel Calendario unico. mig.057: periodic_controls + periodic_control_executions. PeriodicControlController + controlli-periodici.html. Additivo."}