July 20, 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.

Delivery events

12

Plan writes

3

No-change acknowledgements

9

Pending

0

EventDeliveredTypeStatusNote
End-of-day review and reset00:16MIDNIGHTplan_writtenWrote public plan iris-20260720-0016. Resolved 00:18 MDT.
Morning planning cycle05:49SUNRISEplan_writtenWrote public plan iris-20260720-0549. Resolved 05:51 MDT.
Solar peak planning checkpoint13:08SOLAR_MAXackedAcknowledged: SOLAR_MAX no tactical change. Live solar is overshooting the 14:00 forecast (1014 W/m2 observed vs 888 W/m2 raw forecast, even after applying the small recent solar bias), but the active SUNRISE plan already has the hot-dry compliance-first posture materialized: fog_escalation_kpa 0.15, mister_engage_kpa 1.27 near vpd_high+0.05, mister_all_kpa 1.44, pulse gap 24s, pulse on 90s, direct wet stress override enabled, all-fans-at-high enabled, and dwell gate enabled... Resolved 13:09 MDT.
Peak Stress15:08TRANSITIONackedAcknowledged: Peak-stress transition checked live climate, equipment, active plan, and setpoints. Conditions are severe but tracking the active hot-dry plan: temp 89.4F and VPD 1.89 kPa are above band with safe 13.8F dew margin; vent, both fans, and fog are already on in VENTILATE. Tactical posture is already near the hot-dry ladder floor (fog_escalation_kpa 0.15, mister_engage_kpa 1.25 near vpd_high+0.03, mister_all_kpa 1.44 near +0.22, pulse gap 22s, all-fans enabled, dwell enabled)... Resolved 15:08 MDT.
Forecast deviation15:51FORECAST_DEVIATIONackedAcknowledged: FORECAST_DEVIATION assessed live. Observed VPD and solar are both lower than the raw forecast, matching the known positive VPD forecast bias and an early cloud/solar forecast error rather than a new hotter/drier regime or equipment failure. Live greenhouse still has temp and VPD above band, but the controller is already in VENTILATE with vent, both fans, and fog active under the existing aggressive hot-dry plan; dew margin is safe at about 13F. No additional tunable change needed. Resolved 15:51 MDT.
Forecast deviation16:51FORECAST_DEVIATIONackedAcknowledged: FORECAST_DEVIATION no-op: observed VPD is lower than raw forecast by about 1.49 kPa, matching the documented positive VPD forecast bias (~+1.5 kPa) rather than indicating a new live weather regime. Current climate is still hot/dry-edge (85.2F, VPD 1.80 kPa, dew margin 16.6F) but equipment is already in the appropriate cooling/fog-assist posture with vent, fan1, fan2, and fog on; wet/fog safety rails are healthy. Existing setpoints are already compliance-first/aggressive (fog_escalation_kpa 0... Resolved 16:52 MDT.
Forecast deviation17:36FORECAST_DEVIATIONackedAcknowledged: FORECAST_DEVIATION assessed: outdoor temperature is 91.4F versus forecast about 100F, but this is a cooler-than-forecast shift in the same direction as the known positive temperature forecast bias. Current house is in a safe/resource state at 83.5F, VPD 1.11 kPa, RH 71%, dew margin 10.1F, mode IDLE, and all climate relays/wet assist are off. No live controller-attributable heat or VPD miss requires a tactical tunable change. Resolved 17:37 MDT.
Forecast deviation17:51FORECAST_DEVIATIONackedAcknowledged: FORECAST_DEVIATION no-op: live climate shows VPD 1.00 kPa, RH 74%, 82.1F, dew margin 9.2F, mode IDLE; all climate equipment is off. The reported VPD forecast overshoot is in the same direction as the known positive VPD forecast bias, so this is forecast calibration catching up rather than a live weather/equipment miss. No tunable change made. Resolved 17:51 MDT.
Forecast deviation18:51FORECAST_DEVIATIONackedAcknowledged: FORECAST_DEVIATION assessed as forecast VPD positive-bias catching up, not a live weather or equipment regime change. Current climate is near the evening band: 82.8F, VPD 1.27 kPa, RH 67%, dew margin 12.0F, IDLE; all climate relays/fog/misters are off. Existing wet-assist posture remains appropriate, so no tunable change was made. Resolved 18:52 MDT.
Decline19:26TRANSITIONackedAcknowledged: Decline transition checked live climate, equipment, active plan, and setpoints. Current house is still in safe hot/dry VPD-high recovery: 83.0F, VPD 1.51 kPa above 1.22 high edge, dew margin 14.7F, VENTILATE with both fans and fog assist active. Wet/fog assist is allowed and useful, while the existing plan already has a later 22:30 taper to higher thresholds, wider mist gap, and conservative fog escalation before the overnight handoff... Resolved 19:27 MDT.
Forecast deviation19:51FORECAST_DEVIATIONackedAcknowledged: FORECAST_DEVIATION assessed as forecast VPD overprediction catching up to known historical positive VPD bias, not a live climate miss. Current house is inside corridor: 82.0F, VPD 1.07 kPa, RH 71%, dew margin 10.2F, IDLE. All major climate actuators are off. No tunable change needed. Resolved 19:52 MDT.
Evening planning cycle20:26SUNSETplan_writtenWrote public plan iris-20260720-2026. Resolved 20:28 MDT.

🌅 Morning Cycle (12:18 AM) — iris-20260720-0016

Status

validated

Outcome score

7/10

Changed parameters

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-20260719-0548

Previous hypothesis: SUNRISE plan for Sunday 2026-07-19. Yesterday scored 65.6, essentially flat against the 7-day average 65.7, but remained dual-axis limited: VPD was the bottleneck at 36.6% compliance versus 47.4% temp compliance, with 14.13h VPD-high stress and 11.09h heat stress. Dew safety held at dp_margin_min_f 8.8F and 0.0 dp-risk hours, so the correct response is not moisture suppression. I evaluated the completed sunset plan iris-20260718-2029 at 4/10; plan_evaluate anchored it at 2 because 602 VPD-high guardrail events and 568 held-by-guardrail events show the plan was materially guardrail-shaped. The self-score is higher than the anchor only because the plan preserved safety, not because it recovered the corridor. Current state is safe and low-side: 70.5F, VPD 0.88 kPa, RH 66%, dew margin 12F, IDLE, all relays off. Today is forecast extreme hot/dry: 98F raw high, RH 15-16%, raw VPD up to 5… Result: Evaluated at Monday SUNRISE using the available scoped window before the weekly plan superseded it. The plan governed a short overnight/pre-dawn window (~0.073 day). Scoped score/compliance was 83.5 with temp compliance 39.5%, VPD compliance 28.3%, about 0.24h heat stress and 0.29h VPD-high stress, 0.0h cold stress, 0.0h VPD-low stress, and dew safety preserved. Daily/yesterday context remains much weaker: Sunday scored 69.8 with VPD the bottleneck at 34.8% versus temp 46.2%, 14.66h VPD-high and 11.27h heat, water 403 gal total / 196 gal misting-only versus 347 gal 7d average. The short window validates dew-safe overnight continuity, not daytime corridor recovery. Retrieval was attempted for this sunrise but knowledge_search and lessons_search are blocked by missing OPENAI_API_KEY, so evidence comes from MCP scorecards/context and static lessons. Score: 7/10

Hypothesis

Testing: Guardrail-compatible MIDNIGHT reset for an extreme hot-dry Monday: preserve a modest dew-safe overnight surface, reopen band-coupled wet/fog assist before sunrise, then taper only after live dry-edge recovery or the Tuesday-night humid handoff. Expected outcome: Keep dew-risk and VPD-low stress at 0h while reducing Monday VPD-high severity versus Sunday; accept physics-limited heat near 101F outdoors, and watch whether bounded ClimateIntent reduces guardrail-held wet-assist rows compared with iris-20260719-0548.

Conditions

Outdoor peak

101.0°F

RH minimum

14.0%

Solar peak

879.0 W/m²

Cloud average

20.0%

extreme July hot-dry Monday after a guardrail-shaped Sunday; forecast VPD is positively biased but corrected priors remain severe, dew margin is currently safe, and zone spread remains large

Expected stress windows

vpd_highmedium · 2026-07-20T00:15:00-06:00 to 2026-07-20T05:30:00-06:00

preserve a modest dew-safe overnight wet-assist surface without peak daytime water duty; reopen more aggressively before sunrise

vpd_highhigh · 2026-07-20T07:30:00-06:00 to 2026-07-20T22:00:00-06:00

band-coupled wet assist: engage near vpd_high+0.05, all-zone near +0.20 to +0.25, daylight fog escalation near 0.15, low resource sensitivity while dew margin stays healthy

heathigh · 2026-07-20T10:00:00-06:00 to 2026-07-20T20:00:00-06:00

early thermal lead and solar precooling with all-fans cooling plus vent-mist/fog assist; accept structural peak heat rather than chasing target-line errors

vpd_highhigh · 2026-07-21T11:00:00-06:00 to 2026-07-21T21:00:00-06:00

repeat compliance-first wet assist for the Tuesday dry afternoon, but taper faster into the forecast humid/rain evening

vpd_lowmedium · 2026-07-21T22:00:00-06:00 to 2026-07-22T06:00:00-06:00

raise dew-margin caution and resource/churn sensitivity as RH rises into the humid overnight handoff

vpd_lowhigh · 2026-07-22T20:00:00-06:00 to 2026-07-23T00:30:00-06:00

suppress low-value wet assist and preserve dew safety during the forecast storm/humid evening

Parameter rationale

mister_engage_kpa0.82 → 1.27; current VPD is below the 1.22 kPa high edge but raw VPD exceeds 2 kPa by 08:00 and reaches 5+ kPa during peak heat

make S1 wet assist available near the dry edge when live VPD rises, without relying on dispatcher guardrail correction

mister_all_kpa1.02 → 1.47; zone VPD spread remains >0.5 kPa and Sunday VPD compliance was only 34.8% daily / 28.9% in the validated plan window

allow all-zone escalation during meaningful hot-dry stress while keeping a wider deadband for localized spread

fog_escalation_kpa0.2 → 0.15; the 07:00-17:00 fog window overlaps Monday's extreme hot-dry ramp and dew margin is 12.4F with 0h dp-risk

enable daylight vent-fog assist before severe VPD-high error accumulates

mister_pulse_gap_s30.0 → 22.0; forecast RH falls to 14-20% with solar near 879 W/m2 and recent VENT_COOL_MIST_ASSIST improved VPD error slightly

increase useful wet duty during VENTILATE while avoiding a clock-only evening unwind before measured recovery

mister_water_budget_gal300.0 → 300.0; water was high at 403 gal, but VPD remains the limiting axis and dew risk is zero

avoid budget-limited recovery during safe extreme dry stress; conserve by tapering after recovery rather than lowering the cap

direct_wet_stress_latest_hour21.0 → 22.0; VPD-high is forecast to persist into Monday evening and the prior 22:00 request missed materialization

permit bounded evening dry-edge recovery through 22:00 if dew margin remains above 8F, while explicitly watching for another missed materialization

Setpoints

Monday July 20

Primary crop-band changes:

TimeValuesNote
00:15hyst 0.20249999999999999Post-midnight: live air is safe with dew margin >12F; keep a
03:30hyst 0.20249999999999999Pre-dawn hold: outdoor remains dry but no solar; preserve we
05:30hyst 0.1925Sunrise ramp: reopen band-coupled wet assist before VPD clim
07:30hyst 0.1825Early-day handoff: forecast VPD is already severe by 08:00;
10:30hyst 0.1775Peak hot-dry ramp: heat is likely physics-limited; preserve
16:30hyst 0.1825Late peak: maintain wet assist through the high-VPD afternoo
20:30hyst 0.19749999999999998Evening dry-edge recovery: keep bounded direct-wet recovery

Tactical tunable changes:

TimeValuesNote
00:15s2 1.76; cool_exit 1.87; all_fans 0; dw_stress 0; dw_until 22; engage 1.3; all 1.52; pulse 30; gap 48.75; wt 1.4866666666666666Post-midnight: live air is safe with dew margin >12F; keep a
03:30s2 1.7334999999999998; cool_exit 1.87; all_fans 0; dw_stress 0; dw_until 22; engage 1.29; all 1.5; pulse 30; gap 46.5; wt 1.5066666666666668Pre-dawn hold: outdoor remains dry but no solar; preserve we
05:30s2 1.645; cool_exit 1.69; all_fans 0; dw_stress 0; dw_until 22; engage 1.27; all 1.47; pulse 33.75; gap 37.5; wt 1.6333333333333333Sunrise ramp: reopen band-coupled wet assist before VPD clim
07:30s2 1.574; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.44; pulse 41.25; gap 28.5; wt 1.7799999999999998Early-day handoff: forecast VPD is already severe by 08:00;
10:30s2 1.5474999999999999; cool_exit 1.42; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 43.5; gap 26.25; wt 1.8199999999999998Peak hot-dry ramp: heat is likely physics-limited; preserve
16:30s2 1.5975; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.44; pulse 41.25; gap 30; wt 1.7666666666666666Late peak: maintain wet assist through the high-VPD afternoo
20:30s2 1.7125; cool_exit 1.78; all_fans 0; dw_stress 0; dw_until 22; engage 1.28; all 1.47; pulse 33.75; gap 41.25; wt 1.6Evening dry-edge recovery: keep bounded direct-wet recovery

Tuesday July 21

Primary crop-band changes:

TimeValuesNote
00:00hyst 0.20749999999999996Monday night: conserve water/wear once solar is gone, but re
06:30hyst 0.19749999999999998Tuesday dawn: restart moderate wet readiness ahead of anothe
11:30hyst 0.1855Tuesday dry afternoon: VPD rises again with high solar; use
21:30hyst 0.2175Humid/rain handoff: forecast RH rises sharply; protect dew m

Tactical tunable changes:

TimeValuesNote
00:00s2 1.7925; cool_exit 1.96; all_fans 0; dw_stress 0; dw_until 21; engage 1.3; all 1.52; pulse 30; gap 52.5; wt 1.4533333333333334Monday night: conserve water/wear once solar is gone, but re
06:30s2 1.695; cool_exit 1.78; all_fans 0; dw_stress 0; dw_until 21; engage 1.28; all 1.49; pulse 31.5; gap 41.25; wt 1.58Tuesday dawn: restart moderate wet readiness ahead of anothe
11:30s2 1.6035; cool_exit 1.564; all_fans 0; dw_stress 1; dw_until 21; engage 1.27; all 1.45; pulse 39; gap 31.5; wt 1.7333333333333334Tuesday dry afternoon: VPD rises again with high solar; use
21:30s2 1.8875; cool_exit 2.14; all_fans 0; dw_stress 0; dw_until 19; engage 1.3399999999999999; all 1.62; pulse 30; gap 60; wt 1.2533333333333334Humid/rain handoff: forecast RH rises sharply; protect dew m

Wednesday July 22

Primary crop-band changes:

TimeValuesNote
08:00hyst 0.19749999999999998Wednesday morning: transition back from humid overnight to d
12:00hyst 0.1875Wednesday midday dry pulse: use band-coupled assist before f
20:00hyst 0.22249999999999998Wednesday humid storm risk: suppress low-value wet assist an

Tactical tunable changes:

TimeValuesNote
08:00s2 1.6775; cool_exit 1.78; all_fans 0; dw_stress 0; dw_until 21; engage 1.28; all 1.49; pulse 31.5; gap 41.25; wt 1.58Wednesday morning: transition back from humid overnight to d
12:00s2 1.6124999999999998; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 21; engage 1.27; all 1.46; pulse 37.5; gap 33.75; wt 1.7000000000000002Wednesday midday dry pulse: use band-coupled assist before f
20:00s2 1.9500000000000002; cool_exit 2.23; all_fans 0; dw_stress 0; dw_until 19; engage 1.42; all 1.72; pulse 30; gap 60; wt 1.1333333333333333Wednesday humid storm risk: suppress low-value wet assist an

Changed secondary parameters:

TimeParameterChange
00:15band_track_fractioninitial 0
00:15cold_vent_guard_delta_finitial 9
00:15cool_stage2_exit_hysteresis_finitial 1
00:15direct_wet_stress_min_dew_margin_finitial 8
00:15direct_wet_stress_vpd_margin_kpainitial 0.08
00:15dwell_gate_msinitial 255000
00:15enthalpy_closeinitial 1
00:15enthalpy_openinitial -2
00:15fog_escalation_kpainitial 0.25
00:15heat_hysteresisinitial 1
00:15min_fog_off_sinitial 84
00:15min_fog_on_sinitial 54.75
00:15mist_backoff_sinitial 600
00:15mist_max_closed_vent_sinitial 600
00:15mist_thermal_relief_sinitial 90
00:15mister_all_delay_sinitial 88.5
00:15mister_engage_delay_sinitial 44.25
00:15mister_water_budget_galinitial 300
00:15night_vpd_bias_kpainitial 0
00:15outdoor_staleness_max_sinitial 600
00:15sw_dwell_gate_enabledinitial 1
00:15sw_fog_closes_ventinitial 1
00:15sw_mister_closes_ventinitial 0
00:15sw_summer_vent_enabledinitial 1
00:15temp_hysteresisinitial 1.87
00:15vent_exchange_fractioninitial 0.3
00:15vent_prefer_dp_delta_finitial 4
00:15vent_prefer_temp_delta_finitial 5
00:15vpd_watch_dwell_sinitial 63.75
03:30direct_wet_stress_vpd_margin_kpa0.08 → 0.07
03:30min_fog_off_s84 → 80.4
03:30min_fog_on_s54.75 → 56.1
05:30direct_wet_stress_vpd_margin_kpa0.07 → 0.05
05:30dwell_gate_ms255000 → 225000
05:30fog_escalation_kpa0.25 → 0.2
05:30min_fog_off_s80.4 → 66
05:30min_fog_on_s56.1 → 61.5
05:30mister_all_delay_s88.5 → 79.5
05:30mister_engage_delay_s44.25 → 39.75
05:30temp_hysteresis1.87 → 1.69
05:30vpd_watch_dwell_s63.75 → 56.25
07:30dwell_gate_ms225000 → 195000
07:30fog_escalation_kpa0.2 → 0.15
07:30min_fog_off_s66 → 51.599999999999994
07:30min_fog_on_s61.5 → 66.9
07:30mister_all_delay_s79.5 → 70.5
07:30mister_engage_delay_s39.75 → 35.25
07:30temp_hysteresis1.69 → 1.51
07:30vpd_watch_dwell_s56.25 → 48.75
10:30dwell_gate_ms195000 → 180000
10:30min_fog_off_s51.599999999999994 → 48
10:30min_fog_on_s66.9 → 68.25
10:30mister_all_delay_s70.5 → 66
10:30mister_engage_delay_s35.25 → 33
10:30temp_hysteresis1.51 → 1.42
10:30vpd_watch_dwell_s48.75 → 45
16:30dwell_gate_ms180000 → 195000
16:30fog_escalation_kpa0.15 → 0.18
16:30min_fog_off_s48 → 54
16:30min_fog_on_s68.25 → 66
16:30mister_all_delay_s66 → 70.5
16:30mister_engage_delay_s33 → 35.25
16:30temp_hysteresis1.42 → 1.51
16:30vpd_watch_dwell_s45 → 48.75
20:30direct_wet_stress_vpd_margin_kpa0.05 → 0.06
20:30dwell_gate_ms195000 → 240000
20:30fog_escalation_kpa0.18 → 0.25
20:30min_fog_off_s54 → 72
20:30min_fog_on_s66 → 59.25
20:30mister_all_delay_s70.5 → 84
20:30mister_engage_delay_s35.25 → 42
20:30temp_hysteresis1.51 → 1.78
20:30vpd_watch_dwell_s48.75 → 60
00:00direct_wet_stress_vpd_margin_kpa0.06 → 0.08
00:00dwell_gate_ms240000 → 270000
00:00fog_escalation_kpa0.25 → 0.3
00:00min_fog_off_s72 → 90
00:00min_fog_on_s59.25 → 52.5
00:00mister_all_delay_s84 → 93
00:00mister_engage_delay_s42 → 46.5
00:00temp_hysteresis1.78 → 1.96
00:00vpd_watch_dwell_s60 → 67.5
06:30direct_wet_stress_vpd_margin_kpa0.08 → 0.06
06:30dwell_gate_ms270000 → 240000
06:30fog_escalation_kpa0.3 → 0.22
06:30min_fog_off_s90 → 72
06:30min_fog_on_s52.5 → 59.25
06:30mister_all_delay_s93 → 84
06:30mister_engage_delay_s46.5 → 42
06:30temp_hysteresis1.96 → 1.78
06:30vpd_watch_dwell_s67.5 → 60
11:30direct_wet_stress_vpd_margin_kpa0.06 → 0.05
11:30dwell_gate_ms240000 → 204000
11:30fog_escalation_kpa0.22 → 0.18
11:30min_fog_off_s72 → 56.4
11:30min_fog_on_s59.25 → 65.1
11:30mister_all_delay_s84 → 73.19999999999999
11:30mister_engage_delay_s42 → 36.599999999999994
11:30temp_hysteresis1.78 → 1.564
11:30vpd_watch_dwell_s60 → 51
21:30direct_wet_stress_min_dew_margin_f8 → 10
21:30direct_wet_stress_vpd_margin_kpa0.05 → 0.12
21:30dwell_gate_ms204000 → 300000
21:30fog_escalation_kpa0.18 → 0.38
21:30min_fog_off_s56.4 → 114
21:30min_fog_on_s65.1 → 43.5
21:30mister_all_delay_s73.19999999999999 → 102
21:30mister_engage_delay_s36.599999999999994 → 51
21:30temp_hysteresis1.564 → 2.14
21:30vpd_watch_dwell_s51 → 75
08:00direct_wet_stress_min_dew_margin_f10 → 8
08:00direct_wet_stress_vpd_margin_kpa0.12 → 0.06
08:00dwell_gate_ms300000 → 240000
08:00fog_escalation_kpa0.38 → 0.22
08:00min_fog_off_s114 → 72
08:00min_fog_on_s43.5 → 59.25
08:00mister_all_delay_s102 → 84
08:00mister_engage_delay_s51 → 42
08:00temp_hysteresis2.14 → 1.78
08:00vpd_watch_dwell_s75 → 60
12:00direct_wet_stress_vpd_margin_kpa0.06 → 0.05
12:00dwell_gate_ms240000 → 210000
12:00fog_escalation_kpa0.22 → 0.18
12:00min_fog_off_s72 → 60
12:00min_fog_on_s59.25 → 63.75
12:00mister_all_delay_s84 → 75
12:00mister_engage_delay_s42 → 37.5
12:00temp_hysteresis1.78 → 1.6
12:00vpd_watch_dwell_s60 → 52.5
20:00direct_wet_stress_min_dew_margin_f8 → 12
20:00direct_wet_stress_vpd_margin_kpa0.05 → 0.2
20:00dwell_gate_ms210000 → 315000
20:00fog_escalation_kpa0.18 → 0.45
20:00min_fog_off_s60 → 132
20:00min_fog_on_s63.75 → 36.75
20:00mister_all_delay_s75 → 106.5
20:00mister_engage_delay_s37.5 → 53.25
20:00temp_hysteresis1.6 → 2.23
20:00vpd_watch_dwell_s52.5 → 78.75

🌅 Morning Cycle (2:04 AM) — iris-20260720-0201

Status

validated

Outcome score

5/10

Changed parameters

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-20260719-0548

Result: Evaluated at Monday SUNSET before writing the overnight plan. The weekly plan governed only a short 0.158 day window before the sunrise plan superseded it. Scoped window score was 73.2, with temp compliance 46.8% and VPD compliance 33.7%; stress remained dual-axis with about 1.49h heat stress and 1.97h VPD-high stress in the short window, while cold stress, VPD-low stress, and dew risk stayed at 0. The plan direction matched the hot-dry diagnosis and preserved safety, but the short window is not proof of daytime corridor recovery and VPD remained the limiting axis. Score: 5/10

Hypothesis

Testing: Weekly posture test: compare guardrail-compatible ClimateIntent against the last week of hot-dry plans; success is fewer guardrail-held wet-assist rows while preserving dew safety and reducing VPD-high severity during the next two dry ramps. Expected outcome: Over the next 72h: keep dp_risk_hours at 0, VPD-low stress near 0 except the forecast storm period, avoid worsening water beyond the Sunday 403 gal total, and improve or hold VPD-high severity versus the 7-day baseline while accepting physics-limited peak heat.

Conditions

Outdoor peak

102.0°F

RH minimum

12.0%

Solar peak

882.0 W/m²

Cloud average

40.0%

weekly sequence: Monday extreme hot-dry, Tuesday hot-dry afternoon then humid/rain handoff, Wednesday hot-dry midday followed by storm/humid evening; forecast VPD has known positive bias but corrected priors still exceed the crop corridor

Expected stress windows

vpd_highhigh · 2026-07-20T07:00:00-06:00 to 2026-07-20T22:00:00-06:00

band-coupled moisture near vpd_high+0.05, all-zone near +0.20 to +0.25, fog escalation near 0.15-0.18 during the daylight fog window, low resource sensitivity while dew margin is healthy

heathigh · 2026-07-20T10:00:00-06:00 to 2026-07-20T20:00:00-06:00

early thermal lead and solar pre-cooling; accept physics-limited peak heat rather than over-tuning inside the crop corridor

vpd_highhigh · 2026-07-21T11:00:00-06:00 to 2026-07-21T21:00:00-06:00

repeat compliance-first wet assist for the hot dry afternoon but taper into the forecast rain/humidity handoff

vpd_lowmedium · 2026-07-21T22:00:00-06:00 to 2026-07-22T06:00:00-06:00

increase dew margin caution and reduce wet duty as RH rises

vpd_highhigh · 2026-07-22T09:00:00-06:00 to 2026-07-22T14:00:00-06:00

short renewed dry-stress posture before storm arrival

vpd_lowhigh · 2026-07-22T20:00:00-06:00 to 2026-07-23T01:59:00-06:00

suppress low-value wet assist, raise dew margin floor, and prioritize disease/dew safety during storm humidity

Parameter rationale

mister_engage_kpa0.79 → 1.27; VPD-high dominated all seven days at about 14h/day and Monday corrected priors still exceed the high edge from morning through evening

keep S1 wet assist available at the band edge during safe dry stress without relying on dispatcher correction

mister_all_kpa1.0 → 1.47; zone VPD spread is >0.5 kPa and dry stress persists despite high water use

allow all-zone mist only when dry stress is meaningful, while preserving a wider deadband for localized spread

fog_escalation_kpa0.2 → 0.15; daylight fog window overlaps Monday and Tuesday severe dry ramps with dew margin currently >15F and 0h dp-risk last week

use fog as severity mitigation during peak VENTILATE rather than increasing mister duty alone

mister_pulse_gap_s30.0 → 22.0; Monday RH falls to 12-14% with solar near 882 W/m2 and previous hot-dry days stayed VPD-limited

increase useful wet duty during peak hot-dry ventilation, then taper before humid storm periods

mister_water_budget_gal300.0 → 300.0; Sunday used 403 gal total and 196 gal misting-only, but dew safety held and VPD remained the limiting axis

avoid budget-limited recovery during safe peak dry stress while saving water via time-of-day taper instead of lowering the cap

direct_wet_stress_latest_hour21.0 → 22.0; Monday evening remains hot and dry, but Tuesday and Wednesday evenings turn humid/stormy

permit bounded Monday dry-edge recovery while cutting wet assist earlier on humid handoff nights

Setpoints

Monday July 20

Primary crop-band changes:

TimeValuesNote
02:01hyst 0.20749999999999996current safe dry-edge overnight; preserve modest wet surface
06:30hyst 0.1925pre-stage before Monday hot-dry ramp; dew margin is healthy
10:30hyst 0.1875Monday peak is physics-limited heat plus severe VPD-high; us
17:30hyst 0.19749999999999998keep Monday evening recovery surface open while forecast rem
22:30hyst 0.2125overnight after Monday peak: taper water and relay churn whi

Tactical tunable changes:

TimeValuesNote
02:01s2 1.8475000000000001; cool_exit 1.96; all_fans 0; dw_stress 0; dw_until 22; engage 1.3; all 1.52; pulse 30; gap 48.75; wt 1.5current safe dry-edge overnight; preserve modest wet surface
06:30s2 1.6500000000000001; cool_exit 1.69; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 41.25; gap 30; wt 1.7666666666666666pre-stage before Monday hot-dry ramp; dew margin is healthy
10:30s2 1.6; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 45; gap 26.25; wt 1.8333333333333335Monday peak is physics-limited heat plus severe VPD-high; us
17:30s2 1.735; cool_exit 1.78; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 41.25; gap 33.75; wt 1.7333333333333334keep Monday evening recovery surface open while forecast rem
22:30s2 1.9300000000000002; cool_exit 2.05; all_fans 0; dw_stress 0; dw_until 22; engage 1.3399999999999999; all 1.5699999999999998; pulse 30; gap 56.25; wt 1.4333333333333333overnight after Monday peak: taper water and relay churn whi

Tuesday July 21

Primary crop-band changes:

TimeValuesNote
06:30hyst 0.20249999999999999Tuesday starts cloudier but remains dry enough to keep a mod
11:00hyst 0.1925Tuesday afternoon repeats hot-dry stress, but less aggressiv
19:30hyst 0.22249999999999998forecast storm/humidity arrives late Tuesday; taper wet assi

Tactical tunable changes:

TimeValuesNote
06:30s2 1.7800000000000002; cool_exit 1.87; all_fans 0; dw_stress 0; dw_until 21; engage 1.3; all 1.52; pulse 33.75; gap 45; wt 1.5666666666666667Tuesday starts cloudier but remains dry enough to keep a mod
11:00s2 1.665; cool_exit 1.69; all_fans 0; dw_stress 1; dw_until 21; engage 1.27; all 1.47; pulse 41.25; gap 33.75; wt 1.7333333333333334Tuesday afternoon repeats hot-dry stress, but less aggressiv
19:30s2 1.9900000000000002; cool_exit 2.23; all_fans 0; dw_stress 0; dw_until 20; engage 1.3699999999999999; all 1.67; pulse 30; gap 60; wt 1.2333333333333334forecast storm/humidity arrives late Tuesday; taper wet assi

Wednesday July 22

Primary crop-band changes:

TimeValuesNote
02:00hyst 0.22749999999999998humid overnight handoff; prioritize dew safety and avoid low
08:00hyst 0.20249999999999999Wednesday dries again after sunrise; reopen moderate wet ass
11:30hyst 0.1925short Wednesday hot-dry midday window before thunderstorm ri
15:00hyst 0.22249999999999998storms/clouds reduce solar and raise humidity; begin taper b
20:00hyst 0.22749999999999998Wednesday storm/humid evening has VPD-low and dew-risk poten

Tactical tunable changes:

TimeValuesNote
02:00s2 2.0375; cool_exit 2.3200000000000003; all_fans 0; dw_stress 0; dw_until 19; engage 1.42; all 1.72; pulse 30; gap 60; wt 1.1333333333333333humid overnight handoff; prioritize dew safety and avoid low
08:00s2 1.7950000000000002; cool_exit 1.87; all_fans 0; dw_stress 0; dw_until 19; engage 1.3; all 1.52; pulse 33.75; gap 48.75; wt 1.5333333333333332Wednesday dries again after sunrise; reopen moderate wet ass
11:30s2 1.6824999999999999; cool_exit 1.69; all_fans 0; dw_stress 1; dw_until 19; engage 1.27; all 1.47; pulse 41.25; gap 33.75; wt 1.7333333333333334short Wednesday hot-dry midday window before thunderstorm ri
15:00s2 1.9900000000000002; cool_exit 2.23; all_fans 0; dw_stress 0; dw_until 19; engage 1.3699999999999999; all 1.67; pulse 30; gap 60; wt 1.2333333333333334storms/clouds reduce solar and raise humidity; begin taper b
20:00s2 2.0700000000000003; cool_exit 2.3200000000000003; all_fans 0; dw_stress 0; dw_until 19; engage 1.44; all 1.72; pulse 30; gap 60; wt 1.1Wednesday storm/humid evening has VPD-low and dew-risk poten

Changed secondary parameters:

TimeParameterChange
02:01band_track_fractioninitial 0
02:01cold_vent_guard_delta_finitial 8
02:01cool_stage2_exit_hysteresis_finitial 1
02:01direct_wet_stress_min_dew_margin_finitial 8
02:01direct_wet_stress_vpd_margin_kpainitial 0.08
02:01dwell_gate_msinitial 270000
02:01enthalpy_closeinitial 1
02:01enthalpy_openinitial -2
02:01fog_escalation_kpainitial 0.3
02:01heat_hysteresisinitial 1
02:01min_fog_off_sinitial 84
02:01min_fog_on_sinitial 54.75
02:01mist_backoff_sinitial 600
02:01mist_max_closed_vent_sinitial 600
02:01mist_thermal_relief_sinitial 90
02:01mister_all_delay_sinitial 93
02:01mister_engage_delay_sinitial 46.5
02:01mister_water_budget_galinitial 300
02:01night_vpd_bias_kpainitial 0
02:01outdoor_staleness_max_sinitial 600
02:01sw_dwell_gate_enabledinitial 1
02:01sw_fog_closes_ventinitial 1
02:01sw_mister_closes_ventinitial 0
02:01sw_summer_vent_enabledinitial 1
02:01temp_hysteresisinitial 1.96
02:01vent_exchange_fractioninitial 0.3
02:01vent_prefer_dp_delta_finitial 3
02:01vent_prefer_temp_delta_finitial 4
02:01vpd_watch_dwell_sinitial 67.5
06:30direct_wet_stress_vpd_margin_kpa0.08 → 0.05
06:30dwell_gate_ms270000 → 225000
06:30fog_escalation_kpa0.3 → 0.18
06:30min_fog_off_s84 → 54
06:30min_fog_on_s54.75 → 66
06:30mister_all_delay_s93 → 79.5
06:30mister_engage_delay_s46.5 → 39.75
06:30temp_hysteresis1.96 → 1.69
06:30vpd_watch_dwell_s67.5 → 56.25
10:30dwell_gate_ms225000 → 210000
10:30fog_escalation_kpa0.18 → 0.15
10:30min_fog_off_s54 → 48
10:30min_fog_on_s66 → 68.25
10:30mister_all_delay_s79.5 → 75
10:30mister_engage_delay_s39.75 → 37.5
10:30temp_hysteresis1.69 → 1.6
10:30vpd_watch_dwell_s56.25 → 52.5
17:30dwell_gate_ms210000 → 240000
17:30fog_escalation_kpa0.15 → 0.18
17:30min_fog_off_s48 → 60
17:30min_fog_on_s68.25 → 63.75
17:30mister_all_delay_s75 → 84
17:30mister_engage_delay_s37.5 → 42
17:30temp_hysteresis1.6 → 1.78
17:30vpd_watch_dwell_s52.5 → 60
22:30direct_wet_stress_vpd_margin_kpa0.05 → 0.12
22:30dwell_gate_ms240000 → 285000
22:30fog_escalation_kpa0.18 → 0.35
22:30min_fog_off_s60 → 96
22:30min_fog_on_s63.75 → 50.25
22:30mister_all_delay_s84 → 97.5
22:30mister_engage_delay_s42 → 48.75
22:30temp_hysteresis1.78 → 2.05
22:30vpd_watch_dwell_s60 → 71.25
06:30direct_wet_stress_vpd_margin_kpa0.12 → 0.08
06:30dwell_gate_ms285000 → 255000
06:30fog_escalation_kpa0.35 → 0.25
06:30min_fog_off_s96 → 78
06:30min_fog_on_s50.25 → 57
06:30mister_all_delay_s97.5 → 88.5
06:30mister_engage_delay_s48.75 → 44.25
06:30temp_hysteresis2.05 → 1.87
06:30vpd_watch_dwell_s71.25 → 63.75
11:00direct_wet_stress_vpd_margin_kpa0.08 → 0.05
11:00dwell_gate_ms255000 → 225000
11:00fog_escalation_kpa0.25 → 0.18
11:00min_fog_off_s78 → 60
11:00min_fog_on_s57 → 63.75
11:00mister_all_delay_s88.5 → 79.5
11:00mister_engage_delay_s44.25 → 39.75
11:00temp_hysteresis1.87 → 1.69
11:00vpd_watch_dwell_s63.75 → 56.25
19:30direct_wet_stress_min_dew_margin_f8 → 10
19:30direct_wet_stress_vpd_margin_kpa0.05 → 0.15
19:30dwell_gate_ms225000 → 315000
19:30fog_escalation_kpa0.18 → 0.4
19:30min_fog_off_s60 → 120
19:30min_fog_on_s63.75 → 41.25
19:30mister_all_delay_s79.5 → 106.5
19:30mister_engage_delay_s39.75 → 53.25
19:30temp_hysteresis1.69 → 2.23
19:30vpd_watch_dwell_s56.25 → 78.75
02:00direct_wet_stress_vpd_margin_kpa0.15 → 0.2
02:00dwell_gate_ms315000 → 330000
02:00fog_escalation_kpa0.4 → 0.45
02:00min_fog_off_s120 → 132
02:00min_fog_on_s41.25 → 36.75
02:00mister_all_delay_s106.5 → 111
02:00mister_engage_delay_s53.25 → 55.5
02:00temp_hysteresis2.23 → 2.3200000000000003
02:00vpd_watch_dwell_s78.75 → 82.5
08:00direct_wet_stress_min_dew_margin_f10 → 8
08:00direct_wet_stress_vpd_margin_kpa0.2 → 0.08
08:00dwell_gate_ms330000 → 255000
08:00fog_escalation_kpa0.45 → 0.25
08:00min_fog_off_s132 → 84
08:00min_fog_on_s36.75 → 54.75
08:00mister_all_delay_s111 → 88.5
08:00mister_engage_delay_s55.5 → 44.25
08:00temp_hysteresis2.3200000000000003 → 1.87
08:00vpd_watch_dwell_s82.5 → 63.75
11:30direct_wet_stress_vpd_margin_kpa0.08 → 0.05
11:30dwell_gate_ms255000 → 225000
11:30fog_escalation_kpa0.25 → 0.18
11:30min_fog_off_s84 → 60
11:30min_fog_on_s54.75 → 63.75
11:30mister_all_delay_s88.5 → 79.5
11:30mister_engage_delay_s44.25 → 39.75
11:30temp_hysteresis1.87 → 1.69
11:30vpd_watch_dwell_s63.75 → 56.25
15:00direct_wet_stress_min_dew_margin_f8 → 10
15:00direct_wet_stress_vpd_margin_kpa0.05 → 0.15
15:00dwell_gate_ms225000 → 315000
15:00fog_escalation_kpa0.18 → 0.4
15:00min_fog_off_s60 → 120
15:00min_fog_on_s63.75 → 41.25
15:00mister_all_delay_s79.5 → 106.5
15:00mister_engage_delay_s39.75 → 53.25
15:00temp_hysteresis1.69 → 2.23
15:00vpd_watch_dwell_s56.25 → 78.75
20:00direct_wet_stress_min_dew_margin_f10 → 12
20:00direct_wet_stress_vpd_margin_kpa0.15 → 0.22
20:00dwell_gate_ms315000 → 330000
20:00fog_escalation_kpa0.4 → 0.5
20:00min_fog_off_s120 → 138
20:00min_fog_on_s41.25 → 34.5
20:00mister_all_delay_s106.5 → 111
20:00mister_engage_delay_s53.25 → 55.5
20:00temp_hysteresis2.23 → 2.3200000000000003
20:00vpd_watch_dwell_s78.75 → 82.5

🌅 Morning Cycle (5:51 AM) — iris-20260720-0549

Status

validated

Outcome score

4/10

Changed parameters

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-20260719-2027

Previous hypothesis: SUNSET overnight plan for Sunday 2026-07-19. Today scored 68.3 versus 66.5 7-day average, so slightly better than the recent baseline, but it remains a dual-axis hot-dry limitation: VPD is still the bottleneck at 36.5% compliance versus 48.9% temp compliance, with 11.76h VPD-high stress and 8.64h heat stress. Dew safety held at dp_margin_min_f 9.1F and 0.0 dp-risk hours; current air is safe at about 81.3F, VPD 1.21 kPa, RH 67%, dew margin 11.9F, IDLE, but east remains a dry planted outlier near 1.50 kPa and zone spread is large. Cost terms are unavailable/resource weight 0, so I am using water/wear context instead: total water is trending high at 364 gal today versus 347 gal 7-day average, with heavy fog/water-flow cycling… Result: Sunrise plan daily outcome for 2026-07-20: daily score 74.1 versus 66.8 7-day average, but corridor recovery remained structurally limited. VPD was the bottleneck at 32.4% compliance versus temp 44.6%; dominant stress was VPD-high 15.39h, with heat also severe at 12.02h. Cold stress and VPD-low were 0.0h, and dew safety held with dp_margin_min_f 9.0F and dp_risk_hours 0.0. Forecast diagnosis was broadly correct for an extreme hot-dry day: actual outdoor peak was about 101.6F and solar exceeded the forecast at about 1018 W/m2. Wet/fog assist preserved dew safety and likely reduced severity, but did not achieve the hoped-for VPD corridor recovery under physics-limited heat/solar; recent guardrail/held events show materialization was still guardrail-shaped. Total water was 405 gal and misting-only 194 gal versus 355 gal 7-day total-water average; resource cost fields were unavailable, so water/wear are context rather than scored cost. Score: 4/10

Hypothesis

Testing: Guardrail-clean hot-dry severity-mitigation test: use bounded ClimateIntent values that should materialize cleanly, then compare guardrail-held wet-assist rows and VPD-high severity against Sunday/Monday baselines. Expected outcome: Dew safety remains at 0 dp-risk hours; Monday VPD-high remains the bottleneck but severity is reduced versus Sunday if wet assist materializes, with fewer held-by-guardrail events than the previous midnight/weekly plans.

Conditions

Outdoor peak

101.0°F

RH minimum

14.0%

Solar peak

881.0 W/m²

Cloud average

25.0%

extreme July hot-dry day; forecast VPD has known positive bias but corrected priors remain severe, dew margin is currently safe, and recent hot-dry plans show wet/fog assist is severity mitigation rather than full corridor recovery

Expected stress windows

vpd_highhigh · 2026-07-20T07:30:00-06:00 to 2026-07-20T22:00:00-06:00

band-coupled wet assist near the VPD high edge, all-zone escalation near +0.22 to +0.25 kPa, daylight fog escalation near 0.15 kPa, low resource sensitivity while dew margin remains above 8F

heathigh · 2026-07-20T10:00:00-06:00 to 2026-07-20T20:00:00-06:00

solar pre-cooling and full cooling assist posture; accept physics-limited peak heat rather than target hugging

vpd_highhigh · 2026-07-21T12:00:00-06:00 to 2026-07-21T20:00:00-06:00

reopen dry-stress assist for Tuesday afternoon but use an earlier wet cutoff before the humid/rain handoff

vpd_highmedium · 2026-07-22T09:00:00-06:00 to 2026-07-22T17:00:00-06:00

short renewed dry-stress posture before storm humidity; early cutoff to avoid Wed evening VPD-low/dew risk

Parameter rationale

mister_engage_kpa0.95 → 1.27; live VPD is below high edge at dawn but forecast dry ramp exceeds corrected high-edge priors by 08:00-09:00

keep S1 wet assist available near vpd_high+0.05 during live VPD-high without relying on dispatcher guardrail correction

mister_all_kpa1.14 → 1.47; yesterday had 14.66h VPD-high stress and zone VPD spread recently reached about 0.66 kPa

allow all-zone rotation only during meaningful dry stress while preserving a wider deadband for localized spread

fog_escalation_kpa0.2 → 0.15; fog window overlaps the 10:00-17:00 extreme dry ramp and dew margin is 13.8F with no dp-risk yesterday

enable daylight vent-fog assist before severe VPD-high error accumulates

mister_pulse_gap_s30.0 → 22.0; RH falls to 14-18% with solar near 881 W/m2 and recent VPD compliance stayed near 35% despite high water

increase useful wet duty during peak VENTILATE, then taper with evening and next-day humid cutoffs

mister_water_budget_gal300.0 → 300.0; water was high at 403 gal, but VPD remained the limiting axis and dew safety held

avoid budget-limited dry-stress recovery during safe peak stress while conserving by time-of-day posture

direct_wet_stress_latest_hour21.0 → 22.0; Monday evening remains hot and dry with forecast VPD above 3 kPa after sunset

permit bounded Monday evening dry-edge recovery while cutting earlier ahead of Tuesday/Wednesday humid handoffs

Setpoints

Monday July 20

Primary crop-band changes:

TimeValuesNote
05:49hyst 0.1875Dawn pre-ramp: VPD still in band but severe dry ramp begins
08:00hyst 0.1825Morning dry ramp: forecast reaches 79F/38% RH by 08:00 and V
10:30hyst 0.1775Late morning peak onset: dual-axis heat and VPD stress expec
13:30hyst 0.1775Peak hot-dry stress: forecast 99-101F, RH 14-17%, solar abov
17:30hyst 0.1925Decline/evening recovery: solar falls but outdoor remains ho
22:30hyst 0.2125Overnight taper: no solar and fog window closed; reduce low-

Tactical tunable changes:

TimeValuesNote
05:49s2 1.655; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 37.5; gap 33.75; wt 1.7000000000000002Dawn pre-ramp: VPD still in band but severe dry ramp begins
08:00s2 1.564; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.45; pulse 43.5; gap 28.5; wt 1.8000000000000003Morning dry ramp: forecast reaches 79F/38% RH by 08:00 and V
10:30s2 1.4760000000000002; cool_exit 1.42; all_fans 1; dw_stress 1; dw_until 22; engage 1.27; all 1.44; pulse 48.75; gap 24; wt 1.8866666666666667Late morning peak onset: dual-axis heat and VPD stress expec
13:30s2 1.4700000000000002; cool_exit 1.42; all_fans 1; dw_stress 1; dw_until 22; engage 1.27; all 1.44; pulse 51; gap 22.5; wt 1.92Peak hot-dry stress: forecast 99-101F, RH 14-17%, solar abov
17:30s2 1.705; cool_exit 1.69; all_fans 0; dw_stress 0; dw_until 22; engage 1.28; all 1.5; pulse 39; gap 37.5; wt 1.6800000000000002Decline/evening recovery: solar falls but outdoor remains ho
22:30s2 1.9449999999999998; cool_exit 2.05; all_fans 0; dw_stress 0; dw_until 21; engage 1.4; all 1.64; pulse 30; gap 60; wt 1.2333333333333334Overnight taper: no solar and fog window closed; reduce low-

Tuesday July 21

Primary crop-band changes:

TimeValuesNote
13:00hyst 0.1925Tuesday dry afternoon reprise: reopen band-coupled assist fo

Tactical tunable changes:

TimeValuesNote
13:00s2 1.6115000000000002; cool_exit 1.69; all_fans 0; dw_stress 1; dw_until 20; engage 1.27; all 1.47; pulse 40.5; gap 36; wt 1.7066666666666666Tuesday dry afternoon reprise: reopen band-coupled assist fo

Wednesday July 22

Primary crop-band changes:

TimeValuesNote
10:30hyst 0.20249999999999999Wednesday short dry window before storm humidity: allow mode

Tactical tunable changes:

TimeValuesNote
10:30s2 1.6800000000000002; cool_exit 1.87; all_fans 0; dw_stress 0; dw_until 17; engage 1.28; all 1.5; pulse 36; gap 48.75; wt 1.5533333333333332Wednesday short dry window before storm humidity: allow mode

Changed secondary parameters:

TimeParameterChange
05:49band_track_fractioninitial 0
05:49cold_vent_guard_delta_finitial 8
05:49cool_stage2_exit_hysteresis_finitial 1
05:49direct_wet_stress_min_dew_margin_finitial 8
05:49direct_wet_stress_vpd_margin_kpainitial 0.05
05:49dwell_gate_msinitial 210000
05:49enthalpy_closeinitial 1
05:49enthalpy_openinitial -2
05:49fog_escalation_kpainitial 0.18
05:49heat_hysteresisinitial 1
05:49min_fog_off_sinitial 60
05:49min_fog_on_sinitial 63.75
05:49mist_backoff_sinitial 600
05:49mist_max_closed_vent_sinitial 600
05:49mist_thermal_relief_sinitial 90
05:49mister_all_delay_sinitial 75
05:49mister_engage_delay_sinitial 37.5
05:49mister_water_budget_galinitial 300
05:49night_vpd_bias_kpainitial 0
05:49outdoor_staleness_max_sinitial 600
05:49sw_dwell_gate_enabledinitial 1
05:49sw_fog_closes_ventinitial 1
05:49sw_mister_closes_ventinitial 0
05:49sw_summer_vent_enabledinitial 1
05:49temp_hysteresisinitial 1.6
05:49vent_exchange_fractioninitial 0.3
05:49vent_prefer_dp_delta_finitial 3
05:49vent_prefer_temp_delta_finitial 4
05:49vpd_watch_dwell_sinitial 52.5
08:00dwell_gate_ms210000 → 195000
08:00fog_escalation_kpa0.18 → 0.15
08:00min_fog_off_s60 → 51.599999999999994
08:00min_fog_on_s63.75 → 66.9
08:00mister_all_delay_s75 → 70.5
08:00mister_engage_delay_s37.5 → 35.25
08:00temp_hysteresis1.6 → 1.51
08:00vpd_watch_dwell_s52.5 → 48.75
10:30cold_vent_guard_delta_f8 → 7
10:30dwell_gate_ms195000 → 180000
10:30min_fog_off_s51.599999999999994 → 44.4
10:30min_fog_on_s66.9 → 69.6
10:30mister_all_delay_s70.5 → 66
10:30mister_engage_delay_s35.25 → 33
10:30temp_hysteresis1.51 → 1.42
10:30vent_prefer_temp_delta_f4 → 3
10:30vpd_watch_dwell_s48.75 → 45
13:30min_fog_off_s44.4 → 42
13:30min_fog_on_s69.6 → 70.5
17:30cold_vent_guard_delta_f7 → 8
17:30direct_wet_stress_vpd_margin_kpa0.05 → 0.06
17:30dwell_gate_ms180000 → 225000
17:30fog_escalation_kpa0.15 → 0.2
17:30min_fog_off_s42 → 66
17:30min_fog_on_s70.5 → 61.5
17:30mister_all_delay_s66 → 79.5
17:30mister_engage_delay_s33 → 39.75
17:30temp_hysteresis1.42 → 1.69
17:30vent_prefer_temp_delta_f3 → 4
17:30vpd_watch_dwell_s45 → 56.25
22:30cold_vent_guard_delta_f8 → 9
22:30direct_wet_stress_min_dew_margin_f8 → 10
22:30direct_wet_stress_vpd_margin_kpa0.06 → 0.18
22:30dwell_gate_ms225000 → 285000
22:30fog_escalation_kpa0.2 → 0.45
22:30min_fog_off_s66 → 120
22:30min_fog_on_s61.5 → 41.25
22:30mister_all_delay_s79.5 → 97.5
22:30mister_engage_delay_s39.75 → 48.75
22:30temp_hysteresis1.69 → 2.05
22:30vent_prefer_dp_delta_f3 → 4
22:30vent_prefer_temp_delta_f4 → 5
22:30vpd_watch_dwell_s56.25 → 71.25
13:00cold_vent_guard_delta_f9 → 8
13:00direct_wet_stress_min_dew_margin_f10 → 8
13:00direct_wet_stress_vpd_margin_kpa0.18 → 0.05
13:00dwell_gate_ms285000 → 225000
13:00fog_escalation_kpa0.45 → 0.18
13:00min_fog_off_s120 → 63.6
13:00min_fog_on_s41.25 → 62.4
13:00mister_all_delay_s97.5 → 79.5
13:00mister_engage_delay_s48.75 → 39.75
13:00temp_hysteresis2.05 → 1.69
13:00vent_prefer_dp_delta_f4 → 3
13:00vent_prefer_temp_delta_f5 → 4
13:00vpd_watch_dwell_s71.25 → 56.25
10:30direct_wet_stress_min_dew_margin_f8 → 9
10:30direct_wet_stress_vpd_margin_kpa0.05 → 0.06
10:30dwell_gate_ms225000 → 255000
10:30fog_escalation_kpa0.18 → 0.22
10:30min_fog_off_s63.6 → 84
10:30min_fog_on_s62.4 → 54.75
10:30mister_all_delay_s79.5 → 88.5
10:30mister_engage_delay_s39.75 → 44.25
10:30mister_water_budget_gal300 → 260
10:30temp_hysteresis1.69 → 1.87
10:30vpd_watch_dwell_s56.25 → 63.75

🌆 Evening Cycle (8:28 PM) — iris-20260720-2026

Status

validated

Outcome score

8/10

Changed parameters

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-20260720-0549

Previous hypothesis: SUNRISE plan for Monday 2026-07-20. Yesterday scored 69.8 versus 66.5 7-day average, but was still structurally hot/dry limited: VPD compliance was the bottleneck at 34.8% versus temp compliance 46.2%, with 14.66h VPD-high stress and 11.27h heat stress. Water was high at 403 gal total / 196 gal misting-only versus 347 gal 7-day average, while dew safety held at dp_margin_min_f 9.1F and 0.0 dp-risk hours. I evaluated the completed midnight plan iris-20260720-0016 at 7/10; deterministic anchor was 5 because 160 VPD-high guardrail events, mostly held-by-guardrail, mean that short overnight window preserved safety but was still materially guardrail-shaped. Current house is safe: about 72.5F, VPD 1.04 kPa, RH 62%, dew margin 13.8F, VENTILATE with vent and both fans on, wet/fog currently below threshold… Result: Evaluated at the Tuesday MIDNIGHT reset using the scoped window the sunset plan governed before replacement. The window score was 100.0 with 0.00h heat stress, 0.00h VPD-high stress, 0.00h cold stress, 0.00h VPD-low stress, and dew safety intact; live air at review is safe at about 76.4F, VPD 1.08 kPa, RH 65%, and dew margin 12.3F. The prior full Monday day was still structurally limited at score 74.1, temp compliance 44.6%, VPD compliance 32.4%, 12.02h heat stress, 15.39h VPD-high stress, 405 gal total water, and dp_risk_hours 0.0. The sunset hypothesis was correct for the overnight segment: tapering after solar load preserved safety and avoided VPD-low/dew risk. It is not yet evidence for the Tuesday daytime reopening and humid-handoff predictions, and recent audit rows still show guardrail-held and missed tactical values, so the score is below perfect despite the zero-stress scoped window. Score: 8/10

New finding: On warm post-extreme hot-dry evenings, a guardrail-compatible overnight taper can keep the house inside the served corridor with zero dew/VPD-low stress when dew margin starts above 10F; however, daytime hot-dry recovery and humid-handoff suppression must be evaluated separately, and plans should avoid requesting values the VPD-high guardrail will immediately hold or rewrite. → Added to Lessons Learned

Hypothesis

Testing: Guardrail-compatible sunset taper: preserve evening VPD recovery while reducing overnight water/churn, then reopen before Tuesday dry ramp and cut before humid/rain handoff. Expected outcome: Overnight: 0h cold and VPD-low stress, dp_risk_hours 0, dew margin >8F, and lower overnight water/churn than daytime. Tuesday morning handoff should enter the dry ramp with VPD near band and wet/fog assist available without repeating large guardrail-held corrections.

Conditions

Outdoor peak

101.6°F

RH minimum

20.0%

Solar peak

1018.0 W/m²

Cloud average

70.0%

Monday actual was extreme hot/dry with VPD-high and heat stress dominant; current sunset air is safe at about 79F, VPD near 1.13 kPa, dew margin about 11.7F, with a warm dry raw forecast overnight but known positive VPD bias and a humid/rain handoff Tuesday evening

Expected stress windows

vpd_highmedium · 2026-07-20T20:25:00-06:00 to 2026-07-20T23:00:00-06:00

keep band-coupled wet recovery available while dew margin remains above 8F and VPD is near or above the high edge

vpd_highmedium · 2026-07-20T23:00:00-06:00 to 2026-07-21T06:00:00-06:00

taper moisture duty and increase churn/resource caution after solar is gone; humidity should hold better sealed and forecast VPD is positively biased

vpd_highhigh · 2026-07-21T10:00:00-06:00 to 2026-07-21T18:30:00-06:00

reopen band-coupled mist/fog assist for the dry afternoon with fog escalation near 0.18-0.20 and low resource sensitivity while dew margin is safe

vpd_lowmedium · 2026-07-21T19:00:00-06:00 to 2026-07-21T23:59:00-06:00

cut wet duty earlier and raise dew-margin caution as forecast rain/RH arrives

Parameter rationale

mister_engage_kpa1.0 → 1.27; current VPD is near the high edge with east dry at 1.37 kPa and raw overnight VPD remains high, but dew margin is safe

allow evening dry-edge recovery near vpd_high+0.05 without closing the wet surface while VPD stress is active

mister_all_kpa1.2 → 1.47; zone VPD spread is large and VPD-high dominated today, but water/churn was high

permit all-zone escalation only when dry stress is meaningful, then taper overnight rather than all-night high duty

mister_pulse_gap_s30.0 → 45.0; solar is absent overnight and humidity holds better when sealed; no VPD-low or dew risk occurred today

reduce low-value overnight water/relay churn while preserving a controlled evening and pre-dawn recovery path

fog_escalation_kpa0.2 → 0.18; Tuesday daylight fog window overlaps another 95-97F dry ramp; Monday fog/wet assist improved severity but not full compliance

make fog available as Tuesday severity mitigation without relying on night fog, which firmware blocks

mister_water_budget_gal300.0 → 300.0; water was above recent average but VPD remained the limiting axis and dew safety held

avoid budget-limited recovery during safe dry stress while conserving by overnight duty taper and humid-handoff cutoff

Setpoints

Monday July 20

Primary crop-band changes:

TimeValuesNote
20:25hyst 0.20249999999999999evening_settle: VPD stress remains active and dew margin is
22:30hyst 0.2125overnight_taper: after solar is gone, humidity should hold b

Tactical tunable changes:

TimeValuesNote
20:25s2 1.875; cool_exit 1.87; all_fans 0; dw_stress 0; dw_until 23; engage 1.27; all 1.47; pulse 31.5; gap 48.75; wt 1.5133333333333332evening_settle: VPD stress remains active and dew margin is
22:30s2 1.92; cool_exit 2.05; all_fans 0; dw_stress 0; dw_until 23; engage 1.3399999999999999; all 1.5699999999999998; pulse 30; gap 60; wt 1.3466666666666667overnight_taper: after solar is gone, humidity should hold b

Tuesday July 21

Primary crop-band changes:

TimeValuesNote
02:30hyst 0.22249999999999998midnight_posture: deepest night should prioritize dew safety
05:45hyst 0.19749999999999998pre_dawn: reopen a moderate dry-ramp posture before Tuesday
10:30hyst 0.1925morning_ramp: Tuesday turns hot and dry before the evening s

Tactical tunable changes:

TimeValuesNote
02:30s2 1.95; cool_exit 2.23; all_fans 0; dw_stress 0; dw_until 21; engage 1.4; all 1.67; pulse 30; gap 60; wt 1.2533333333333334midnight_posture: deepest night should prioritize dew safety
05:45s2 1.735; cool_exit 1.78; all_fans 0; dw_stress 0; dw_until 20; engage 1.3; all 1.52; pulse 30; gap 48.75; wt 1.4733333333333334pre_dawn: reopen a moderate dry-ramp posture before Tuesday
10:30s2 1.67; cool_exit 1.69; all_fans 0; dw_stress 0; dw_until 19; engage 1.27; all 1.47; pulse 33.75; gap 41.25; wt 1.6morning_ramp: Tuesday turns hot and dry before the evening s

Changed secondary parameters:

TimeParameterChange
20:25band_track_fractioninitial 0
20:25cold_vent_guard_delta_finitial 8
20:25cool_stage2_exit_hysteresis_finitial 1
20:25direct_wet_stress_min_dew_margin_finitial 8
20:25direct_wet_stress_vpd_margin_kpainitial 0.05
20:25dwell_gate_msinitial 255000
20:25enthalpy_closeinitial 1
20:25enthalpy_openinitial -2
20:25fog_escalation_kpainitial 0.25
20:25heat_hysteresisinitial 1
20:25min_fog_off_sinitial 84
20:25min_fog_on_sinitial 54.75
20:25mist_backoff_sinitial 600
20:25mist_max_closed_vent_sinitial 600
20:25mist_thermal_relief_sinitial 90
20:25mister_all_delay_sinitial 88.5
20:25mister_engage_delay_sinitial 44.25
20:25mister_water_budget_galinitial 300
20:25night_vpd_bias_kpainitial 0
20:25outdoor_staleness_max_sinitial 600
20:25sw_dwell_gate_enabledinitial 1
20:25sw_fog_closes_ventinitial 1
20:25sw_mister_closes_ventinitial 0
20:25sw_summer_vent_enabledinitial 1
20:25temp_hysteresisinitial 1.87
20:25vent_exchange_fractioninitial 0.3
20:25vent_prefer_dp_delta_finitial 3
20:25vent_prefer_temp_delta_finitial 4
20:25vpd_watch_dwell_sinitial 63.75
22:30direct_wet_stress_min_dew_margin_f8 → 9
22:30direct_wet_stress_vpd_margin_kpa0.05 → 0.12
22:30dwell_gate_ms255000 → 285000
22:30fog_escalation_kpa0.25 → 0.4
22:30min_fog_off_s84 → 102
22:30min_fog_on_s54.75 → 48
22:30mister_all_delay_s88.5 → 97.5
22:30mister_engage_delay_s44.25 → 48.75
22:30temp_hysteresis1.87 → 2.05
22:30vpd_watch_dwell_s63.75 → 71.25
02:30direct_wet_stress_vpd_margin_kpa0.12 → 0.18
02:30dwell_gate_ms285000 → 315000
02:30fog_escalation_kpa0.4 → 0.5
02:30min_fog_off_s102 → 114
02:30min_fog_on_s48 → 43.5
02:30mister_all_delay_s97.5 → 106.5
02:30mister_engage_delay_s48.75 → 53.25
02:30temp_hysteresis2.05 → 2.23
02:30vpd_watch_dwell_s71.25 → 78.75
05:45direct_wet_stress_min_dew_margin_f9 → 8
05:45direct_wet_stress_vpd_margin_kpa0.18 → 0.08
05:45dwell_gate_ms315000 → 240000
05:45fog_escalation_kpa0.5 → 0.25
05:45min_fog_off_s114 → 84
05:45min_fog_on_s43.5 → 54.75
05:45mister_all_delay_s106.5 → 84
05:45mister_engage_delay_s53.25 → 42
05:45temp_hysteresis2.23 → 1.78
05:45vpd_watch_dwell_s78.75 → 60
10:30direct_wet_stress_vpd_margin_kpa0.08 → 0.05
10:30dwell_gate_ms240000 → 225000
10:30fog_escalation_kpa0.25 → 0.18
10:30min_fog_off_s84 → 72
10:30min_fog_on_s54.75 → 59.25
10:30mister_all_delay_s84 → 79.5
10:30mister_engage_delay_s42 → 39.75
10:30temp_hysteresis1.78 → 1.69
10:30vpd_watch_dwell_s60 → 56.25

End-of-Day Summary

Climate

Temperature

72.1–90.7°F; avg 78.9°F

VPD

0.91–2.21 kPa; avg 1.29 kPa

Relative humidity

54.2–74.2%

Interior Light Evidence

  • Crop DLI: unavailable
  • Reason: source_reading_missing
  • Provenance: legacy_invalid_exterior_proxy_plus_fixture_estimate
  • Validity: dli-validity-v1; 2024-01-01T00:00:00+00:00 → open
  • Qualified-light minutes and photoperiod remain independent of unavailable DLI.

Stress Hours

  • Heat stress (>85°F): 4.2h
  • VPD stress (>2.0 kPa): 11.7h
  • Cold stress (<55°F): 5.7h

Economics

Electric

USD —

Gas

USD 0.00

Water

USD 1.960

Total

USD —

Equipment Runtimes

EquipmentRuntimeReading
Fan 1906 minPrimary exhaust runtime.
Fan 2908 minSecondary exhaust runtime.
Vent1049 minIntake vent runtime.
Fog411 minFogger runtime.
Heat 1 electric0 minElectric heater runtime.
Heat 2 gas0 minGas heater runtime.
Grow lights1072 minSupplemental lighting runtime.
Mister south0.00hSouth mister runtime.
Mister west0.00hWest mister runtime.
Mister center2.00hCenter mister runtime.

Water

  • Total: 405 gal
  • Mister: 194 gal

Hourly Pattern

HourTemperatureVPDRH
12:0082.8°F1.31 kPa66.3%
13:0083.9°F1.41 kPa66.8%
14:0085.3°F1.49 kPa67.4%
15:0086.4°F1.57 kPa67.2%
16:0086.8°F1.75 kPa62.9%
17:0085.0°F1.67 kPa61.2%
18:0083.6°F1.46 kPa63.7%
19:0082.3°F1.24 kPa67.7%
20:0080.6°F1.21 kPa66.5%
21:0078.5°F1.20 kPa64.3%
22:0076.8°F1.26 kPa60.5%
23:0075.4°F1.23 kPa59.7%
00:0074.4°F1.16 kPa60.4%
01:0074.0°F1.16 kPa59.7%
02:0073.4°F1.18 kPa58.3%
03:0073.0°F1.18 kPa57.8%
04:0072.5°F1.19 kPa56.7%
05:0072.6°F1.16 kPa57.6%
06:0073.4°F1.20 kPa57.3%
07:0074.9°F1.24 kPa58.4%
08:0077.0°F1.10 kPa65.2%
09:0078.4°F1.14 kPa65.8%
10:0080.0°F1.20 kPa65.9%
11:0081.2°F1.15 kPa68.6%

7-Day Stress Context

DateHeatVPD highCold
2026-07-144.5h9.9h8.8h
2026-07-154.2h9.6h8.8h
2026-07-163.2h10.0h7.8h
2026-07-174.0h9.6h8.3h
2026-07-184.4h10.0h7.4h
2026-07-194.6h10.3h7.3h
2026-07-204.2h11.7h5.7h