WS-CI · METODO SCIENTIFICO E OPERATIVO ← Torna all’outlook

Documento pubblicato in sola lettura. Versione e limiti operativi fanno parte del contratto del prodotto.

# WS-CI 0.3-obs.1 — contratto scientifico e operativo

## Stato implementazione 0.3-obs.1

Questa sezione distingue ciò che alimenta il prodotto pubblicato oggi dagli obiettivi del contratto scientifico. Le sezioni successive descrivono anche requisiti evolutivi e non implicano che ogni funzione sia già operativa.

### ATTIVO

- dodici finestre UTC consecutive di sei ore, per un orizzonte totale di 72 ore;
- campo outer grigliato 14 × 11 sul Mediterraneo centrale, interpolato in modo continuo nella visualizzazione e indipendente dai confini amministrativi;
- nido WSLAM 52 × 41 su Sicilia e mari circostanti, innestato soltanto nelle finestre con sei ore native complete e con gli estremi di accumulo disponibili;
- scoring occurrence × intensità condizionata con ingredienti sincronizzati alla stessa ora, livelli automatici sperimentali limitati a L0–L2 e L3 fail-closed;
- cache outer riusabile per tre ore solo nella stessa edizione UTC, dopo gate temporali, geometrici e dimensionali, con origine ed età dichiarate;
- archivio immutabile del payload JSON compresso per ogni edizione;
- fusione forecast–nowcast server-side `WS-CI-OBS-0.1-exp`: radar DPC SRI, fulmini CG Blitzortung, celle attive e traiettorie possono aumentare occurrence, joint e livelli L0–L2 nelle prime due fasce, con decadimento esplicito e provenance per slot.

### ROADMAP — NON OPERATIVO NELLA 0.3-obs.1

- probabilità calibrate di evento entro 40 km e calibrazione separata per hazard, lead time, stagione e terra/mare;
- membri ensemble, identificativi completi delle corse outer, frazione di membri favorevoli e provenance necessaria per l'accordo multi-modello;
- produzione server-side di GeoJSON MultiPolygon, contorni annidati, pulizia morfologica e semplificazione versionata; oggi il prodotto primario è il campo grigliato interpolato;
- attivazione di L3, subordinata a ingredienti estremi sincronizzati, copertura completa, provenance outer, accordo multi-membro e verifica prospettica;
- livello tornado/waterspout e calibrazione probabilistica della fusione forecast–nowcast sperimentale.

## 1. Scopo e stato del prodotto

WS-CI produce un outlook convettivo automatico sperimentale per la Sicilia e i mari circostanti. Il prodotto descrive, per finestre esatte di sei ore, dove l'ambiente può sostenere temporali e fenomeni convettivi intensi.

WS-CI:

- è una guida automatica a supporto del previsore;
- non è un'allerta, un avviso di protezione civile o una previsione ufficiale;
- non sostituisce l'interpretazione meteorologica umana;
- non replica i modelli calibrati di SPC, ESTOFEX, PRETEMP o ASTORP;
- deve rendere sempre visibili versione del metodo, ora di emissione, validità, sorgenti, freschezza e stato di qualità.

Nella versione 0.3-obs.1 i livelli operativi L0–L2 esprimono esclusivamente classi di potenziale convettivo. L3 resta dichiarato ma fail-closed. I livelli non sono ancora probabilità calibrate né possono essere interpretati come frequenze attese di evento.

## 2. Dominio meteorologico e geometrie

Il dominio comprende l'intera Sicilia e un'area marina continua sul basso Tirreno, Canale di Sicilia e Ionio. I limiti esatti sono parte della configurazione versionata; come riferimento operativo il dominio deve estendersi almeno fra circa 11–17 °E e 35–39,5 °N.

La previsione è calcolata su griglia e non su province:

- province, comuni e coste sono soltanto riferimenti cartografici;
- nessun confine amministrativo può creare, interrompere o deformare un'area di rischio;
- i campi possono attraversare senza discontinuità costa e mare;
- un punto o un centroide provinciale non rappresenta un'intera area;
- le zone prive di dati devono essere marcate come non disponibili, mai trasformate in livello zero.

L'output scientifico primario è un campo continuo su griglia. I poligoni GeoJSON sono derivati da quel campo mediante contornamento e semplificazione documentati.

## 3. Griglie previsionali

### 3.1 Griglia esterna

ICON-EU e IFS devono essere acquisiti come campi grigliati provenienti da corse coerenti. Non è consentito costruire il dominio unendo punti Best Match che possono appartenere a modelli differenti.

I due modelli sono riproiettati su una griglia esterna comune:

- stessa proiezione, estensione, passo, maschera e convenzione temporale;
- risoluzione di lavoro non più fine della risoluzione informativa effettiva della sorgente;
- variabili e unità armonizzate, mantenendo separata la provenienza di ciascun modello;
- nessuna media o fusione ICON-EU–IFS prima dei controlli di completezza e della calibrazione;
- conservazione di corsa, membro, lead time, risoluzione nativa, risoluzione effettiva ed età.

L'accordo fra modelli costituisce informazione sull'incertezza, non una prova che l'evento avverrà. Un modello non deve colmare silenziosamente dati mancanti dell'altro.

### 3.2 Nido WSLAM

Il nido WSLAM a 2 km aggiunge dettaglio regionale per orografia, convergenze costiere, struttura delle precipitazioni e moto delle celle. Deve essere innestato sullo stesso dominio e sulle stesse finestre temporali della griglia esterna.

Il valore nominale di 2 km non implica automaticamente capacità previsionale a 2 km. Il prodotto deve pubblicare anche la scala effettivamente verificata. Il nido:

- non può inventare probabilità sub-grid non calibrate;
- non può sovrascrivere la forzante esterna quando è incompleto o stantio;
- deve essere escluso dal livello operativo se il suo gate scientifico è in stato shadow, fail-closed o non promosso;
- può essere mostrato come diagnostica separata finché non supera i controlli di qualità e skill.

## 4. Finestre temporali

Ogni emissione contiene dodici finestre UTC esatte e consecutive:

- 00:00–06:00 UTC;
- 06:00–12:00 UTC;
- 12:00–18:00 UTC;
- 18:00–24:00 UTC;
- ripetute fino a un orizzonte di 72 ore.

Gli intervalli sono semiaperti: l'inizio è incluso e la fine esclusa. Sono quindi sempre sei ore reali, anche durante i cambi fra ora solare e ora legale.

L'interfaccia può mostrare anche l'ora Europe/Rome, ma deve conservare UTC e offset ISO 8601. La dicitura locale non deve alterare la durata della finestra.

Per ogni finestra devono essere dichiarati:

- inizio e fine UTC;
- ora locale con offset;
- corsa dei modelli;
- lead time;
- stato completo, degradato, stantio o non disponibile.

## 5. Architettura occurrence × conditional intensity

Il modello segue un approccio a ingredienti e due stadi.

### 5.1 Stadio di occurrence

Per ogni cella, ora e membro si stima il segnale O di convezione profonda elettrificata. Gli ingredienti minimi sono instabilità, umidità e sollevamento; CIN, umidità medio-troposferica e precipitazione convettiva aiutano a distinguere CAPE disponibile da CAPE effettivamente rilasciabile.

### 5.2 Stadio di intensità condizionale

Per ogni hazard h si calcola un segnale condizionale Qh che descrive la capacità del temporale, se si forma, di produrre quel fenomeno.

Il segnale orario incondizionato è:

Hh(x,t,m) = O(x,t,m) × Qh(x,t,m)

dove x è la cella, t l'ora e m il membro.

O e Qh devono essere calcolati sulla stessa cella, nella stessa ora e sullo stesso membro. Non è ammesso combinare il massimo CAPE di un'ora con il massimo shear, la minima quota termica o la massima pioggia di ore diverse.

Non deve esistere un termine costante che mantenga severità positiva con occurrence nulla. I segnali dei diversi hazard non si sommano come se fossero indipendenti.

### 5.3 Aggregazione a sei ore

Per ogni membro il punteggio grezzo della finestra è il massimo temporale del prodotto sincronizzato Hh. L'ensemble conserva media, mediana, percentili, spread e quota di membri favorevoli.

La formula 1 − prodotto(1 − p oraria) non viene applicata automaticamente: assume indipendenza fra ore consecutive e può sovrastimare la probabilità. La trasformazione del segnale grezzo in probabilità di almeno un evento nella finestra deve essere appresa e verificata direttamente su etichette di sei ore.

La probabilità di almeno un hazard severo non è la somma delle probabilità dei singoli hazard, che possono verificarsi nello stesso temporale. In futuro richiederà un calibratore dedicato any-severe.

## 6. Ingredienti e limiti per hazard

### 6.1 Temporali

Ingredienti desiderati:

- MUCAPE o MLCAPE e relativo CIN;
- livello di equilibrio e profondità della nube nella regione a fase mista;
- umidità relativa 850–500 hPa;
- mixing ratio o umidità specifica nel basso strato;
- forcing, convergenza e sollevamento orografico;
- precipitazione convettiva oraria, se disponibile.

La probabilità di precipitazione generica non equivale alla probabilità di temporale. Un proxy CAPE × precipitazione può essere una diagnostica, ma non una probabilità senza addestramento e calibrazione.

### 6.2 Grandine

Ingredienti desiderati:

- MUCAPE e distribuzione verticale della buoyancy;
- deep-layer shear reale o, se necessario, differenza 925–500 hPa correttamente nominata;
- umidità del mixed layer;
- wet-bulb zero;
- lapse rate e profondità della hail-growth zone;
- eventuali proxy espliciti del nido WSLAM.

La quota dello zero termico non è equivalente al wet-bulb zero. Una relazione del tipo quota più bassa uguale grandine maggiore non è fisicamente sufficiente. Sui rilievi vanno esclusi livelli di pressione sotto il terreno.

La climatologia e i predittori sviluppati sull'Europa centrale non sono trasferibili alla Sicilia senza verifica mediterranea. Il lavoro di Giordani et al. sul centro-sud Europa è riferimento per l'uso congiunto di reanalisi convection-permitting e osservazioni satellitari degli overshooting top.

### 6.3 Raffiche convettive

Ingredienti desiderati:

- DCAPE o proxy del potenziale di downdraft;
- lapse rate e umidità nel sub-cloud layer;
- aria secca medio-troposferica ed evaporative cooling;
- carico precipitativo;
- vento medio e possibile trasporto di momento;
- shear profondo e 0–3 km;
- regime ad alta instabilità/debole shear e regime low-CAPE/high-shear.

La raffica modellistica a 10 m può comprendere vento sinottico e non deve essere presentata da sola come raffica convettiva. CAPE e shear non descrivono tutti i meccanismi di microburst o di severe wind.

### 6.4 Pioggia convettiva eccessiva

Ingredienti desiderati:

- precipitazione convettiva e totale dell'ensemble accumulata in sei ore;
- precipitable water, moisture flux e warm-cloud depth;
- efficienza precipitativa;
- moto esplicito della cella o del sistema;
- convergenza persistente, training, backbuilding e rigenerazione;
- sollevamento orografico e interazione costa–rilievi.

Shear debole non significa automaticamente moto lento. La pioggia convettiva eccessiva è un hazard meteorologico; non deve essere chiamata flash flood risk senza un modello idrologico che includa bacini, suolo, saturazione antecedente e vulnerabilità.

### 6.5 Tornado e waterspout

Il livello tornado/waterspout resta non operativo finché non sono disponibili e verificati:

- shear e SRH 0–1 km ed effective;
- LCL, CIN e instabilità nel basso strato;
- confini, convergenze e vorticità;
- un campione sufficiente di rapporti verificati.

Le waterspout mediterranee possono verificarsi anche in ambienti diversi dalle supercelle di terra e richiedono un modello distinto. Non devono essere inferite dal solo shear 925–500 hPa.

## 7. Livelli di potenziale L0–L3

I livelli correnti sono classi ordinali di guida, non probabilità.

- L0 — temporali possibili, ma ingredienti severi deboli, marginali o molto incerti;
- L1 — potenziale isolato di almeno un hazard severo, con sovrapposizione limitata o accordo ensemble/modelli ridotto;
- L2 — sovrapposizione robusta di occurrence e ingredienti severi, con supporto significativo dell'ensemble e coerenza spaziale;
- L3 — situazione rara con ingredienti estremi sincronizzati, supporto robusto multi-membro e potenziale condizionale elevato per fenomeni estremamente severi.

L3 deve essere fail-closed: non viene prodotto se mancano campi essenziali, copertura, coerenza fra modelli o controlli di qualità.

Le soglie numeriche sono configurazione scientifica versionata, non costanti editoriali. Ogni modifica richiede un nuovo numero di versione e una verifica retrospettiva.

L'area temporalesca è separata dai livelli severi. I livelli complessivi devono essere annidati perché derivano da un unico campo ordinato; i contorni dei singoli hazard possono sovrapporsi senza essere annidati.

SPC ed ESTOFEX definiscono livelli probabilistici su climatologie, periodi e domini propri. I livelli WS-CI possono richiamarne la leggibilità cromatica, ma non il significato numerico finché non sono calibrati.

## 8. Contorni areali

Per ogni finestra devono essere prodotti:

- raster continuo del segnale di occurrence;
- raster continui per grandine, vento e pioggia convettiva eccessiva;
- campo ordinato del livello complessivo;
- GeoJSON MultiPolygon dei contorni L0–L3;
- GeoJSON separato degli hazard;
- maschere di copertura e qualità.

Il contornamento:

- opera sull'intera griglia Sicilia–mari;
- non usa province o altri confini amministrativi;
- applica un neighbourhood e una pulizia morfologica documentati;
- elimina rumore sub-grid senza cancellare strutture meteorologiche coerenti;
- conserva la relazione fra raster sorgente e poligono pubblicato;
- dichiara raggio di smoothing, area minima e tolleranza di semplificazione.

La scala minima presentabile deve essere determinata con verifica spaziale, in particolare Fractions Skill Score, e non dalla risoluzione nominale del modello.

## 9. Definizione spaziale futura a 40 km

La definizione obiettivo per la calibrazione è:

probabilità che almeno un evento dell'hazard si verifichi entro 40 km dal punto durante la finestra di sei ore.

Quaranta chilometri approssimano le 25 miglia usate dal National Weather Service/Storm Prediction Center. Il neighbourhood deve essere applicato nello stesso modo sia alle previsioni sia alle osservazioni.

La trasformazione da punteggio di griglia a probabilità entro 40 km deve essere calibrata sul dominio siciliano. Non è consentito attribuire direttamente ai livelli WS-CI le soglie SPC o ESTOFEX.

L'aggiornamento SPC 2026 separa opportunamente due dimensioni:

- probabilità/copertura del fenomeno;
- intensità condizionale, espressa tramite Conditional Intensity Groups.

WS-CI deve preservare la stessa separazione concettuale: un evento molto intenso ma poco probabile non equivale a un evento meno intenso ma diffuso.

## 10. Radar, fulmini e nowcast

Previsione, osservazione e nowcast restano evidenze distinguibili, ma il prodotto
derivato applica una fusione positiva e tracciata. Non si tratta di assimilazione
nel modello NWP: è post-processing forecast–nowcast sperimentale, identificato da
`contract = weathersicily-observation-fusion-v1` e
`method_version = WS-CI-OBS-0.1-exp`.

### 10.1 Sorgenti effettivamente usate

La routine same-origin legge lo snapshot `weathersicily-outlook-observations-v1`:

- fulmini nube-suolo Blitzortung quality-controlled degli ultimi 60 minuti,
  deduplicati per identificativo evento; la loro età decade con `exp(-a/20)`;
- celle `active` osservate negli ultimi 75 minuti, pesate per freschezza,
  `evidence_class` e `storm_type`; il raggio usato è limitato fra 3 e 20 km;
- traiettorie delle celle con punti previsti a +15 e +30 minuti, probabilità e
  incertezza anisotropa lungo e attraverso il moto; non sono dichiarate ufficiali
  oltre +30 minuti;
- un frame numerico Radar-DPC SRI con rain-rate in mm/h, soglia minima 0,5 mm/h,
  età massima 45 minuti e decadimento `exp(-a/15)`.

Lo snapshot complessivo è decision-eligible soltanto entro 20 minuti dalla sua
generazione. Stati stantii, non disponibili o non validi producono in modo
fail-safe il solo forecast. La copertura osservativa è attualmente ignota:
`coverage_unknown = true`. Di conseguenza l'assenza di eco, fulmini o celle non
riduce mai un valore previsto.

I fulmini disponibili sono CG di una rete al suolo, non total lightning. Non si
calcola quindi un lightning jump: `multiplicity`, il testo editoriale di severità
della cella e un singolo aumento di flash-rate non alzano direttamente grandine,
vento o rotazione. Un fulmine conferma convezione elettrificata, non uno specifico
fenomeno severo.

### 10.2 Normalizzazione spaziale e fusione

Il supporto del prodotto è “evento entro 40 km dal punto”. Per ogni distanza
geodetica `d` si usa quindi `d' = max(0, d - 40 km)` prima dei kernel locali.
I fulmini usano un kernel gaussiano con sigma 8 km, troncato a 24 km oltre il
supporto, e saturano secondo:

`L = 1 - exp(-somma(contributi_fulmine) / 3)`.

Le celle usano il massimo per famiglia, non la somma, per evitare doppio
conteggio. I pesi di evidenza sono 1,00 `radar_confirmed`, 0,90
`lightning_observed`, 0,45 `satellite_fusion_candidate`, 0,25 altrimenti; i
pesi di tipo sono 1,00 `thunderstorm/electrical`, 0,65 `developing`, 0,35
`shower`, 0,30 altrimenti. I punti nowcast applicano anche `prob_pct/100` e un
kernel gaussiano anisotropo costruito con `along_error_km` e
`cone_half_width_km`.

Per il radar, il massimo rain-rate locale pesato viene trasformato per
interpolazione lineare nei seguenti nodi:

| SRI mm/h | 0,5 | 2 | 5 | 10 | 20 | 40 | 80 |
|---|---:|---:|---:|---:|---:|---:|---:|
| occurrence radar | 0 | 0,10 | 0,25 | 0,45 | 0,65 | 0,85 | 1 |

La componente rain usa i nodi `5 → 0`, `10 → 0,20`, `20 → 0,45`,
`40 → 0,75`, `80 → 1`. Essendo SRI una stima di intensità di pioggia, non
riflettività verticale, MESH, velocità Doppler o rotazione, può influenzare
soltanto occurrence e il condizionale rain. Il suo contributo all'occurrence è
inoltre moltiplicato per `0,20 + 0,80 × convective_gate`.

Le tre famiglie indipendenti sono elettrica `E`, satellite `S` e radar `R`.
L'evidenza osservativa normalizzata è:

`Oobs = 1 - (1 - 0,98 E)(1 - 0,55 S)(1 - 0,70 R)`.

Dato `Om = thunder/100` e il peso temporale di fascia `w`, l'aggiornamento è
esclusivamente positivo:

`Ofused = min(0,99; 1 - (1 - Om)(1 - w Oobs))`.

Il condizionale rain viene aggiornato con:

`Qrain' = 1 - (1 - Qrain)(1 - 0,20 × w × Rrain × convective_gate)`.

I condizionali hail, wind e tornado/rotation_environment restano invariati;
i loro joint possono crescere soltanto perché aumenta occurrence. Per ogni
hazard `joint_h = 100 × Ofused × Qh`, mentre `joint`, `intensity` e
`dominant_hazard` rappresentano il candidato massimo, senza mai ridurre il joint
baseline. Una cella modificata assume `source = 2` per outer + osservazioni o
`source = 3` per WSLAM + osservazioni; 0 e 1 restano i codici forecast-only.

### 10.3 Decadimento e fasce di sei ore

Il peso è interpolato linearmente sui nodi:

| lead dall'analisi | 0 h | 0,25 h | 0,5 h | 1 h | 2 h | 3 h | 4 h | 6 h | 9 h |
|---|---:|---:|---:|---:|---:|---:|---:|---:|---:|
| `w` | 1,00 | 0,90 | 0,80 | 0,55 | 0,25 | 0,10 | 0,05 | 0,01 | 0 |

Sono eleggibili soltanto lo slot corrente, indice 0, e la seconda fascia,
indice 1. Per lo slot già iniziato il lead è posto a zero; per la seconda fascia
si usa la distanza fra il suo inizio UTC e l'ora di analisi. Gli slot 2–11 hanno
sempre peso zero. Con peso inferiore a 0,999 la fusione non può alzare il livello
di più di una classe rispetto al baseline.

Le soglie L0–L2 rimangono quelle del metodo principale. Un nuovo L2 richiede
anche occurrence modellistica almeno 0,20 oppure due famiglie osservate sopra i
gate `E ≥ 0,40`, `S ≥ 0,35`, `R ≥ 0,25`; la rotazione non può ottenere un nuovo
L2 dalla fusione. L3 resta globalmente fail-closed e non può essere prodotto da
radar, fulmini, celle o nowcast.

### 10.4 Provenienza e verifica

Il payload conserva stato, booleani `used_in_scoring` e `decision_eligible`,
ora di analisi, hash SHA-256 dello snapshot, età delle sorgenti, pesi dei dodici
slot, celle modificate, maschere delle sorgenti e `coverage_unknown`. Le
componenti radar, elettrica e satellitare restano così separatamente verificabili
anche quando concorrono al campo fuso.

Blitzortung è usato come evidenza CG sperimentale con attribuzione e provenance,
non come verità universale di calibrazione. MTG Lightning Imager di EUMETSAT
resta la sorgente preferibile per una futura componente total-lightning e per un
lightning-jump specificamente verificato su Sicilia e mari.

## 11. Archivio, verità osservativa e calibrazione

Ogni emissione deve essere archiviata in forma immutabile prima di osservare l'esito:

- raster e poligoni emessi;
- campi e membri di input;
- corse e lead time;
- versione del modello e delle soglie;
- stato delle sorgenti e maschere di copertura;
- snapshot osservativo, hash e metadati della fusione conservati separatamente dal baseline forecast;
- hash o identificatore univoco del prodotto.

Le etichette di verifica devono usare la stessa finestra di sei ore e lo stesso neighbourhood di 40 km:

- temporali: fulmini quality-controlled, con detection efficiency specifica per provider;
- grandine: rapporti verificati, ESWD, sensori o osservazioni indipendenti; POH solo ausiliario;
- raffiche: misure validate e associate alla convezione mediante radar/fulmini;
- pioggia: pluviometri e radar QPE corretto, con maschera di copertura;
- tornado/waterspout: rapporti verificati, senza classificare automaticamente l'assenza di rapporti sul mare come non-evento.

La calibrazione deve essere separata almeno per hazard, lead time, stagione e terra/mare. I dati di addestramento, selezione delle soglie e verifica finale devono essere distinti, con cross-validation bloccata per anno o evento e un holdout indipendente.

Metriche minime:

- reliability diagram e frequenza osservata per livello;
- Brier score e Brier skill score rispetto alla climatologia stagionale;
- log score;
- precision–recall AUC per gli eventi rari;
- ROC AUC soltanto come misura di discriminazione;
- probability of detection e false alarm ratio;
- Fractions Skill Score a scale almeno di 10, 20 e 40 km;
- errore di posizione, area e durata degli oggetti.

L2 e soprattutto L3 non possono essere dichiarati calibrati senza un numero sufficiente di eventi, intervalli di confidenza e verifica prospettica. La scarsità di rapporti sul mare richiede maschere unknown e non deve produrre falsi negativi.

## 12. Garanzie operative

- Fail closed per campi essenziali mancanti: non disponibile è diverso da livello zero.
- Soglie di freschezza specifiche per sorgente; radar e fulmini non possono ereditare la tolleranza di una corsa NWP.
- Ultimo forecast valido eventualmente mostrato come stantio, con età evidente e senza osservazioni live obsolete.
- Nessun prodotto shadow o non promosso può influenzare livelli, headline o notifiche.
- Test automatici su dodici finestre esatte, continuità della griglia, geometrie valide, annidamento dei livelli, copertura marina e valori entro contratto.
- Riproducibilità: stessa versione e stessi input devono generare lo stesso risultato.
- Disclaimer permanente: prodotto automatico sperimentale, non allerta ufficiale.

### 12.1 Refresh outer, nido WSLAM e circuit breaker

Il cron resta eseguito ogni 30 minuti, ma `--refresh` non forza una nuova
acquisizione outer a ogni passaggio. Se l'edizione UTC coincide e l'origine
ICON-EU/IFS ha al massimo tre ore, i campi outer già validati vengono riusati
senza rete. Il payload viene comunque rigenerato, l'ultimo cube WSLAM viene
riattaccato e readiness, receipt e snapshot immutabile vengono ricalcolati.
Un file WSLAM o uno snapshot osservativo più recente rende quindi necessario il
rebuild del prodotto, non una seconda acquisizione dei modelli esterni. Il quarto
argomento opzionale di `wsCacheIsCurrent` applica il gate di mtime osservativo;
la firma legacy a tre argomenti resta compatibile.

Dopo tre ore si tenta un refresh outer. Una risposta HTTP 429 apre un circuit
breaker persistente condiviso fra esecuzioni cron: il prossimo tentativo segue
il valore `Retry-After` del provider quando presente, altrimenti un backoff
esponenziale da 15 minuti, con limite di sei ore. Durante il gate non si usano
proxy, rotazione IP o richieste duplicate. `source_status.outer_detail` dichiara
origine, età, uso o meno della rete, causa del riuso e stato machine-readable
del breaker.

Il riuso degradato non può mai superare sei ore dall'origine outer, anche se la
cache `latest` è stata riscritta nel frattempo. Oltre questo limite il prodotto
non viene ripubblicato e l'API risponde fail-closed finché non supera un nuovo
refresh completo. Un successo fresh chiude il breaker e azzera i 429
consecutivi.

## 13. Tracciabilità e readiness

Ogni pubblicazione conserva un receipt immutabile e uno snapshot gzip
content-addressed dell'esatto JSON servito. Il receipt registra hash SHA-256,
dimensione, edizione, metodo, stato delle sorgenti, readiness e policy L3; lo
snapshot permette di ricostruire e verificare byte per byte il payload anche
dopo l'aggiornamento della cache `latest`. La prima emissione di ciascuna fascia
resta inoltre nell'archivio canonico per edizione.

Il cube WSLAM viene archiviato separatamente per run e revisione come JSON gzip,
con filename derivato da run UTC e hash, receipt sanitizzato e scrittura
idempotente. I GRIB grezzi non vengono duplicati in questo archivio.

La readiness pubblica dichiara esplicitamente `probability: null`: L0-L2 sono
classi euristiche non probabilistiche. Il campo storico `confidence` è
qualificato come indice di coerenza, non come probabilità; il campo storico
`tornado` rappresenta soltanto `rotation_environment`. L3 e le lane shadow
mantengono gate fail-closed machine-readable; la fusione osservativa dichiara
invece stato, eligibility e uso effettivo nello scoring in modo coerente.

Receipt di pubblicazione ogni 30 minuti e cube fino a quattro run al giorno
richiedono un capacity planning prudenziale di circa 12 GB/anno. L'archivio è
append-only e non applica cancellazioni automatiche: retention e cold storage
devono essere definiti e monitorati prima di raggiungere il limite di capacità.

## 14. Fonti scientifiche e operative

- [NOAA/NWS Storm Prediction Center — Convective Outlooks, probabilità entro 25 miglia e Conditional Intensity Groups, aggiornamento 2026](https://www.spc.noaa.gov/about/outlooks/)
- [NOAA/NWS SPC — definizione probabilistica degli outlook entro 25 miglia](https://www.spc.noaa.gov/misc/SPC_probotlk_info.html)
- [ESTOFEX — definizioni ufficiali dei livelli e degli hazard](https://www.estofex.org/html/information.html)
- [Doswell, Brooks e Maddox, 1996 — Flash Flood Forecasting: An Ingredients-Based Methodology](https://journals.ametsoc.org/abstract/journals/wefo/11/4/1520-0434_1996_011_0560_fffaib_2_0_co_2.xml)
- [Púčik et al., 2015 — Proximity Soundings of Severe and Nonsevere Thunderstorms in Central Europe](https://doi.org/10.1175/MWR-D-15-0104.1)
- [Taszarek, Brooks e Czernecki, 2017 — Sounding-Derived Parameters Associated with Convective Hazards in Europe](https://doi.org/10.1175/MWR-D-16-0384.1)
- [Taszarek et al., 2020 — Severe Convective Storms across Europe and the United States, Part II](https://doi.org/10.1175/JCLI-D-20-0346.1)
- [Giordani et al., 2024 — Characterizing Hail-Prone Environments over South-Central Europe](https://doi.org/10.5194/nhess-24-2331-2024)
- [Battaglioli et al., 2023 — AR-CHaMo, ensemble lightning and large-hail forecasts](https://doi.org/10.5194/nhess-23-3651-2023)
- [Taszarek e Matczak, 2025/2026 — ASTORP methodology](https://doi.org/10.5194/ecss2025-226)
- [ASTORP/ESTOFEX su Rawinsonde.com — guida operativa a parametri e rappresentazione degli outlook convettivi](https://rawinsonde.com/ASTORP/ESTOFEX.html)
- [Cintineo, Pavolonis e Sieglaff, 2024 — ProbSevere version 3](https://doi.org/10.1175/WAF-D-24-0076.1)
- [Pulkkinen et al., 2019 — Pysteps, probabilistic precipitation nowcasting](https://doi.org/10.5194/gmd-12-4185-2019)
- [Roberts e Lean, 2008 — Fractions Skill Score e scala spaziale utile](https://doi.org/10.1175/2007MWR2123.1)
- [EUMETSAT — Meteosat Third Generation Lightning Imager](https://www.eumetsat.int/our-satellites/meteosat-series)
- [Blitzortung — termini ufficiali di utilizzo](https://www.blitzortung.org/en/contact.php?PrivacyPolicy=1)