Skip to content

v2.4.0

Choose a tag to compare

@ivargr ivargr released this 05 Oct 10:56
· 97 commits to master since this release
7c95b2a

Highlights

  • Backtest specifications: new endpoints for defining backtests and running them across multiple models, with parameter defaults and metadata exposed, and target column selection for stored datasets.
  • Marketplace model management via chap-admin: chap install moved into chap-admin, which now installs, updates (update-all to stable versions) and uninstalls marketplace models and registers them from the running service.
  • Alerts: alert policies and alerts are persisted, behind a release gate.
  • Prediction setups: prediction-setup API routes are promoted out of experimental, and /v1/analytics/make-prediction is deprecated in their favour.

Breaking changes

  • chap install has moved to chap-admin (#637).
  • A changed model revision under an existing version label is now refused (#616).

Features

  • Hyperparameter optimisation metadata on evaluations (#618)
  • Metric unit and target exposed in the metrics API (#603)
  • Configured model health status exposed, worked out per name and version (#656, #646)
  • Job failure reason reported in GET /v1/jobs (#654)
  • Download of original job requests (#625)
  • dryRun for make-dataset to check data before import (#644)
  • Datasets created manually are flagged (#639)
  • Prediction setup id included in prediction responses (#607)
  • Model output streamed to the debug log as it arrives (#587)
  • valid_hpo_objective replaced with a proper_scoring_rule flag (#641)

Bug Fixes

  • Honor the requested stride for weekly backtest imports (#692)
  • Keep /docs, /redoc and /openapi.json public when CHAP_API_TOKEN is set (#688)
  • Keep flat HPO metadata when loading an evaluation from file (#672)
  • Remove the naive predictor's shared CSV round-trip (#678)
  • Send chapkit user options flat and fail when the service drops them; tell converted values apart from dropped ones (#640, #658)
  • Count a chapkit service's stored covariates in the unused-covariate warning (#657)
  • Handle concurrent chapkit registrations racing on model template insert (#648)
  • Make startup alembic upgrades persist and replay safely (#638)
  • Record the train cutoff and honour n_retrain in dry runs (#590)
  • Treat a redis connect timeout as redis being unavailable (#653)
  • Disable the gunicorn control socket in the read-only container (#649)
  • Create the worker data directories in Dockerfile.inla (#651)
  • Ship the sanity-check-model example dataset in the package (#642)
  • Make export-metrics --output-file a named flag (#643)
  • Remove the ewars_plus n_periods override in run_backtest (#636)

Other

  • EWARS dev overlay pinned to 1.0.4
  • Dependency updates (pydantic, cyclopts 5, optuna 5, uvicorn, scikit-learn, altair, matplotlib, docker, and others)