Skip to content

v0.2.0

Pre-release
Pre-release

Choose a tag to compare

@Jameswlepage Jameswlepage released this 12 Jun 17:54
· 3 commits to main since this release
c5a1a16

Second release of ForecastOps — the experiment loop and diagnostics layer on top of the 0.1.0 capture/evaluate foundation.

Added

  • fops.backtest(...) — evaluate a rolling-origin forecast panel as one grouped backtest, with per-cutoff and aggregate (mean/std) metrics.
  • Experiment groupscapture(group="...") tags related runs into a named group, with a Groups view and a group detail page showing per-metric mean ± std and stability across runs.
  • New metrics — sMAPE (scale-free ratio) and pinball/quantile loss (averaged over yhat_p<level> columns).
  • Regime slicing — metrics sliced by any categorical columns kept via a schema's extra_columns (region, holiday_flag, event_type, …), so error-by-regime breakdowns appear automatically.
  • Diagnostics cockpit on the run detail page — residual distribution, error by horizon, per-series worst offenders, and per-regime breakdowns.

Changed

  • The Nixtla adapter parses <model>-lo-<level>/<model>-hi-<level> prediction-interval columns into interval bounds and per-level quantile columns, so coverage, interval width, and pinball loss work for statsforecast/neuralforecast outputs.

Existing local stores are migrated in place to add the group columns. See CHANGELOG.md for details.

⚠️ Pre-release: still on the 0.x line; APIs may change.