June 18, 2026
Generated lab notebook from daily_summary, plan_journal, plan_delivery_log, and setpoint audit data. It is intentionally chronological and may include in-progress cycles before validation.
Planner Execution Ledger
Planner checkpoints can acknowledge that the active plan is still suitable without writing a new public plan ID. Those no-change decisions are part of the audit trail.
7
3
4
0
| Event | Delivered | Type | Status | Note |
|---|---|---|---|---|
| End-of-day review and reset | 00:17 | MIDNIGHT | plan_written | Wrote public plan iris-20260618-0017. Resolved 00:19 MDT. |
| Morning planning cycle | 05:36 | SUNRISE | plan_written | Wrote public plan iris-20260618-0536. Resolved 05:37 MDT. |
| Solar peak planning checkpoint | 13:06 | SOLAR_MAX | acked | Acknowledged: SOLAR_MAX no-change: live solar is high (~1031 W/m2, above the 14:00 forecast 914 W/m2), but indoor climate is still inside controller bands (81.1F vs temp_high 83.8F; VPD 1.07 kPa vs vpd_high 1.22 kPa; dew margin 10.4F; IDLE). Existing SUNRISE plan already has compliance-first hot-dry posture active/queued: fog_escalation_kpa 0.15, mister_pulse_gap_s 16s, engage 0.95, all-zone 1.10, water budget 300 gal, direct wet stress override enabled, all fans at high enabled... Resolved 13:07 MDT. |
| Peak Stress | 15:02 | TRANSITION | acked | Acknowledged: Peak-stress transition checked live climate/equipment/active plan/setpoints. Conditions are tracking the existing hot-dry posture: temp 82.1F is below temp_high 85.1F, VPD 1.21 kPa is only 0.01 above vpd_high with dew margin 10.6F, and the controller is in SEALED_MIST_FOG recovery. Current wet/fog tunables are already compliance-first and near/at the aggressive hot-dry floor (mister_engage 0.95, mister_all 1.10, pulse gap 16s, fog_escalation 0... Resolved 15:03 MDT. |
| Decline | 19:34 | TRANSITION | acked | Acknowledged: Decline transition checked: current greenhouse is IDLE and safe at 78.6F, house VPD 0.90 kPa within the active band, RH 74%, dew margin 9.1F, with vent/fans/fog/heaters off. Existing plan already schedules the evening unwind at 21:30 (wider mist gap and fog escalation back to 0.4), while current east-zone dry outlier means an immediate aggressive unwind could prematurely suppress recovery. No tunable change needed. Resolved 19:35 MDT. |
| Forecast deviation | 19:57 | FORECAST_DEVIATION | acked | Acknowledged: FORECAST_DEVIATION assessed as cloud-cover forecast error/weather nowcasting variance after sunset, not a live control miss. Current climate is safe: 80.0F, VPD 0.99 kPa near vpd_high 0.98, RH 72%, dew margin 9.7F, mode IDLE. Equipment state shows no cooling/heating/fog running; only west mister reported on briefly while wet-assist posture is already enabled. Higher clouds reduce solar/heat load rather than requiring added cooling or moisture tuning. No setpoint change needed. Resolved 19:57 MDT. |
| Evening planning cycle | 20:35 | SUNSET | plan_written | Wrote public plan iris-20260618-2035. Resolved 20:37 MDT. |
🌅 Morning Cycle (12:19 AM) — iris-20260618-0017
validated
4/10
band_track_fraction, cold_vent_guard_delta_f, cool_exit_hysteresis_f, cool_stage2_exit_hysteresis_f, cool_stage2_over_high_f, direct_wet_stress_latest_hour, direct_wet_stress_min_dew_margin_f, direct_wet_stress_vpd_margin_kpa ...
Reflection
Validating previous cycle: iris-20260617-0533
Previous hypothesis: SUNRISE plan for Wednesday 2026-06-17. I evaluated the active early replacement plan iris-20260617-0105 at 5/10; the deterministic anchor was 1, and the gap is intentional but important: I gave limited credit for good temperature/dew safety and no heat/cold/VPD-low stress in the short pre-sunrise segment, while the anchor correctly penalized 261 guardrail events, 9 held guardrail events, and realization risk. Yesterday 2026-06-16 scored 64.1 with 60.4% compliance; VPD was the bottleneck at 61.1% vs 91.7% temp compliance, and stress was dominated by 9.15h VPD-high plus 1.95h heat. Cost was USD 3.18, below the 7d average USD 4.60, driven mostly by electric cooling/fog USD 2.22 and water USD 0.89 rather than gas USD 0.07; water use 183 gal was below the 7d average 497 gal, so under-spending was not climate success while VPD remained high. Current state is safe but about to ramp: 70… Result: Evaluated at SUNRISE replacement after the completed midnight-to-dawn segment. Partial/day score is 40.1 with 30.7% compliance, 100.0% temp compliance, 30.7% VPD compliance, 3.8h VPD-high stress so far, no heat/cold/VPD-low stress, dp margin min 10.0F and no dp-risk hours. Yesterday’s full day (2026-06-17) scored 48.9 with 41.3% compliance, temp 92.6%, VPD 42.1%, 15.33h stress dominated by 13.6h VPD-high plus 1.73h heat, cost USD 3.14 below 7d USD 4.68, water 343 gal below 7d 506 gal. The midnight plan preserved temperature/dew safety but did not resolve the main dry-axis bottleneck; the hot-dry window has not yet occurred, and realization alerts remain open for several moisture/fog setpoints. Score is 4/10 because safety and temperature were good, but VPD compliance is already poor and setpoint confirmation is still the realization risk. Score: 4/10
Hypothesis
Testing: Hot-dry realization recovery: keep bounded wet/fog intent open through Thu/Fri peaks and judge by VPD compliance, hot-dry vent-mist utilization, setpoint confirmation, and dp safety, not by low cost alone. Expected outcome: For Thu 2026-06-18 target >50% VPD compliance, >85% temp compliance, VPD-high stress below Wednesday’s 13.6h full-day value, dp-risk 0h, no VPD-low carryover, and fewer vent_vpd_moisture_gap/setpoint_unconfirmed repeats.
Setpoints
Thursday June 18
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 00:20 | hyst 0.19 | Post-midnight stable IDLE with 11F dew margin but VPD at the |
| 05:30 | hyst 0.19 | Pre-dawn to sunrise ramp: clear dry forecast and historical |
| 08:30 | hyst 0.18500000000000003 | Morning hot-dry ramp: prioritize VPD compliance and vent-mis |
| 12:00 | hyst 0.18500000000000003 | Peak Thu heat/VPD overlap inside fog window: keep maximum sa |
| 17:15 | hyst 0.19 | Fog window has closed but evening VPD remains forecast high; |
| 21:30 | hyst 0.19 | Late evening: return toward guarded overnight posture after |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 00:20 | s2 1.7075; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 21; engage 0.8200000000000001; all 1.02; pulse 33.75; gap 33.75; wt 1.7 | Post-midnight stable IDLE with 11F dew margin but VPD at the |
| 05:30 | s2 1.5574999999999999; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 21; engage 0.8200000000000001; all 1.02; pulse 41.25; gap 22.5; wt 1.8333333333333335 | Pre-dawn to sunrise ramp: clear dry forecast and historical |
| 08:30 | s2 1.4665; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 21; engage 0.8200000000000001; all 1; pulse 56.25; gap 17.25; wt 2.0133333333333336 | Morning hot-dry ramp: prioritize VPD compliance and vent-mis |
| 12:00 | s2 1.446; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 21; engage 0.8200000000000001; all 1; pulse 60; gap 16.5; wt 2.0533333333333337 | Peak Thu heat/VPD overlap inside fog window: keep maximum sa |
| 17:15 | s2 1.604; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 21; engage 0.8200000000000001; all 1.02; pulse 48.75; gap 21; wt 1.9133333333333336 | Fog window has closed but evening VPD remains forecast high; |
| 21:30 | s2 1.7575; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 21; engage 0.8200000000000001; all 1.02; pulse 33.75; gap 37.5; wt 1.7 | Late evening: return toward guarded overnight posture after |
Friday June 19
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 05:30 | hyst 0.19 | Friday dawn repeats hot-dry ramp; open moisture early but ke |
| 09:00 | hyst 0.18500000000000003 | Friday hot-dry morning/peak: same compliance-first posture b |
| 17:30 | hyst 0.19 | Friday evening recovery: taper only modestly while VPD remai |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 05:30 | s2 1.54; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 21; engage 0.8200000000000001; all 1.02; pulse 41.25; gap 22.5; wt 1.8333333333333335 | Friday dawn repeats hot-dry ramp; open moisture early but ke |
| 09:00 | s2 1.4665; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 21; engage 0.8200000000000001; all 1; pulse 56.25; gap 17.25; wt 2.0133333333333336 | Friday hot-dry morning/peak: same compliance-first posture b |
| 17:30 | s2 1.6335; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 21; engage 0.8200000000000001; all 1.02; pulse 45; gap 24; wt 1.8533333333333335 | Friday evening recovery: taper only modestly while VPD remai |
Saturday June 20
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 02:30 | hyst 0.19 | Saturday pre-dawn forecast turns humid/cool with VPD near/be |
| 09:30 | hyst 0.18500000000000003 | Saturday potentially extreme hot-dry ramp: maximum safe wet/ |
| 18:30 | hyst 0.19 | Saturday evening: keep recovery available through dry tail b |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 02:30 | s2 1.79; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 19; engage 0.8200000000000001; all 1.02; pulse 33.75; gap 41.25; wt 1.7 | Saturday pre-dawn forecast turns humid/cool with VPD near/be |
| 09:30 | s2 1.4429999999999998; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 21; engage 0.8200000000000001; all 1; pulse 63.75; gap 15.75; wt 2.0933333333333337 | Saturday potentially extreme hot-dry ramp: maximum safe wet/ |
| 18:30 | s2 1.66; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 21; engage 0.8200000000000001; all 1.02; pulse 48.75; gap 26.25; wt 1.8666666666666667 | Saturday evening: keep recovery available through dry tail b |
Changed secondary parameters:
| Time | Parameter | Change |
|---|---|---|
| 00:20 | band_track_fraction | initial 0.5 |
| 00:20 | cold_vent_guard_delta_f | initial 8 |
| 00:20 | cool_stage2_exit_hysteresis_f | initial 1 |
| 00:20 | direct_wet_stress_min_dew_margin_f | initial 8 |
| 00:20 | direct_wet_stress_vpd_margin_kpa | initial 0.05 |
| 00:20 | dwell_gate_ms | initial 210000 |
| 00:20 | enthalpy_close | initial 1 |
| 00:20 | enthalpy_open | initial -2 |
| 00:20 | fog_escalation_kpa | initial 0.25 |
| 00:20 | heat_hysteresis | initial 1.1 |
| 00:20 | min_fog_off_s | initial 60 |
| 00:20 | min_fog_on_s | initial 63.75 |
| 00:20 | mist_backoff_s | initial 600 |
| 00:20 | mist_max_closed_vent_s | initial 120 |
| 00:20 | mist_thermal_relief_s | initial 90 |
| 00:20 | mister_all_delay_s | initial 75 |
| 00:20 | mister_engage_delay_s | initial 37.5 |
| 00:20 | mister_water_budget_gal | initial 260 |
| 00:20 | night_vpd_bias_kpa | initial 0 |
| 00:20 | outdoor_staleness_max_s | initial 600 |
| 00:20 | sw_dwell_gate_enabled | initial 1 |
| 00:20 | sw_fog_closes_vent | initial 1 |
| 00:20 | sw_mister_closes_vent | initial 0 |
| 00:20 | sw_summer_vent_enabled | initial 1 |
| 00:20 | temp_hysteresis | initial 1.6 |
| 00:20 | vent_exchange_fraction | initial 0.3 |
| 00:20 | vent_prefer_dp_delta_f | initial 3 |
| 00:20 | vent_prefer_temp_delta_f | initial 4 |
| 00:20 | vpd_watch_dwell_s | initial 52.5 |
| 05:30 | fog_escalation_kpa | 0.25 → 0.22 |
| 05:30 | min_fog_off_s | 60 → 42 |
| 05:30 | min_fog_on_s | 63.75 → 70.5 |
| 05:30 | mister_water_budget_gal | 260 → 280 |
| 08:30 | dwell_gate_ms | 210000 → 195000 |
| 08:30 | fog_escalation_kpa | 0.22 → 0.15 |
| 08:30 | min_fog_off_s | 42 → 33.6 |
| 08:30 | min_fog_on_s | 70.5 → 73.65 |
| 08:30 | mister_all_delay_s | 75 → 70.5 |
| 08:30 | mister_engage_delay_s | 37.5 → 35.25 |
| 08:30 | mister_water_budget_gal | 280 → 300 |
| 08:30 | temp_hysteresis | 1.6 → 1.51 |
| 08:30 | vpd_watch_dwell_s | 52.5 → 48.75 |
| 12:00 | min_fog_off_s | 33.6 → 32.4 |
| 12:00 | min_fog_on_s | 73.65 → 74.1 |
| 17:15 | dwell_gate_ms | 195000 → 210000 |
| 17:15 | fog_escalation_kpa | 0.15 → 0.25 |
| 17:15 | min_fog_off_s | 32.4 → 39.6 |
| 17:15 | min_fog_on_s | 74.1 → 71.4 |
| 17:15 | mister_all_delay_s | 70.5 → 75 |
| 17:15 | mister_engage_delay_s | 35.25 → 37.5 |
| 17:15 | temp_hysteresis | 1.51 → 1.6 |
| 17:15 | vpd_watch_dwell_s | 48.75 → 52.5 |
| 21:30 | direct_wet_stress_min_dew_margin_f | 8 → 9 |
| 21:30 | min_fog_off_s | 39.6 → 66 |
| 21:30 | min_fog_on_s | 71.4 → 61.5 |
| 21:30 | mister_water_budget_gal | 300 → 260 |
| 05:30 | direct_wet_stress_min_dew_margin_f | 9 → 8 |
| 05:30 | fog_escalation_kpa | 0.25 → 0.22 |
| 05:30 | min_fog_off_s | 66 → 42 |
| 05:30 | min_fog_on_s | 61.5 → 70.5 |
| 05:30 | mister_water_budget_gal | 260 → 280 |
| 09:00 | dwell_gate_ms | 210000 → 195000 |
| 09:00 | fog_escalation_kpa | 0.22 → 0.15 |
| 09:00 | min_fog_off_s | 42 → 33.6 |
| 09:00 | min_fog_on_s | 70.5 → 73.65 |
| 09:00 | mister_all_delay_s | 75 → 70.5 |
| 09:00 | mister_engage_delay_s | 37.5 → 35.25 |
| 09:00 | mister_water_budget_gal | 280 → 300 |
| 09:00 | temp_hysteresis | 1.6 → 1.51 |
| 09:00 | vpd_watch_dwell_s | 52.5 → 48.75 |
| 17:30 | dwell_gate_ms | 195000 → 210000 |
| 17:30 | fog_escalation_kpa | 0.15 → 0.25 |
| 17:30 | min_fog_off_s | 33.6 → 44.4 |
| 17:30 | min_fog_on_s | 73.65 → 69.6 |
| 17:30 | mister_all_delay_s | 70.5 → 75 |
| 17:30 | mister_engage_delay_s | 35.25 → 37.5 |
| 17:30 | mister_water_budget_gal | 300 → 280 |
| 17:30 | temp_hysteresis | 1.51 → 1.6 |
| 17:30 | vpd_watch_dwell_s | 48.75 → 52.5 |
| 02:30 | direct_wet_stress_min_dew_margin_f | 8 → 10 |
| 02:30 | min_fog_off_s | 44.4 → 72 |
| 02:30 | min_fog_on_s | 69.6 → 59.25 |
| 02:30 | mister_water_budget_gal | 280 → 220 |
| 09:30 | direct_wet_stress_min_dew_margin_f | 10 → 8 |
| 09:30 | dwell_gate_ms | 210000 → 195000 |
| 09:30 | fog_escalation_kpa | 0.25 → 0.15 |
| 09:30 | min_fog_off_s | 72 → 31.2 |
| 09:30 | min_fog_on_s | 59.25 → 74.55 |
| 09:30 | mister_all_delay_s | 75 → 70.5 |
| 09:30 | mister_engage_delay_s | 37.5 → 35.25 |
| 09:30 | mister_water_budget_gal | 220 → 300 |
| 09:30 | temp_hysteresis | 1.6 → 1.51 |
| 09:30 | vpd_watch_dwell_s | 52.5 → 48.75 |
| 18:30 | direct_wet_stress_min_dew_margin_f | 8 → 9 |
| 18:30 | dwell_gate_ms | 195000 → 210000 |
| 18:30 | fog_escalation_kpa | 0.15 → 0.25 |
| 18:30 | min_fog_off_s | 31.2 → 48 |
| 18:30 | min_fog_on_s | 74.55 → 68.25 |
| 18:30 | mister_all_delay_s | 70.5 → 75 |
| 18:30 | mister_engage_delay_s | 35.25 → 37.5 |
| 18:30 | temp_hysteresis | 1.51 → 1.6 |
| 18:30 | vpd_watch_dwell_s | 48.75 → 52.5 |
🌅 Morning Cycle (5:37 AM) — iris-20260618-0536
validated
4/10
band_track_fraction, cold_vent_guard_delta_f, cool_exit_hysteresis_f, cool_stage2_exit_hysteresis_f, cool_stage2_over_high_f, direct_wet_stress_latest_hour, direct_wet_stress_min_dew_margin_f, direct_wet_stress_vpd_margin_kpa ...
Reflection
Validating previous cycle: iris-20260617-0533
Result: SUNSET evaluation for Thu 2026-06-18: window score 46.7 with 39.1% compliance, temp compliance 81.8%, VPD compliance 39.1%, stress dominated by 5.45h VPD-high plus 0.11h heat, no cold or VPD-low stress. Full-day score 52.3, temp compliance 98.9%, VPD compliance 47.3%, total stress 10.79h almost entirely VPD-high. Cost USD 4.12 vs 7d USD 3.79, driven mostly by electric cooling/fog USD 2.57 and water USD 1.22, with gas USD 0.33. Dew safety held: dp margin min 8.1F, dp-risk 0h. The plan preserved safety and temperature overall and VENT_COOL_FOG_ASSIST/VENT_COOL_MIST_ASSIST improved VPD error in response priors, but the primary VPD-compliance goal failed; setpoint realization and band-device divergence remained key risks, and zone spread remained large. Score: 4/10
New finding: On 85-90F clear dry days, vent-mist/fog assist can improve immediate VPD error while still failing daily VPD compliance if realization drift and zone spread persist; keep evening recovery wet-assist available only while VPD is still above band and dew margin is safe, but carry forward realization proof and zone-spread diagnostics as first-class success criteria. → Added to Lessons Learned
Hypothesis
Testing: Hot-dry realization proof: keep bounded wet/fog ClimateIntent open through the Thu/Fri/Sat dry peaks and judge success by VPD compliance, vent-mist/fog utilization, setpoint confirmation, and dew safety, not by low cost/water. Expected outcome: For 2026-06-18, keep temp compliance above 90%, improve VPD compliance above yesterday’s 42.1% if setpoints confirm, keep dp-risk at 0h and cost below about USD 5 despite higher mist/fog use.
Conditions
87.0°F
12.0%
918.0 W/m²
1.0%
Clear hot-dry Thursday after safe but dry-biased midnight segment. Forecast VPD has known positive bias (~1.2 kPa), but corrected afternoon VPD remains well above band. Current state: 65.2F, VPD 0.66 kPa, RH 69%, dew margin 10.4F, IDLE/heat1. Context degraded: greenhouse playbook mirror unavailable, knowledge/lesson semantic retrieval missing OPENAI_API_KEY, validate-plan-coverage missing, and static site context missing.
Expected stress windows
Keep wet assist band-coupled: mister_engage near vpd_high+0.05, mister_all near vpd_high+0.20, mist duty 55-60%, fog escalation 0.15 during firmware-safe fog window, wet cutoff through 21:00, low resource sensitivity until actual VPD recovery.
Use 60 min thermal lead and solar precooling; accept some physics-limited hot miss near outdoor 87F while keeping vent-mist assist available.
Repeat compliance-first moisture/fog posture on another 89F, low-RH, high-solar day and delay taper until observed VPD recovery.
Saturday may reach upper 90s with very low RH; hold maximum safe wet/fog availability and treat heat as physically constrained by ventilation capacity.
Parameter rationale
Keep first-stage wet assist eligible near the dispatcher VPD-high edge whenever safety gates are healthy.
Escalate all-zone mist early enough during the dry ramp and reduce localized dry outliers versus the prior day.
Improve VPD recovery during hot-dry VENTILATE if setpoint confirmation and fog gating realize correctly.
Prevent water/electric optimization from spacing pulses too far apart during safe VPD-high recovery.
Keep water budget from limiting stress recovery during the peak window.
Avoid adding vent/heat whipsaw while preserving safety preemption and active VPD response.
Setpoints
Thursday June 18
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 05:45 | hyst 0.1975 | Dawn is safe and slightly cool with VPD in band; prepare for |
| 08:30 | hyst 0.18250000000000002 | Morning solar ramp begins; open band-coupled moisture and fo |
| 12:00 | hyst 0.17750000000000002 | Peak solar and hot-dry VENTILATE risk; prioritize VPD recove |
| 15:00 | hyst 0.17750000000000002 | Late-afternoon dry peak persists; do not unwind moisture agg |
| 17:30 | hyst 0.1925 | Fog window has ended but outdoor VPD remains high; keep boun |
| 21:30 | hyst 0.20750000000000002 | Night taper: fog blocked and disease risk rises later; prese |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 05:45 | s2 1.7200000000000002; cool_exit 1.78; all_fans 0; dw_stress 1; dw_until 21; engage 0.96; all 1.15; pulse 45; gap 30; wt 1.8000000000000003 | Dawn is safe and slightly cool with VPD in band; prepare for |
| 08:30 | s2 1.6164999999999998; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 21; engage 0.9500000000000001; all 1.12; pulse 56.25; gap 17.25; wt 2.0133333333333336 | Morning solar ramp begins; open band-coupled moisture and fo |
| 12:00 | s2 1.5785; cool_exit 1.42; all_fans 0; dw_stress 1; dw_until 21; engage 0.9500000000000001; all 1.1; pulse 60; gap 16.5; wt 2.0533333333333337 | Peak solar and hot-dry VENTILATE risk; prioritize VPD recove |
| 15:00 | s2 1.596; cool_exit 1.42; all_fans 0; dw_stress 1; dw_until 21; engage 0.9500000000000001; all 1.1; pulse 60; gap 16.5; wt 2.0533333333333337 | Late-afternoon dry peak persists; do not unwind moisture agg |
| 17:30 | s2 1.7135; cool_exit 1.69; all_fans 0; dw_stress 1; dw_until 21; engage 0.96; all 1.15; pulse 52.5; gap 24; wt 1.92 | Fog window has ended but outdoor VPD remains high; keep boun |
| 21:30 | s2 1.905; cool_exit 1.96; all_fans 0; dw_stress 0; dw_until 21; engage 0.98; all 1.2; pulse 37.5; gap 41.25; wt 1.6333333333333333 | Night taper: fog blocked and disease risk rises later; prese |
Friday June 19
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 09:00 | hyst 0.18250000000000002 | Friday repeats hot-dry high-solar pressure; keep band-couple |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 09:00 | s2 1.602; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 21; engage 0.9500000000000001; all 1.12; pulse 56.25; gap 18; wt 2.006666666666667 | Friday repeats hot-dry high-solar pressure; keep band-couple |
Saturday June 20
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 09:30 | hyst 0.17250000000000001 | Saturday may be extreme heat/dry; maximize safe moisture/fog |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 09:30 | s2 1.5375; cool_exit 1.33; all_fans 0; dw_stress 1; dw_until 21; engage 0.9500000000000001; all 1.1; pulse 63.75; gap 15; wt 2.0999999999999996 | Saturday may be extreme heat/dry; maximize safe moisture/fog |
Changed secondary parameters:
| Time | Parameter | Change |
|---|---|---|
| 05:45 | band_track_fraction | initial 0.5 |
| 05:45 | cold_vent_guard_delta_f | initial 8 |
| 05:45 | cool_stage2_exit_hysteresis_f | initial 1 |
| 05:45 | direct_wet_stress_min_dew_margin_f | initial 8 |
| 05:45 | direct_wet_stress_vpd_margin_kpa | initial 0.06 |
| 05:45 | dwell_gate_ms | initial 240000 |
| 05:45 | enthalpy_close | initial 1 |
| 05:45 | enthalpy_open | initial -2 |
| 05:45 | fog_escalation_kpa | initial 0.25 |
| 05:45 | heat_hysteresis | initial 1.1 |
| 05:45 | min_fog_off_s | initial 54 |
| 05:45 | min_fog_on_s | initial 66 |
| 05:45 | mist_backoff_s | initial 600 |
| 05:45 | mist_max_closed_vent_s | initial 120 |
| 05:45 | mist_thermal_relief_s | initial 90 |
| 05:45 | mister_all_delay_s | initial 84 |
| 05:45 | mister_engage_delay_s | initial 42 |
| 05:45 | mister_water_budget_gal | initial 280 |
| 05:45 | night_vpd_bias_kpa | initial 0 |
| 05:45 | outdoor_staleness_max_s | initial 600 |
| 05:45 | sw_dwell_gate_enabled | initial 1 |
| 05:45 | sw_fog_closes_vent | initial 1 |
| 05:45 | sw_mister_closes_vent | initial 0 |
| 05:45 | sw_summer_vent_enabled | initial 1 |
| 05:45 | temp_hysteresis | initial 1.78 |
| 05:45 | vent_exchange_fraction | initial 0.3 |
| 05:45 | vent_prefer_dp_delta_f | initial 3 |
| 05:45 | vent_prefer_temp_delta_f | initial 4 |
| 05:45 | vpd_watch_dwell_s | initial 60 |
| 08:30 | direct_wet_stress_vpd_margin_kpa | 0.06 → 0.05 |
| 08:30 | dwell_gate_ms | 240000 → 195000 |
| 08:30 | fog_escalation_kpa | 0.25 → 0.15 |
| 08:30 | min_fog_off_s | 54 → 33.6 |
| 08:30 | min_fog_on_s | 66 → 73.65 |
| 08:30 | mister_all_delay_s | 84 → 70.5 |
| 08:30 | mister_engage_delay_s | 42 → 35.25 |
| 08:30 | mister_water_budget_gal | 280 → 300 |
| 08:30 | temp_hysteresis | 1.78 → 1.51 |
| 08:30 | vpd_watch_dwell_s | 60 → 48.75 |
| 12:00 | dwell_gate_ms | 195000 → 180000 |
| 12:00 | min_fog_off_s | 33.6 → 32.4 |
| 12:00 | min_fog_on_s | 73.65 → 74.1 |
| 12:00 | mister_all_delay_s | 70.5 → 66 |
| 12:00 | mister_engage_delay_s | 35.25 → 33 |
| 12:00 | temp_hysteresis | 1.51 → 1.42 |
| 12:00 | vpd_watch_dwell_s | 48.75 → 45 |
| 17:30 | direct_wet_stress_vpd_margin_kpa | 0.05 → 0.06 |
| 17:30 | dwell_gate_ms | 180000 → 225000 |
| 17:30 | fog_escalation_kpa | 0.15 → 0.25 |
| 17:30 | min_fog_off_s | 32.4 → 44.4 |
| 17:30 | min_fog_on_s | 74.1 → 69.6 |
| 17:30 | mister_all_delay_s | 66 → 79.5 |
| 17:30 | mister_engage_delay_s | 33 → 39.75 |
| 17:30 | mister_water_budget_gal | 300 → 280 |
| 17:30 | temp_hysteresis | 1.42 → 1.69 |
| 17:30 | vpd_watch_dwell_s | 45 → 56.25 |
| 21:30 | direct_wet_stress_vpd_margin_kpa | 0.06 → 0.08 |
| 21:30 | dwell_gate_ms | 225000 → 270000 |
| 21:30 | fog_escalation_kpa | 0.25 → 0.35 |
| 21:30 | min_fog_off_s | 44.4 → 72 |
| 21:30 | min_fog_on_s | 69.6 → 59.25 |
| 21:30 | mister_all_delay_s | 79.5 → 93 |
| 21:30 | mister_engage_delay_s | 39.75 → 46.5 |
| 21:30 | mister_water_budget_gal | 280 → 260 |
| 21:30 | temp_hysteresis | 1.69 → 1.96 |
| 21:30 | vpd_watch_dwell_s | 56.25 → 67.5 |
| 09:00 | direct_wet_stress_vpd_margin_kpa | 0.08 → 0.05 |
| 09:00 | dwell_gate_ms | 270000 → 195000 |
| 09:00 | fog_escalation_kpa | 0.35 → 0.15 |
| 09:00 | min_fog_off_s | 72 → 34.8 |
| 09:00 | min_fog_on_s | 59.25 → 73.19999999999999 |
| 09:00 | mister_all_delay_s | 93 → 70.5 |
| 09:00 | mister_engage_delay_s | 46.5 → 35.25 |
| 09:00 | mister_water_budget_gal | 260 → 300 |
| 09:00 | temp_hysteresis | 1.96 → 1.51 |
| 09:00 | vpd_watch_dwell_s | 67.5 → 48.75 |
| 09:30 | dwell_gate_ms | 195000 → 165000 |
| 09:30 | min_fog_off_s | 34.8 → 30 |
| 09:30 | min_fog_on_s | 73.19999999999999 → 75 |
| 09:30 | mister_all_delay_s | 70.5 → 61.5 |
| 09:30 | mister_engage_delay_s | 35.25 → 30.75 |
| 09:30 | temp_hysteresis | 1.51 → 1.33 |
| 09:30 | vpd_watch_dwell_s | 48.75 → 41.25 |
🌆 Evening Cycle (8:37 PM) — iris-20260618-2035
validated
5/10
band_track_fraction, cold_vent_guard_delta_f, cool_exit_hysteresis_f, cool_stage2_exit_hysteresis_f, cool_stage2_over_high_f, direct_wet_stress_latest_hour, direct_wet_stress_min_dew_margin_f, direct_wet_stress_vpd_margin_kpa ...
Reflection
Validating previous cycle: iris-20260618-0536
Previous hypothesis: SUNRISE plan for Thursday 2026-06-18. I evaluated iris-20260618-0017 at 4/10; deterministic anchor was 1, and the gap is intentional but significant: I gave limited credit for preserved temperature/dew safety in the short midnight-to-dawn segment, while the anchor correctly penalized heavy guardrail activity (731 guardrail events, 94 held, 104 VPD-high guardrail events) and continuing setpoint realization risk. Yesterday 2026-06-17 scored 48.9 with 41.3% compliance, temp 92.6%, VPD 42.1%, 15.33h stress dominated by 13.6h VPD-high plus 1.73h heat. Cost was acceptable at USD 3.14 vs 7d USD 4.68, water 343 gal vs 7d 506 gal, and dew margin stayed safe at 7.1F min with 0 dp-risk hours; low cost/water was not success because VPD remained the bottleneck. Current greenhouse is safe at 65.2F, VPD 0.66 kPa, RH 69%, dew margin 10… Result: Midnight evaluation of the completed sunset-to-midnight segment: window score 34.9, compliance 20.0%, temp compliance 100.0%, VPD compliance 20.0%, vpd_high stress only 0.04h, no heat/cold/VPD-low stress, low cost around USD 0.13 and dew safety preserved with no dp-risk. The hypothesis partly held: the overnight taper avoided VPD-low and condensation and did not add material VPD-high stress after 22:00, but it left the house dry-edged at 69.0F, VPD 0.96 kPa with east 1.12 kPa and current VPD above the band, so the posture is not sufficient as a handoff into Friday’s hot-dry ramp. Full 09:00 ramp readiness cannot be graded yet because the plan ended at midnight. Score: 5/10
New finding: A short overnight taper after a hot-dry day can preserve dew safety and avoid VPD-low, but if VPD remains above the band by midnight the next plan should reopen band-coupled wet assist before dawn rather than conserving water into a hot-dry ramp. → Added to Lessons Learned
Hypothesis
Testing: Overnight taper test: keep bounded evening recovery until VPD is safely below high band, then trade peak daytime moisture aggression for stable low-duty overnight posture; judge by no VPD-low/dp-risk and readiness for Friday ramp. Expected outcome: By Friday 08:30, dew-point risk remains 0h, VPD-low remains 0h, overnight VPD-high does not grow materially after 22:00, and relay churn falls versus today’s high transition counts while wet/fog assist is re-opened for the 09:00 dry ramp.
Conditions
88.0°F
13.0%
908.0 W/m²
27.0%
Sunset state safe but dry-edged: indoor 79.7F, VPD 0.93 kPa near high band, RH 74%, dew margin 9.2F, IDLE. Overnight is mild/dry with forecast VPD biased high; Friday ramps hot/dry again after 09:00. Context degraded: knowledge/lesson semantic retrieval missing OPENAI_API_KEY, static site context missing, validate-plan-coverage unavailable.
Expected stress windows
Keep bounded evening recovery wet assist available while dew margin is >8F and VPD remains near high band; taper after recovery rather than by clock alone.
Reduce overnight wet duty and increase resource/churn discipline so cooling air and slab retention do not over-humidify the orchid zone.
Friday ramp returns to band-coupled moisture/fog posture with low resource sensitivity, mist duty 35-45%, fog escalation near 0.20 during the safe fog window, and wet cutoff through 21:00 recovery.
Parameter rationale
Keep only guarded evening recovery eligibility overnight, then return near band edge for Friday morning dry ramp.
Avoid unnecessary all-zone wetting overnight while not disabling all-zone escalation if the east dry outlier remains above band.
Hold VPD near band with fewer water-flow transitions and no VPD-low overshoot.
Prevent peak hot-dry fog posture from carrying into the cool sealed night while allowing re-escalation to 0.20 for Friday morning.
Conserve overnight water while preserving tomorrow daytime budget for true VPD-high stress.
Setpoints
Thursday June 18
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 20:45 | hyst 0.20249999999999999 | evening_settle: VPD is near high band with safe dew margin; |
| 22:00 | hyst 0.2125 | late_evening: outside air cools quickly and forecast VPD is |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 20:45 | s2 1.81; cool_exit 1.87; all_fans 0; dw_stress 1; dw_until 21; engage 1.02; all 1.22; pulse 30; gap 41.25; wt 2.2199999999999998 | evening_settle: VPD is near high band with safe dew margin; |
| 22:00 | s2 1.905; cool_exit 2.05; all_fans 0; dw_stress 1; dw_until 21; engage 1.04; all 1.24; pulse 30; gap 56.25; wt 2.0666666666666664 | late_evening: outside air cools quickly and forecast VPD is |
Friday June 19
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 00:30 | hyst 0.2125 | midnight_posture: mild dry outside but no solar; prioritize |
| 05:30 | hyst 0.2125 | pre_dawn: outdoor low near 57F is not a gas-heating crisis; |
| 08:30 | hyst 0.1825 | friday_ramp_prep: forecast returns to hot-dry high-solar str |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 00:30 | s2 1.92; cool_exit 2.05; all_fans 0; dw_stress 1; dw_until 21; engage 1.04; all 1.24; pulse 30; gap 60; wt 2.033333333333333 | midnight_posture: mild dry outside but no solar; prioritize |
| 05:30 | s2 1.835; cool_exit 2.05; all_fans 0; dw_stress 1; dw_until 21; engage 1.04; all 1.24; pulse 30; gap 56.25; wt 2.0666666666666664 | pre_dawn: outdoor low near 57F is not a gas-heating crisis; |
| 08:30 | s2 1.5574999999999999; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 21; engage 0.99; all 1.19; pulse 45; gap 26.25; wt 2.5 | friday_ramp_prep: forecast returns to hot-dry high-solar str |
Changed secondary parameters:
| Time | Parameter | Change |
|---|---|---|
| 20:45 | band_track_fraction | initial 0.25 |
| 20:45 | cold_vent_guard_delta_f | initial 8 |
| 20:45 | cool_stage2_exit_hysteresis_f | initial 1 |
| 20:45 | direct_wet_stress_min_dew_margin_f | initial 8 |
| 20:45 | direct_wet_stress_vpd_margin_kpa | initial 0.08 |
| 20:45 | dwell_gate_ms | initial 255000 |
| 20:45 | enthalpy_close | initial 1 |
| 20:45 | enthalpy_open | initial -2 |
| 20:45 | fog_escalation_kpa | initial 0.3 |
| 20:45 | heat_hysteresis | initial 1.1 |
| 20:45 | min_fog_off_s | initial 72 |
| 20:45 | min_fog_on_s | initial 75 |
| 20:45 | mist_backoff_s | initial 600 |
| 20:45 | mist_max_closed_vent_s | initial 120 |
| 20:45 | mist_thermal_relief_s | initial 90 |
| 20:45 | mister_all_delay_s | initial 88.5 |
| 20:45 | mister_engage_delay_s | initial 44.25 |
| 20:45 | mister_water_budget_gal | initial 220 |
| 20:45 | night_vpd_bias_kpa | initial 0 |
| 20:45 | outdoor_staleness_max_s | initial 600 |
| 20:45 | sw_dwell_gate_enabled | initial 1 |
| 20:45 | sw_fog_closes_vent | initial 1 |
| 20:45 | sw_mister_closes_vent | initial 0 |
| 20:45 | sw_summer_vent_enabled | initial 1 |
| 20:45 | temp_hysteresis | initial 1.87 |
| 20:45 | vent_exchange_fraction | initial 0.3 |
| 20:45 | vent_prefer_dp_delta_f | initial 3 |
| 20:45 | vent_prefer_temp_delta_f | initial 4 |
| 20:45 | vpd_watch_dwell_s | initial 63.75 |
| 22:00 | cold_vent_guard_delta_f | 8 → 9 |
| 22:00 | direct_wet_stress_vpd_margin_kpa | 0.08 → 0.1 |
| 22:00 | dwell_gate_ms | 255000 → 285000 |
| 22:00 | min_fog_off_s | 72 → 96 |
| 22:00 | mister_all_delay_s | 88.5 → 97.5 |
| 22:00 | mister_engage_delay_s | 44.25 → 48.75 |
| 22:00 | mister_water_budget_gal | 220 → 200 |
| 22:00 | temp_hysteresis | 1.87 → 2.05 |
| 22:00 | vent_prefer_temp_delta_f | 4 → 5 |
| 22:00 | vpd_watch_dwell_s | 63.75 → 71.25 |
| 00:30 | min_fog_off_s | 96 → 102 |
| 00:30 | mister_water_budget_gal | 200 → 180 |
| 05:30 | min_fog_off_s | 102 → 96 |
| 05:30 | mister_water_budget_gal | 180 → 200 |
| 08:30 | cold_vent_guard_delta_f | 9 → 8 |
| 08:30 | direct_wet_stress_vpd_margin_kpa | 0.1 → 0.05 |
| 08:30 | dwell_gate_ms | 285000 → 195000 |
| 08:30 | fog_escalation_kpa | 0.3 → 0.2 |
| 08:30 | min_fog_off_s | 96 → 48 |
| 08:30 | mister_all_delay_s | 97.5 → 70.5 |
| 08:30 | mister_engage_delay_s | 48.75 → 35.25 |
| 08:30 | mister_water_budget_gal | 200 → 280 |
| 08:30 | temp_hysteresis | 2.05 → 1.51 |
| 08:30 | vent_prefer_temp_delta_f | 5 → 4 |
| 08:30 | vpd_watch_dwell_s | 71.25 → 48.75 |
End-of-Day Summary
Climate
64.0–88.0°F; avg 74.9°F
0.64–1.96 kPa; avg 1.01 kPa
51.4–76.5%
Stress Hours
- Heat stress (>85°F): 0.2h
- VPD stress (>2.0 kPa): 11.4h
- Cold stress (<55°F): 0.0h
Economics
USD 2.31
USD 0.33
USD 1.250
USD 3.89
Equipment Runtimes
| Equipment | Runtime | Reading |
|---|---|---|
| Fan 1 | 213 min | Primary exhaust runtime. |
| Fan 2 | 222 min | Secondary exhaust runtime. |
| Vent | 299 min | Intake vent runtime. |
| Fog | 188 min | Fogger runtime. |
| Heat 1 electric | 384 min | Electric heater runtime. |
| Heat 2 gas | 31 min | Gas heater runtime. |
| Grow lights | 450 min | Supplemental lighting runtime. |
| Mister south | 0.36h | South mister runtime. |
| Mister west | 4.18h | West mister runtime. |
| Mister center | 1.80h | Center mister runtime. |
Water
- Total: 258 gal
- Mister: 166 gal
Hourly Pattern
| Hour | Temperature | VPD | RH |
|---|---|---|---|
| 12:00 | 83.3°F | 1.26 kPa | 69.1% |
| 13:00 | 86.0°F | 1.36 kPa | 70.1% |
| 14:00 | 86.6°F | 1.42 kPa | 69.9% |
| 15:00 | 85.9°F | 1.49 kPa | 66.6% |
| 16:00 | 85.0°F | 1.34 kPa | 70.1% |
| 17:00 | 83.4°F | 1.26 kPa | 71.6% |
| 18:00 | 81.4°F | 1.12 kPa | 72.8% |
| 19:00 | 78.5°F | 1.20 kPa | 68.1% |
| 20:00 | 76.2°F | 1.02 kPa | 70.7% |
| 21:00 | 73.4°F | 1.06 kPa | 65.2% |
| 22:00 | 71.7°F | 0.95 kPa | 66.0% |
| 23:00 | 68.7°F | 0.93 kPa | 62.1% |
| 00:00 | 68.5°F | 0.87 kPa | 64.0% |
| 01:00 | 67.1°F | 0.88 kPa | 61.6% |
| 02:00 | 66.2°F | 0.87 kPa | 60.8% |
| 03:00 | 64.8°F | 0.86 kPa | 59.4% |
| 04:00 | 64.9°F | 0.70 kPa | 67.0% |
| 05:00 | 65.4°F | 0.67 kPa | 68.9% |
| 06:00 | 68.2°F | 0.83 kPa | 65.2% |
| 07:00 | 69.7°F | 0.95 kPa | 62.6% |
| 08:00 | 73.1°F | 0.95 kPa | 66.1% |
| 09:00 | 74.7°F | 1.03 kPa | 65.3% |
| 10:00 | 75.4°F | 1.02 kPa | 66.4% |
| 11:00 | 76.7°F | 1.07 kPa | 66.1% |
7-Day Stress Context
| Date | Heat | VPD high | Cold |
|---|---|---|---|
| 2026-06-12 | 3.6h | 8.5h | 0.2h |
| 2026-06-13 | 3.0h | 4.7h | 0.0h |
| 2026-06-14 | 3.5h | 4.0h | 0.0h |
| 2026-06-15 | 1.5h | 5.5h | 0.0h |
| 2026-06-16 | 2.0h | 9.2h | 0.0h |
| 2026-06-17 | 1.7h | 13.6h | 0.0h |
| 2026-06-18 | 0.2h | 11.4h | 0.0h |