{
  "forecast_id": "to_fcst_20260422_0557",
  "hazard": "tornado",
  "issued_at": "2026-04-22T05:57:47Z",
  "model_version": "tornado_storm_v1_0",
  "forecast_horizon_hours": 24,
  "scoring_tier": "tier1_ml",
  "scoring_tier_label": "ML (pre-trained gradient-boosted trees)",
  "coherence_source": "probsevere",
  "n_active_storms": 10,
  "top_probability": 0.1712,
  "source_artifacts": [
    "/data/live-tornadoes.json",
    "/data/tornado-storms.geojson"
  ],
  "storms": [
    {
      "storm_id": "305456",
      "lat": 39.6289,
      "lon": -83.8842,
      "motion_east": -20.0,
      "motion_south": -22.0,
      "valid_time": "20260422_053040 UTC",
      "tornado_probability": 0.1712,
      "risk_band": "moderate",
      "ps_tor": 0.0,
      "ps": 0.0,
      "mucape": 28.0,
      "ebshear": 9.0,
      "srh01": 196.0,
      "maxllaz": 0.004,
      "mesh": 0.0,
      "flash_rate": 0.0,
      "top_features": [],
      "model_scores": {
        "analytic_prob": 0.1712
      },
      "coherence_score": 0.1712,
      "coherence_diagnostics": {
        "tau": 0.07703481614589691,
        "grad_tau": 0.005454998463392258,
        "torsion": 0.0,
        "alignment": 0.00534589821472764,
        "S_field": 0.027137737721204758,
        "Gamma_field": 0.25,
        "S_over_Gamma": 0.10855095088481903,
        "Da": 17.130695343017578,
        "E_coh": 0.0,
        "singularity_count": 2.0,
        "singularity_conditions_met": 2,
        "singularity_detail": {
          "s_over_gamma": false,
          "high_gradient": false,
          "high_torsion": false,
          "positive_alignment": true,
          "high_damkohler": true
        }
      },
      "scoring_tier": "tier1_ml",
      "coherence_source": "probsevere",
      "model_version": "tornado_storm_v1_0",
      "track_length": 1,
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              -83.82,
              39.68
            ],
            [
              -83.81,
              39.67
            ],
            [
              -83.78,
              39.67
            ],
            [
              -83.76,
              39.68
            ],
            [
              -83.75,
              39.67
            ],
            [
              -83.75,
              39.63
            ],
            [
              -83.84,
              39.58
            ],
            [
              -83.93,
              39.58
            ],
            [
              -83.96,
              39.55
            ],
            [
              -83.98,
              39.55
            ],
            [
              -84.02,
              39.58
            ],
            [
              -84.02,
              39.61
            ],
            [
              -83.99,
              39.64
            ],
            [
              -83.97,
              39.64
            ],
            [
              -83.94,
              39.62
            ],
            [
              -83.91,
              39.62
            ],
            [
              -83.89,
              39.65
            ],
            [
              -83.86,
              39.65
            ],
            [
              -83.82,
              39.68
            ]
          ]
        ]
      }
    },
    {
      "storm_id": "305421",
      "lat": 39.243,
      "lon": -83.767,
      "motion_east": 7.8,
      "motion_south": -2.0,
      "valid_time": "20260422_053040 UTC",
      "tornado_probability": 0.1581,
      "risk_band": "moderate",
      "ps_tor": 0.0,
      "ps": 0.0,
      "mucape": 17.0,
      "ebshear": 5.0,
      "srh01": 217.0,
      "maxllaz": 0.003,
      "mesh": 0.0,
      "flash_rate": 0.0,
      "top_features": [],
      "model_scores": {
        "analytic_prob": 0.1581
      },
      "coherence_score": 0.1581,
      "coherence_diagnostics": {
        "tau": 0.06962454319000244,
        "grad_tau": 0.0091183390468359,
        "torsion": 0.0,
        "alignment": 0.00989339780062437,
        "S_field": 0.02381221204996109,
        "Gamma_field": 0.25,
        "S_over_Gamma": 0.09524884819984436,
        "Da": 17.130695343017578,
        "E_coh": 0.0,
        "singularity_count": 2.0,
        "singularity_conditions_met": 2,
        "singularity_detail": {
          "s_over_gamma": false,
          "high_gradient": false,
          "high_torsion": false,
          "positive_alignment": true,
          "high_damkohler": true
        }
      },
      "scoring_tier": "tier1_ml",
      "coherence_source": "probsevere",
      "model_version": "tornado_storm_v1_0",
      "track_length": 2,
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              -83.75,
              39.28
            ],
            [
              -83.73,
              39.26
            ],
            [
              -83.73,
              39.24
            ],
            [
              -83.75,
              39.22
            ],
            [
              -83.75,
              39.21
            ],
            [
              -83.8,
              39.21
            ],
            [
              -83.8,
              39.23
            ],
            [
              -83.81,
              39.24
            ],
            [
              -83.8,
              39.26
            ],
            [
              -83.75,
              39.28
            ]
          ]
        ]
      }
    },
    {
      "storm_id": "305460",
      "lat": 41.598,
      "lon": -81.734,
      "motion_east": 9.0,
      "motion_south": -1.0,
      "valid_time": "20260422_053040 UTC",
      "tornado_probability": 0.1574,
      "risk_band": "moderate",
      "ps_tor": 0.0,
      "ps": 0.0,
      "mucape": 40.0,
      "ebshear": 17.0,
      "srh01": 176.0,
      "maxllaz": 0.004,
      "mesh": 0.07,
      "flash_rate": 0.0,
      "top_features": [],
      "model_scores": {
        "analytic_prob": 0.1574
      },
      "coherence_score": 0.1574,
      "coherence_diagnostics": {
        "tau": 0.06171238422393799,
        "grad_tau": 0.007515612058341503,
        "torsion": 0.0,
        "alignment": 0.006613738369196653,
        "S_field": 0.020181618630886078,
        "Gamma_field": 0.25,
        "S_over_Gamma": 0.08072647452354431,
        "Da": 17.130695343017578,
        "E_coh": 0.0,
        "singularity_count": 2.0,
        "singularity_conditions_met": 2,
        "singularity_detail": {
          "s_over_gamma": false,
          "high_gradient": false,
          "high_torsion": false,
          "positive_alignment": true,
          "high_damkohler": true
        }
      },
      "scoring_tier": "tier1_ml",
      "coherence_source": "probsevere",
      "model_version": "tornado_storm_v1_0",
      "track_length": 1,
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              -81.76,
              41.63
            ],
            [
              -81.72,
              41.63
            ],
            [
              -81.69,
              41.61
            ],
            [
              -81.7,
              41.6
            ],
            [
              -81.7,
              41.57
            ],
            [
              -81.71,
              41.56
            ],
            [
              -81.76,
              41.56
            ],
            [
              -81.77,
              41.57
            ],
            [
              -81.77,
              41.62
            ],
            [
              -81.76,
              41.63
            ]
          ]
        ]
      }
    },
    {
      "storm_id": "305454",
      "lat": 42.1825,
      "lon": -79.4712,
      "motion_east": 9.0,
      "motion_south": -1.0,
      "valid_time": "20260422_053040 UTC",
      "tornado_probability": 0.1471,
      "risk_band": "low",
      "ps_tor": 0.0,
      "ps": 0.0,
      "mucape": 32.0,
      "ebshear": 10.0,
      "srh01": 200.0,
      "maxllaz": 0.001,
      "mesh": 0.0,
      "flash_rate": 0.0,
      "top_features": [],
      "model_scores": {
        "analytic_prob": 0.1471
      },
      "coherence_score": 0.1471,
      "coherence_diagnostics": {
        "tau": 0.04765548184514046,
        "grad_tau": 0.008240221068263054,
        "torsion": 0.0,
        "alignment": 0.008240221068263054,
        "S_field": 0.015426162630319595,
        "Gamma_field": 0.25,
        "S_over_Gamma": 0.06170465052127838,
        "Da": 17.130695343017578,
        "E_coh": 0.0,
        "singularity_count": 2.0,
        "singularity_conditions_met": 2,
        "singularity_detail": {
          "s_over_gamma": false,
          "high_gradient": false,
          "high_torsion": false,
          "positive_alignment": true,
          "high_damkohler": true
        }
      },
      "scoring_tier": "tier1_ml",
      "coherence_source": "probsevere",
      "model_version": "tornado_storm_v1_0",
      "track_length": 1,
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              -79.49,
              42.22
            ],
            [
              -79.43,
              42.21
            ],
            [
              -79.41,
              42.18
            ],
            [
              -79.41,
              42.14
            ],
            [
              -79.5,
              42.14
            ],
            [
              -79.52,
              42.15
            ],
            [
              -79.52,
              42.2
            ],
            [
              -79.49,
              42.22
            ]
          ]
        ]
      }
    },
    {
      "storm_id": "305461",
      "lat": 40.7643,
      "lon": -86.9071,
      "motion_east": 9.0,
      "motion_south": -1.0,
      "valid_time": "20260422_053040 UTC",
      "tornado_probability": 0.1227,
      "risk_band": "low",
      "ps_tor": 0.0,
      "ps": 0.0,
      "mucape": 156.0,
      "ebshear": 17.0,
      "srh01": 158.0,
      "maxllaz": 0.0,
      "mesh": 0.09,
      "flash_rate": 1.0,
      "top_features": [],
      "model_scores": {
        "analytic_prob": 0.1227
      },
      "coherence_score": 0.1227,
      "coherence_diagnostics": {
        "tau": 0.06805210560560226,
        "grad_tau": 0.008780342526733875,
        "torsion": 0.0,
        "alignment": 0.006936470977962017,
        "S_field": 0.024054042994976044,
        "Gamma_field": 0.25,
        "S_over_Gamma": 0.09621617197990417,
        "Da": 17.130695343017578,
        "E_coh": 0.0,
        "singularity_count": 2.0,
        "singularity_conditions_met": 2,
        "singularity_detail": {
          "s_over_gamma": false,
          "high_gradient": false,
          "high_torsion": false,
          "positive_alignment": true,
          "high_damkohler": true
        }
      },
      "scoring_tier": "tier1_ml",
      "coherence_source": "probsevere",
      "model_version": "tornado_storm_v1_0",
      "track_length": 1,
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              -86.87,
              40.81
            ],
            [
              -86.86,
              40.8
            ],
            [
              -86.87,
              40.79
            ],
            [
              -86.86,
              40.78
            ],
            [
              -86.87,
              40.76
            ],
            [
              -86.88,
              40.77
            ],
            [
              -86.92,
              40.73
            ],
            [
              -86.93,
              40.71
            ],
            [
              -86.97,
              40.7
            ],
            [
              -86.98,
              40.71
            ],
            [
              -86.98,
              40.76
            ],
            [
              -86.95,
              40.78
            ],
            [
              -86.89,
              40.79
            ],
            [
              -86.87,
              40.81
            ]
          ]
        ]
      }
    },
    {
      "storm_id": "305451",
      "lat": 41.04,
      "lon": -86.4092,
      "motion_east": 9.0,
      "motion_south": -1.0,
      "valid_time": "20260422_053040 UTC",
      "tornado_probability": 0.119,
      "risk_band": "low",
      "ps_tor": 0.0,
      "ps": 0.0,
      "mucape": 235.0,
      "ebshear": 20.0,
      "srh01": 151.0,
      "maxllaz": 0.002,
      "mesh": 0.14,
      "flash_rate": 6.0,
      "top_features": [],
      "model_scores": {
        "analytic_prob": 0.119
      },
      "coherence_score": 0.119,
      "coherence_diagnostics": {
        "tau": 0.07310060411691666,
        "grad_tau": 0.007362368516623974,
        "torsion": 0.0,
        "alignment": 0.005558588542044163,
        "S_field": 0.025833189487457275,
        "Gamma_field": 0.25,
        "S_over_Gamma": 0.1033327579498291,
        "Da": 17.130695343017578,
        "E_coh": 0.0,
        "singularity_count": 2.0,
        "singularity_conditions_met": 2,
        "singularity_detail": {
          "s_over_gamma": false,
          "high_gradient": false,
          "high_torsion": false,
          "positive_alignment": true,
          "high_damkohler": true
        }
      },
      "scoring_tier": "tier1_ml",
      "coherence_source": "probsevere",
      "model_version": "tornado_storm_v1_0",
      "track_length": 1,
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              -86.43,
              41.07
            ],
            [
              -86.39,
              41.07
            ],
            [
              -86.38,
              41.06
            ],
            [
              -86.38,
              41.04
            ],
            [
              -86.39,
              41.03
            ],
            [
              -86.38,
              41.01
            ],
            [
              -86.39,
              41.0
            ],
            [
              -86.43,
              41.0
            ],
            [
              -86.43,
              41.03
            ],
            [
              -86.44,
              41.04
            ],
            [
              -86.44,
              41.06
            ],
            [
              -86.43,
              41.07
            ]
          ]
        ]
      }
    },
    {
      "storm_id": "305446",
      "lat": 45.7865,
      "lon": -118.4765,
      "motion_east": 9.0,
      "motion_south": -1.0,
      "valid_time": "20260422_053040 UTC",
      "tornado_probability": 0.1133,
      "risk_band": "low",
      "ps_tor": 0.0,
      "ps": 0.0,
      "mucape": 14.0,
      "ebshear": 14.0,
      "srh01": 36.0,
      "maxllaz": 0.004,
      "mesh": 0.0,
      "flash_rate": 0.0,
      "top_features": [],
      "model_scores": {
        "analytic_prob": 0.1133
      },
      "coherence_score": 0.1133,
      "coherence_diagnostics": {
        "tau": 0.011431029997766018,
        "grad_tau": 0.0005080404807813466,
        "torsion": 0.0,
        "alignment": 6.477515853475779e-05,
        "S_field": 0.004576887469738722,
        "Gamma_field": 0.25,
        "S_over_Gamma": 0.018307549878954887,
        "Da": 17.130695343017578,
        "E_coh": 0.0,
        "singularity_count": 2.0,
        "singularity_conditions_met": 2,
        "singularity_detail": {
          "s_over_gamma": false,
          "high_gradient": false,
          "high_torsion": false,
          "positive_alignment": true,
          "high_damkohler": true
        }
      },
      "scoring_tier": "tier1_ml",
      "coherence_source": "probsevere",
      "model_version": "tornado_storm_v1_0",
      "track_length": 1,
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              -118.55,
              45.92
            ],
            [
              -118.5,
              45.92
            ],
            [
              -118.45,
              45.88
            ],
            [
              -118.43,
              45.8
            ],
            [
              -118.39,
              45.76
            ],
            [
              -118.38,
              45.76
            ],
            [
              -118.36,
              45.73
            ],
            [
              -118.36,
              45.69
            ],
            [
              -118.37,
              45.68
            ],
            [
              -118.43,
              45.69
            ],
            [
              -118.48,
              45.73
            ],
            [
              -118.52,
              45.74
            ],
            [
              -118.53,
              45.75
            ],
            [
              -118.55,
              45.75
            ],
            [
              -118.62,
              45.8
            ],
            [
              -118.63,
              45.85
            ],
            [
              -118.55,
              45.92
            ]
          ]
        ]
      }
    },
    {
      "storm_id": "305423",
      "lat": 45.4777,
      "lon": -118.5239,
      "motion_east": 9.0,
      "motion_south": -1.0,
      "valid_time": "20260422_053040 UTC",
      "tornado_probability": 0.0947,
      "risk_band": "low",
      "ps_tor": 0.0,
      "ps": 0.0,
      "mucape": 7.0,
      "ebshear": 4.0,
      "srh01": 15.0,
      "maxllaz": 0.002,
      "mesh": 0.0,
      "flash_rate": 0.0,
      "top_features": [],
      "model_scores": {
        "analytic_prob": 0.0947
      },
      "coherence_score": 0.0947,
      "coherence_diagnostics": {
        "tau": 0.011431029997766018,
        "grad_tau": 0.0005080404807813466,
        "torsion": 0.0,
        "alignment": 6.477515853475779e-05,
        "S_field": 0.004576887469738722,
        "Gamma_field": 0.25,
        "S_over_Gamma": 0.018307549878954887,
        "Da": 17.130695343017578,
        "E_coh": 0.0,
        "singularity_count": 2.0,
        "singularity_conditions_met": 2,
        "singularity_detail": {
          "s_over_gamma": false,
          "high_gradient": false,
          "high_torsion": false,
          "positive_alignment": true,
          "high_damkohler": true
        }
      },
      "scoring_tier": "tier1_ml",
      "coherence_source": "probsevere",
      "model_version": "tornado_storm_v1_0",
      "track_length": 2,
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              -118.63,
              45.7
            ],
            [
              -118.59,
              45.68
            ],
            [
              -118.56,
              45.65
            ],
            [
              -118.55,
              45.62
            ],
            [
              -118.49,
              45.56
            ],
            [
              -118.45,
              45.54
            ],
            [
              -118.44,
              45.52
            ],
            [
              -118.44,
              45.5
            ],
            [
              -118.43,
              45.49
            ],
            [
              -118.44,
              45.48
            ],
            [
              -118.44,
              45.37
            ],
            [
              -118.42,
              45.36
            ],
            [
              -118.42,
              45.35
            ],
            [
              -118.44,
              45.33
            ],
            [
              -118.43,
              45.32
            ],
            [
              -118.44,
              45.28
            ],
            [
              -118.46,
              45.28
            ],
            [
              -118.47,
              45.27
            ],
            [
              -118.51,
              45.28
            ],
            [
              -118.55,
              45.32
            ],
            [
              -118.55,
              45.33
            ],
            [
              -118.59,
              45.38
            ],
            [
              -118.59,
              45.45
            ],
            [
              -118.58,
              45.46
            ],
            [
              -118.58,
              45.51
            ],
            [
              -118.59,
              45.52
            ],
            [
              -118.59,
              45.57
            ],
            [
              -118.65,
              45.65
            ],
            [
              -118.64,
              45.66
            ],
            [
              -118.65,
              45.68
            ],
            [
              -118.63,
              45.7
            ]
          ]
        ]
      }
    },
    {
      "storm_id": "305458",
      "lat": 46.0179,
      "lon": -118.8363,
      "motion_east": 9.0,
      "motion_south": -1.0,
      "valid_time": "20260422_053040 UTC",
      "tornado_probability": 0.0947,
      "risk_band": "low",
      "ps_tor": 0.0,
      "ps": 0.0,
      "mucape": 15.0,
      "ebshear": 7.0,
      "srh01": 82.0,
      "maxllaz": 0.003,
      "mesh": 0.0,
      "flash_rate": 0.0,
      "top_features": [],
      "model_scores": {
        "analytic_prob": 0.0947
      },
      "coherence_score": 0.0947,
      "coherence_diagnostics": {
        "tau": 0.011501804925501347,
        "grad_tau": 0.0004472773871384561,
        "torsion": 0.0,
        "alignment": 0.0001453651493648067,
        "S_field": 0.0047631473280489445,
        "Gamma_field": 0.25,
        "S_over_Gamma": 0.019052589312195778,
        "Da": 17.130695343017578,
        "E_coh": 0.0,
        "singularity_count": 2.0,
        "singularity_conditions_met": 2,
        "singularity_detail": {
          "s_over_gamma": false,
          "high_gradient": false,
          "high_torsion": false,
          "positive_alignment": true,
          "high_damkohler": true
        }
      },
      "scoring_tier": "tier1_ml",
      "coherence_source": "probsevere",
      "model_version": "tornado_storm_v1_0",
      "track_length": 1,
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              -118.89,
              46.13
            ],
            [
              -118.87,
              46.13
            ],
            [
              -118.86,
              46.12
            ],
            [
              -118.85,
              46.08
            ],
            [
              -118.84,
              46.07
            ],
            [
              -118.82,
              46.07
            ],
            [
              -118.8,
              46.05
            ],
            [
              -118.78,
              46.05
            ],
            [
              -118.77,
              46.04
            ],
            [
              -118.75,
              45.99
            ],
            [
              -118.71,
              45.94
            ],
            [
              -118.71,
              45.9
            ],
            [
              -118.73,
              45.89
            ],
            [
              -118.76,
              45.89
            ],
            [
              -118.81,
              45.92
            ],
            [
              -118.83,
              45.92
            ],
            [
              -118.87,
              45.95
            ],
            [
              -118.89,
              45.95
            ],
            [
              -118.91,
              45.97
            ],
            [
              -118.92,
              46.01
            ],
            [
              -118.94,
              46.03
            ],
            [
              -118.94,
              46.09
            ],
            [
              -118.93,
              46.11
            ],
            [
              -118.89,
              46.13
            ]
          ]
        ]
      }
    },
    {
      "storm_id": "305459",
      "lat": 46.0062,
      "lon": -119.2347,
      "motion_east": 9.0,
      "motion_south": -1.0,
      "valid_time": "20260422_053040 UTC",
      "tornado_probability": 0.0947,
      "risk_band": "low",
      "ps_tor": 0.0,
      "ps": 0.0,
      "mucape": 4.0,
      "ebshear": 2.0,
      "srh01": 48.0,
      "maxllaz": 0.003,
      "mesh": 0.0,
      "flash_rate": 0.0,
      "top_features": [],
      "model_scores": {
        "analytic_prob": 0.0947
      },
      "coherence_score": 0.0947,
      "coherence_diagnostics": {
        "tau": 0.011501804925501347,
        "grad_tau": 0.0004472773871384561,
        "torsion": 0.0,
        "alignment": 0.0001453651493648067,
        "S_field": 0.0047631473280489445,
        "Gamma_field": 0.25,
        "S_over_Gamma": 0.019052589312195778,
        "Da": 17.130695343017578,
        "E_coh": 0.0,
        "singularity_count": 2.0,
        "singularity_conditions_met": 2,
        "singularity_detail": {
          "s_over_gamma": false,
          "high_gradient": false,
          "high_torsion": false,
          "positive_alignment": true,
          "high_damkohler": true
        }
      },
      "scoring_tier": "tier1_ml",
      "coherence_source": "probsevere",
      "model_version": "tornado_storm_v1_0",
      "track_length": 1,
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              -119.41,
              46.09
            ],
            [
              -119.36,
              46.09
            ],
            [
              -119.28,
              46.05
            ],
            [
              -119.25,
              46.05
            ],
            [
              -119.24,
              46.06
            ],
            [
              -119.21,
              46.06
            ],
            [
              -119.2,
              46.07
            ],
            [
              -119.13,
              46.07
            ],
            [
              -119.1,
              46.09
            ],
            [
              -119.04,
              46.09
            ],
            [
              -119.0,
              46.07
            ],
            [
              -119.0,
              46.02
            ],
            [
              -119.01,
              46.0
            ],
            [
              -119.03,
              46.0
            ],
            [
              -119.04,
              45.99
            ],
            [
              -119.12,
              45.99
            ],
            [
              -119.14,
              45.97
            ],
            [
              -119.13,
              45.91
            ],
            [
              -119.15,
              45.89
            ],
            [
              -119.19,
              45.89
            ],
            [
              -119.2,
              45.9
            ],
            [
              -119.24,
              45.91
            ],
            [
              -119.26,
              45.93
            ],
            [
              -119.3,
              45.95
            ],
            [
              -119.32,
              45.95
            ],
            [
              -119.33,
              45.96
            ],
            [
              -119.37,
              45.96
            ],
            [
              -119.39,
              45.98
            ],
            [
              -119.4,
              45.98
            ],
            [
              -119.43,
              46.01
            ],
            [
              -119.43,
              46.03
            ],
            [
              -119.44,
              46.04
            ],
            [
              -119.43,
              46.07
            ],
            [
              -119.41,
              46.09
            ]
          ]
        ]
      }
    }
  ]
}
