{
  "purpose": "Draft blog figures only; no website build or publication",
  "sources": {
    "data/research/nov1-rain-pulse-20261105/rain-pulse-analogues.json": "8330878ca7402bbb80bf723cd7a9f41c383f48c93c96b61174c6c75ce8355ba2",
    "data/research/nov1-rain-pulse-20261105/pulse-forecast-calibration.json": "cc0f577c94753cb4c66c35a537a2e372f25312aa3f89ed0b417b5bfc793ce9fe",
    "data/research/nov1-rain-pulse-20261105/tide-phase-screen.json": "d867baa71b25692168492745bab6f500f417b4532f7a22aeda11c6203210225d",
    "data/research/nov1-rain-pulse-20261105/long-window-study.json": "b9dbbab46731cc09317192b8d3a3423eecf08c133c6d06cacc81f31111642937",
    "data/research/nov1-rain-pulse-20261105/nov15-outlook-snapshot.json.gz": "dba3046c1d84157634c2b2b00e828c14c4c40a720624ff147ea7b348a2d34dec",
    "data/research/nov1-rain-pulse-20261105/nov6-afd-snapshot.json": "0a5024c985e6c1dff67eb1c4fd8c5313088a4d011714c09ff5c1e4ff90bc1299",
    "data/research/nov1-rain-pulse-20261105/local-gauge-check/comparison.json": "bdabc3724fc0747342cc7c5785068a21ab62168b2a0fe027d407b20bd682952b",
    "data/research/nov1-rain-pulse-20261105/local-gauge-check/2025-11-2026-04-cdmc1.csv.gz": "f3be95a5188d42c1383711d701b31dd6ba19cc7ceed62a86863b2719d7968568",
    "data/research/nov1-rain-pulse-20261105/local-gauge-check/2026-10-cdmc1.csv.gz": "0425e29f14095e5b9ac3f6d0604d576002e3d2e5aca5b99ef1c9eff9dd66b203",
    "data/research/nov1-rain-pulse-20261105/local-gauge-check/2026-11-01-cdmc1.csv.gz": "b704e6505ba1aa855c5134cf1104a9ffbefbf31959dac7d79575d6141b471141",
    "data/research/nov1-rain-pulse-20261105/sanc1-20261020-1104.csv.gz": "bf381826f2e51491e5f3eb68c76a24603075d99eb6500297accfab4ed8d91e0b",
    "data/research/data-page-refresh-20261105/airport.gz": "d57256a9483c118c604be4519c1aae1829e2dc4be239d86999f83e134758ade0",
    "data/research/kelvin-improve-v4-20261024/audit/water-600-days.json.gz": "0470bbbacfdcc00b0c2f761d890d49e8e25477d4795188d9574947910d232cf2",
    "data/research/data-page-refresh-20261105/live-uc-davis.gz": "71a01a9d3024cbee8ef348e8d852c3471f591dc919357dcc81dee58044d0707c",
    "data/research/kelvin-continued-20261103/tidal-prediction-features/noaa-9410580-hourly-20251104-20261104.json.gz": "2cb6d46bc4a737553ee4cd66780095eab3d8cc2699681873ba2b97f7da9958fa",
    "data/research/data-page-refresh-20261105/live-noaa.gz": "ed73a7869ff67106385e5148d87e161524cbd4dbc29d9d53476bca6ce39ee765",
    "public/data/tides/daily-highs.json": "e546e34e0dc39bf07272ea669bf97c4a6113d2078686343edc110411348791d7"
  },
  "charts": [
    "rain-across-tide-turn",
    "november-1-pulse",
    "local-rain-gauges",
    "four-pulse-timelines",
    "rain-amount-screen",
    "forecast-tide-calendar",
    "event-tide-rain-pulse-2025-11-15",
    "event-tide-rain-pulse-2025-11-21",
    "event-tide-rain-pulse-2025-12-24",
    "event-tide-rain-pulse-2026-11-01"
  ],
  "eventTimelines": [
    {
      "chart": "event-tide-rain-pulse-2025-11-15",
      "event": "2025-11-15",
      "rainOnsetUTC": "2025-11-14T18:17:41+00:00",
      "rainFirst6hInches": 0.04,
      "rainFirst24hInches": 1.85,
      "pulseStartUTC": "2025-11-15T08:30:00+00:00",
      "pulsePeakUTC": "2025-11-15T13:00:00+00:00",
      "pulseEndUTC": "2025-11-16T03:30:00+00:00",
      "pulsePeakRiseInches": 5.853,
      "predictedHighUTC": "2025-11-15T14:00:00+00:00",
      "waterPairsPlotted": 721
    },
    {
      "chart": "event-tide-rain-pulse-2025-11-21",
      "event": "2025-11-21",
      "rainOnsetUTC": "2025-11-20T23:41:52+00:00",
      "rainFirst6hInches": 0.59,
      "rainFirst24hInches": 1.02,
      "pulseStartUTC": "2025-11-21T04:15:00+00:00",
      "pulsePeakUTC": "2025-11-21T15:15:00+00:00",
      "pulseEndUTC": "2025-11-21T18:20:00+00:00",
      "pulsePeakRiseInches": 5.577,
      "predictedHighUTC": "2025-11-21T17:00:00+00:00",
      "waterPairsPlotted": 721
    },
    {
      "chart": "event-tide-rain-pulse-2025-12-24",
      "event": "2025-12-24",
      "rainOnsetUTC": "2025-12-24T07:41:34+00:00",
      "rainFirst6hInches": 0.04,
      "rainFirst24hInches": 1.26,
      "pulseStartUTC": "2025-12-24T15:20:00+00:00",
      "pulsePeakUTC": "2025-12-24T17:00:00+00:00",
      "pulseEndUTC": "2025-12-24T21:05:00+00:00",
      "pulsePeakRiseInches": 4.977,
      "predictedHighUTC": "2025-12-24T19:00:00+00:00",
      "waterPairsPlotted": 721
    },
    {
      "chart": "event-tide-rain-pulse-2026-11-01",
      "event": "2026-11-01",
      "rainOnsetUTC": "2026-11-01T02:55:46+00:00",
      "rainFirst6hInches": 0.67,
      "rainFirst24hInches": 0.78,
      "pulseStartUTC": "2026-11-01T10:00:00+00:00",
      "pulsePeakUTC": "2026-11-01T10:55:00+00:00",
      "pulseEndUTC": "2026-11-01T14:30:00+00:00",
      "pulsePeakRiseInches": 4.557,
      "predictedHighUTC": "2026-11-01T12:05:00+00:00",
      "waterPairsPlotted": 721
    }
  ],
  "rainTideOverlap": [
    {
      "event": "2025-11-15",
      "firstRainOnIncomingTide": false,
      "rainBeforePeakInches": 1.03,
      "rainOnIncomingTideBeforePeakInches": 0.44,
      "firstIncomingRainUTC": "2025-11-15T00:24:35+00:00",
      "lastRainBeforePeakUTC": "2025-11-15T11:08:17+00:00",
      "pulseEndHoursAfterPredictedHigh": 13.5
    },
    {
      "event": "2025-11-21",
      "firstRainOnIncomingTide": true,
      "rainBeforePeakInches": 1.02,
      "rainOnIncomingTideBeforePeakInches": 0.7,
      "firstIncomingRainUTC": "2025-11-20T23:41:52+00:00",
      "lastRainBeforePeakUTC": "2025-11-21T11:50:14+00:00",
      "pulseEndHoursAfterPredictedHigh": 1.33
    },
    {
      "event": "2025-12-24",
      "firstRainOnIncomingTide": true,
      "rainBeforePeakInches": 0.12,
      "rainOnIncomingTideBeforePeakInches": 0.12,
      "firstIncomingRainUTC": "2025-12-24T07:41:34+00:00",
      "lastRainBeforePeakUTC": "2025-12-24T15:27:20+00:00",
      "pulseEndHoursAfterPredictedHigh": 2.08
    },
    {
      "event": "2026-11-01",
      "firstRainOnIncomingTide": false,
      "rainBeforePeakInches": 0.78,
      "rainOnIncomingTideBeforePeakInches": 0.43,
      "firstIncomingRainUTC": "2026-11-01T04:31:35+00:00",
      "lastRainBeforePeakUTC": "2026-11-01T10:03:53+00:00",
      "pulseEndHoursAfterPredictedHigh": 2.42
    }
  ],
  "rainTideOverlapMethod": "Corona del Mar positive cumulative-gauge increments from onset through pulse peak. Incoming tide means NOAA predicted water is higher one hour after the increment than one hour before it; pulse end uses the sustained moving-one-hour rise above +2 inches. Rain across tide turn is conceptual and not a causal attribution.",
  "notes": "NWS outlook is as of 2026-11-06 4:27 a.m. PST. Forecast calendar uses a retained ECMWF-based run, not a consensus forecast. All times Pacific, accounting for DST. Corona del Mar onset and rain amount sensitivity are in the comparison artifact; complete rain/tide sequences are in local-gauge-check/rain-tide-sequence.json."
}
