{"current_plan":{"inputs":{"avg_moisture_pct":53.8,"evap_mm_h":0.5,"min_moisture_pct":8.0,"rain_mm_h":0.25,"solar_load":0.55},"mode":"deterministic","planned_rate_m3_h":0.0,"priority":"low","reasons":["Soil moisture is close to target; defer irrigation.","Reservoir safety floor reached; conserve water."],"recommended_window":"07:00-10:00","reservoir_pct":0.0,"should_irrigate":false},"export_type":"agriculture_planner_scenarios","ok":true,"scenarios":[{"id":1,"is_active":false,"name":"Dry Spell","plan":{"inputs":{"avg_moisture_pct":53.8,"evap_mm_h":0.9,"min_moisture_pct":8.0,"rain_mm_h":0.05,"solar_load":0.9},"mode":"deterministic","planned_rate_m3_h":0.0,"priority":"low","reasons":["Soil moisture is close to target; defer irrigation.","Reservoir safety floor reached; conserve water."],"recommended_window":"05:00-08:00","reservoir_pct":0.0,"scenario":"Dry Spell","should_irrigate":false},"projection_24h":{"hours":24,"projected_avg_moisture_pct":47.84,"projected_irrigation_m3":114.24,"projected_min_moisture_pct":3.0,"projected_reservoir_m3":0.0,"projected_reservoir_pct":0.0},"projection_48h":{"hours":48,"projected_avg_moisture_pct":44.56,"projected_irrigation_m3":247.58,"projected_min_moisture_pct":3.0,"projected_reservoir_m3":0.0,"projected_reservoir_pct":0.0},"series_48h":{"hours":48,"points":[{"avg_moisture_pct":53.8,"hour":0,"min_moisture_pct":8.0,"reservoir_pct":0.0},{"avg_moisture_pct":52.01,"hour":4,"min_moisture_pct":5.43,"reservoir_pct":0.0},{"avg_moisture_pct":51.0,"hour":8,"min_moisture_pct":3.48,"reservoir_pct":0.0},{"avg_moisture_pct":50.11,"hour":12,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":49.3,"hour":16,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":48.55,"hour":20,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":47.84,"hour":24,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":47.19,"hour":28,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":46.59,"hour":32,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":46.03,"hour":36,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":45.5,"hour":40,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":45.02,"hour":44,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":44.56,"hour":48,"min_moisture_pct":3.0,"reservoir_pct":0.0}],"projected_irrigation_m3":247.58,"step_hours":4},"weather":{"evap_mm_h":0.9,"rain_mm_h":0.05,"solar_load":0.9,"temp_c":24.0}},{"id":2,"is_active":true,"name":"Mixed Week","plan":{"inputs":{"avg_moisture_pct":53.8,"evap_mm_h":0.5,"min_moisture_pct":8.0,"rain_mm_h":0.25,"solar_load":0.55},"mode":"deterministic","planned_rate_m3_h":0.0,"priority":"low","reasons":["Soil moisture is close to target; defer irrigation.","Reservoir safety floor reached; conserve water."],"recommended_window":"07:00-10:00","reservoir_pct":0.0,"scenario":"Mixed Week","should_irrigate":false},"projection_24h":{"hours":24,"projected_avg_moisture_pct":53.37,"projected_irrigation_m3":43.89,"projected_min_moisture_pct":4.43,"projected_reservoir_m3":0.0,"projected_reservoir_pct":0.0},"projection_48h":{"hours":48,"projected_avg_moisture_pct":53.4,"projected_irrigation_m3":90.99,"projected_min_moisture_pct":3.0,"projected_reservoir_m3":0.0,"projected_reservoir_pct":0.0},"series_48h":{"hours":48,"points":[{"avg_moisture_pct":53.8,"hour":0,"min_moisture_pct":8.0,"reservoir_pct":0.0},{"avg_moisture_pct":53.45,"hour":4,"min_moisture_pct":7.18,"reservoir_pct":0.0},{"avg_moisture_pct":53.48,"hour":8,"min_moisture_pct":6.67,"reservoir_pct":0.0},{"avg_moisture_pct":53.52,"hour":12,"min_moisture_pct":6.16,"reservoir_pct":0.0},{"avg_moisture_pct":53.58,"hour":16,"min_moisture_pct":5.67,"reservoir_pct":0.0},{"avg_moisture_pct":53.27,"hour":20,"min_moisture_pct":4.89,"reservoir_pct":0.0},{"avg_moisture_pct":53.37,"hour":24,"min_moisture_pct":4.43,"reservoir_pct":0.0},{"avg_moisture_pct":53.49,"hour":28,"min_moisture_pct":3.99,"reservoir_pct":0.0},{"avg_moisture_pct":53.62,"hour":32,"min_moisture_pct":3.55,"reservoir_pct":0.0},{"avg_moisture_pct":53.35,"hour":36,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":53.5,"hour":40,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":53.24,"hour":44,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":53.4,"hour":48,"min_moisture_pct":3.0,"reservoir_pct":0.0}],"projected_irrigation_m3":90.99,"step_hours":4},"weather":{"evap_mm_h":0.5,"rain_mm_h":0.25,"solar_load":0.55,"temp_c":18.0}},{"id":3,"is_active":false,"name":"Wet Week","plan":{"inputs":{"avg_moisture_pct":53.8,"evap_mm_h":0.25,"min_moisture_pct":8.0,"rain_mm_h":1.0,"solar_load":0.35},"mode":"deterministic","planned_rate_m3_h":0.0,"priority":"low","reasons":["Soil moisture is close to target; defer irrigation.","Rain profile is active; let rainfall recover moisture first.","Reservoir safety floor reached; conserve water."],"recommended_window":"07:00-10:00","reservoir_pct":0.0,"scenario":"Wet Week","should_irrigate":false},"projection_24h":{"hours":24,"projected_avg_moisture_pct":65.75,"projected_irrigation_m3":0.0,"projected_min_moisture_pct":16.11,"projected_reservoir_m3":2.64,"projected_reservoir_pct":0.1},"projection_48h":{"hours":48,"projected_avg_moisture_pct":77.71,"projected_irrigation_m3":0.0,"projected_min_moisture_pct":24.22,"projected_reservoir_m3":5.28,"projected_reservoir_pct":0.2},"series_48h":{"hours":48,"points":[{"avg_moisture_pct":53.8,"hour":0,"min_moisture_pct":8.0,"reservoir_pct":0.0},{"avg_moisture_pct":55.79,"hour":4,"min_moisture_pct":9.35,"reservoir_pct":0.02},{"avg_moisture_pct":57.78,"hour":8,"min_moisture_pct":10.7,"reservoir_pct":0.04},{"avg_moisture_pct":59.78,"hour":12,"min_moisture_pct":12.06,"reservoir_pct":0.06},{"avg_moisture_pct":61.77,"hour":16,"min_moisture_pct":13.41,"reservoir_pct":0.08},{"avg_moisture_pct":63.76,"hour":20,"min_moisture_pct":14.76,"reservoir_pct":0.1},{"avg_moisture_pct":65.75,"hour":24,"min_moisture_pct":16.11,"reservoir_pct":0.12},{"avg_moisture_pct":67.75,"hour":28,"min_moisture_pct":17.46,"reservoir_pct":0.14},{"avg_moisture_pct":69.74,"hour":32,"min_moisture_pct":18.81,"reservoir_pct":0.16},{"avg_moisture_pct":71.73,"hour":36,"min_moisture_pct":20.17,"reservoir_pct":0.18},{"avg_moisture_pct":73.72,"hour":40,"min_moisture_pct":21.52,"reservoir_pct":0.2},{"avg_moisture_pct":75.72,"hour":44,"min_moisture_pct":22.87,"reservoir_pct":0.22},{"avg_moisture_pct":77.71,"hour":48,"min_moisture_pct":24.22,"reservoir_pct":0.24}],"projected_irrigation_m3":0.0,"step_hours":4},"weather":{"evap_mm_h":0.25,"rain_mm_h":1.0,"solar_load":0.35,"temp_c":14.0}},{"id":4,"is_active":false,"name":"Heatwave","plan":{"inputs":{"avg_moisture_pct":53.8,"evap_mm_h":1.1,"min_moisture_pct":8.0,"rain_mm_h":0.02,"solar_load":1.0},"mode":"deterministic","planned_rate_m3_h":0.0,"priority":"medium","reasons":["Soil moisture is close to target; defer irrigation.","Reservoir safety floor reached; conserve water."],"recommended_window":"05:00-08:00","reservoir_pct":0.0,"scenario":"Heatwave","should_irrigate":false},"projection_24h":{"hours":24,"projected_avg_moisture_pct":44.28,"projected_irrigation_m3":137.04,"projected_min_moisture_pct":3.0,"projected_reservoir_m3":0.0,"projected_reservoir_pct":0.0},"projection_48h":{"hours":48,"projected_avg_moisture_pct":38.72,"projected_irrigation_m3":302.36,"projected_min_moisture_pct":3.0,"projected_reservoir_m3":0.0,"projected_reservoir_pct":0.0},"series_48h":{"hours":48,"points":[{"avg_moisture_pct":53.8,"hour":0,"min_moisture_pct":8.0,"reservoir_pct":0.0},{"avg_moisture_pct":51.23,"hour":4,"min_moisture_pct":4.49,"reservoir_pct":0.0},{"avg_moisture_pct":49.61,"hour":8,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":48.13,"hour":12,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":46.75,"hour":16,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":45.47,"hour":20,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":44.28,"hour":24,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":43.18,"hour":28,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":42.15,"hour":32,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":41.2,"hour":36,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":40.31,"hour":40,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":39.49,"hour":44,"min_moisture_pct":3.0,"reservoir_pct":0.0},{"avg_moisture_pct":38.72,"hour":48,"min_moisture_pct":3.0,"reservoir_pct":0.0}],"projected_irrigation_m3":302.36,"step_hours":4},"weather":{"evap_mm_h":1.1,"rain_mm_h":0.02,"solar_load":1.0,"temp_c":29.0}}],"simulated":true}
