# Offdiagonal handoff v6.7 (2026-10-21)

Folder `handoff-v6.7-20261021` on `mbarbosa1/flatplanet`. Pin: `/offdiagonal-download/HANDOFF-v6.7-20261021-PIN.json`.
Inherits v6.6 at `8b9328c59d062754f17b3ab1ea78f30358a0a1c7` unchanged (Zeno's `admit_v066.py` still pins the older `095ad2f3`; update it).
This release answers Zeno's 21 Oct full audit.
Everything from earlier releases (weather, hurricanes from ATCF, health, markets, crypto, economy, energy) stays available unchanged in their own folders. Model, training, warning head and beta publication stay with Zeno.

## Files
- `warning-ledger.csv.gz`: every eligible place-time registered before its target, flagged or not (warning-ledger-v1). Alert budget 50 per run, tightest spread first; cluster by station/day. Outcome classes once resolved: caught, missed, false_alarm, correct_quiet, not_supported (fewer than 2 families), not_assessed, unresolved. No outcomes yet at freeze. Live: `/api/public/v1/warning-ledger`.
- `temperature-market-events.csv.gz`: the 19,030 verified temperature markets × 6 ensembles, each with its exact event (daily max, unit, bin), decision deadline (start of the local day) and availability clock. **Result: no probability could be formed.** Our ensemble captures keep only three lead times per run (+6h, +24h, +72h), so no single run covers a whole local day; and most markets predate ensemble history (from 10 Sep). Rows say why (`no_ensemble_members` or `no_single_run_covers_local_day`). Market price is null throughout: captured trader trades don't reach these markets before the deadline. Do not fill these in.
- `notflat-weather-subset.csv.gz`: 18,816 notflat.world urban-heat forecasts for 7 cities with our station readings (London, Tokyo, Delhi, Mumbai, New York, Lagos, São Paulo), each known (observed clock) before its target, in °C. 9,408 carry a point value. This is the whole usable slice of what's mirrored; notflat's forecast list can't be filtered, so more needs their per-task replay route.
- `zeno30-paired.json.gz`: blind first forecast vs later revision for every Zeno30 initial forecast (289), 43 revised, 22 resolved, 0 revised-and-scorable so far. Brier for binary, log score for bins. Descriptive only (arm=control). Live: `/api/public/v1/zeno30/paired`.
- `forecaster-report-card.json.gz`: per forecaster, domain and horizon: count, mean absolute error, bias, interval coverage. Forecaster skill only; Zeno's contribution not evaluated. Live: `/api/public/v1/forecaster-scores`.

## Rules
- Missing stays null, never zero. Outcomes and ledger labels are never model inputs.
- Market crowd = one forecaster. A probability only from a forecaster's own members, never a fitted curve.
- Buoy, river and storm-outlook lanes stay live-only until a versioned admission receipt.
