Storm Solution · progetto di migrazione

Migrazione a Storm Support

Spegnere l'applicazione WordPress Storm Solution e fare di Storm Support l'unica fonte di verità per la gestione dei sinistri grandine. Non è una copia uno a uno: per ogni funzione ci si chiede cosa serve davvero al business, prima di guardare come lo fa WordPress.

Quadro al 12 novembre 2026, ricavato dalla cartella migrazione (inventario, analisi DDD, modello target, roadmap, piani F1–F2).

Il punto di partenza

Perché si migra

Oggi WordPress è il sistema master di tutto: pratiche, appuntamenti, tecnici, sostitutive, ricambi, documenti, fatture. La logica è sparsa tra tema, plugin e circa cento snippet scritti in produzione, senza confini riconoscibili. Storm Support è nato accanto e fa già molte cose meglio (capacità degli hub, pianificazione, conferme, comunicazioni con l'assicurato, Fast Pass), ma quando scrive passa da WP e aspetta che il webhook gli restituisca il dato.

10.306pratiche in WP
13.192appuntamenti
247tecnici
1.245sostitutive
~156.000file delle pratiche
21.546proforma

Il volume è molto stagionale: 20–30 pratiche al mese d'inverno, tra 1.500 e 2.800 nei picchi estivi. Le pratiche precedenti al 2026 sono già state tolte da WP e stanno nei dump del database.

I sistemi coinvolti

Da tre sistemi slegati a una fonte unica

Oggi

flowchart LR
  OP[Operatori] --> WP[(WordPress
master di tutto)] OP --> SS[Storm Support] SS -->|REST| WP WP -->|webhook| SS IP[inspecta-pro
in collaudo] -.-|nessuna integrazione| SS

Support è un downstream di WP. inspecta-pro, l'app per periti e hub, ha un proprio modello completo di pratiche, appuntamenti e anagrafiche e non parla con nessuno.

Domani

flowchart LR
  OP[Operatori · Expert ·
Amministrazione · Admin] --> SS[(Storm Support
fonte unica)] EST[Periti · Hub · Tecnici] --> IP[inspecta-pro
app di campo] IP -->|API v1 · chiave di servizio| SS SS -->|eventi| IP WP[WordPress] -.-x|spento| SS

Support scrive tutto. inspecta-pro diventa un'app di campo senza dati master, che legge e scrive su Support via API. WordPress viene archiviato e spento.

Il dominio

Dove si concentra l'investimento

L'analisi DDD divide il lavoro di Storm in 14 contesti, tutti dentro Support come moduli separati, più il Campo come app esterna. Il peso del progetto sta nei tre contesti core, che sono anche quelli più fragili in WordPress.

TipoContestiCome si investe
CorePratiche (ciclo di vita del sinistro) · Pianificazione (capacità, appuntamenti, plancia) · Valutazione danno (perizia, preventivo, autorizzazione, consuntivo)Modello ricco, regole come comandi e test, operatori al tavolo, nessuna scorciatoia CRUD
SupportingAcquisizione incarichi · Rete · Logistica veicoli · Ricambi · Documentale · Amministrazione · Relazione con l'assicurato · Mandanti e canali · Campo (inspecta-pro)Modello sufficiente, anche semplice, purché con confini netti
GenericIdentità e accessi · ReportingComponenti standard: ruoli e permessi, proiezioni sugli eventi
Come si procede

Un dominio alla volta, senza big bang

Si sposta la proprietà del dato un dominio per volta. Per ognuno si ripetono gli stessi quattro passi, e ogni passo si può annullare finché la sync inversa è attiva.

Modellare

Entità del target e comandi locali in Support.

Migrare i dati

Import da WP ripetibile e idempotente, con report di riconciliazione.

Invertire

Support diventa master. In WP si spengono le schermate che scrivono; una sync inversa tiene aggiornato WP per chi lo legge ancora.

Spegnere

Si disattiva la logica WP residua, poi la sync inversa quando nessuno la legge più.

WP si tocca solo per spegnere

Solo disattivazioni di snippet, interfacce del tema e configurazione dei plugin. Nessuna correzione né logica nuova: i bug di WP si risolvono spostando la funzione in Support.

Verso WP solo REST standard

wp/v2/<cpt> con i campi ACF, così gli hook e le tabelle custom continuano a funzionare. Niente rotte custom, niente SQL diretto.

Le inversioni in bassa stagione

Le inversioni pesanti si fanno tra novembre e marzo; nessun cutover tra maggio e settembre. Obiettivo dell'inverno 2026/27: agenda invertita sicuramente, pratica se possibile.

Roadmap

Le fasi da F0 a F10

Le fasi sono ordinate per dipendenza e priorità, non per data. Le dimensioni (S, M, L, XL) indicano lo sforzo relativo. F2 è il fast track: tecnici, sostitutive e agenda vengono prima perché spengono la gestione appuntamenti in WP, la parte che gli operatori usano ogni giorno.

IN CODICE parzialmente o del tutto sviluppata IN CORSO PIANIFICATA piani di implementazione scritti DA PIANIFICARE
F0S · subito

Messa in sicurezza

DA PIANIFICARE

Rotazione delle credenziali, controllo della basic auth del webhook in Support, aree sensibili riservate agli admin, Code Snippets congelato. Indipendente dal resto.

F1M

Fondamenta minime

IN CORSO · 3 PIANI SU 4

Confini tra contesti verificati in CI, eventi di dominio affidabili, ruoli e permessi con import degli utenti WP, sync inversa generica verso WP, comandi locali dell'agenda.

F2L · fast track

Tecnici, sostitutive, agenda

PIANIFICATA

Anagrafica tecnici e loro agenda, flotta sostitutive con contratti e capienza, appuntamento master in Support, plancia tecnici, trasporto bisarca, poi il passaggio con spegnimento delle schermate WP. Uscita: nessun appuntamento creato o modificato in WP per due settimane.

F3M

Altre anagrafiche

DA PIANIFICARE

Compagnie con regole e tariffari, agenzie, hub, studi peritali, fornitori.

F4XL · bassa stagione

Pratica e ciclo di vita

DA PIANIFICARE

La fase più importante. Veicolo → Sinistro → Pratica, macchina a stati con blocchi separati, code di lavoro, migrazione delle 10.306 pratiche. Uscita: un ciclo completo lavorato solo in Support su un campione reale.

F5L

Documenti e perizia

DA PIANIFICARE

Circa 156.000 file verso lo storage di Support con verifica degli hash, documenti tipizzati, moduli della compagnia e Scheda 11 generati lato server, perizia strutturata.

F5bL · in parallelo da F2

API v1 e app di campo

ANALISI FATTA

inspecta-pro diventa client di Support: contratto OpenAPI, chiave di servizio, flussi in uscita (agenda, incarichi) e in ingresso (conferme, perizie, foto). Ogni flusso esterno ha sempre un'alternativa nel back-office.

F6M

Ricambi

DA PIANIFICARE

Ricambio con stati, magazzino, resi e trasferimenti; trasporti e movimentazioni se non già portati.

F7L

Amministrazione

DA PIANIFICARE

Righe economiche, proforma e richieste di fattura generate da Support, fatture passive e attive, incassi, migrazione di 21.546 proforma e 15.187 fatture.

F8S

Reporting

DA PIANIFICARE

Report di avanzamento sulle transizioni, KPI degli Expert, analisi tecnici e acquisti.

F9M

Storico archiviato

DA PIANIFICARE

Pratiche precedenti al 2026 dai dump del DB WP, importate in sola lettura e separate dal flusso vivo.

F10M · bassa stagione

Cutover e dismissione

DA PIANIFICARE

Due-quattro settimane senza scritture né webhook da WP, rimozione del codice di integrazione da Support, WP in sola lettura e poi archivio freddo.

Dove siamo

Stato al 12 novembre 2026

ParteStato
Inventario WP, Support oggi, inspecta-proBozze complete, aggiornate all'11 novembre; da validare
Mappa capability, modello target, roadmapProposte da discutere; decise D1–D4 e D6, aperta D5
Analisi DDDCompleta: 14 contesti, context map attuale, target e di transizione, linguaggio ubiquo, 20 dubbi con raccomandazione
Piani F1 e F2Undici piani scritti e rivisti dopo il rebase su main; F2-05 (plancia) da ridiscutere

Avanzamento dei piani

F1-01Convenzioni, confini, eventiIN EPIC
F1-02Accessi, ruoli, utenti WPIN EPIC
F1-03Sync inversa verso WPIN EPIC
F1-04Comandi dell'agendaIN CORSO
F2-01 … F2-04Tecnici, agenda tecnico, flotta, appuntamento masterPIANIFICATI
F2-05 … F2-07Plancia, bisarca, passaggio e spegnimento WPPIANIFICATI

L'epic epic/migrazione-F1 è riallineato su main dal 12 novembre: 5371 test verdi, controlli dei confini puliti. Non è ancora in produzione.

Decisioni

Cosa è deciso e cosa no

Deciso

  • Tutto nel monolite Support, amministrazione compresa, con ruoli specifici (D3).
  • L'app di campo è inspecta-pro, di proprietà di Storm: autentica gli esterni e chiama Support con una chiave di servizio (D4, I1–I2).
  • Foto e documenti vivono su Support; una volta acquisiti, inspecta non li modifica più (I3, I5).
  • Nessun utente esterno in Support: hub, tecnici e periti entrano dall'app.
  • Lo storico si recupera dai dump del DB WP (D1).
  • Confini tra i contesti difesi con packwerk fin da subito.
  • La composizione del trasporto bisarca entra in F2, così lo snippet s116 si spegne per intero.

Aperto

  • D5: schermate dedicate agli Expert, da valutare prima di disegnare il back-office di F4.
  • D2: chi fa oggi la logistica e se l'hub conferma ricezioni e DDT dall'app.
  • Plancia tecnici: chi può assegnare (operation sulle perizie?) e come convivono il tecnico di WP e quello di Support.
  • Spegnimento di WP senza toccarne il codice: una funzione del tema usata altrove impedisce di disattivare un file intero.
  • Sette domande tecniche emerse dal rebase (R2–R8), da chiudere prima del passaggio di F2.
Rischi

I rischi principali

RischioImpattoCome si mitiga
La sync inversa non copre un lettore WP e qualcosa si rompe in silenzio (solleciti, PDF, ricambi)AltoElenco dei 23 snippet e circa 20 file del tema che leggono gli appuntamenti; scrittura via ACF; riconciliazione
Gli operatori trovano plancia e calendario di Support meno efficienti di WPAltoValidazione con 2–3 operatori prima di spegnere le schermate WP
Inversione durante l'alta stagioneAltoF2 entro marzo 2027; F4 solo in bassa stagione
Loop o conflitti nella sync bidirezionaleAltoProprietà per campo, filtro anti-eco, cruscotto delle proiezioni
Logica nascosta negli snippet non censitaMedioCode Snippets congelato; inventario rivisto prima di ogni spegnimento
Il modello di inspecta-pro non combacia con quello di SupportAltoAnalisi fatta prima del contratto API; mappa degli id; fallback nel back-office
Prossimi passi

Cosa viene adesso

Per chi sviluppa su Support

Cosa cambia nel codice con F1 e quali regole rispettare nelle nuove funzionalità: Storm Support dopo F1.