Migration adds tables that existed in models/ but were never
included in alembic history:
- ai_ops: device_health_scores, anomaly_detections, diagnostic_reports,
maintenance_predictions, ops_insights
- energy_strategy: tou_pricing, tou_pricing_periods, energy_strategies,
strategy_executions, monthly_cost_reports
- weather: weather_data, weather_config
- prediction: prediction_tasks, prediction_results, optimization_schedules
Without this migration, fresh deploys would 500 on these endpoints:
- /api/v1/ai-ops/health, /ai-ops/dashboard
- /api/v1/strategy/pricing
- /api/v1/prediction/forecast
- /api/v1/weather/current
Discovered during Z-Park demo deployment on xie_openclaw1.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
New endpoints:
- GET /api/v1/version — returns VERSIONS.json (no auth required)
For field engineers to check platform version from login page
- GET /api/v1/kpi/solar — returns PR, self-consumption rate,
equivalent utilization hours, and daily revenue
Handles station-level vs device-level data deduplication
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>